From 0bb172194b4f32a7c1f5c91949c571a03aefd20c Mon Sep 17 00:00:00 2001 From: Pascal Quantin Date: Fri, 28 Sep 2018 13:10:05 +0200 Subject: LTE RRC: upgrade dissector to v15.3.0 Change-Id: I8ca861fb8cffe457780165c64dc3e6fcbc47ba8b Reviewed-on: https://code.wireshark.org/review/29900 Petri-Dish: Pascal Quantin Tested-by: Petri Dish Buildbot Reviewed-by: Pascal Quantin --- epan/dissectors/packet-lte-rrc.c | 78988 ++++++++++++++++++++++++------------- 1 file changed, 51517 insertions(+), 27471 deletions(-) (limited to 'epan/dissectors/packet-lte-rrc.c') diff --git a/epan/dissectors/packet-lte-rrc.c b/epan/dissectors/packet-lte-rrc.c index 9682ed9d65..102c2ba98b 100644 --- a/epan/dissectors/packet-lte-rrc.c +++ b/epan/dissectors/packet-lte-rrc.c @@ -9,7 +9,7 @@ /* packet-lte-rrc-template.c * Routines for Evolved Universal Terrestrial Radio Access (E-UTRA); * Radio Resource Control (RRC) protocol specification - * (3GPP TS 36.331 V15.2.2 Release 15) packet dissection + * (3GPP TS 36.331 V15.3.0 Release 15) packet dissection * Copyright 2008, Vincent Helfre * Copyright 2009-2018, Pascal Quantin * @@ -59,6 +59,8 @@ static dissector_handle_t rrc_irat_ho_to_utran_cmd_handle = NULL; static dissector_handle_t rrc_sys_info_cont_handle = NULL; static dissector_handle_t gsm_a_dtap_handle = NULL; static dissector_handle_t gsm_rlcmac_dl_handle = NULL; +static dissector_handle_t nr_rrc_reconf_handle = NULL; +static dissector_handle_t lte_rrc_conn_reconf_handle; static dissector_handle_t lte_rrc_dl_ccch_handle; static wmem_map_t *lte_rrc_etws_cmas_dcs_hash = NULL; @@ -79,6 +81,7 @@ extern int proto_pdcp_lte; /*--- Included file: packet-lte-rrc-val.h ---*/ #line 1 "./asn1/lte-rrc/packet-lte-rrc-val.h" #define maxReestabInfo 32 +#define maxAccessCat_1_r15 63 #define maxACDC_Cat_r13 16 #define maxAvailNarrowBands_r13 16 #define maxBandComb_r10 128 @@ -88,6 +91,9 @@ extern int proto_pdcp_lte; #define maxBandsNR_r15 1024 #define maxBandwidthClass_r10 16 #define maxBandwidthCombSet_r10 32 +#define maxBarringInfoSet_r15 8 +#define maxBT_IdReport_r15 32 +#define maxBT_Name_r15 4 #define maxCBR_Level_r14 16 #define maxCBR_Level_1_r14 15 #define maxCBR_Report_r14 72 @@ -97,6 +103,7 @@ extern int proto_pdcp_lte; #define maxCellHistory_r12 16 #define maxCellInfoGERAN_r9 32 #define maxCellInfoUTRA_r9 16 +#define maxCellMeasIdle_r15 8 #define maxCombIDC_r11 128 #define maxCSI_IM_r11 3 #define maxCSI_IM_r12 4 @@ -118,8 +125,11 @@ extern int proto_pdcp_lte; #define maxCellReport 8 #define maxCellSFTD 3 #define maxConfigSPS_r14 8 +#define maxConfigSPS_r15 6 #define maxCSI_RS_Meas_r12 96 #define maxDRB 11 +#define maxDRBExt_r15 4 +#define maxDRB_r15 15 #define maxDS_Duration_r12 5 #define maxDS_ZTP_CSI_RS_r12 5 #define maxEARFCN 65535 @@ -134,12 +144,14 @@ extern int proto_pdcp_lte; #define maxPerCC_FeatureSets_r15 32 #define maxFreq 8 #define maxFreqIDC_r11 32 +#define maxFreqIdle_r15 8 #define maxFreqMBMS_r11 5 #define maxFreqNR_r15 5 #define maxFreqV2X_r14 8 #define maxFreqV2X_1_r14 7 #define maxGERAN_SI 10 #define maxGNFG 16 +#define maxIdleMeasCarriers_r15 3 #define maxLCG_r13 4 #define maxLogMeasReport_r10 520 #define maxMBSFN_Allocations 8 @@ -150,10 +162,12 @@ extern int proto_pdcp_lte; #define maxMeasId_Plus1 33 #define maxMeasId_r12 64 #define maxMultiBands 8 +#define maxMultiBandsNR_r15 32 #define maxNS_Pmax_r10 8 #define maxNAICS_Entries_r12 8 #define maxNeighCell_r12 8 #define maxNeighCell_SCPTM_r13 8 +#define maxNrofS_NSSAI_r15 8 #define maxObjectId 32 #define maxObjectId_Plus1_r13 33 #define maxObjectId_r13 64 @@ -162,6 +176,8 @@ extern int proto_pdcp_lte; #define maxPhysCellIdRange_r9 4 #define maxPLMN_r11 6 #define maxPLMN_1_r14 5 +#define maxPLMN_r15 8 +#define maxPLMN_NR_r15 12 #define maxPNOffset 511 #define maxPMCH_PerMBSFN 15 #define maxPSSCH_TxConfig_r14 16 @@ -179,6 +195,7 @@ extern int proto_pdcp_lte; #define maxSAI_MBMS_r11 64 #define maxSCell_r10 4 #define maxSCell_r13 31 +#define maxSCellGroups_r15 4 #define maxSC_MTCH_r13 1023 #define maxSC_MTCH_BR_r14 128 #define maxSL_CommRxPoolNFreq_r13 32 @@ -197,6 +214,7 @@ extern int proto_pdcp_lte; #define maxSL_PoolToMeasure_r14 72 #define maxSL_Prio_r13 8 #define maxSL_RxPool_r12 16 +#define maxSL_Reliability_r15 8 #define maxSL_SyncConfig_r12 16 #define maxSL_TF_IndexPair_r12 64 #define maxSL_TxPool_r12 4 @@ -216,6 +234,7 @@ extern int proto_pdcp_lte; #define maxSTAG_r11 3 #define maxServCell_r10 5 #define maxServCell_r13 32 +#define maxServCellNR_r15 16 #define maxServiceCount 16 #define maxServiceCount_1 15 #define maxSessionPerPMCH 29 @@ -228,12 +247,14 @@ extern int proto_pdcp_lte; #define maxTrafficPattern_r14 8 #define maxUTRA_FDD_Carrier 16 #define maxUTRA_TDD_Carrier 16 +#define maxWayPoint_r15 20 #define maxWLAN_Id_r12 16 #define maxWLAN_Bands_r13 8 #define maxWLAN_Id_r13 32 #define maxWLAN_Channels_r13 16 #define maxWLAN_CarrierInfo_r13 8 #define maxWLAN_Id_Report_r14 32 +#define maxWLAN_Name_r15 4 #define maxLogMeas_r10 4060 #define maxNPRACH_Resources_NB_r13 3 #define maxNonAnchorCarriers_NB_r14 15 @@ -259,8 +280,8 @@ typedef enum _T_targetRAT_Type_enum { T_targetRAT_Type_geran = 1, T_targetRAT_Type_cdma2000_1XRTT = 2, T_targetRAT_Type_cdma2000_HRPD = 3, - T_targetRAT_Type_spare4 = 4, - T_targetRAT_Type_spare3 = 5, + T_targetRAT_Type_nr = 4, + T_targetRAT_Type_eutra = 5, T_targetRAT_Type_spare2 = 6, T_targetRAT_Type_spare1 = 7 } T_targetRAT_Type_enum; @@ -271,7 +292,7 @@ typedef enum _SI_OrPSI_GERAN_enum { } SI_OrPSI_GERAN_enum; /*--- End of included file: packet-lte-rrc-val.h ---*/ -#line 71 "./asn1/lte-rrc/packet-lte-rrc-template.c" +#line 73 "./asn1/lte-rrc/packet-lte-rrc-template.c" /* Initialize the protocol and registered fields */ static int proto_lte_rrc = -1; @@ -297,6 +318,7 @@ static int hf_lte_rrc_DL_DCCH_Message_PDU = -1; /* DL_DCCH_Message */ static int hf_lte_rrc_UL_CCCH_Message_PDU = -1; /* UL_CCCH_Message */ static int hf_lte_rrc_UL_DCCH_Message_PDU = -1; /* UL_DCCH_Message */ static int hf_lte_rrc_SC_MCCH_Message_r13_PDU = -1; /* SC_MCCH_Message_r13 */ +static int hf_lte_rrc_RRCConnectionReconfiguration_PDU = -1; /* RRCConnectionReconfiguration */ static int hf_lte_rrc_UECapabilityInformation_PDU = -1; /* UECapabilityInformation */ static int hf_lte_rrc_lte_rrc_RLF_Report_r9_PDU = -1; /* RLF_Report_r9 */ static int hf_lte_rrc_lte_rrc_RLF_Report_v9e0_PDU = -1; /* RLF_Report_v9e0 */ @@ -309,6 +331,7 @@ static int hf_lte_rrc_lte_rrc_UEPagingCoverageInformation_NB_PDU = -1; /* UEPag static int hf_lte_rrc_UERadioAccessCapabilityInformation_NB_PDU = -1; /* UERadioAccessCapabilityInformation_NB */ static int hf_lte_rrc_UERadioPagingInformation_NB_PDU = -1; /* UERadioPagingInformation_NB */ static int hf_lte_rrc_BCCH_BCH_Message_NB_PDU = -1; /* BCCH_BCH_Message_NB */ +static int hf_lte_rrc_BCCH_BCH_Message_TDD_NB_PDU = -1; /* BCCH_BCH_Message_TDD_NB */ static int hf_lte_rrc_BCCH_DL_SCH_Message_NB_PDU = -1; /* BCCH_DL_SCH_Message_NB */ static int hf_lte_rrc_PCCH_Message_NB_PDU = -1; /* PCCH_Message_NB */ static int hf_lte_rrc_DL_CCCH_Message_NB_PDU = -1; /* DL_CCCH_Message_NB */ @@ -419,8 +442,12 @@ static int hf_lte_rrc_measResultListRSSI_SCG_r13 = -1; /* MeasResultListRSSI_SC static int hf_lte_rrc_nonCriticalExtension_14 = -1; /* SCG_ConfigInfo_v1430_IEs */ static int hf_lte_rrc_makeBeforeBreakSCG_Req_r14 = -1; /* T_makeBeforeBreakSCG_Req_r14 */ static int hf_lte_rrc_measGapConfigPerCC_List = -1; /* MeasGapConfigPerCC_List_r14 */ -static int hf_lte_rrc_nonCriticalExtension_15 = -1; /* T_nonCriticalExtension_04 */ +static int hf_lte_rrc_nonCriticalExtension_15 = -1; /* SCG_ConfigInfo_v1530_IEs */ +static int hf_lte_rrc_drb_ToAddModListSCG_r15 = -1; /* DRB_InfoListSCG_r15 */ +static int hf_lte_rrc_drb_ToReleaseListSCG_r15 = -1; /* DRB_ToReleaseList_r15 */ +static int hf_lte_rrc_nonCriticalExtension_16 = -1; /* T_nonCriticalExtension_04 */ static int hf_lte_rrc_DRB_InfoListSCG_r12_item = -1; /* DRB_InfoSCG_r12 */ +static int hf_lte_rrc_DRB_InfoListSCG_r15_item = -1; /* DRB_InfoSCG_r12 */ static int hf_lte_rrc_eps_BearerIdentity_r12 = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_drb_Identity_r12 = -1; /* DRB_Identity */ static int hf_lte_rrc_drb_Type_r12 = -1; /* T_drb_Type_r12 */ @@ -454,22 +481,22 @@ static int hf_lte_rrc_c1_04 = -1; /* T_c1_04 */ static int hf_lte_rrc_uePagingCoverageInformation_r13 = -1; /* UEPagingCoverageInformation_r13_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_04 = -1; /* T_criticalExtensionsFuture_04 */ static int hf_lte_rrc_mpdcch_NumRepetition_r13 = -1; /* INTEGER_1_256 */ -static int hf_lte_rrc_nonCriticalExtension_16 = -1; /* T_nonCriticalExtension_05 */ +static int hf_lte_rrc_nonCriticalExtension_17 = -1; /* T_nonCriticalExtension_05 */ static int hf_lte_rrc_criticalExtensions_05 = -1; /* T_criticalExtensions_05 */ static int hf_lte_rrc_c1_05 = -1; /* T_c1_05 */ static int hf_lte_rrc_ueRadioAccessCapabilityInformation_r8 = -1; /* UERadioAccessCapabilityInformation_r8_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_05 = -1; /* T_criticalExtensionsFuture_05 */ static int hf_lte_rrc_ue_RadioAccessCapabilityInfo_01 = -1; /* T_ue_RadioAccessCapabilityInfo */ -static int hf_lte_rrc_nonCriticalExtension_17 = -1; /* T_nonCriticalExtension_06 */ +static int hf_lte_rrc_nonCriticalExtension_18 = -1; /* T_nonCriticalExtension_06 */ static int hf_lte_rrc_criticalExtensions_06 = -1; /* T_criticalExtensions_06 */ static int hf_lte_rrc_c1_06 = -1; /* T_c1_06 */ static int hf_lte_rrc_ueRadioPagingInformation_r12 = -1; /* UERadioPagingInformation_r12_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_06 = -1; /* T_criticalExtensionsFuture_06 */ static int hf_lte_rrc_ue_RadioPagingInfo_r12 = -1; /* T_ue_RadioPagingInfo_r12 */ -static int hf_lte_rrc_nonCriticalExtension_18 = -1; /* UERadioPagingInformation_v1310_IEs */ +static int hf_lte_rrc_nonCriticalExtension_19 = -1; /* UERadioPagingInformation_v1310_IEs */ static int hf_lte_rrc_supportedBandListEUTRAForPaging_r13 = -1; /* SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11 */ static int hf_lte_rrc_supportedBandListEUTRAForPaging_r13_item = -1; /* FreqBandIndicator_r11 */ -static int hf_lte_rrc_nonCriticalExtension_19 = -1; /* T_nonCriticalExtension_07 */ +static int hf_lte_rrc_nonCriticalExtension_20 = -1; /* T_nonCriticalExtension_07 */ static int hf_lte_rrc_sourceMeasConfig = -1; /* MeasConfig */ static int hf_lte_rrc_sourceRadioResourceConfig = -1; /* RadioResourceConfigDedicated */ static int hf_lte_rrc_sourceSecurityAlgorithmConfig = -1; /* SecurityAlgorithmConfig */ @@ -502,7 +529,7 @@ static int hf_lte_rrc_idc_Indication_r11 = -1; /* T_idc_Indication_r11 */ static int hf_lte_rrc_mbmsInterestIndication_r11 = -1; /* T_mbmsInterestIndication_r11 */ static int hf_lte_rrc_powerPrefIndication_r11 = -1; /* T_powerPrefIndication_r11 */ static int hf_lte_rrc_sidelinkUEInformation_r12 = -1; /* T_sidelinkUEInformation_r12 */ -static int hf_lte_rrc_sourceContextENDC_r15 = -1; /* T_sourceContextENDC_r15 */ +static int hf_lte_rrc_sourceContextEN_DC_r15 = -1; /* T_sourceContextEN_DC_r15 */ static int hf_lte_rrc_wlanConnectionStatusReport_r13 = -1; /* T_wlanConnectionStatusReport_r13 */ static int hf_lte_rrc_sourcePhysCellId = -1; /* PhysCellId */ static int hf_lte_rrc_targetCellShortMAC_I = -1; /* ShortMAC_I */ @@ -556,6 +583,9 @@ static int hf_lte_rrc_rrcConnectionReestablishmentReject = -1; /* RRCConnection static int hf_lte_rrc_rrcConnectionReject = -1; /* RRCConnectionReject */ static int hf_lte_rrc_rrcConnectionSetup = -1; /* RRCConnectionSetup */ static int hf_lte_rrc_messageClassExtension_05 = -1; /* T_messageClassExtension_05 */ +static int hf_lte_rrc_c2_01 = -1; /* T_c2_01 */ +static int hf_lte_rrc_rrcEarlyDataComplete_r15 = -1; /* RRCEarlyDataComplete_r15 */ +static int hf_lte_rrc_messageClassExtensionFuture_r15 = -1; /* T_messageClassExtensionFuture_r15 */ static int hf_lte_rrc_message_08 = -1; /* DL_DCCH_MessageType */ static int hf_lte_rrc_c1_13 = -1; /* T_c1_13 */ static int hf_lte_rrc_csfbParametersResponseCDMA2000 = -1; /* CSFBParametersResponseCDMA2000 */ @@ -577,9 +607,12 @@ static int hf_lte_rrc_c1_14 = -1; /* T_c1_14 */ static int hf_lte_rrc_rrcConnectionReestablishmentRequest = -1; /* RRCConnectionReestablishmentRequest */ static int hf_lte_rrc_rrcConnectionRequest = -1; /* RRCConnectionRequest */ static int hf_lte_rrc_messageClassExtension_07 = -1; /* T_messageClassExtension_07 */ -static int hf_lte_rrc_c2_01 = -1; /* T_c2_01 */ +static int hf_lte_rrc_c2_02 = -1; /* T_c2_02 */ static int hf_lte_rrc_rrcConnectionResumeRequest_r13 = -1; /* RRCConnectionResumeRequest_r13 */ static int hf_lte_rrc_messageClassExtensionFuture_r13 = -1; /* T_messageClassExtensionFuture_r13 */ +static int hf_lte_rrc_c3 = -1; /* T_c3 */ +static int hf_lte_rrc_rrcEarlyDataRequest_r15 = -1; /* RRCEarlyDataRequest_r15 */ +static int hf_lte_rrc_messageClassExtensionFuture_r15_01 = -1; /* T_messageClassExtensionFuture_r15_01 */ static int hf_lte_rrc_message_10 = -1; /* UL_DCCH_MessageType */ static int hf_lte_rrc_c1_15 = -1; /* T_c1_15 */ static int hf_lte_rrc_csfbParametersRequestCDMA2000 = -1; /* CSFBParametersRequestCDMA2000 */ @@ -599,7 +632,7 @@ static int hf_lte_rrc_rnReconfigurationComplete_r10 = -1; /* RNReconfigurationC static int hf_lte_rrc_mbmsCountingResponse_r10 = -1; /* MBMSCountingResponse_r10 */ static int hf_lte_rrc_interFreqRSTDMeasurementIndication_r10 = -1; /* InterFreqRSTDMeasurementIndication_r10 */ static int hf_lte_rrc_messageClassExtension_08 = -1; /* T_messageClassExtension_08 */ -static int hf_lte_rrc_c2_02 = -1; /* T_c2_02 */ +static int hf_lte_rrc_c2_03 = -1; /* T_c2_03 */ static int hf_lte_rrc_ueAssistanceInformation_r11 = -1; /* UEAssistanceInformation_r11 */ static int hf_lte_rrc_inDeviceCoexIndication_r11 = -1; /* InDeviceCoexIndication_r11 */ static int hf_lte_rrc_mbmsInterestIndication_r11_01 = -1; /* MBMSInterestIndication_r11 */ @@ -609,12 +642,14 @@ static int hf_lte_rrc_wlanConnectionStatusReport_r13_01 = -1; /* WLANConnection static int hf_lte_rrc_rrcConnectionResumeComplete_r13 = -1; /* RRCConnectionResumeComplete_r13 */ static int hf_lte_rrc_ulInformationTransferMRDC_r15 = -1; /* ULInformationTransferMRDC_r15 */ static int hf_lte_rrc_scgFailureInformationNR_r15 = -1; /* SCGFailureInformationNR_r15 */ +static int hf_lte_rrc_measReportAppLayer_r15 = -1; /* MeasReportAppLayer_r15 */ +static int hf_lte_rrc_failureInformation_r15 = -1; /* FailureInformation_r15 */ static int hf_lte_rrc_messageClassExtensionFuture_r11 = -1; /* T_messageClassExtensionFuture_r11 */ static int hf_lte_rrc_message_11 = -1; /* SC_MCCH_MessageType_r13 */ static int hf_lte_rrc_c1_16 = -1; /* T_c1_16 */ static int hf_lte_rrc_scptmConfiguration_r13 = -1; /* SCPTMConfiguration_r13 */ static int hf_lte_rrc_messageClassExtension_09 = -1; /* T_messageClassExtension_09 */ -static int hf_lte_rrc_c2_03 = -1; /* T_c2_03 */ +static int hf_lte_rrc_c2_04 = -1; /* T_c2_04 */ static int hf_lte_rrc_scptmConfiguration_BR_r14 = -1; /* SCPTMConfiguration_BR_r14 */ static int hf_lte_rrc_spare = -1; /* NULL */ static int hf_lte_rrc_messageClassExtensionFuture_r14 = -1; /* T_messageClassExtensionFuture_r14 */ @@ -624,9 +659,12 @@ static int hf_lte_rrc_c1_17 = -1; /* T_c1_17 */ static int hf_lte_rrc_counterCheck_r8 = -1; /* CounterCheck_r8_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_07 = -1; /* T_criticalExtensionsFuture_07 */ static int hf_lte_rrc_drb_CountMSB_InfoList = -1; /* DRB_CountMSB_InfoList */ -static int hf_lte_rrc_nonCriticalExtension_20 = -1; /* CounterCheck_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_21 = -1; /* T_nonCriticalExtension_08 */ +static int hf_lte_rrc_nonCriticalExtension_21 = -1; /* CounterCheck_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_22 = -1; /* CounterCheck_v1530_IEs */ +static int hf_lte_rrc_drb_CountMSB_InfoListExt_r15 = -1; /* DRB_CountMSB_InfoListExt_r15 */ +static int hf_lte_rrc_nonCriticalExtension_23 = -1; /* T_nonCriticalExtension_08 */ static int hf_lte_rrc_DRB_CountMSB_InfoList_item = -1; /* DRB_CountMSB_Info */ +static int hf_lte_rrc_DRB_CountMSB_InfoListExt_r15_item = -1; /* DRB_CountMSB_Info */ static int hf_lte_rrc_drb_Identity = -1; /* DRB_Identity */ static int hf_lte_rrc_countMSB_Uplink = -1; /* INTEGER_0_33554431 */ static int hf_lte_rrc_countMSB_Downlink = -1; /* INTEGER_0_33554431 */ @@ -634,61 +672,79 @@ static int hf_lte_rrc_criticalExtensions_08 = -1; /* T_criticalExtensions_08 */ static int hf_lte_rrc_counterCheckResponse_r8 = -1; /* CounterCheckResponse_r8_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_08 = -1; /* T_criticalExtensionsFuture_08 */ static int hf_lte_rrc_drb_CountInfoList = -1; /* DRB_CountInfoList */ -static int hf_lte_rrc_nonCriticalExtension_22 = -1; /* CounterCheckResponse_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_23 = -1; /* T_nonCriticalExtension_09 */ +static int hf_lte_rrc_nonCriticalExtension_24 = -1; /* CounterCheckResponse_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_25 = -1; /* CounterCheckResponse_v1530_IEs */ +static int hf_lte_rrc_drb_CountInfoListExt_r15 = -1; /* DRB_CountInfoListExt_r15 */ +static int hf_lte_rrc_nonCriticalExtension_26 = -1; /* T_nonCriticalExtension_09 */ static int hf_lte_rrc_DRB_CountInfoList_item = -1; /* DRB_CountInfo */ +static int hf_lte_rrc_DRB_CountInfoListExt_r15_item = -1; /* DRB_CountInfo */ static int hf_lte_rrc_count_Uplink = -1; /* INTEGER_0_4294967295 */ static int hf_lte_rrc_count_Downlink = -1; /* INTEGER_0_4294967295 */ static int hf_lte_rrc_criticalExtensions_09 = -1; /* T_criticalExtensions_09 */ static int hf_lte_rrc_csfbParametersRequestCDMA2000_r8 = -1; /* CSFBParametersRequestCDMA2000_r8_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_09 = -1; /* T_criticalExtensionsFuture_09 */ -static int hf_lte_rrc_nonCriticalExtension_24 = -1; /* CSFBParametersRequestCDMA2000_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_25 = -1; /* T_nonCriticalExtension_10 */ +static int hf_lte_rrc_nonCriticalExtension_27 = -1; /* CSFBParametersRequestCDMA2000_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_28 = -1; /* T_nonCriticalExtension_10 */ static int hf_lte_rrc_criticalExtensions_10 = -1; /* T_criticalExtensions_10 */ static int hf_lte_rrc_csfbParametersResponseCDMA2000_r8 = -1; /* CSFBParametersResponseCDMA2000_r8_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_10 = -1; /* T_criticalExtensionsFuture_10 */ static int hf_lte_rrc_rand = -1; /* RAND_CDMA2000 */ static int hf_lte_rrc_mobilityParameters = -1; /* MobilityParametersCDMA2000 */ -static int hf_lte_rrc_nonCriticalExtension_26 = -1; /* CSFBParametersResponseCDMA2000_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_27 = -1; /* T_nonCriticalExtension_11 */ +static int hf_lte_rrc_nonCriticalExtension_29 = -1; /* CSFBParametersResponseCDMA2000_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_30 = -1; /* T_nonCriticalExtension_11 */ static int hf_lte_rrc_criticalExtensions_11 = -1; /* T_criticalExtensions_11 */ static int hf_lte_rrc_c1_18 = -1; /* T_c1_18 */ static int hf_lte_rrc_dlInformationTransfer_r8 = -1; /* DLInformationTransfer_r8_IEs */ +static int hf_lte_rrc_dlInformationTransfer_r15 = -1; /* DLInformationTransfer_r15_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_11 = -1; /* T_criticalExtensionsFuture_11 */ static int hf_lte_rrc_dedicatedInfoType = -1; /* T_dedicatedInfoType */ static int hf_lte_rrc_dedicatedInfoNAS = -1; /* DedicatedInfoNAS */ static int hf_lte_rrc_dedicatedInfoCDMA2000_1XRTT = -1; /* DedicatedInfoCDMA2000 */ static int hf_lte_rrc_dedicatedInfoCDMA2000_HRPD = -1; /* DedicatedInfoCDMA2000 */ -static int hf_lte_rrc_nonCriticalExtension_28 = -1; /* DLInformationTransfer_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_29 = -1; /* T_nonCriticalExtension_12 */ +static int hf_lte_rrc_nonCriticalExtension_31 = -1; /* DLInformationTransfer_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_32 = -1; /* T_nonCriticalExtension_12 */ +static int hf_lte_rrc_dedicatedInfoType_r15 = -1; /* T_dedicatedInfoType_r15 */ +static int hf_lte_rrc_dedicatedInfoNAS_r15 = -1; /* DedicatedInfoNAS */ +static int hf_lte_rrc_dedicatedInfoCDMA2000_1XRTT_r15 = -1; /* DedicatedInfoCDMA2000 */ +static int hf_lte_rrc_dedicatedInfoCDMA2000_HRPD_r15 = -1; /* DedicatedInfoCDMA2000 */ +static int hf_lte_rrc_timeReferenceInfo_r15 = -1; /* TimeReferenceInfo_r15 */ +static int hf_lte_rrc_failedLogicalChannelInfo_r15 = -1; /* FailedLogicalChannelInfo_r15 */ +static int hf_lte_rrc_nonCriticalExtension_33 = -1; /* T_nonCriticalExtension_13 */ +static int hf_lte_rrc_failedLogicalChannelIdentity_r15 = -1; /* T_failedLogicalChannelIdentity_r15 */ +static int hf_lte_rrc_cellGroupIndication_r15 = -1; /* T_cellGroupIndication_r15 */ +static int hf_lte_rrc_logicalChannelIdentity_r15 = -1; /* INTEGER_1_10 */ +static int hf_lte_rrc_logicalChannelIdentityExt_r15 = -1; /* INTEGER_32_38 */ +static int hf_lte_rrc_failureType = -1; /* T_failureType */ static int hf_lte_rrc_criticalExtensions_12 = -1; /* T_criticalExtensions_12 */ static int hf_lte_rrc_c1_19 = -1; /* T_c1_19 */ static int hf_lte_rrc_handoverFromEUTRAPreparationRequest_r8 = -1; /* HandoverFromEUTRAPreparationRequest_r8_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_12 = -1; /* T_criticalExtensionsFuture_12 */ static int hf_lte_rrc_cdma2000_Type = -1; /* CDMA2000_Type */ -static int hf_lte_rrc_nonCriticalExtension_30 = -1; /* HandoverFromEUTRAPreparationRequest_v890_IEs */ -static int hf_lte_rrc_nonCriticalExtension_31 = -1; /* HandoverFromEUTRAPreparationRequest_v920_IEs */ +static int hf_lte_rrc_nonCriticalExtension_34 = -1; /* HandoverFromEUTRAPreparationRequest_v890_IEs */ +static int hf_lte_rrc_nonCriticalExtension_35 = -1; /* HandoverFromEUTRAPreparationRequest_v920_IEs */ static int hf_lte_rrc_concurrPrepCDMA2000_HRPD_r9 = -1; /* BOOLEAN */ -static int hf_lte_rrc_nonCriticalExtension_32 = -1; /* HandoverFromEUTRAPreparationRequest_v1020_IEs */ +static int hf_lte_rrc_nonCriticalExtension_36 = -1; /* HandoverFromEUTRAPreparationRequest_v1020_IEs */ static int hf_lte_rrc_dualRxTxRedirectIndicator_r10 = -1; /* T_dualRxTxRedirectIndicator_r10 */ static int hf_lte_rrc_redirectCarrierCDMA2000_1XRTT_r10 = -1; /* CarrierFreqCDMA2000 */ -static int hf_lte_rrc_nonCriticalExtension_33 = -1; /* T_nonCriticalExtension_13 */ +static int hf_lte_rrc_nonCriticalExtension_37 = -1; /* T_nonCriticalExtension_14 */ static int hf_lte_rrc_criticalExtensions_13 = -1; /* T_criticalExtensions_13 */ static int hf_lte_rrc_c1_20 = -1; /* T_c1_20 */ static int hf_lte_rrc_inDeviceCoexIndication_r11_01 = -1; /* InDeviceCoexIndication_r11_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_13 = -1; /* T_criticalExtensionsFuture_13 */ static int hf_lte_rrc_affectedCarrierFreqList_r11 = -1; /* AffectedCarrierFreqList_r11 */ static int hf_lte_rrc_tdm_AssistanceInfo_r11 = -1; /* TDM_AssistanceInfo_r11 */ -static int hf_lte_rrc_nonCriticalExtension_34 = -1; /* InDeviceCoexIndication_v11d0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_38 = -1; /* InDeviceCoexIndication_v11d0_IEs */ static int hf_lte_rrc_ul_CA_AssistanceInfo_r11 = -1; /* T_ul_CA_AssistanceInfo_r11 */ static int hf_lte_rrc_affectedCarrierFreqCombList_r11 = -1; /* AffectedCarrierFreqCombList_r11 */ static int hf_lte_rrc_victimSystemType_r11 = -1; /* VictimSystemType_r11 */ -static int hf_lte_rrc_nonCriticalExtension_35 = -1; /* InDeviceCoexIndication_v1310_IEs */ +static int hf_lte_rrc_nonCriticalExtension_39 = -1; /* InDeviceCoexIndication_v1310_IEs */ static int hf_lte_rrc_affectedCarrierFreqList_v1310 = -1; /* AffectedCarrierFreqList_v1310 */ static int hf_lte_rrc_affectedCarrierFreqCombList_r13 = -1; /* AffectedCarrierFreqCombList_r13 */ -static int hf_lte_rrc_nonCriticalExtension_36 = -1; /* InDeviceCoexIndication_v1360_IEs */ +static int hf_lte_rrc_nonCriticalExtension_40 = -1; /* InDeviceCoexIndication_v1360_IEs */ static int hf_lte_rrc_hardwareSharingProblem_r13 = -1; /* T_hardwareSharingProblem_r13 */ -static int hf_lte_rrc_nonCriticalExtension_37 = -1; /* T_nonCriticalExtension_14 */ +static int hf_lte_rrc_nonCriticalExtension_41 = -1; /* InDeviceCoexIndication_v1530_IEs */ +static int hf_lte_rrc_mrdc_AssistanceInfo_r15 = -1; /* MRDC_AssistanceInfo_r15 */ +static int hf_lte_rrc_nonCriticalExtension_42 = -1; /* T_nonCriticalExtension_15 */ static int hf_lte_rrc_AffectedCarrierFreqList_r11_item = -1; /* AffectedCarrierFreq_r11 */ static int hf_lte_rrc_AffectedCarrierFreqList_v1310_item = -1; /* AffectedCarrierFreq_v1310 */ static int hf_lte_rrc_carrierFreq_r11 = -1; /* MeasObjectId */ @@ -715,6 +771,15 @@ static int hf_lte_rrc_bds_r11 = -1; /* T_bds_r11 */ static int hf_lte_rrc_galileo_r11 = -1; /* T_galileo_r11 */ static int hf_lte_rrc_wlan_r11 = -1; /* T_wlan_r11 */ static int hf_lte_rrc_bluetooth_r11 = -1; /* T_bluetooth_r11 */ +static int hf_lte_rrc_affectedCarrierFreqCombInfoListMRDC_r15 = -1; /* SEQUENCE_SIZE_1_maxCombIDC_r11_OF_AffectedCarrierFreqCombInfoMRDC_r15 */ +static int hf_lte_rrc_affectedCarrierFreqCombInfoListMRDC_r15_item = -1; /* AffectedCarrierFreqCombInfoMRDC_r15 */ +static int hf_lte_rrc_victimSystemType_r15 = -1; /* VictimSystemType_r11 */ +static int hf_lte_rrc_interferenceDirectionMRDC_r15 = -1; /* T_interferenceDirectionMRDC_r15 */ +static int hf_lte_rrc_affectedCarrierFreqCombMRDC_r15 = -1; /* T_affectedCarrierFreqCombMRDC_r15 */ +static int hf_lte_rrc_affectedCarrierFreqCombEUTRA_r15 = -1; /* AffectedCarrierFreqComb_r15 */ +static int hf_lte_rrc_affectedCarrierFreqCombNR_r15 = -1; /* AffectedCarrierFreqCombNR_r15 */ +static int hf_lte_rrc_AffectedCarrierFreqComb_r15_item = -1; /* MeasObjectId_r13 */ +static int hf_lte_rrc_AffectedCarrierFreqCombNR_r15_item = -1; /* ARFCN_ValueNR_r15 */ static int hf_lte_rrc_criticalExtensions_14 = -1; /* T_criticalExtensions_14 */ static int hf_lte_rrc_c1_21 = -1; /* T_c1_21 */ static int hf_lte_rrc_interFreqRSTDMeasurementIndication_r10_01 = -1; /* InterFreqRSTDMeasurementIndication_r10_IEs */ @@ -723,11 +788,33 @@ static int hf_lte_rrc_rstd_InterFreqIndication_r10 = -1; /* T_rstd_InterFreqInd static int hf_lte_rrc_start = -1; /* T_start */ static int hf_lte_rrc_rstd_InterFreqInfoList_r10 = -1; /* RSTD_InterFreqInfoList_r10 */ static int hf_lte_rrc_stop = -1; /* NULL */ -static int hf_lte_rrc_nonCriticalExtension_38 = -1; /* T_nonCriticalExtension_15 */ +static int hf_lte_rrc_nonCriticalExtension_43 = -1; /* T_nonCriticalExtension_16 */ static int hf_lte_rrc_RSTD_InterFreqInfoList_r10_item = -1; /* RSTD_InterFreqInfo_r10 */ static int hf_lte_rrc_carrierFreq_r10 = -1; /* ARFCN_ValueEUTRA */ static int hf_lte_rrc_measPRS_Offset_r10 = -1; /* INTEGER_0_39 */ static int hf_lte_rrc_carrierFreq_v1090 = -1; /* ARFCN_ValueEUTRA_v9e0 */ +static int hf_lte_rrc_measPRS_Offset_r15 = -1; /* T_measPRS_Offset_r15 */ +static int hf_lte_rrc_rstd0_r15 = -1; /* INTEGER_0_79 */ +static int hf_lte_rrc_rstd1_r15 = -1; /* INTEGER_0_159 */ +static int hf_lte_rrc_rstd2_r15 = -1; /* INTEGER_0_319 */ +static int hf_lte_rrc_rstd3_r15 = -1; /* INTEGER_0_639 */ +static int hf_lte_rrc_rstd4_r15 = -1; /* INTEGER_0_1279 */ +static int hf_lte_rrc_rstd5_r15 = -1; /* INTEGER_0_159 */ +static int hf_lte_rrc_rstd6_r15 = -1; /* INTEGER_0_319 */ +static int hf_lte_rrc_rstd7_r15 = -1; /* INTEGER_0_639 */ +static int hf_lte_rrc_rstd8_r15 = -1; /* INTEGER_0_1279 */ +static int hf_lte_rrc_rstd9_r15 = -1; /* INTEGER_0_319 */ +static int hf_lte_rrc_rstd10_r15 = -1; /* INTEGER_0_639 */ +static int hf_lte_rrc_rstd11_r15 = -1; /* INTEGER_0_1279 */ +static int hf_lte_rrc_rstd12_r15 = -1; /* INTEGER_0_319 */ +static int hf_lte_rrc_rstd13_r15 = -1; /* INTEGER_0_639 */ +static int hf_lte_rrc_rstd14_r15 = -1; /* INTEGER_0_1279 */ +static int hf_lte_rrc_rstd15_r15 = -1; /* INTEGER_0_639 */ +static int hf_lte_rrc_rstd16_r15 = -1; /* INTEGER_0_1279 */ +static int hf_lte_rrc_rstd17_r15 = -1; /* INTEGER_0_639 */ +static int hf_lte_rrc_rstd18_r15 = -1; /* INTEGER_0_1279 */ +static int hf_lte_rrc_rstd19_r15 = -1; /* INTEGER_0_639 */ +static int hf_lte_rrc_rstd20_r15 = -1; /* INTEGER_0_1279 */ static int hf_lte_rrc_criticalExtensions_15 = -1; /* T_criticalExtensions_15 */ static int hf_lte_rrc_c1_22 = -1; /* T_c1_22 */ static int hf_lte_rrc_loggedMeasurementConfiguration_r10_01 = -1; /* LoggedMeasurementConfiguration_r10_IEs */ @@ -739,14 +826,17 @@ static int hf_lte_rrc_absoluteTimeInfo_r10 = -1; /* AbsoluteTimeInfo_r10 */ static int hf_lte_rrc_areaConfiguration_r10 = -1; /* AreaConfiguration_r10 */ static int hf_lte_rrc_loggingDuration_r10 = -1; /* LoggingDuration_r10 */ static int hf_lte_rrc_loggingInterval_r10 = -1; /* LoggingInterval_r10 */ -static int hf_lte_rrc_nonCriticalExtension_39 = -1; /* LoggedMeasurementConfiguration_v1080_IEs */ +static int hf_lte_rrc_nonCriticalExtension_44 = -1; /* LoggedMeasurementConfiguration_v1080_IEs */ static int hf_lte_rrc_lateNonCriticalExtension_r10 = -1; /* OCTET_STRING */ -static int hf_lte_rrc_nonCriticalExtension_40 = -1; /* LoggedMeasurementConfiguration_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_45 = -1; /* LoggedMeasurementConfiguration_v1130_IEs */ static int hf_lte_rrc_plmn_IdentityList_r11 = -1; /* PLMN_IdentityList3_r11 */ static int hf_lte_rrc_areaConfiguration_v1130 = -1; /* AreaConfiguration_v1130 */ -static int hf_lte_rrc_nonCriticalExtension_41 = -1; /* LoggedMeasurementConfiguration_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_46 = -1; /* LoggedMeasurementConfiguration_v1250_IEs */ static int hf_lte_rrc_targetMBSFN_AreaList_r12 = -1; /* TargetMBSFN_AreaList_r12 */ -static int hf_lte_rrc_nonCriticalExtension_42 = -1; /* T_nonCriticalExtension_16 */ +static int hf_lte_rrc_nonCriticalExtension_47 = -1; /* LoggedMeasurementConfiguration_v1530_IEs */ +static int hf_lte_rrc_bt_NameList_r15 = -1; /* BT_NameList_r15 */ +static int hf_lte_rrc_wlan_NameList_r15 = -1; /* WLAN_NameList_r15 */ +static int hf_lte_rrc_nonCriticalExtension_48 = -1; /* T_nonCriticalExtension_17 */ static int hf_lte_rrc_TargetMBSFN_AreaList_r12_item = -1; /* TargetMBSFN_Area_r12 */ static int hf_lte_rrc_mbsfn_AreaId_r12 = -1; /* MBSFN_AreaId_r12 */ static int hf_lte_rrc_carrierFreq_r12 = -1; /* ARFCN_ValueEUTRA_r9 */ @@ -754,13 +844,14 @@ static int hf_lte_rrc_dl_Bandwidth = -1; /* T_dl_Bandwidth */ static int hf_lte_rrc_phich_Config = -1; /* PHICH_Config */ static int hf_lte_rrc_systemFrameNumber = -1; /* T_systemFrameNumber */ static int hf_lte_rrc_schedulingInfoSIB1_BR_r13 = -1; /* INTEGER_0_31 */ -static int hf_lte_rrc_spare_01 = -1; /* BIT_STRING_SIZE_5 */ +static int hf_lte_rrc_systemInfoUnchanged_BR_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_spare_01 = -1; /* BIT_STRING_SIZE_4 */ static int hf_lte_rrc_dl_Bandwidth_MBMS_r14 = -1; /* T_dl_Bandwidth_MBMS_r14 */ static int hf_lte_rrc_systemFrameNumber_r14 = -1; /* BIT_STRING_SIZE_6 */ static int hf_lte_rrc_additionalNonMBSFNSubframes_r14 = -1; /* INTEGER_0_3 */ static int hf_lte_rrc_spare_02 = -1; /* BIT_STRING_SIZE_13 */ static int hf_lte_rrc_countingRequestList_r10 = -1; /* CountingRequestList_r10 */ -static int hf_lte_rrc_nonCriticalExtension_43 = -1; /* T_nonCriticalExtension_17 */ +static int hf_lte_rrc_nonCriticalExtension_49 = -1; /* T_nonCriticalExtension_18 */ static int hf_lte_rrc_CountingRequestList_r10_item = -1; /* CountingRequestInfo_r10 */ static int hf_lte_rrc_tmgi_r10 = -1; /* TMGI_r9 */ static int hf_lte_rrc_criticalExtensions_16 = -1; /* T_criticalExtensions_16 */ @@ -769,7 +860,7 @@ static int hf_lte_rrc_countingResponse_r10 = -1; /* MBMSCountingResponse_r10_IE static int hf_lte_rrc_criticalExtensionsFuture_16 = -1; /* T_criticalExtensionsFuture_16 */ static int hf_lte_rrc_mbsfn_AreaIndex_r10 = -1; /* INTEGER_0_maxMBSFN_Area_1 */ static int hf_lte_rrc_countingResponseList_r10 = -1; /* CountingResponseList_r10 */ -static int hf_lte_rrc_nonCriticalExtension_44 = -1; /* T_nonCriticalExtension_18 */ +static int hf_lte_rrc_nonCriticalExtension_50 = -1; /* T_nonCriticalExtension_19 */ static int hf_lte_rrc_CountingResponseList_r10_item = -1; /* CountingResponseInfo_r10 */ static int hf_lte_rrc_countingResponseService_r10 = -1; /* INTEGER_0_maxServiceCount_1 */ static int hf_lte_rrc_criticalExtensions_17 = -1; /* T_criticalExtensions_17 */ @@ -778,45 +869,53 @@ static int hf_lte_rrc_interestIndication_r11 = -1; /* MBMSInterestIndication_r1 static int hf_lte_rrc_criticalExtensionsFuture_17 = -1; /* T_criticalExtensionsFuture_17 */ static int hf_lte_rrc_mbms_FreqList_r11 = -1; /* CarrierFreqListMBMS_r11 */ static int hf_lte_rrc_mbms_Priority_r11 = -1; /* T_mbms_Priority_r11 */ -static int hf_lte_rrc_nonCriticalExtension_45 = -1; /* MBMSInterestIndication_v1310_IEs */ +static int hf_lte_rrc_nonCriticalExtension_51 = -1; /* MBMSInterestIndication_v1310_IEs */ static int hf_lte_rrc_mbms_Services_r13 = -1; /* MBMS_ServiceList_r13 */ -static int hf_lte_rrc_nonCriticalExtension_46 = -1; /* T_nonCriticalExtension_19 */ +static int hf_lte_rrc_nonCriticalExtension_52 = -1; /* T_nonCriticalExtension_20 */ static int hf_lte_rrc_commonSF_Alloc_r9 = -1; /* CommonSF_AllocPatternList_r9 */ static int hf_lte_rrc_commonSF_AllocPeriod_r9 = -1; /* T_commonSF_AllocPeriod_r9 */ static int hf_lte_rrc_pmch_InfoList_r9 = -1; /* PMCH_InfoList_r9 */ -static int hf_lte_rrc_nonCriticalExtension_47 = -1; /* MBSFNAreaConfiguration_v930_IEs */ -static int hf_lte_rrc_nonCriticalExtension_48 = -1; /* MBSFNAreaConfiguration_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_53 = -1; /* MBSFNAreaConfiguration_v930_IEs */ +static int hf_lte_rrc_nonCriticalExtension_54 = -1; /* MBSFNAreaConfiguration_v1250_IEs */ static int hf_lte_rrc_pmch_InfoListExt_r12 = -1; /* PMCH_InfoListExt_r12 */ -static int hf_lte_rrc_nonCriticalExtension_49 = -1; /* MBSFNAreaConfiguration_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_55 = -1; /* MBSFNAreaConfiguration_v1430_IEs */ static int hf_lte_rrc_commonSF_Alloc_r14 = -1; /* CommonSF_AllocPatternList_r14 */ -static int hf_lte_rrc_nonCriticalExtension_50 = -1; /* T_nonCriticalExtension_20 */ +static int hf_lte_rrc_nonCriticalExtension_56 = -1; /* T_nonCriticalExtension_21 */ static int hf_lte_rrc_CommonSF_AllocPatternList_r9_item = -1; /* MBSFN_SubframeConfig */ static int hf_lte_rrc_CommonSF_AllocPatternList_r14_item = -1; /* MBSFN_SubframeConfig_v1430 */ static int hf_lte_rrc_criticalExtensions_18 = -1; /* T_criticalExtensions_18 */ +static int hf_lte_rrc_measReportAppLayer_r15_01 = -1; /* MeasReportAppLayer_r15_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_18 = -1; /* T_criticalExtensionsFuture_18 */ +static int hf_lte_rrc_measReportAppLayerContainer_r15 = -1; /* OCTET_STRING_SIZE_1_8000 */ +static int hf_lte_rrc_serviceType = -1; /* T_serviceType */ +static int hf_lte_rrc_nonCriticalExtension_57 = -1; /* T_nonCriticalExtension_22 */ +static int hf_lte_rrc_criticalExtensions_19 = -1; /* T_criticalExtensions_19 */ static int hf_lte_rrc_c1_25 = -1; /* T_c1_25 */ static int hf_lte_rrc_measurementReport_r8 = -1; /* MeasurementReport_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_18 = -1; /* T_criticalExtensionsFuture_18 */ +static int hf_lte_rrc_criticalExtensionsFuture_19 = -1; /* T_criticalExtensionsFuture_19 */ static int hf_lte_rrc_measResults = -1; /* MeasResults */ -static int hf_lte_rrc_nonCriticalExtension_51 = -1; /* MeasurementReport_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_52 = -1; /* T_nonCriticalExtension_21 */ -static int hf_lte_rrc_criticalExtensions_19 = -1; /* T_criticalExtensions_19 */ +static int hf_lte_rrc_nonCriticalExtension_58 = -1; /* MeasurementReport_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_59 = -1; /* T_nonCriticalExtension_23 */ +static int hf_lte_rrc_criticalExtensions_20 = -1; /* T_criticalExtensions_20 */ static int hf_lte_rrc_c1_26 = -1; /* T_c1_26 */ static int hf_lte_rrc_mobilityFromEUTRACommand_r8 = -1; /* MobilityFromEUTRACommand_r8_IEs */ static int hf_lte_rrc_mobilityFromEUTRACommand_r9 = -1; /* MobilityFromEUTRACommand_r9_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_19 = -1; /* T_criticalExtensionsFuture_19 */ +static int hf_lte_rrc_criticalExtensionsFuture_20 = -1; /* T_criticalExtensionsFuture_20 */ static int hf_lte_rrc_cs_FallbackIndicator = -1; /* BOOLEAN */ static int hf_lte_rrc_purpose = -1; /* T_purpose */ static int hf_lte_rrc_handover = -1; /* Handover */ static int hf_lte_rrc_cellChangeOrder = -1; /* CellChangeOrder */ -static int hf_lte_rrc_nonCriticalExtension_53 = -1; /* MobilityFromEUTRACommand_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_54 = -1; /* MobilityFromEUTRACommand_v8d0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_60 = -1; /* MobilityFromEUTRACommand_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_61 = -1; /* MobilityFromEUTRACommand_v8d0_IEs */ static int hf_lte_rrc_bandIndicator = -1; /* BandIndicatorGERAN */ -static int hf_lte_rrc_nonCriticalExtension_55 = -1; /* T_nonCriticalExtension_22 */ +static int hf_lte_rrc_nonCriticalExtension_62 = -1; /* T_nonCriticalExtension_24 */ static int hf_lte_rrc_purpose_01 = -1; /* T_purpose_01 */ static int hf_lte_rrc_e_CSFB_r9 = -1; /* E_CSFB_r9 */ -static int hf_lte_rrc_nonCriticalExtension_56 = -1; /* MobilityFromEUTRACommand_v930_IEs */ -static int hf_lte_rrc_nonCriticalExtension_57 = -1; /* MobilityFromEUTRACommand_v960_IEs */ -static int hf_lte_rrc_nonCriticalExtension_58 = -1; /* T_nonCriticalExtension_23 */ +static int hf_lte_rrc_nonCriticalExtension_63 = -1; /* MobilityFromEUTRACommand_v930_IEs */ +static int hf_lte_rrc_nonCriticalExtension_64 = -1; /* MobilityFromEUTRACommand_v960_IEs */ +static int hf_lte_rrc_nonCriticalExtension_65 = -1; /* MobilityFromEUTRACommand_v1530_IEs */ +static int hf_lte_rrc_smtc_r15 = -1; /* MTC_SSB_NR_r15 */ +static int hf_lte_rrc_nonCriticalExtension_66 = -1; /* T_nonCriticalExtension_25 */ static int hf_lte_rrc_targetRAT_Type = -1; /* T_targetRAT_Type */ static int hf_lte_rrc_targetRAT_MessageContainer = -1; /* T_targetRAT_MessageContainer */ static int hf_lte_rrc_nas_SecurityParamFromEUTRA = -1; /* T_nas_SecurityParamFromEUTRA */ @@ -836,77 +935,81 @@ static int hf_lte_rrc_redirectCarrierCDMA2000_HRPD_r9 = -1; /* CarrierFreqCDMA2 static int hf_lte_rrc_pagingRecordList = -1; /* T_pagingRecordList */ static int hf_lte_rrc_systemInfoModification = -1; /* T_systemInfoModification */ static int hf_lte_rrc_etws_Indication = -1; /* T_etws_Indication */ -static int hf_lte_rrc_nonCriticalExtension_59 = -1; /* Paging_v890_IEs */ -static int hf_lte_rrc_nonCriticalExtension_60 = -1; /* Paging_v920_IEs */ +static int hf_lte_rrc_nonCriticalExtension_67 = -1; /* Paging_v890_IEs */ +static int hf_lte_rrc_nonCriticalExtension_68 = -1; /* Paging_v920_IEs */ static int hf_lte_rrc_cmas_Indication_r9 = -1; /* T_cmas_Indication_r9 */ -static int hf_lte_rrc_nonCriticalExtension_61 = -1; /* Paging_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_69 = -1; /* Paging_v1130_IEs */ static int hf_lte_rrc_eab_ParamModification_r11 = -1; /* T_eab_ParamModification_r11 */ -static int hf_lte_rrc_nonCriticalExtension_62 = -1; /* Paging_v1310_IEs */ +static int hf_lte_rrc_nonCriticalExtension_70 = -1; /* Paging_v1310_IEs */ static int hf_lte_rrc_redistributionIndication_r13 = -1; /* T_redistributionIndication_r13 */ static int hf_lte_rrc_systemInfoModification_eDRX_r13 = -1; /* T_systemInfoModification_eDRX_r13 */ -static int hf_lte_rrc_nonCriticalExtension_63 = -1; /* T_nonCriticalExtension_24 */ +static int hf_lte_rrc_nonCriticalExtension_71 = -1; /* Paging_v1530_IEs */ +static int hf_lte_rrc_accessType = -1; /* T_accessType */ +static int hf_lte_rrc_nonCriticalExtension_72 = -1; /* T_nonCriticalExtension_26 */ static int hf_lte_rrc_PagingRecordList_item = -1; /* PagingRecord */ static int hf_lte_rrc_ue_Identity = -1; /* PagingUE_Identity */ static int hf_lte_rrc_cn_Domain = -1; /* T_cn_Domain */ static int hf_lte_rrc_s_TMSI = -1; /* S_TMSI */ static int hf_lte_rrc_imsi = -1; /* IMSI */ +static int hf_lte_rrc_ng_5G_S_TMSI_r15 = -1; /* NG_5G_S_TMSI_r15 */ +static int hf_lte_rrc_i_RNTI_r15 = -1; /* I_RNTI_r15 */ static int hf_lte_rrc_IMSI_item = -1; /* IMSI_Digit */ -static int hf_lte_rrc_criticalExtensions_20 = -1; /* T_criticalExtensions_20 */ +static int hf_lte_rrc_criticalExtensions_21 = -1; /* T_criticalExtensions_21 */ static int hf_lte_rrc_c1_27 = -1; /* T_c1_27 */ static int hf_lte_rrc_proximityIndication_r9_01 = -1; /* ProximityIndication_r9_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_20 = -1; /* T_criticalExtensionsFuture_20 */ +static int hf_lte_rrc_criticalExtensionsFuture_21 = -1; /* T_criticalExtensionsFuture_21 */ static int hf_lte_rrc_type_r9 = -1; /* T_type_r9 */ static int hf_lte_rrc_carrierFreq_r9 = -1; /* T_carrierFreq_r9 */ static int hf_lte_rrc_eutra_r9 = -1; /* ARFCN_ValueEUTRA */ static int hf_lte_rrc_utra_r9 = -1; /* ARFCN_ValueUTRA */ static int hf_lte_rrc_eutra2_v9e0 = -1; /* ARFCN_ValueEUTRA_v9e0 */ -static int hf_lte_rrc_nonCriticalExtension_64 = -1; /* ProximityIndication_v930_IEs */ -static int hf_lte_rrc_nonCriticalExtension_65 = -1; /* T_nonCriticalExtension_25 */ -static int hf_lte_rrc_criticalExtensions_21 = -1; /* T_criticalExtensions_21 */ +static int hf_lte_rrc_nonCriticalExtension_73 = -1; /* ProximityIndication_v930_IEs */ +static int hf_lte_rrc_nonCriticalExtension_74 = -1; /* T_nonCriticalExtension_27 */ +static int hf_lte_rrc_criticalExtensions_22 = -1; /* T_criticalExtensions_22 */ static int hf_lte_rrc_c1_28 = -1; /* T_c1_28 */ static int hf_lte_rrc_rnReconfiguration_r10_01 = -1; /* RNReconfiguration_r10_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_21 = -1; /* T_criticalExtensionsFuture_21 */ +static int hf_lte_rrc_criticalExtensionsFuture_22 = -1; /* T_criticalExtensionsFuture_22 */ static int hf_lte_rrc_rn_SystemInfo_r10 = -1; /* RN_SystemInfo_r10 */ static int hf_lte_rrc_rn_SubframeConfig_r10 = -1; /* RN_SubframeConfig_r10 */ -static int hf_lte_rrc_nonCriticalExtension_66 = -1; /* T_nonCriticalExtension_26 */ +static int hf_lte_rrc_nonCriticalExtension_75 = -1; /* T_nonCriticalExtension_28 */ static int hf_lte_rrc_systemInformationBlockType1_r10 = -1; /* T_systemInformationBlockType1_r10 */ static int hf_lte_rrc_systemInformationBlockType2_r10 = -1; /* SystemInformationBlockType2 */ -static int hf_lte_rrc_criticalExtensions_22 = -1; /* T_criticalExtensions_22 */ +static int hf_lte_rrc_criticalExtensions_23 = -1; /* T_criticalExtensions_23 */ static int hf_lte_rrc_c1_29 = -1; /* T_c1_29 */ static int hf_lte_rrc_rnReconfigurationComplete_r10_01 = -1; /* RNReconfigurationComplete_r10_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_22 = -1; /* T_criticalExtensionsFuture_22 */ -static int hf_lte_rrc_nonCriticalExtension_67 = -1; /* T_nonCriticalExtension_27 */ -static int hf_lte_rrc_criticalExtensions_23 = -1; /* T_criticalExtensions_23 */ +static int hf_lte_rrc_criticalExtensionsFuture_23 = -1; /* T_criticalExtensionsFuture_23 */ +static int hf_lte_rrc_nonCriticalExtension_76 = -1; /* T_nonCriticalExtension_29 */ +static int hf_lte_rrc_criticalExtensions_24 = -1; /* T_criticalExtensions_24 */ static int hf_lte_rrc_c1_30 = -1; /* T_c1_30 */ static int hf_lte_rrc_rrcConnectionReconfiguration_r8 = -1; /* RRCConnectionReconfiguration_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_23 = -1; /* T_criticalExtensionsFuture_23 */ +static int hf_lte_rrc_criticalExtensionsFuture_24 = -1; /* T_criticalExtensionsFuture_24 */ static int hf_lte_rrc_measConfig = -1; /* MeasConfig */ static int hf_lte_rrc_mobilityControlInfo = -1; /* MobilityControlInfo */ static int hf_lte_rrc_dedicatedInfoNASList = -1; /* SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS */ static int hf_lte_rrc_dedicatedInfoNASList_item = -1; /* DedicatedInfoNAS */ static int hf_lte_rrc_radioResourceConfigDedicated = -1; /* RadioResourceConfigDedicated */ static int hf_lte_rrc_securityConfigHO = -1; /* SecurityConfigHO */ -static int hf_lte_rrc_nonCriticalExtension_68 = -1; /* RRCConnectionReconfiguration_v890_IEs */ +static int hf_lte_rrc_nonCriticalExtension_77 = -1; /* RRCConnectionReconfiguration_v890_IEs */ static int hf_lte_rrc_lateNonCriticalExtension_02 = -1; /* T_lateNonCriticalExtension_01 */ -static int hf_lte_rrc_nonCriticalExtension_69 = -1; /* RRCConnectionReconfiguration_v920_IEs */ -static int hf_lte_rrc_nonCriticalExtension_70 = -1; /* RRCConnectionReconfiguration_v10i0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_71 = -1; /* RRCConnectionReconfiguration_v10l0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_78 = -1; /* RRCConnectionReconfiguration_v920_IEs */ +static int hf_lte_rrc_nonCriticalExtension_79 = -1; /* RRCConnectionReconfiguration_v10i0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_80 = -1; /* RRCConnectionReconfiguration_v10l0_IEs */ static int hf_lte_rrc_mobilityControlInfo_v10l0 = -1; /* MobilityControlInfo_v10l0 */ static int hf_lte_rrc_sCellToAddModList_v10l0 = -1; /* SCellToAddModList_v10l0 */ -static int hf_lte_rrc_nonCriticalExtension_72 = -1; /* RRCConnectionReconfiguration_v12f0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_81 = -1; /* RRCConnectionReconfiguration_v12f0_IEs */ static int hf_lte_rrc_scg_Configuration_v12f0 = -1; /* SCG_Configuration_v12f0 */ -static int hf_lte_rrc_nonCriticalExtension_73 = -1; /* RRCConnectionReconfiguration_v1370_IEs */ +static int hf_lte_rrc_nonCriticalExtension_82 = -1; /* RRCConnectionReconfiguration_v1370_IEs */ static int hf_lte_rrc_radioResourceConfigDedicated_v1370 = -1; /* RadioResourceConfigDedicated_v1370 */ static int hf_lte_rrc_sCellToAddModListExt_v1370 = -1; /* SCellToAddModListExt_v1370 */ -static int hf_lte_rrc_nonCriticalExtension_74 = -1; /* T_nonCriticalExtension_28 */ +static int hf_lte_rrc_nonCriticalExtension_83 = -1; /* T_nonCriticalExtension_30 */ static int hf_lte_rrc_otherConfig_r9 = -1; /* OtherConfig_r9 */ static int hf_lte_rrc_fullConfig_r9 = -1; /* T_fullConfig_r9 */ -static int hf_lte_rrc_nonCriticalExtension_75 = -1; /* RRCConnectionReconfiguration_v1020_IEs */ +static int hf_lte_rrc_nonCriticalExtension_84 = -1; /* RRCConnectionReconfiguration_v1020_IEs */ static int hf_lte_rrc_sCellToReleaseList_r10 = -1; /* SCellToReleaseList_r10 */ static int hf_lte_rrc_sCellToAddModList_r10 = -1; /* SCellToAddModList_r10 */ -static int hf_lte_rrc_nonCriticalExtension_76 = -1; /* RRCConnectionReconfiguration_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_85 = -1; /* RRCConnectionReconfiguration_v1130_IEs */ static int hf_lte_rrc_systemInformationBlockType1Dedicated_r11 = -1; /* T_systemInformationBlockType1Dedicated_r11 */ -static int hf_lte_rrc_nonCriticalExtension_77 = -1; /* RRCConnectionReconfiguration_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_86 = -1; /* RRCConnectionReconfiguration_v1250_IEs */ static int hf_lte_rrc_wlan_OffloadInfo_r12 = -1; /* T_wlan_OffloadInfo_r12 */ static int hf_lte_rrc_release = -1; /* NULL */ static int hf_lte_rrc_setup = -1; /* T_setup */ @@ -916,18 +1019,18 @@ static int hf_lte_rrc_scg_Configuration_r12 = -1; /* SCG_Configuration_r12 */ static int hf_lte_rrc_sl_SyncTxControl_r12 = -1; /* SL_SyncTxControl_r12 */ static int hf_lte_rrc_sl_DiscConfig_r12 = -1; /* SL_DiscConfig_r12 */ static int hf_lte_rrc_sl_CommConfig_r12 = -1; /* SL_CommConfig_r12 */ -static int hf_lte_rrc_nonCriticalExtension_78 = -1; /* RRCConnectionReconfiguration_v1310_IEs */ +static int hf_lte_rrc_nonCriticalExtension_87 = -1; /* RRCConnectionReconfiguration_v1310_IEs */ static int hf_lte_rrc_sCellToReleaseListExt_r13 = -1; /* SCellToReleaseListExt_r13 */ static int hf_lte_rrc_sCellToAddModListExt_r13 = -1; /* SCellToAddModListExt_r13 */ static int hf_lte_rrc_lwa_Configuration_r13 = -1; /* LWA_Configuration_r13 */ static int hf_lte_rrc_lwip_Configuration_r13 = -1; /* LWIP_Configuration_r13 */ static int hf_lte_rrc_rclwi_Configuration_r13 = -1; /* RCLWI_Configuration_r13 */ -static int hf_lte_rrc_nonCriticalExtension_79 = -1; /* RRCConnectionReconfiguration_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_88 = -1; /* RRCConnectionReconfiguration_v1430_IEs */ static int hf_lte_rrc_sl_V2X_ConfigDedicated_r14 = -1; /* SL_V2X_ConfigDedicated_r14 */ static int hf_lte_rrc_sCellToAddModListExt_v1430 = -1; /* SCellToAddModListExt_v1430 */ static int hf_lte_rrc_perCC_GapIndicationRequest_r14 = -1; /* T_perCC_GapIndicationRequest_r14 */ static int hf_lte_rrc_systemInformationBlockType2Dedicated_r14 = -1; /* T_systemInformationBlockType2Dedicated_r14 */ -static int hf_lte_rrc_nonCriticalExtension_80 = -1; /* RRCConnectionReconfiguration_v1510_IEs */ +static int hf_lte_rrc_nonCriticalExtension_89 = -1; /* RRCConnectionReconfiguration_v1510_IEs */ static int hf_lte_rrc_nr_Config_r15 = -1; /* T_nr_Config_r15 */ static int hf_lte_rrc_setup_01 = -1; /* T_setup_01 */ static int hf_lte_rrc_endc_ReleaseAndAdd_r15 = -1; /* BOOLEAN */ @@ -940,7 +1043,14 @@ static int hf_lte_rrc_tdm_PatternConfig_r15 = -1; /* T_tdm_PatternConfig_r15 */ static int hf_lte_rrc_setup_02 = -1; /* T_setup_02 */ static int hf_lte_rrc_subframeAssignment_r15 = -1; /* SubframeAssignment_r15 */ static int hf_lte_rrc_harq_Offset_r15 = -1; /* INTEGER_0_9 */ -static int hf_lte_rrc_nonCriticalExtension_81 = -1; /* T_nonCriticalExtension_29 */ +static int hf_lte_rrc_nonCriticalExtension_90 = -1; /* RRCConnectionReconfiguration_v1530_IEs */ +static int hf_lte_rrc_securityConfigHO_v1530 = -1; /* SecurityConfigHO_v1530 */ +static int hf_lte_rrc_sCellGroupToReleaseList_r15 = -1; /* SCellGroupToReleaseList_r15 */ +static int hf_lte_rrc_sCellGroupToAddModList_r15 = -1; /* SCellGroupToAddModList_r15 */ +static int hf_lte_rrc_dedicatedInfoNASList_r15 = -1; /* SEQUENCE_SIZE_1_maxDRB_r15_OF_DedicatedInfoNAS */ +static int hf_lte_rrc_dedicatedInfoNASList_r15_item = -1; /* DedicatedInfoNAS */ +static int hf_lte_rrc_p_MaxUE_FR1_r15 = -1; /* P_Max */ +static int hf_lte_rrc_nonCriticalExtension_91 = -1; /* T_nonCriticalExtension_31 */ static int hf_lte_rrc_networkControlledSyncTx_r12 = -1; /* T_networkControlledSyncTx_r12 */ static int hf_lte_rrc_cellIdentification_r12_01 = -1; /* T_cellIdentification_r12_01 */ static int hf_lte_rrc_radioResourceConfigCommonPSCell_r12 = -1; /* RadioResourceConfigCommonPSCell_r12 */ @@ -957,12 +1067,14 @@ static int hf_lte_rrc_SCellToAddModList_v10l0_item = -1; /* SCellToAddMod_v10l0 static int hf_lte_rrc_SCellToAddModListExt_r13_item = -1; /* SCellToAddModExt_r13 */ static int hf_lte_rrc_SCellToAddModListExt_v1370_item = -1; /* SCellToAddModExt_v1370 */ static int hf_lte_rrc_SCellToAddModListExt_v1430_item = -1; /* SCellToAddModExt_v1430 */ +static int hf_lte_rrc_SCellGroupToAddModList_r15_item = -1; /* SCellGroupToAddMod_r15 */ static int hf_lte_rrc_sCellIndex_r10 = -1; /* SCellIndex_r10 */ static int hf_lte_rrc_cellIdentification_r10 = -1; /* T_cellIdentification_r10 */ static int hf_lte_rrc_radioResourceConfigCommonSCell_r10 = -1; /* RadioResourceConfigCommonSCell_r10 */ static int hf_lte_rrc_radioResourceConfigDedicatedSCell_r10 = -1; /* RadioResourceConfigDedicatedSCell_r10 */ static int hf_lte_rrc_antennaInfoDedicatedSCell_v10i0 = -1; /* AntennaInfoDedicated_v10i0 */ static int hf_lte_rrc_srs_SwitchFromServCellIndex_r14 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_sCellState_r15 = -1; /* T_sCellState_r15 */ static int hf_lte_rrc_radioResourceConfigCommonSCell_v10l0 = -1; /* RadioResourceConfigCommonSCell_v10l0 */ static int hf_lte_rrc_cellIdentification_r13 = -1; /* T_cellIdentification_r13 */ static int hf_lte_rrc_physCellId_r13 = -1; /* PhysCellId */ @@ -971,8 +1083,17 @@ static int hf_lte_rrc_radioResourceConfigCommonSCell_r13 = -1; /* RadioResource static int hf_lte_rrc_radioResourceConfigDedicatedSCell_r13 = -1; /* RadioResourceConfigDedicatedSCell_r10 */ static int hf_lte_rrc_antennaInfoDedicatedSCell_r13 = -1; /* AntennaInfoDedicated_v10i0 */ static int hf_lte_rrc_radioResourceConfigCommonSCell_v1370 = -1; /* RadioResourceConfigCommonSCell_v10l0 */ +static int hf_lte_rrc_sCellState_r15_01 = -1; /* T_sCellState_r15_01 */ +static int hf_lte_rrc_sCellGroupIndex_r15 = -1; /* SCellGroupIndex_r15 */ +static int hf_lte_rrc_sCellConfigCommon_r15 = -1; /* SCellConfigCommon_r15 */ +static int hf_lte_rrc_sCellToReleaseList_r15 = -1; /* SCellToReleaseListExt_r13 */ +static int hf_lte_rrc_sCellToAddModList_r15 = -1; /* SCellToAddModListExt_r13 */ static int hf_lte_rrc_SCellToReleaseList_r10_item = -1; /* SCellIndex_r10 */ static int hf_lte_rrc_SCellToReleaseListExt_r13_item = -1; /* SCellIndex_r13 */ +static int hf_lte_rrc_SCellGroupToReleaseList_r15_item = -1; /* SCellGroupIndex_r15 */ +static int hf_lte_rrc_radioResourceConfigCommonSCell_r15 = -1; /* RadioResourceConfigCommonSCell_r10 */ +static int hf_lte_rrc_radioResourceConfigDedicatedSCell_r15 = -1; /* RadioResourceConfigDedicatedSCell_r10 */ +static int hf_lte_rrc_antennaInfoDedicatedSCell_r15 = -1; /* AntennaInfoDedicated_v10i0 */ static int hf_lte_rrc_setup_03 = -1; /* T_setup_03 */ static int hf_lte_rrc_scg_ConfigPartMCG_r12 = -1; /* T_scg_ConfigPartMCG_r12 */ static int hf_lte_rrc_scg_Counter_r12 = -1; /* INTEGER_0_65535 */ @@ -986,6 +1107,8 @@ static int hf_lte_rrc_mobilityControlInfoSCG_r12 = -1; /* MobilityControlInfoSC static int hf_lte_rrc_sCellToAddModListSCG_Ext_r13_01 = -1; /* SCellToAddModListExt_r13 */ static int hf_lte_rrc_sCellToAddModListSCG_Ext_v1370 = -1; /* SCellToAddModListExt_v1370 */ static int hf_lte_rrc_pSCellToAddMod_v1440 = -1; /* PSCellToAddMod_v1440 */ +static int hf_lte_rrc_sCellGroupToReleaseListSCG_r15 = -1; /* SCellGroupToReleaseList_r15 */ +static int hf_lte_rrc_sCellGroupToAddModListSCG_r15 = -1; /* SCellGroupToAddModList_r15 */ static int hf_lte_rrc_pSCellToAddMod_v12f0 = -1; /* PSCellToAddMod_v12f0 */ static int hf_lte_rrc_sCellToAddModListSCG_v12f0 = -1; /* SCellToAddModList_v10l0 */ static int hf_lte_rrc_handoverType = -1; /* T_handoverType */ @@ -995,93 +1118,114 @@ static int hf_lte_rrc_keyChangeIndicator = -1; /* BOOLEAN */ static int hf_lte_rrc_nextHopChainingCount = -1; /* NextHopChainingCount */ static int hf_lte_rrc_interRAT = -1; /* T_interRAT */ static int hf_lte_rrc_nas_SecurityParamToEUTRA = -1; /* T_nas_SecurityParamToEUTRA */ -static int hf_lte_rrc_criticalExtensions_24 = -1; /* T_criticalExtensions_24 */ +static int hf_lte_rrc_handoverType_v1530 = -1; /* T_handoverType_v1530 */ +static int hf_lte_rrc_intra5GC_r15 = -1; /* T_intra5GC_r15 */ +static int hf_lte_rrc_securityAlgorithmConfig_r15 = -1; /* SecurityAlgorithmConfig */ +static int hf_lte_rrc_keyChangeIndicator_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_nextHopChainingCount_r15 = -1; /* NextHopChainingCount */ +static int hf_lte_rrc_nas_Container_r15 = -1; /* OCTET_STRING */ +static int hf_lte_rrc_ngc_ToEPC_r15 = -1; /* T_ngc_ToEPC_r15 */ +static int hf_lte_rrc_epc_ToNGC_r15 = -1; /* T_epc_ToNGC_r15 */ +static int hf_lte_rrc_criticalExtensions_25 = -1; /* T_criticalExtensions_25 */ static int hf_lte_rrc_rrcConnectionReconfigurationComplete_r8 = -1; /* RRCConnectionReconfigurationComplete_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_24 = -1; /* T_criticalExtensionsFuture_24 */ -static int hf_lte_rrc_nonCriticalExtension_82 = -1; /* RRCConnectionReconfigurationComplete_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_83 = -1; /* RRCConnectionReconfigurationComplete_v1020_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_25 = -1; /* T_criticalExtensionsFuture_25 */ +static int hf_lte_rrc_nonCriticalExtension_92 = -1; /* RRCConnectionReconfigurationComplete_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_93 = -1; /* RRCConnectionReconfigurationComplete_v1020_IEs */ static int hf_lte_rrc_rlf_InfoAvailable_r10 = -1; /* T_rlf_InfoAvailable_r10 */ static int hf_lte_rrc_logMeasAvailable_r10 = -1; /* T_logMeasAvailable_r10 */ -static int hf_lte_rrc_nonCriticalExtension_84 = -1; /* RRCConnectionReconfigurationComplete_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_94 = -1; /* RRCConnectionReconfigurationComplete_v1130_IEs */ static int hf_lte_rrc_connEstFailInfoAvailable_r11 = -1; /* T_connEstFailInfoAvailable_r11 */ -static int hf_lte_rrc_nonCriticalExtension_85 = -1; /* RRCConnectionReconfigurationComplete_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_95 = -1; /* RRCConnectionReconfigurationComplete_v1250_IEs */ static int hf_lte_rrc_logMeasAvailableMBSFN_r12 = -1; /* T_logMeasAvailableMBSFN_r12 */ -static int hf_lte_rrc_nonCriticalExtension_86 = -1; /* RRCConnectionReconfigurationComplete_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_96 = -1; /* RRCConnectionReconfigurationComplete_v1430_IEs */ static int hf_lte_rrc_perCC_GapIndicationList_r14 = -1; /* PerCC_GapIndicationList_r14 */ static int hf_lte_rrc_numFreqEffective_r14 = -1; /* INTEGER_1_12 */ static int hf_lte_rrc_numFreqEffectiveReduced_r14 = -1; /* INTEGER_1_12 */ -static int hf_lte_rrc_nonCriticalExtension_87 = -1; /* RRCConnectionReconfigurationComplete_v1510_IEs */ +static int hf_lte_rrc_nonCriticalExtension_97 = -1; /* RRCConnectionReconfigurationComplete_v1510_IEs */ static int hf_lte_rrc_scg_ConfigResponseNR_r15 = -1; /* T_scg_ConfigResponseNR_r15 */ -static int hf_lte_rrc_nonCriticalExtension_88 = -1; /* T_nonCriticalExtension_30 */ -static int hf_lte_rrc_criticalExtensions_25 = -1; /* T_criticalExtensions_25 */ +static int hf_lte_rrc_nonCriticalExtension_98 = -1; /* RRCConnectionReconfigurationComplete_v1530_IEs */ +static int hf_lte_rrc_logMeasAvailableBT_r15 = -1; /* T_logMeasAvailableBT_r15 */ +static int hf_lte_rrc_logMeasAvailableWLAN_r15 = -1; /* T_logMeasAvailableWLAN_r15 */ +static int hf_lte_rrc_flightPathInfoAvailable_r15 = -1; /* T_flightPathInfoAvailable_r15 */ +static int hf_lte_rrc_nonCriticalExtension_99 = -1; /* T_nonCriticalExtension_32 */ +static int hf_lte_rrc_criticalExtensions_26 = -1; /* T_criticalExtensions_26 */ static int hf_lte_rrc_c1_31 = -1; /* T_c1_31 */ static int hf_lte_rrc_rrcConnectionReestablishment_r8 = -1; /* RRCConnectionReestablishment_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_25 = -1; /* T_criticalExtensionsFuture_25 */ -static int hf_lte_rrc_nonCriticalExtension_89 = -1; /* RRCConnectionReestablishment_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_90 = -1; /* T_nonCriticalExtension_31 */ -static int hf_lte_rrc_criticalExtensions_26 = -1; /* T_criticalExtensions_26 */ -static int hf_lte_rrc_rrcConnectionReestablishmentComplete_r8 = -1; /* RRCConnectionReestablishmentComplete_r8_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_26 = -1; /* T_criticalExtensionsFuture_26 */ -static int hf_lte_rrc_nonCriticalExtension_91 = -1; /* RRCConnectionReestablishmentComplete_v920_IEs */ +static int hf_lte_rrc_nonCriticalExtension_100 = -1; /* RRCConnectionReestablishment_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_101 = -1; /* T_nonCriticalExtension_33 */ +static int hf_lte_rrc_criticalExtensions_27 = -1; /* T_criticalExtensions_27 */ +static int hf_lte_rrc_rrcConnectionReestablishmentComplete_r8 = -1; /* RRCConnectionReestablishmentComplete_r8_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_27 = -1; /* T_criticalExtensionsFuture_27 */ +static int hf_lte_rrc_nonCriticalExtension_102 = -1; /* RRCConnectionReestablishmentComplete_v920_IEs */ static int hf_lte_rrc_rlf_InfoAvailable_r9 = -1; /* T_rlf_InfoAvailable_r9 */ -static int hf_lte_rrc_nonCriticalExtension_92 = -1; /* RRCConnectionReestablishmentComplete_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_93 = -1; /* RRCConnectionReestablishmentComplete_v1020_IEs */ +static int hf_lte_rrc_nonCriticalExtension_103 = -1; /* RRCConnectionReestablishmentComplete_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_104 = -1; /* RRCConnectionReestablishmentComplete_v1020_IEs */ static int hf_lte_rrc_logMeasAvailable_r10_01 = -1; /* T_logMeasAvailable_r10_01 */ -static int hf_lte_rrc_nonCriticalExtension_94 = -1; /* RRCConnectionReestablishmentComplete_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_105 = -1; /* RRCConnectionReestablishmentComplete_v1130_IEs */ static int hf_lte_rrc_connEstFailInfoAvailable_r11_01 = -1; /* T_connEstFailInfoAvailable_r11_01 */ -static int hf_lte_rrc_nonCriticalExtension_95 = -1; /* RRCConnectionReestablishmentComplete_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_106 = -1; /* RRCConnectionReestablishmentComplete_v1250_IEs */ static int hf_lte_rrc_logMeasAvailableMBSFN_r12_01 = -1; /* T_logMeasAvailableMBSFN_r12_01 */ -static int hf_lte_rrc_nonCriticalExtension_96 = -1; /* T_nonCriticalExtension_32 */ -static int hf_lte_rrc_criticalExtensions_27 = -1; /* T_criticalExtensions_27 */ -static int hf_lte_rrc_rrcConnectionReestablishmentReject_r8 = -1; /* RRCConnectionReestablishmentReject_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_27 = -1; /* T_criticalExtensionsFuture_27 */ -static int hf_lte_rrc_nonCriticalExtension_97 = -1; /* RRCConnectionReestablishmentReject_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_98 = -1; /* T_nonCriticalExtension_33 */ +static int hf_lte_rrc_nonCriticalExtension_107 = -1; /* RRCConnectionReestablishmentComplete_v1530_IEs */ +static int hf_lte_rrc_logMeasAvailableBT_r15_01 = -1; /* T_logMeasAvailableBT_r15_01 */ +static int hf_lte_rrc_logMeasAvailableWLAN_r15_01 = -1; /* T_logMeasAvailableWLAN_r15_01 */ +static int hf_lte_rrc_flightPathInfoAvailable_r15_01 = -1; /* T_flightPathInfoAvailable_r15_01 */ +static int hf_lte_rrc_nonCriticalExtension_108 = -1; /* T_nonCriticalExtension_34 */ static int hf_lte_rrc_criticalExtensions_28 = -1; /* T_criticalExtensions_28 */ -static int hf_lte_rrc_rrcConnectionReestablishmentRequest_r8 = -1; /* RRCConnectionReestablishmentRequest_r8_IEs */ +static int hf_lte_rrc_rrcConnectionReestablishmentReject_r8 = -1; /* RRCConnectionReestablishmentReject_r8_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_28 = -1; /* T_criticalExtensionsFuture_28 */ +static int hf_lte_rrc_nonCriticalExtension_109 = -1; /* RRCConnectionReestablishmentReject_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_110 = -1; /* T_nonCriticalExtension_35 */ +static int hf_lte_rrc_criticalExtensions_29 = -1; /* T_criticalExtensions_29 */ +static int hf_lte_rrc_rrcConnectionReestablishmentRequest_r8 = -1; /* RRCConnectionReestablishmentRequest_r8_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_29 = -1; /* T_criticalExtensionsFuture_29 */ static int hf_lte_rrc_ue_Identity_01 = -1; /* ReestabUE_Identity */ static int hf_lte_rrc_reestablishmentCause = -1; /* ReestablishmentCause */ static int hf_lte_rrc_spare_03 = -1; /* BIT_STRING_SIZE_2 */ static int hf_lte_rrc_c_RNTI = -1; /* C_RNTI */ static int hf_lte_rrc_physCellId_01 = -1; /* PhysCellId */ -static int hf_lte_rrc_criticalExtensions_29 = -1; /* T_criticalExtensions_29 */ +static int hf_lte_rrc_criticalExtensions_30 = -1; /* T_criticalExtensions_30 */ static int hf_lte_rrc_c1_32 = -1; /* T_c1_32 */ static int hf_lte_rrc_rrcConnectionReject_r8 = -1; /* RRCConnectionReject_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_29 = -1; /* T_criticalExtensionsFuture_29 */ +static int hf_lte_rrc_criticalExtensionsFuture_30 = -1; /* T_criticalExtensionsFuture_30 */ static int hf_lte_rrc_waitTime = -1; /* INTEGER_1_16 */ -static int hf_lte_rrc_nonCriticalExtension_99 = -1; /* RRCConnectionReject_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_100 = -1; /* RRCConnectionReject_v1020_IEs */ +static int hf_lte_rrc_nonCriticalExtension_111 = -1; /* RRCConnectionReject_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_112 = -1; /* RRCConnectionReject_v1020_IEs */ static int hf_lte_rrc_extendedWaitTime_r10 = -1; /* INTEGER_1_1800 */ -static int hf_lte_rrc_nonCriticalExtension_101 = -1; /* RRCConnectionReject_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_113 = -1; /* RRCConnectionReject_v1130_IEs */ static int hf_lte_rrc_deprioritisationReq_r11 = -1; /* T_deprioritisationReq_r11 */ static int hf_lte_rrc_deprioritisationType_r11 = -1; /* T_deprioritisationType_r11 */ static int hf_lte_rrc_deprioritisationTimer_r11 = -1; /* T_deprioritisationTimer_r11 */ -static int hf_lte_rrc_nonCriticalExtension_102 = -1; /* RRCConnectionReject_v1320_IEs */ +static int hf_lte_rrc_nonCriticalExtension_114 = -1; /* RRCConnectionReject_v1320_IEs */ static int hf_lte_rrc_rrc_SuspendIndication_r13 = -1; /* T_rrc_SuspendIndication_r13 */ -static int hf_lte_rrc_nonCriticalExtension_103 = -1; /* T_nonCriticalExtension_34 */ -static int hf_lte_rrc_criticalExtensions_30 = -1; /* T_criticalExtensions_30 */ +static int hf_lte_rrc_nonCriticalExtension_115 = -1; /* T_nonCriticalExtension_36 */ +static int hf_lte_rrc_criticalExtensions_31 = -1; /* T_criticalExtensions_31 */ static int hf_lte_rrc_c1_33 = -1; /* T_c1_33 */ static int hf_lte_rrc_rrcConnectionRelease_r8 = -1; /* RRCConnectionRelease_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_30 = -1; /* T_criticalExtensionsFuture_30 */ +static int hf_lte_rrc_criticalExtensionsFuture_31 = -1; /* T_criticalExtensionsFuture_31 */ static int hf_lte_rrc_releaseCause = -1; /* ReleaseCause */ static int hf_lte_rrc_redirectedCarrierInfo = -1; /* RedirectedCarrierInfo */ static int hf_lte_rrc_idleModeMobilityControlInfo = -1; /* IdleModeMobilityControlInfo */ -static int hf_lte_rrc_nonCriticalExtension_104 = -1; /* RRCConnectionRelease_v890_IEs */ +static int hf_lte_rrc_nonCriticalExtension_116 = -1; /* RRCConnectionRelease_v890_IEs */ static int hf_lte_rrc_lateNonCriticalExtension_03 = -1; /* T_lateNonCriticalExtension_02 */ -static int hf_lte_rrc_nonCriticalExtension_105 = -1; /* RRCConnectionRelease_v920_IEs */ +static int hf_lte_rrc_nonCriticalExtension_117 = -1; /* RRCConnectionRelease_v920_IEs */ static int hf_lte_rrc_redirectedCarrierInfo_v9e0 = -1; /* RedirectedCarrierInfo_v9e0 */ static int hf_lte_rrc_idleModeMobilityControlInfo_v9e0 = -1; /* IdleModeMobilityControlInfo_v9e0 */ -static int hf_lte_rrc_nonCriticalExtension_106 = -1; /* T_nonCriticalExtension_35 */ +static int hf_lte_rrc_nonCriticalExtension_118 = -1; /* T_nonCriticalExtension_37 */ static int hf_lte_rrc_cellInfoList_r9 = -1; /* T_cellInfoList_r9 */ static int hf_lte_rrc_geran_r9 = -1; /* CellInfoListGERAN_r9 */ static int hf_lte_rrc_utra_FDD_r9 = -1; /* CellInfoListUTRA_FDD_r9 */ static int hf_lte_rrc_utra_TDD_r9 = -1; /* CellInfoListUTRA_TDD_r9 */ static int hf_lte_rrc_utra_TDD_r10 = -1; /* CellInfoListUTRA_TDD_r10 */ -static int hf_lte_rrc_nonCriticalExtension_107 = -1; /* RRCConnectionRelease_v1020_IEs */ -static int hf_lte_rrc_nonCriticalExtension_108 = -1; /* RRCConnectionRelease_v1320_IEs */ +static int hf_lte_rrc_nonCriticalExtension_119 = -1; /* RRCConnectionRelease_v1020_IEs */ +static int hf_lte_rrc_nonCriticalExtension_120 = -1; /* RRCConnectionRelease_v1320_IEs */ static int hf_lte_rrc_resumeIdentity_r13 = -1; /* ResumeIdentity_r13 */ -static int hf_lte_rrc_nonCriticalExtension_109 = -1; /* T_nonCriticalExtension_36 */ +static int hf_lte_rrc_nonCriticalExtension_121 = -1; /* RRCConnectionRelease_v1530_IEs */ +static int hf_lte_rrc_drb_ContinueROHC_r15 = -1; /* T_drb_ContinueROHC_r15 */ +static int hf_lte_rrc_measIdleConfig_r15 = -1; /* MeasIdleConfigDedicated_r15 */ +static int hf_lte_rrc_rrc_InactiveConfig_r15 = -1; /* RRC_InactiveConfig_r15 */ +static int hf_lte_rrc_cn_Type_r15 = -1; /* T_cn_Type_r15 */ +static int hf_lte_rrc_nonCriticalExtension_122 = -1; /* T_nonCriticalExtension_38 */ static int hf_lte_rrc_eutra = -1; /* ARFCN_ValueEUTRA */ static int hf_lte_rrc_geran_01 = -1; /* CarrierFreqsGERAN */ static int hf_lte_rrc_utra_FDD = -1; /* ARFCN_ValueUTRA */ @@ -1089,7 +1233,26 @@ static int hf_lte_rrc_utra_TDD = -1; /* ARFCN_ValueUTRA */ static int hf_lte_rrc_cdma2000_HRPD = -1; /* CarrierFreqCDMA2000 */ static int hf_lte_rrc_cdma2000_1xRTT = -1; /* CarrierFreqCDMA2000 */ static int hf_lte_rrc_utra_TDD_r10_01 = -1; /* CarrierFreqListUTRA_TDD_r10 */ +static int hf_lte_rrc_nr_r15 = -1; /* CarrierInfoNR_r15 */ static int hf_lte_rrc_eutra_v9e0 = -1; /* ARFCN_ValueEUTRA_v9e0 */ +static int hf_lte_rrc_fullI_RNTI_r15 = -1; /* I_RNTI_r15 */ +static int hf_lte_rrc_shortI_RNTI_r15 = -1; /* ShortI_RNTI_r15 */ +static int hf_lte_rrc_ran_PagingCycle_r15 = -1; /* T_ran_PagingCycle_r15 */ +static int hf_lte_rrc_ran_NotificationAreaInfo_r15 = -1; /* RAN_NotificationAreaInfo_r15 */ +static int hf_lte_rrc_periodic_RNAU_timer_r15 = -1; /* T_periodic_RNAU_timer_r15 */ +static int hf_lte_rrc_nonCriticalExtension_123 = -1; /* T_nonCriticalExtension_39 */ +static int hf_lte_rrc_cellList_r15 = -1; /* PLMN_RAN_AreaCellList_r15 */ +static int hf_lte_rrc_ran_AreaConfigList_r15 = -1; /* PLMN_RAN_AreaConfigList_r15 */ +static int hf_lte_rrc_PLMN_RAN_AreaCellList_r15_item = -1; /* PLMN_RAN_AreaCell_r15 */ +static int hf_lte_rrc_plmn_Identity_r15 = -1; /* PLMN_Identity */ +static int hf_lte_rrc_ran_AreaCells_r15 = -1; /* SEQUENCE_SIZE_1_32_OF_CellIdentity */ +static int hf_lte_rrc_ran_AreaCells_r15_item = -1; /* CellIdentity */ +static int hf_lte_rrc_PLMN_RAN_AreaConfigList_r15_item = -1; /* PLMN_RAN_AreaConfig_r15 */ +static int hf_lte_rrc_ran_Area_r15 = -1; /* SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_r15 */ +static int hf_lte_rrc_ran_Area_r15_item = -1; /* RAN_AreaConfig_r15 */ +static int hf_lte_rrc_trackingAreaCode_5GC_r15 = -1; /* TrackingAreaCode_5GC_r15 */ +static int hf_lte_rrc_ran_AreaCodeList_r15 = -1; /* SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_r15 */ +static int hf_lte_rrc_ran_AreaCodeList_r15_item = -1; /* RAN_AreaCode_r15 */ static int hf_lte_rrc_CarrierFreqListUTRA_TDD_r10_item = -1; /* ARFCN_ValueUTRA */ static int hf_lte_rrc_freqPriorityListEUTRA = -1; /* FreqPriorityListEUTRA */ static int hf_lte_rrc_freqPriorityListGERAN = -1; /* FreqsPriorityListGERAN */ @@ -1101,6 +1264,7 @@ static int hf_lte_rrc_t320 = -1; /* T_t320 */ static int hf_lte_rrc_freqPriorityListExtEUTRA_r12 = -1; /* FreqPriorityListExtEUTRA_r12 */ static int hf_lte_rrc_freqPriorityListEUTRA_v1310 = -1; /* FreqPriorityListEUTRA_v1310 */ static int hf_lte_rrc_freqPriorityListExtEUTRA_v1310 = -1; /* FreqPriorityListExtEUTRA_v1310 */ +static int hf_lte_rrc_freqPriorityListNR_r15 = -1; /* FreqPriorityListNR_r15 */ static int hf_lte_rrc_freqPriorityListEUTRA_v9e0 = -1; /* SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0 */ static int hf_lte_rrc_freqPriorityListEUTRA_v9e0_item = -1; /* FreqPriorityEUTRA_v9e0 */ static int hf_lte_rrc_FreqPriorityListEUTRA_item = -1; /* FreqPriorityEUTRA */ @@ -1112,6 +1276,10 @@ static int hf_lte_rrc_cellReselectionPriority = -1; /* CellReselectionPriority static int hf_lte_rrc_carrierFreq_v9e0 = -1; /* ARFCN_ValueEUTRA_v9e0 */ static int hf_lte_rrc_cellReselectionPriority_r12 = -1; /* CellReselectionPriority */ static int hf_lte_rrc_cellReselectionSubPriority_r13 = -1; /* CellReselectionSubPriority_r13 */ +static int hf_lte_rrc_FreqPriorityListNR_r15_item = -1; /* FreqPriorityNR_r15 */ +static int hf_lte_rrc_carrierFreq_r15 = -1; /* ARFCN_ValueNR_r15 */ +static int hf_lte_rrc_cellReselectionPriority_r15 = -1; /* CellReselectionPriority */ +static int hf_lte_rrc_cellReselectionSubPriority_r15 = -1; /* CellReselectionSubPriority_r13 */ static int hf_lte_rrc_FreqsPriorityListGERAN_item = -1; /* FreqsPriorityGERAN */ static int hf_lte_rrc_carrierFreqs = -1; /* CarrierFreqsGERAN */ static int hf_lte_rrc_FreqPriorityListUTRA_FDD_item = -1; /* FreqPriorityUTRA_FDD */ @@ -1124,6 +1292,7 @@ static int hf_lte_rrc_CellInfoListGERAN_r9_item = -1; /* CellInfoGERAN_r9 */ static int hf_lte_rrc_physCellId_r9 = -1; /* PhysCellIdGERAN */ static int hf_lte_rrc_carrierFreq_r9_01 = -1; /* CarrierFreqGERAN */ static int hf_lte_rrc_systemInformation_r9 = -1; /* T_systemInformation_r9 */ +static int hf_lte_rrc_subcarrierSpacingSSB_r15 = -1; /* T_subcarrierSpacingSSB_r15 */ static int hf_lte_rrc_CellInfoListUTRA_FDD_r9_item = -1; /* CellInfoUTRA_FDD_r9 */ static int hf_lte_rrc_physCellId_r9_01 = -1; /* PhysCellIdUTRA_FDD */ static int hf_lte_rrc_utra_BCCH_Container_r9 = -1; /* T_utra_BCCH_Container_r9 */ @@ -1134,17 +1303,17 @@ static int hf_lte_rrc_CellInfoListUTRA_TDD_r10_item = -1; /* CellInfoUTRA_TDD_r static int hf_lte_rrc_physCellId_r10_01 = -1; /* PhysCellIdUTRA_TDD */ static int hf_lte_rrc_carrierFreq_r10_01 = -1; /* ARFCN_ValueUTRA */ static int hf_lte_rrc_utra_BCCH_Container_r10 = -1; /* T_utra_BCCH_Container_r10 */ -static int hf_lte_rrc_criticalExtensions_31 = -1; /* T_criticalExtensions_31 */ +static int hf_lte_rrc_criticalExtensions_32 = -1; /* T_criticalExtensions_32 */ static int hf_lte_rrc_rrcConnectionRequest_r8 = -1; /* RRCConnectionRequest_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_31 = -1; /* T_criticalExtensionsFuture_31 */ +static int hf_lte_rrc_criticalExtensionsFuture_32 = -1; /* T_criticalExtensionsFuture_32 */ static int hf_lte_rrc_ue_Identity_02 = -1; /* InitialUE_Identity */ static int hf_lte_rrc_establishmentCause = -1; /* EstablishmentCause */ static int hf_lte_rrc_spare_04 = -1; /* BIT_STRING_SIZE_1 */ static int hf_lte_rrc_randomValue = -1; /* BIT_STRING_SIZE_40 */ -static int hf_lte_rrc_criticalExtensions_32 = -1; /* T_criticalExtensions_32 */ +static int hf_lte_rrc_criticalExtensions_33 = -1; /* T_criticalExtensions_33 */ static int hf_lte_rrc_c1_34 = -1; /* T_c1_34 */ static int hf_lte_rrc_rrcConnectionResume_r13_01 = -1; /* RRCConnectionResume_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_32 = -1; /* T_criticalExtensionsFuture_32 */ +static int hf_lte_rrc_criticalExtensionsFuture_33 = -1; /* T_criticalExtensionsFuture_33 */ static int hf_lte_rrc_radioResourceConfigDedicated_r13 = -1; /* RadioResourceConfigDedicated */ static int hf_lte_rrc_nextHopChainingCount_r13 = -1; /* NextHopChainingCount */ static int hf_lte_rrc_measConfig_r13 = -1; /* MeasConfig */ @@ -1155,10 +1324,12 @@ static int hf_lte_rrc_otherConfig_r14 = -1; /* OtherConfig_r9 */ static int hf_lte_rrc_rrcConnectionResume_v1510_IEs = -1; /* RRCConnectionResume_v1510_IEs */ static int hf_lte_rrc_nr_RadioBearerConfig1_r15_01 = -1; /* T_nr_RadioBearerConfig1_r15_01 */ static int hf_lte_rrc_nr_RadioBearerConfig2_r15_01 = -1; /* T_nr_RadioBearerConfig2_r15_01 */ -static int hf_lte_rrc_nonCriticalExtension_110 = -1; /* T_nonCriticalExtension_37 */ -static int hf_lte_rrc_criticalExtensions_33 = -1; /* T_criticalExtensions_33 */ +static int hf_lte_rrc_nonCriticalExtension_124 = -1; /* RRCConnectionResume_v1530_IEs */ +static int hf_lte_rrc_fullConfig_r15 = -1; /* T_fullConfig_r15 */ +static int hf_lte_rrc_nonCriticalExtension_125 = -1; /* T_nonCriticalExtension_40 */ +static int hf_lte_rrc_criticalExtensions_34 = -1; /* T_criticalExtensions_34 */ static int hf_lte_rrc_rrcConnectionResumeComplete_r13_01 = -1; /* RRCConnectionResumeComplete_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_33 = -1; /* T_criticalExtensionsFuture_33 */ +static int hf_lte_rrc_criticalExtensionsFuture_34 = -1; /* T_criticalExtensionsFuture_34 */ static int hf_lte_rrc_selectedPLMN_Identity_r13 = -1; /* INTEGER_1_maxPLMN_r11 */ static int hf_lte_rrc_dedicatedInfoNAS_r13 = -1; /* DedicatedInfoNAS */ static int hf_lte_rrc_rlf_InfoAvailable_r13 = -1; /* T_rlf_InfoAvailable_r13 */ @@ -1167,116 +1338,155 @@ static int hf_lte_rrc_connEstFailInfoAvailable_r13 = -1; /* T_connEstFailInfoAv static int hf_lte_rrc_mobilityState_r13 = -1; /* T_mobilityState_r13 */ static int hf_lte_rrc_mobilityHistoryAvail_r13 = -1; /* T_mobilityHistoryAvail_r13 */ static int hf_lte_rrc_logMeasAvailableMBSFN_r13 = -1; /* T_logMeasAvailableMBSFN_r13 */ -static int hf_lte_rrc_nonCriticalExtension_111 = -1; /* T_nonCriticalExtension_38 */ -static int hf_lte_rrc_criticalExtensions_34 = -1; /* T_criticalExtensions_34 */ +static int hf_lte_rrc_nonCriticalExtension_126 = -1; /* RRCConnectionResumeComplete_v1530_IEs */ +static int hf_lte_rrc_logMeasAvailableBT_r15_02 = -1; /* T_logMeasAvailableBT_r15_02 */ +static int hf_lte_rrc_logMeasAvailableWLAN_r15_02 = -1; /* T_logMeasAvailableWLAN_r15_02 */ +static int hf_lte_rrc_idleMeasAvailable_r15 = -1; /* T_idleMeasAvailable_r15 */ +static int hf_lte_rrc_flightPathInfoAvailable_r15_02 = -1; /* T_flightPathInfoAvailable_r15_02 */ +static int hf_lte_rrc_nonCriticalExtension_127 = -1; /* T_nonCriticalExtension_41 */ +static int hf_lte_rrc_criticalExtensions_35 = -1; /* T_criticalExtensions_35 */ static int hf_lte_rrc_rrcConnectionResumeRequest_r13_01 = -1; /* RRCConnectionResumeRequest_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_34 = -1; /* T_criticalExtensionsFuture_34 */ +static int hf_lte_rrc_rrcConnectionResumeRequest_r15 = -1; /* RRCConnectionResumeRequest_5GC_r15_IEs */ static int hf_lte_rrc_resumeIdentity_r13_01 = -1; /* T_resumeIdentity_r13 */ static int hf_lte_rrc_resumeID_r13 = -1; /* ResumeIdentity_r13 */ static int hf_lte_rrc_truncatedResumeID_r13 = -1; /* BIT_STRING_SIZE_24 */ static int hf_lte_rrc_shortResumeMAC_I_r13 = -1; /* BIT_STRING_SIZE_16 */ static int hf_lte_rrc_resumeCause_r13 = -1; /* ResumeCause */ -static int hf_lte_rrc_criticalExtensions_35 = -1; /* T_criticalExtensions_35 */ +static int hf_lte_rrc_resumeIdentity_r15 = -1; /* T_resumeIdentity_r15 */ +static int hf_lte_rrc_shortResumeMAC_I_r15 = -1; /* BIT_STRING_SIZE_16 */ +static int hf_lte_rrc_resumeCause_r15 = -1; /* ResumeCause_r15 */ +static int hf_lte_rrc_criticalExtensions_36 = -1; /* T_criticalExtensions_36 */ static int hf_lte_rrc_c1_35 = -1; /* T_c1_35 */ static int hf_lte_rrc_rrcConnectionSetup_r8 = -1; /* RRCConnectionSetup_r8_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_35 = -1; /* T_criticalExtensionsFuture_35 */ -static int hf_lte_rrc_nonCriticalExtension_112 = -1; /* RRCConnectionSetup_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_113 = -1; /* T_nonCriticalExtension_39 */ -static int hf_lte_rrc_criticalExtensions_36 = -1; /* T_criticalExtensions_36 */ +static int hf_lte_rrc_nonCriticalExtension_128 = -1; /* RRCConnectionSetup_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_129 = -1; /* T_nonCriticalExtension_42 */ +static int hf_lte_rrc_criticalExtensions_37 = -1; /* T_criticalExtensions_37 */ static int hf_lte_rrc_c1_36 = -1; /* T_c1_36 */ static int hf_lte_rrc_rrcConnectionSetupComplete_r8 = -1; /* RRCConnectionSetupComplete_r8_IEs */ static int hf_lte_rrc_criticalExtensionsFuture_36 = -1; /* T_criticalExtensionsFuture_36 */ static int hf_lte_rrc_selectedPLMN_Identity = -1; /* INTEGER_1_maxPLMN_r11 */ static int hf_lte_rrc_registeredMME = -1; /* RegisteredMME */ -static int hf_lte_rrc_nonCriticalExtension_114 = -1; /* RRCConnectionSetupComplete_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_115 = -1; /* RRCConnectionSetupComplete_v1020_IEs */ +static int hf_lte_rrc_nonCriticalExtension_130 = -1; /* RRCConnectionSetupComplete_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_131 = -1; /* RRCConnectionSetupComplete_v1020_IEs */ static int hf_lte_rrc_gummei_Type_r10 = -1; /* T_gummei_Type_r10 */ static int hf_lte_rrc_rlf_InfoAvailable_r10_01 = -1; /* T_rlf_InfoAvailable_r10_01 */ static int hf_lte_rrc_logMeasAvailable_r10_02 = -1; /* T_logMeasAvailable_r10_02 */ static int hf_lte_rrc_rn_SubframeConfigReq_r10 = -1; /* T_rn_SubframeConfigReq_r10 */ -static int hf_lte_rrc_nonCriticalExtension_116 = -1; /* RRCConnectionSetupComplete_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_132 = -1; /* RRCConnectionSetupComplete_v1130_IEs */ static int hf_lte_rrc_connEstFailInfoAvailable_r11_02 = -1; /* T_connEstFailInfoAvailable_r11_02 */ -static int hf_lte_rrc_nonCriticalExtension_117 = -1; /* RRCConnectionSetupComplete_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_133 = -1; /* RRCConnectionSetupComplete_v1250_IEs */ static int hf_lte_rrc_mobilityState_r12 = -1; /* T_mobilityState_r12 */ static int hf_lte_rrc_mobilityHistoryAvail_r12 = -1; /* T_mobilityHistoryAvail_r12 */ static int hf_lte_rrc_logMeasAvailableMBSFN_r12_02 = -1; /* T_logMeasAvailableMBSFN_r12_02 */ -static int hf_lte_rrc_nonCriticalExtension_118 = -1; /* RRCConnectionSetupComplete_v1320_IEs */ +static int hf_lte_rrc_nonCriticalExtension_134 = -1; /* RRCConnectionSetupComplete_v1320_IEs */ static int hf_lte_rrc_ce_ModeB_r13 = -1; /* T_ce_ModeB_r13 */ static int hf_lte_rrc_s_TMSI_r13 = -1; /* S_TMSI */ static int hf_lte_rrc_attachWithoutPDN_Connectivity_r13 = -1; /* T_attachWithoutPDN_Connectivity_r13 */ static int hf_lte_rrc_up_CIoT_EPS_Optimisation_r13 = -1; /* T_up_CIoT_EPS_Optimisation_r13 */ static int hf_lte_rrc_cp_CIoT_EPS_Optimisation_r13 = -1; /* T_cp_CIoT_EPS_Optimisation_r13 */ -static int hf_lte_rrc_nonCriticalExtension_119 = -1; /* RRCConnectionSetupComplete_v1330_IEs */ +static int hf_lte_rrc_nonCriticalExtension_135 = -1; /* RRCConnectionSetupComplete_v1330_IEs */ static int hf_lte_rrc_ue_CE_NeedULGaps_r13 = -1; /* T_ue_CE_NeedULGaps_r13 */ -static int hf_lte_rrc_nonCriticalExtension_120 = -1; /* RRCConnectionSetupComplete_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_136 = -1; /* RRCConnectionSetupComplete_v1430_IEs */ static int hf_lte_rrc_dcn_ID_r14 = -1; /* INTEGER_0_65535 */ -static int hf_lte_rrc_nonCriticalExtension_121 = -1; /* T_nonCriticalExtension_40 */ +static int hf_lte_rrc_nonCriticalExtension_137 = -1; /* RRCConnectionSetupComplete_v1530_IEs */ +static int hf_lte_rrc_logMeasAvailableBT_r15_03 = -1; /* T_logMeasAvailableBT_r15_03 */ +static int hf_lte_rrc_logMeasAvailableWLAN_r15_03 = -1; /* T_logMeasAvailableWLAN_r15_03 */ +static int hf_lte_rrc_idleMeasAvailable_r15_01 = -1; /* T_idleMeasAvailable_r15_01 */ +static int hf_lte_rrc_flightPathInfoAvailable_r15_03 = -1; /* T_flightPathInfoAvailable_r15_03 */ +static int hf_lte_rrc_connectTo5GC_r15 = -1; /* T_connectTo5GC_r15 */ +static int hf_lte_rrc_registeredAMF_r15 = -1; /* RegisteredAMF_r15 */ +static int hf_lte_rrc_s_NSSAI_list_r15 = -1; /* SEQUENCE_SIZE_1_maxNrofS_NSSAI_r15_OF_S_NSSAI_r15 */ +static int hf_lte_rrc_s_NSSAI_list_r15_item = -1; /* S_NSSAI_r15 */ +static int hf_lte_rrc_ng_5G_S_TMSI_Bits_r15 = -1; /* T_ng_5G_S_TMSI_Bits_r15 */ +static int hf_lte_rrc_ng_5G_S_TMSI_Part2_r15 = -1; /* BIT_STRING_SIZE_8 */ +static int hf_lte_rrc_nonCriticalExtension_138 = -1; /* T_nonCriticalExtension_43 */ static int hf_lte_rrc_plmn_Identity = -1; /* PLMN_Identity */ static int hf_lte_rrc_mmegi = -1; /* BIT_STRING_SIZE_16 */ static int hf_lte_rrc_mmec = -1; /* MMEC */ -static int hf_lte_rrc_criticalExtensions_37 = -1; /* T_criticalExtensions_37 */ +static int hf_lte_rrc_amf_Identifier_r15 = -1; /* AMF_Identifier_r15 */ +static int hf_lte_rrc_criticalExtensions_38 = -1; /* T_criticalExtensions_38 */ +static int hf_lte_rrc_rrcEarlyDataComplete_r15_01 = -1; /* RRCEarlyDataComplete_r15_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_37 = -1; /* T_criticalExtensionsFuture_37 */ +static int hf_lte_rrc_extendedWaitTime_r15 = -1; /* INTEGER_1_1800 */ +static int hf_lte_rrc_idleModeMobilityControlInfo_r15 = -1; /* IdleModeMobilityControlInfo */ +static int hf_lte_rrc_idleModeMobilityControlInfoExt_r15 = -1; /* IdleModeMobilityControlInfo_v9e0 */ +static int hf_lte_rrc_redirectedCarrierInfo_r15 = -1; /* RedirectedCarrierInfo_r15_IEs */ +static int hf_lte_rrc_nonCriticalExtension_139 = -1; /* T_nonCriticalExtension_44 */ +static int hf_lte_rrc_eutra_r15 = -1; /* ARFCN_ValueEUTRA_r9 */ +static int hf_lte_rrc_geran_r15 = -1; /* CarrierFreqsGERAN */ +static int hf_lte_rrc_utra_FDD_r15 = -1; /* ARFCN_ValueUTRA */ +static int hf_lte_rrc_cdma2000_HRPD_r15 = -1; /* CarrierFreqCDMA2000 */ +static int hf_lte_rrc_cdma2000_1xRTT_r15 = -1; /* CarrierFreqCDMA2000 */ +static int hf_lte_rrc_utra_TDD_r15 = -1; /* CarrierFreqListUTRA_TDD_r10 */ +static int hf_lte_rrc_criticalExtensions_39 = -1; /* T_criticalExtensions_39 */ +static int hf_lte_rrc_rrcEarlyDataRequest_r15_01 = -1; /* RRCEarlyDataRequest_r15_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_38 = -1; /* T_criticalExtensionsFuture_38 */ +static int hf_lte_rrc_s_TMSI_r15 = -1; /* S_TMSI */ +static int hf_lte_rrc_establishmentCause_r15 = -1; /* T_establishmentCause_r15 */ +static int hf_lte_rrc_nonCriticalExtension_140 = -1; /* T_nonCriticalExtension_45 */ +static int hf_lte_rrc_criticalExtensions_40 = -1; /* T_criticalExtensions_40 */ static int hf_lte_rrc_c1_37 = -1; /* T_c1_37 */ static int hf_lte_rrc_scgFailureInformation_r12_01 = -1; /* SCGFailureInformation_r12_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_37 = -1; /* T_criticalExtensionsFuture_37 */ +static int hf_lte_rrc_criticalExtensionsFuture_39 = -1; /* T_criticalExtensionsFuture_39 */ static int hf_lte_rrc_failureReportSCG_r12 = -1; /* FailureReportSCG_r12 */ -static int hf_lte_rrc_nonCriticalExtension_122 = -1; /* SCGFailureInformation_v1310_IEs */ +static int hf_lte_rrc_nonCriticalExtension_141 = -1; /* SCGFailureInformation_v1310_IEs */ static int hf_lte_rrc_lateNonCriticalExtension_04 = -1; /* T_lateNonCriticalExtension_03 */ -static int hf_lte_rrc_nonCriticalExtension_123 = -1; /* T_nonCriticalExtension_41 */ +static int hf_lte_rrc_nonCriticalExtension_142 = -1; /* T_nonCriticalExtension_46 */ static int hf_lte_rrc_failureReportSCG_v12d0 = -1; /* FailureReportSCG_v12d0 */ -static int hf_lte_rrc_nonCriticalExtension_124 = -1; /* T_nonCriticalExtension_42 */ +static int hf_lte_rrc_nonCriticalExtension_143 = -1; /* T_nonCriticalExtension_47 */ static int hf_lte_rrc_failureType_r12 = -1; /* T_failureType_r12 */ static int hf_lte_rrc_measResultServFreqList_r12 = -1; /* MeasResultServFreqList_r10 */ static int hf_lte_rrc_measResultNeighCells_r12 = -1; /* MeasResultList2EUTRA_r9 */ static int hf_lte_rrc_failureType_v1290 = -1; /* T_failureType_v1290 */ static int hf_lte_rrc_measResultServFreqListExt_r13 = -1; /* MeasResultServFreqListExt_r13 */ static int hf_lte_rrc_measResultNeighCells_v12d0 = -1; /* MeasResultList2EUTRA_v9e0 */ -static int hf_lte_rrc_criticalExtensions_38 = -1; /* T_criticalExtensions_38 */ +static int hf_lte_rrc_criticalExtensions_41 = -1; /* T_criticalExtensions_41 */ static int hf_lte_rrc_c1_38 = -1; /* T_c1_38 */ static int hf_lte_rrc_scgFailureInformationNR_r15_01 = -1; /* SCGFailureInformationNR_r15_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_38 = -1; /* T_criticalExtensionsFuture_38 */ +static int hf_lte_rrc_criticalExtensionsFuture_40 = -1; /* T_criticalExtensionsFuture_40 */ static int hf_lte_rrc_failureReportSCG_NR_r15 = -1; /* FailureReportSCG_NR_r15 */ -static int hf_lte_rrc_nonCriticalExtension_125 = -1; /* T_nonCriticalExtension_43 */ +static int hf_lte_rrc_nonCriticalExtension_144 = -1; /* T_nonCriticalExtension_48 */ static int hf_lte_rrc_failureType_r15 = -1; /* T_failureType_r15 */ static int hf_lte_rrc_measResultFreqListNR_r15 = -1; /* MeasResultFreqListFailNR_r15 */ static int hf_lte_rrc_measResultSCG_r15 = -1; /* T_measResultSCG_r15 */ static int hf_lte_rrc_MeasResultFreqListFailNR_r15_item = -1; /* MeasResultFreqFailNR_r15 */ -static int hf_lte_rrc_carrierFreq_r15 = -1; /* ARFCN_ValueNR_r15 */ static int hf_lte_rrc_measResultCellList_r15 = -1; /* MeasResultCellListNR_r15 */ static int hf_lte_rrc_sc_mtch_InfoList_r13 = -1; /* SC_MTCH_InfoList_r13 */ static int hf_lte_rrc_scptm_NeighbourCellList_r13 = -1; /* SCPTM_NeighbourCellList_r13 */ -static int hf_lte_rrc_nonCriticalExtension_126 = -1; /* SCPTMConfiguration_v1340 */ +static int hf_lte_rrc_nonCriticalExtension_145 = -1; /* SCPTMConfiguration_v1340 */ static int hf_lte_rrc_p_b_r13 = -1; /* INTEGER_0_3 */ -static int hf_lte_rrc_nonCriticalExtension_127 = -1; /* T_nonCriticalExtension_44 */ +static int hf_lte_rrc_nonCriticalExtension_146 = -1; /* T_nonCriticalExtension_49 */ static int hf_lte_rrc_sc_mtch_InfoList_r14 = -1; /* SC_MTCH_InfoList_BR_r14 */ static int hf_lte_rrc_scptm_NeighbourCellList_r14 = -1; /* SCPTM_NeighbourCellList_r13 */ static int hf_lte_rrc_p_b_r14 = -1; /* INTEGER_0_3 */ -static int hf_lte_rrc_nonCriticalExtension_128 = -1; /* T_nonCriticalExtension_45 */ -static int hf_lte_rrc_criticalExtensions_39 = -1; /* T_criticalExtensions_39 */ +static int hf_lte_rrc_nonCriticalExtension_147 = -1; /* T_nonCriticalExtension_50 */ +static int hf_lte_rrc_criticalExtensions_42 = -1; /* T_criticalExtensions_42 */ static int hf_lte_rrc_c1_39 = -1; /* T_c1_39 */ static int hf_lte_rrc_securityModeCommand_r8 = -1; /* SecurityModeCommand_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_39 = -1; /* T_criticalExtensionsFuture_39 */ +static int hf_lte_rrc_criticalExtensionsFuture_41 = -1; /* T_criticalExtensionsFuture_41 */ static int hf_lte_rrc_securityConfigSMC = -1; /* SecurityConfigSMC */ -static int hf_lte_rrc_nonCriticalExtension_129 = -1; /* SecurityModeCommand_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_130 = -1; /* T_nonCriticalExtension_46 */ -static int hf_lte_rrc_criticalExtensions_40 = -1; /* T_criticalExtensions_40 */ +static int hf_lte_rrc_nonCriticalExtension_148 = -1; /* SecurityModeCommand_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_149 = -1; /* T_nonCriticalExtension_51 */ +static int hf_lte_rrc_criticalExtensions_43 = -1; /* T_criticalExtensions_43 */ static int hf_lte_rrc_securityModeComplete_r8 = -1; /* SecurityModeComplete_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_40 = -1; /* T_criticalExtensionsFuture_40 */ -static int hf_lte_rrc_nonCriticalExtension_131 = -1; /* SecurityModeComplete_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_132 = -1; /* T_nonCriticalExtension_47 */ -static int hf_lte_rrc_criticalExtensions_41 = -1; /* T_criticalExtensions_41 */ +static int hf_lte_rrc_criticalExtensionsFuture_42 = -1; /* T_criticalExtensionsFuture_42 */ +static int hf_lte_rrc_nonCriticalExtension_150 = -1; /* SecurityModeComplete_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_151 = -1; /* T_nonCriticalExtension_52 */ +static int hf_lte_rrc_criticalExtensions_44 = -1; /* T_criticalExtensions_44 */ static int hf_lte_rrc_securityModeFailure_r8 = -1; /* SecurityModeFailure_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_41 = -1; /* T_criticalExtensionsFuture_41 */ -static int hf_lte_rrc_nonCriticalExtension_133 = -1; /* SecurityModeFailure_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_134 = -1; /* T_nonCriticalExtension_48 */ -static int hf_lte_rrc_criticalExtensions_42 = -1; /* T_criticalExtensions_42 */ +static int hf_lte_rrc_criticalExtensionsFuture_43 = -1; /* T_criticalExtensionsFuture_43 */ +static int hf_lte_rrc_nonCriticalExtension_152 = -1; /* SecurityModeFailure_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_153 = -1; /* T_nonCriticalExtension_53 */ +static int hf_lte_rrc_criticalExtensions_45 = -1; /* T_criticalExtensions_45 */ static int hf_lte_rrc_c1_40 = -1; /* T_c1_40 */ static int hf_lte_rrc_sidelinkUEInformation_r12_02 = -1; /* SidelinkUEInformation_r12_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_42 = -1; /* T_criticalExtensionsFuture_42 */ +static int hf_lte_rrc_criticalExtensionsFuture_44 = -1; /* T_criticalExtensionsFuture_44 */ static int hf_lte_rrc_commRxInterestedFreq_r12 = -1; /* ARFCN_ValueEUTRA_r9 */ static int hf_lte_rrc_commTxResourceReq_r12 = -1; /* SL_CommTxResourceReq_r12 */ static int hf_lte_rrc_discRxInterest_r12 = -1; /* T_discRxInterest_r12 */ static int hf_lte_rrc_discTxResourceReq_r12 = -1; /* INTEGER_1_63 */ -static int hf_lte_rrc_nonCriticalExtension_135 = -1; /* SidelinkUEInformation_v1310_IEs */ +static int hf_lte_rrc_nonCriticalExtension_154 = -1; /* SidelinkUEInformation_v1310_IEs */ static int hf_lte_rrc_commTxResourceReqUC_r13 = -1; /* SL_CommTxResourceReq_r12 */ static int hf_lte_rrc_commTxResourceInfoReqRelay_r13 = -1; /* T_commTxResourceInfoReqRelay_r13 */ static int hf_lte_rrc_commTxResourceReqRelay_r13 = -1; /* SL_CommTxResourceReq_r12 */ @@ -1289,11 +1499,13 @@ static int hf_lte_rrc_discTxResourceReqPS_r13 = -1; /* SL_DiscTxResourceReq_r13 static int hf_lte_rrc_discRxGapReq_r13 = -1; /* SL_GapRequest_r13 */ static int hf_lte_rrc_discTxGapReq_r13 = -1; /* SL_GapRequest_r13 */ static int hf_lte_rrc_discSysInfoReportFreqList_r13 = -1; /* SL_DiscSysInfoReportFreqList_r13 */ -static int hf_lte_rrc_nonCriticalExtension_136 = -1; /* SidelinkUEInformation_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_155 = -1; /* SidelinkUEInformation_v1430_IEs */ static int hf_lte_rrc_v2x_CommRxInterestedFreqList_r14 = -1; /* SL_V2X_CommFreqList_r14 */ static int hf_lte_rrc_p2x_CommTxType_r14 = -1; /* T_p2x_CommTxType_r14 */ static int hf_lte_rrc_v2x_CommTxResourceReq_r14 = -1; /* SL_V2X_CommTxFreqList_r14 */ -static int hf_lte_rrc_nonCriticalExtension_137 = -1; /* T_nonCriticalExtension_49 */ +static int hf_lte_rrc_nonCriticalExtension_156 = -1; /* SidelinkUEInformation_v1530_IEs */ +static int hf_lte_rrc_reliabilityInfoListSL_r15 = -1; /* SL_ReliabilityList_r15 */ +static int hf_lte_rrc_nonCriticalExtension_157 = -1; /* T_nonCriticalExtension_54 */ static int hf_lte_rrc_destinationInfoList_r12 = -1; /* SL_DestinationInfoList_r12 */ static int hf_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13_item = -1; /* SL_DiscTxResourceReq_r13 */ static int hf_lte_rrc_discTxResourceReq_r13 = -1; /* INTEGER_1_63 */ @@ -1304,9 +1516,11 @@ static int hf_lte_rrc_SL_V2X_CommTxFreqList_r14_item = -1; /* SL_V2X_CommTxReso static int hf_lte_rrc_carrierFreqCommTx_r14 = -1; /* INTEGER_0_maxFreqV2X_1_r14 */ static int hf_lte_rrc_v2x_TypeTxSync_r14 = -1; /* SL_TypeTxSync_r14 */ static int hf_lte_rrc_v2x_DestinationInfoList_r14 = -1; /* SL_DestinationInfoList_r12 */ -static int hf_lte_rrc_criticalExtensions_43 = -1; /* T_criticalExtensions_43 */ +static int hf_lte_rrc_criticalExtensions_46 = -1; /* T_criticalExtensions_46 */ static int hf_lte_rrc_systemInformation_r8 = -1; /* SystemInformation_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_43 = -1; /* T_criticalExtensionsFuture_43 */ +static int hf_lte_rrc_criticalExtensionsFuture_r15 = -1; /* T_criticalExtensionsFuture_r15 */ +static int hf_lte_rrc_posSystemInformation_r15 = -1; /* PosSystemInformation_r15_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_45 = -1; /* T_criticalExtensionsFuture_45 */ static int hf_lte_rrc_sib_TypeAndInfo = -1; /* T_sib_TypeAndInfo */ static int hf_lte_rrc_sib_TypeAndInfo_item = -1; /* T_sib_TypeAndInfo_item */ static int hf_lte_rrc_sib2 = -1; /* SystemInformationBlockType2 */ @@ -1329,8 +1543,41 @@ static int hf_lte_rrc_sib18_v1250 = -1; /* SystemInformationBlockType1 static int hf_lte_rrc_sib19_v1250 = -1; /* SystemInformationBlockType19_r12 */ static int hf_lte_rrc_sib20_v1310 = -1; /* SystemInformationBlockType20_r13 */ static int hf_lte_rrc_sib21_v1430 = -1; /* SystemInformationBlockType21_r14 */ -static int hf_lte_rrc_nonCriticalExtension_138 = -1; /* SystemInformation_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_139 = -1; /* T_nonCriticalExtension_50 */ +static int hf_lte_rrc_sib24_v1530 = -1; /* SystemInformationBlockType24_r15 */ +static int hf_lte_rrc_sib25_v1530 = -1; /* SystemInformationBlockType25_r15 */ +static int hf_lte_rrc_sib26_v1530 = -1; /* SystemInformationBlockType26_r15 */ +static int hf_lte_rrc_nonCriticalExtension_158 = -1; /* SystemInformation_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_159 = -1; /* T_nonCriticalExtension_55 */ +static int hf_lte_rrc_posSIB_TypeAndInfo_r15 = -1; /* T_posSIB_TypeAndInfo_r15 */ +static int hf_lte_rrc_posSIB_TypeAndInfo_r15_item = -1; /* T_posSIB_TypeAndInfo_r15_item */ +static int hf_lte_rrc_posSib1_1_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib1_2_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib1_3_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib1_4_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib1_5_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib1_6_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib1_7_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_1_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_2_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_3_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_4_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_5_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_6_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_7_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_8_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_9_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_10_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_11_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_12_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_13_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_14_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_15_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_16_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_17_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_18_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib2_19_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_posSib3_1_r15 = -1; /* SystemInformationBlockPos_r15 */ +static int hf_lte_rrc_nonCriticalExtension_160 = -1; /* T_nonCriticalExtension_56 */ static int hf_lte_rrc_cellAccessRelatedInfo = -1; /* T_cellAccessRelatedInfo */ static int hf_lte_rrc_plmn_IdentityList = -1; /* PLMN_IdentityList */ static int hf_lte_rrc_trackingAreaCode = -1; /* TrackingAreaCode */ @@ -1347,31 +1594,31 @@ static int hf_lte_rrc_schedulingInfoList = -1; /* SchedulingInfoList */ static int hf_lte_rrc_tdd_Config = -1; /* TDD_Config */ static int hf_lte_rrc_si_WindowLength = -1; /* T_si_WindowLength */ static int hf_lte_rrc_systemInfoValueTag = -1; /* T_systemInfoValueTag */ -static int hf_lte_rrc_nonCriticalExtension_140 = -1; /* SystemInformationBlockType1_v890_IEs */ +static int hf_lte_rrc_nonCriticalExtension_161 = -1; /* SystemInformationBlockType1_v890_IEs */ static int hf_lte_rrc_lateNonCriticalExtension_05 = -1; /* T_lateNonCriticalExtension_04 */ -static int hf_lte_rrc_nonCriticalExtension_141 = -1; /* SystemInformationBlockType1_v920_IEs */ +static int hf_lte_rrc_nonCriticalExtension_162 = -1; /* SystemInformationBlockType1_v920_IEs */ static int hf_lte_rrc_multiBandInfoList = -1; /* MultiBandInfoList */ -static int hf_lte_rrc_nonCriticalExtension_142 = -1; /* SystemInformationBlockType1_v9e0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_163 = -1; /* SystemInformationBlockType1_v9e0_IEs */ static int hf_lte_rrc_freqBandIndicator_v9e0 = -1; /* FreqBandIndicator_v9e0 */ static int hf_lte_rrc_multiBandInfoList_v9e0 = -1; /* MultiBandInfoList_v9e0 */ -static int hf_lte_rrc_nonCriticalExtension_143 = -1; /* SystemInformationBlockType1_v10j0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_164 = -1; /* SystemInformationBlockType1_v10j0_IEs */ static int hf_lte_rrc_freqBandInfo_r10 = -1; /* NS_PmaxList_r10 */ static int hf_lte_rrc_multiBandInfoList_v10j0 = -1; /* MultiBandInfoList_v10j0 */ -static int hf_lte_rrc_nonCriticalExtension_144 = -1; /* SystemInformationBlockType1_v10l0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_165 = -1; /* SystemInformationBlockType1_v10l0_IEs */ static int hf_lte_rrc_freqBandInfo_v10l0 = -1; /* NS_PmaxList_v10l0 */ static int hf_lte_rrc_multiBandInfoList_v10l0 = -1; /* MultiBandInfoList_v10l0 */ -static int hf_lte_rrc_nonCriticalExtension_145 = -1; /* T_nonCriticalExtension_51 */ +static int hf_lte_rrc_nonCriticalExtension_166 = -1; /* T_nonCriticalExtension_57 */ static int hf_lte_rrc_ims_EmergencySupport_r9 = -1; /* T_ims_EmergencySupport_r9 */ static int hf_lte_rrc_cellSelectionInfo_v920 = -1; /* CellSelectionInfo_v920 */ -static int hf_lte_rrc_nonCriticalExtension_146 = -1; /* SystemInformationBlockType1_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_167 = -1; /* SystemInformationBlockType1_v1130_IEs */ static int hf_lte_rrc_tdd_Config_v1130 = -1; /* TDD_Config_v1130 */ static int hf_lte_rrc_cellSelectionInfo_v1130 = -1; /* CellSelectionInfo_v1130 */ -static int hf_lte_rrc_nonCriticalExtension_147 = -1; /* SystemInformationBlockType1_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_168 = -1; /* SystemInformationBlockType1_v1250_IEs */ static int hf_lte_rrc_cellAccessRelatedInfo_v1250 = -1; /* T_cellAccessRelatedInfo_v1250 */ static int hf_lte_rrc_category0Allowed_r12 = -1; /* T_category0Allowed_r12 */ static int hf_lte_rrc_cellSelectionInfo_v1250 = -1; /* CellSelectionInfo_v1250 */ static int hf_lte_rrc_freqBandIndicatorPriority_r12 = -1; /* T_freqBandIndicatorPriority_r12 */ -static int hf_lte_rrc_nonCriticalExtension_148 = -1; /* SystemInformationBlockType1_v1310_IEs */ +static int hf_lte_rrc_nonCriticalExtension_169 = -1; /* SystemInformationBlockType1_v1310_IEs */ static int hf_lte_rrc_hyperSFN_r13 = -1; /* BIT_STRING_SIZE_10 */ static int hf_lte_rrc_eDRX_Allowed_r13 = -1; /* T_eDRX_Allowed_r13 */ static int hf_lte_rrc_cellSelectionInfoCE_r13 = -1; /* CellSelectionInfoCE_r13 */ @@ -1387,7 +1634,7 @@ static int hf_lte_rrc_startSymbolBR_r13 = -1; /* INTEGER_1_4 */ static int hf_lte_rrc_si_HoppingConfigCommon_r13 = -1; /* T_si_HoppingConfigCommon_r13 */ static int hf_lte_rrc_si_ValidityTime_r13 = -1; /* T_si_ValidityTime_r13 */ static int hf_lte_rrc_systemInfoValueTagList_r13 = -1; /* SystemInfoValueTagList_r13 */ -static int hf_lte_rrc_nonCriticalExtension_149 = -1; /* SystemInformationBlockType1_v1320_IEs */ +static int hf_lte_rrc_nonCriticalExtension_170 = -1; /* SystemInformationBlockType1_v1320_IEs */ static int hf_lte_rrc_freqHoppingParametersDL_r13 = -1; /* T_freqHoppingParametersDL_r13 */ static int hf_lte_rrc_mpdcch_pdsch_HoppingNB_r13 = -1; /* T_mpdcch_pdsch_HoppingNB_r13 */ static int hf_lte_rrc_interval_DLHoppingConfigCommonModeA_r13 = -1; /* T_interval_DLHoppingConfigCommonModeA_r13 */ @@ -1397,20 +1644,43 @@ static int hf_lte_rrc_interval_DLHoppingConfigCommonModeB_r13 = -1; /* T_interv static int hf_lte_rrc_interval_FDD_r13_01 = -1; /* T_interval_FDD_r13_01 */ static int hf_lte_rrc_interval_TDD_r13_01 = -1; /* T_interval_TDD_r13_01 */ static int hf_lte_rrc_mpdcch_pdsch_HoppingOffset_r13 = -1; /* INTEGER_1_maxAvailNarrowBands_r13 */ -static int hf_lte_rrc_nonCriticalExtension_150 = -1; /* SystemInformationBlockType1_v1350_IEs */ +static int hf_lte_rrc_nonCriticalExtension_171 = -1; /* SystemInformationBlockType1_v1350_IEs */ static int hf_lte_rrc_cellSelectionInfoCE1_r13 = -1; /* CellSelectionInfoCE1_r13 */ -static int hf_lte_rrc_nonCriticalExtension_151 = -1; /* SystemInformationBlockType1_v1360_IEs */ +static int hf_lte_rrc_nonCriticalExtension_172 = -1; /* SystemInformationBlockType1_v1360_IEs */ static int hf_lte_rrc_cellSelectionInfoCE1_v1360 = -1; /* CellSelectionInfoCE1_v1360 */ -static int hf_lte_rrc_nonCriticalExtension_152 = -1; /* SystemInformationBlockType1_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_173 = -1; /* SystemInformationBlockType1_v1430_IEs */ static int hf_lte_rrc_eCallOverIMS_Support_r14 = -1; /* T_eCallOverIMS_Support_r14 */ static int hf_lte_rrc_tdd_Config_v1430 = -1; /* TDD_Config_v1430 */ static int hf_lte_rrc_cellAccessRelatedInfoList_r14 = -1; /* SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14 */ static int hf_lte_rrc_cellAccessRelatedInfoList_r14_item = -1; /* CellAccessRelatedInfo_r14 */ -static int hf_lte_rrc_nonCriticalExtension_153 = -1; /* SystemInformationBlockType1_v1450_IEs */ +static int hf_lte_rrc_nonCriticalExtension_174 = -1; /* SystemInformationBlockType1_v1450_IEs */ static int hf_lte_rrc_tdd_Config_v1450 = -1; /* TDD_Config_v1450 */ -static int hf_lte_rrc_nonCriticalExtension_154 = -1; /* T_nonCriticalExtension_52 */ +static int hf_lte_rrc_nonCriticalExtension_175 = -1; /* SystemInformationBlockType1_v1530_IEs */ +static int hf_lte_rrc_hsdn_Cell_r15 = -1; /* T_hsdn_Cell_r15 */ +static int hf_lte_rrc_cellSelectionInfoCE_v1530 = -1; /* CellSelectionInfoCE_v1530 */ +static int hf_lte_rrc_crs_IntfMitigConfig_r15 = -1; /* T_crs_IntfMitigConfig_r15 */ +static int hf_lte_rrc_crs_IntfMitigEnabled_15 = -1; /* NULL */ +static int hf_lte_rrc_crs_IntfMitigNumPRBs_r15 = -1; /* T_crs_IntfMitigNumPRBs_r15 */ +static int hf_lte_rrc_cellBarred_CRS_r15 = -1; /* T_cellBarred_CRS_r15 */ +static int hf_lte_rrc_plmn_IdentityList_v1530 = -1; /* PLMN_IdentityList_v1530 */ +static int hf_lte_rrc_posSchedulingInfoList_r15 = -1; /* PosSchedulingInfoList_r15 */ +static int hf_lte_rrc_cellAccessRelatedInfo_5GC_r15 = -1; /* T_cellAccessRelatedInfo_5GC_r15 */ +static int hf_lte_rrc_cellBarred_5GC_r15 = -1; /* T_cellBarred_5GC_r15 */ +static int hf_lte_rrc_cellBarred_5GC_CRS_r15 = -1; /* T_cellBarred_5GC_CRS_r15 */ +static int hf_lte_rrc_cellAccessRelatedInfoList_5GC_r15 = -1; /* SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15 */ +static int hf_lte_rrc_cellAccessRelatedInfoList_5GC_r15_item = -1; /* CellAccessRelatedInfo_5GC_r15 */ +static int hf_lte_rrc_ims_EmergencySupport5GC_r15 = -1; /* T_ims_EmergencySupport5GC_r15 */ +static int hf_lte_rrc_eCallOverIMS_Support5GC_r15 = -1; /* T_eCallOverIMS_Support5GC_r15 */ +static int hf_lte_rrc_nonCriticalExtension_176 = -1; /* T_nonCriticalExtension_58 */ static int hf_lte_rrc_PLMN_IdentityList_item = -1; /* PLMN_IdentityInfo */ static int hf_lte_rrc_cellReservedForOperatorUse = -1; /* T_cellReservedForOperatorUse */ +static int hf_lte_rrc_PLMN_IdentityList_v1530_item = -1; /* PLMN_IdentityInfo_v1530 */ +static int hf_lte_rrc_cellReservedForOperatorUse_CRS_r15 = -1; /* T_cellReservedForOperatorUse_CRS_r15 */ +static int hf_lte_rrc_PLMN_IdentityList_r15_item = -1; /* PLMN_IdentityInfo_r15 */ +static int hf_lte_rrc_plmn_Identity_5GC_r15 = -1; /* T_plmn_Identity_5GC_r15 */ +static int hf_lte_rrc_plmn_Index_r15 = -1; /* INTEGER_1_maxPLMN_r11 */ +static int hf_lte_rrc_cellReservedForOperatorUse_r15 = -1; /* T_cellReservedForOperatorUse_r15 */ +static int hf_lte_rrc_cellReservedForOperatorUse_CRS_r15_01 = -1; /* T_cellReservedForOperatorUse_CRS_r15_01 */ static int hf_lte_rrc_SchedulingInfoList_item = -1; /* SchedulingInfo */ static int hf_lte_rrc_si_Periodicity = -1; /* T_si_Periodicity */ static int hf_lte_rrc_sib_MappingInfo = -1; /* SIB_MappingInfo */ @@ -1426,6 +1696,19 @@ static int hf_lte_rrc_q_QualMinRSRQ_OnAllSymbols_r12 = -1; /* Q_QualMin_r9 */ static int hf_lte_rrc_plmn_IdentityList_r14 = -1; /* PLMN_IdentityList */ static int hf_lte_rrc_trackingAreaCode_r14 = -1; /* TrackingAreaCode */ static int hf_lte_rrc_cellIdentity_r14 = -1; /* CellIdentity */ +static int hf_lte_rrc_plmn_IdentityList_r15 = -1; /* PLMN_IdentityList_r15 */ +static int hf_lte_rrc_ran_AreaCode_r15 = -1; /* RAN_AreaCode_r15 */ +static int hf_lte_rrc_cellIdentity_5GC_r15 = -1; /* CellIdentity_5GC_r15 */ +static int hf_lte_rrc_cellIdentity_r15 = -1; /* CellIdentity */ +static int hf_lte_rrc_cellId_Index_r15 = -1; /* INTEGER_1_maxPLMN_r11 */ +static int hf_lte_rrc_PosSchedulingInfoList_r15_item = -1; /* PosSchedulingInfo_r15 */ +static int hf_lte_rrc_posSI_Periodicity_r15 = -1; /* T_posSI_Periodicity_r15 */ +static int hf_lte_rrc_posSIB_MappingInfo_r15 = -1; /* PosSIB_MappingInfo_r15 */ +static int hf_lte_rrc_PosSIB_MappingInfo_r15_item = -1; /* PosSIB_Type_r15 */ +static int hf_lte_rrc_encrypted_r15 = -1; /* T_encrypted_r15 */ +static int hf_lte_rrc_gnss_id_r15 = -1; /* GNSS_ID_r15 */ +static int hf_lte_rrc_sbas_id_r15 = -1; /* SBAS_ID_r15 */ +static int hf_lte_rrc_posSibType_r15 = -1; /* T_posSibType_r15 */ static int hf_lte_rrc_cellAccessRelatedInfo_r14 = -1; /* T_cellAccessRelatedInfo_r14 */ static int hf_lte_rrc_plmn_IdentityList_r14_01 = -1; /* PLMN_IdentityList_MBMS_r14 */ static int hf_lte_rrc_freqBandIndicator_r14 = -1; /* FreqBandIndicator_r11 */ @@ -1436,7 +1719,7 @@ static int hf_lte_rrc_systemInfoValueTag_r14 = -1; /* INTEGER_0_31 */ static int hf_lte_rrc_nonMBSFN_SubframeConfig_r14 = -1; /* NonMBSFN_SubframeConfig_r14 */ static int hf_lte_rrc_pdsch_ConfigCommon_r14 = -1; /* PDSCH_ConfigCommon */ static int hf_lte_rrc_systemInformationBlockType13_r14 = -1; /* SystemInformationBlockType13_r9 */ -static int hf_lte_rrc_nonCriticalExtension_155 = -1; /* T_nonCriticalExtension_53 */ +static int hf_lte_rrc_nonCriticalExtension_177 = -1; /* T_nonCriticalExtension_59 */ static int hf_lte_rrc_PLMN_IdentityList_MBMS_r14_item = -1; /* PLMN_Identity */ static int hf_lte_rrc_SchedulingInfoList_MBMS_r14_item = -1; /* SchedulingInfo_MBMS_r14 */ static int hf_lte_rrc_si_Periodicity_r14 = -1; /* T_si_Periodicity_r14 */ @@ -1445,12 +1728,12 @@ static int hf_lte_rrc_SIB_MappingInfo_MBMS_r14_item = -1; /* SIB_Type_MBMS_r14 static int hf_lte_rrc_radioFrameAllocationPeriod_r14 = -1; /* T_radioFrameAllocationPeriod_r14 */ static int hf_lte_rrc_radioFrameAllocationOffset_r14 = -1; /* INTEGER_0_7 */ static int hf_lte_rrc_subframeAllocation_r14 = -1; /* BIT_STRING_SIZE_9 */ -static int hf_lte_rrc_criticalExtensions_44 = -1; /* T_criticalExtensions_44 */ +static int hf_lte_rrc_criticalExtensions_47 = -1; /* T_criticalExtensions_47 */ static int hf_lte_rrc_c1_41 = -1; /* T_c1_41 */ static int hf_lte_rrc_ueAssistanceInformation_r11_01 = -1; /* UEAssistanceInformation_r11_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_44 = -1; /* T_criticalExtensionsFuture_44 */ +static int hf_lte_rrc_criticalExtensionsFuture_46 = -1; /* T_criticalExtensionsFuture_46 */ static int hf_lte_rrc_powerPrefIndication_r11_01 = -1; /* T_powerPrefIndication_r11_01 */ -static int hf_lte_rrc_nonCriticalExtension_156 = -1; /* UEAssistanceInformation_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_178 = -1; /* UEAssistanceInformation_v1430_IEs */ static int hf_lte_rrc_bw_Preference_r14 = -1; /* BW_Preference_r14 */ static int hf_lte_rrc_sps_AssistanceInformation_r14 = -1; /* T_sps_AssistanceInformation_r14 */ static int hf_lte_rrc_trafficPatternInfoListSL_r14 = -1; /* TrafficPatternInfoList_r14 */ @@ -1459,9 +1742,12 @@ static int hf_lte_rrc_rlm_Report_r14 = -1; /* T_rlm_Report_r14 */ static int hf_lte_rrc_rlm_Event_r14 = -1; /* T_rlm_Event_r14 */ static int hf_lte_rrc_excessRep_MPDCCH_r14 = -1; /* T_excessRep_MPDCCH_r14 */ static int hf_lte_rrc_delayBudgetReport_r14 = -1; /* DelayBudgetReport_r14 */ -static int hf_lte_rrc_nonCriticalExtension_157 = -1; /* UEAssistanceInformation_v1450_IEs */ +static int hf_lte_rrc_nonCriticalExtension_179 = -1; /* UEAssistanceInformation_v1450_IEs */ static int hf_lte_rrc_overheatingAssistance_r14 = -1; /* OverheatingAssistance_r14 */ -static int hf_lte_rrc_nonCriticalExtension_158 = -1; /* T_nonCriticalExtension_54 */ +static int hf_lte_rrc_nonCriticalExtension_180 = -1; /* UEAssistanceInformation_v1530_IEs */ +static int hf_lte_rrc_sps_AssistanceInformation_v1530 = -1; /* T_sps_AssistanceInformation_v1530 */ +static int hf_lte_rrc_trafficPatternInfoListSL_v1530 = -1; /* TrafficPatternInfoList_v1530 */ +static int hf_lte_rrc_nonCriticalExtension_181 = -1; /* T_nonCriticalExtension_60 */ static int hf_lte_rrc_dl_Preference_r14 = -1; /* T_dl_Preference_r14 */ static int hf_lte_rrc_ul_Preference_r14 = -1; /* T_ul_Preference_r14 */ static int hf_lte_rrc_TrafficPatternInfoList_r14_item = -1; /* TrafficPatternInfo_r14 */ @@ -1470,6 +1756,9 @@ static int hf_lte_rrc_timingOffset_r14 = -1; /* INTEGER_0_10239 */ static int hf_lte_rrc_priorityInfoSL_r14 = -1; /* SL_Priority_r13 */ static int hf_lte_rrc_logicalChannelIdentityUL_r14 = -1; /* INTEGER_3_10 */ static int hf_lte_rrc_messageSize_r14 = -1; /* T_messageSize_r14 */ +static int hf_lte_rrc_TrafficPatternInfoList_v1530_item = -1; /* TrafficPatternInfo_v1530 */ +static int hf_lte_rrc_trafficDestination_r15 = -1; /* SL_DestinationIdentity_r12 */ +static int hf_lte_rrc_reliabilityInfoSL_r15 = -1; /* SL_Reliability_r15 */ static int hf_lte_rrc_type1 = -1; /* T_type1 */ static int hf_lte_rrc_type2 = -1; /* T_type2 */ static int hf_lte_rrc_reducedUE_Category = -1; /* T_reducedUE_Category */ @@ -1478,69 +1767,78 @@ static int hf_lte_rrc_reducedUE_CategoryUL = -1; /* INTEGER_0_21 */ static int hf_lte_rrc_reducedMaxCCs = -1; /* T_reducedMaxCCs */ static int hf_lte_rrc_reducedCCsDL = -1; /* INTEGER_0_31 */ static int hf_lte_rrc_reducedCCsUL = -1; /* INTEGER_0_31 */ -static int hf_lte_rrc_criticalExtensions_45 = -1; /* T_criticalExtensions_45 */ +static int hf_lte_rrc_criticalExtensions_48 = -1; /* T_criticalExtensions_48 */ static int hf_lte_rrc_c1_42 = -1; /* T_c1_42 */ static int hf_lte_rrc_ueCapabilityEnquiry_r8 = -1; /* UECapabilityEnquiry_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_45 = -1; /* T_criticalExtensionsFuture_45 */ +static int hf_lte_rrc_criticalExtensionsFuture_47 = -1; /* T_criticalExtensionsFuture_47 */ static int hf_lte_rrc_ue_CapabilityRequest = -1; /* UE_CapabilityRequest */ -static int hf_lte_rrc_nonCriticalExtension_159 = -1; /* UECapabilityEnquiry_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_160 = -1; /* UECapabilityEnquiry_v1180_IEs */ +static int hf_lte_rrc_nonCriticalExtension_182 = -1; /* UECapabilityEnquiry_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_183 = -1; /* UECapabilityEnquiry_v1180_IEs */ static int hf_lte_rrc_requestedFrequencyBands_r11 = -1; /* SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11 */ static int hf_lte_rrc_requestedFrequencyBands_r11_item = -1; /* FreqBandIndicator_r11 */ -static int hf_lte_rrc_nonCriticalExtension_161 = -1; /* UECapabilityEnquiry_v1310_IEs */ +static int hf_lte_rrc_nonCriticalExtension_184 = -1; /* UECapabilityEnquiry_v1310_IEs */ static int hf_lte_rrc_requestReducedFormat_r13 = -1; /* T_requestReducedFormat_r13 */ static int hf_lte_rrc_requestSkipFallbackComb_r13 = -1; /* T_requestSkipFallbackComb_r13 */ static int hf_lte_rrc_requestedMaxCCsDL_r13 = -1; /* INTEGER_2_32 */ static int hf_lte_rrc_requestedMaxCCsUL_r13 = -1; /* INTEGER_2_32 */ static int hf_lte_rrc_requestReducedIntNonContComb_r13 = -1; /* T_requestReducedIntNonContComb_r13 */ -static int hf_lte_rrc_nonCriticalExtension_162 = -1; /* UECapabilityEnquiry_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_185 = -1; /* UECapabilityEnquiry_v1430_IEs */ static int hf_lte_rrc_requestDiffFallbackCombList_r14 = -1; /* BandCombinationList_r14 */ -static int hf_lte_rrc_nonCriticalExtension_163 = -1; /* UECapabilityEnquiry_v1510_IEs */ +static int hf_lte_rrc_nonCriticalExtension_186 = -1; /* UECapabilityEnquiry_v1510_IEs */ static int hf_lte_rrc_requestedFreqBandsNR_MRDC_r15 = -1; /* T_requestedFreqBandsNR_MRDC_r15 */ -static int hf_lte_rrc_nonCriticalExtension_164 = -1; /* T_nonCriticalExtension_55 */ +static int hf_lte_rrc_nonCriticalExtension_187 = -1; /* UECapabilityEnquiry_v1530_IEs */ +static int hf_lte_rrc_requestSTTI_SPT_Capability_r15 = -1; /* T_requestSTTI_SPT_Capability_r15 */ +static int hf_lte_rrc_eutra_nr_only_r15 = -1; /* T_eutra_nr_only_r15 */ +static int hf_lte_rrc_nonCriticalExtension_188 = -1; /* T_nonCriticalExtension_61 */ static int hf_lte_rrc_UE_CapabilityRequest_item = -1; /* RAT_Type */ -static int hf_lte_rrc_criticalExtensions_46 = -1; /* T_criticalExtensions_46 */ +static int hf_lte_rrc_criticalExtensions_49 = -1; /* T_criticalExtensions_49 */ static int hf_lte_rrc_c1_43 = -1; /* T_c1_43 */ static int hf_lte_rrc_ueCapabilityInformation_r8 = -1; /* UECapabilityInformation_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_46 = -1; /* T_criticalExtensionsFuture_46 */ +static int hf_lte_rrc_criticalExtensionsFuture_48 = -1; /* T_criticalExtensionsFuture_48 */ static int hf_lte_rrc_ue_CapabilityRAT_ContainerList = -1; /* UE_CapabilityRAT_ContainerList */ -static int hf_lte_rrc_nonCriticalExtension_165 = -1; /* UECapabilityInformation_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_166 = -1; /* UECapabilityInformation_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_189 = -1; /* UECapabilityInformation_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_190 = -1; /* UECapabilityInformation_v1250_IEs */ static int hf_lte_rrc_ue_RadioPagingInfo_r12_01 = -1; /* UE_RadioPagingInfo_r12 */ -static int hf_lte_rrc_nonCriticalExtension_167 = -1; /* T_nonCriticalExtension_56 */ -static int hf_lte_rrc_criticalExtensions_47 = -1; /* T_criticalExtensions_47 */ +static int hf_lte_rrc_nonCriticalExtension_191 = -1; /* T_nonCriticalExtension_62 */ +static int hf_lte_rrc_criticalExtensions_50 = -1; /* T_criticalExtensions_50 */ static int hf_lte_rrc_c1_44 = -1; /* T_c1_44 */ static int hf_lte_rrc_ueInformationRequest_r9_01 = -1; /* UEInformationRequest_r9_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_47 = -1; /* T_criticalExtensionsFuture_47 */ +static int hf_lte_rrc_criticalExtensionsFuture_49 = -1; /* T_criticalExtensionsFuture_49 */ static int hf_lte_rrc_rach_ReportReq_r9 = -1; /* BOOLEAN */ static int hf_lte_rrc_rlf_ReportReq_r9 = -1; /* BOOLEAN */ -static int hf_lte_rrc_nonCriticalExtension_168 = -1; /* UEInformationRequest_v930_IEs */ -static int hf_lte_rrc_nonCriticalExtension_169 = -1; /* UEInformationRequest_v1020_IEs */ +static int hf_lte_rrc_nonCriticalExtension_192 = -1; /* UEInformationRequest_v930_IEs */ +static int hf_lte_rrc_nonCriticalExtension_193 = -1; /* UEInformationRequest_v1020_IEs */ static int hf_lte_rrc_logMeasReportReq_r10 = -1; /* T_logMeasReportReq_r10 */ -static int hf_lte_rrc_nonCriticalExtension_170 = -1; /* UEInformationRequest_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_194 = -1; /* UEInformationRequest_v1130_IEs */ static int hf_lte_rrc_connEstFailReportReq_r11 = -1; /* T_connEstFailReportReq_r11 */ -static int hf_lte_rrc_nonCriticalExtension_171 = -1; /* UEInformationRequest_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_195 = -1; /* UEInformationRequest_v1250_IEs */ static int hf_lte_rrc_mobilityHistoryReportReq_r12 = -1; /* T_mobilityHistoryReportReq_r12 */ -static int hf_lte_rrc_nonCriticalExtension_172 = -1; /* T_nonCriticalExtension_57 */ -static int hf_lte_rrc_criticalExtensions_48 = -1; /* T_criticalExtensions_48 */ +static int hf_lte_rrc_nonCriticalExtension_196 = -1; /* UEInformationRequest_v1530_IEs */ +static int hf_lte_rrc_idleModeMeasurementReq_r15 = -1; /* T_idleModeMeasurementReq_r15 */ +static int hf_lte_rrc_flightPathInfoReq_r15 = -1; /* FlightPathInfoReportConfig_r15 */ +static int hf_lte_rrc_nonCriticalExtension_197 = -1; /* T_nonCriticalExtension_63 */ +static int hf_lte_rrc_criticalExtensions_51 = -1; /* T_criticalExtensions_51 */ static int hf_lte_rrc_c1_45 = -1; /* T_c1_45 */ static int hf_lte_rrc_ueInformationResponse_r9_01 = -1; /* UEInformationResponse_r9_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_48 = -1; /* T_criticalExtensionsFuture_48 */ +static int hf_lte_rrc_criticalExtensionsFuture_50 = -1; /* T_criticalExtensionsFuture_50 */ static int hf_lte_rrc_rach_Report_r9 = -1; /* T_rach_Report_r9 */ static int hf_lte_rrc_numberOfPreamblesSent_r9 = -1; /* NumberOfPreamblesSent_r11 */ static int hf_lte_rrc_contentionDetected_r9 = -1; /* BOOLEAN */ static int hf_lte_rrc_rlf_Report_r9 = -1; /* RLF_Report_r9 */ -static int hf_lte_rrc_nonCriticalExtension_173 = -1; /* UEInformationResponse_v930_IEs */ +static int hf_lte_rrc_nonCriticalExtension_198 = -1; /* UEInformationResponse_v930_IEs */ static int hf_lte_rrc_rlf_Report_v9e0 = -1; /* RLF_Report_v9e0 */ -static int hf_lte_rrc_nonCriticalExtension_174 = -1; /* T_nonCriticalExtension_58 */ +static int hf_lte_rrc_nonCriticalExtension_199 = -1; /* T_nonCriticalExtension_64 */ static int hf_lte_rrc_lateNonCriticalExtension_06 = -1; /* T_lateNonCriticalExtension_05 */ -static int hf_lte_rrc_nonCriticalExtension_175 = -1; /* UEInformationResponse_v1020_IEs */ +static int hf_lte_rrc_nonCriticalExtension_200 = -1; /* UEInformationResponse_v1020_IEs */ static int hf_lte_rrc_logMeasReport_r10 = -1; /* LogMeasReport_r10 */ -static int hf_lte_rrc_nonCriticalExtension_176 = -1; /* UEInformationResponse_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_201 = -1; /* UEInformationResponse_v1130_IEs */ static int hf_lte_rrc_connEstFailReport_r11 = -1; /* ConnEstFailReport_r11 */ -static int hf_lte_rrc_nonCriticalExtension_177 = -1; /* UEInformationResponse_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_202 = -1; /* UEInformationResponse_v1250_IEs */ static int hf_lte_rrc_mobilityHistoryReport_r12 = -1; /* MobilityHistoryReport_r12 */ -static int hf_lte_rrc_nonCriticalExtension_178 = -1; /* T_nonCriticalExtension_59 */ +static int hf_lte_rrc_nonCriticalExtension_203 = -1; /* UEInformationResponse_v1530_IEs */ +static int hf_lte_rrc_measResultListIdle_r15 = -1; /* MeasResultListIdle_r15 */ +static int hf_lte_rrc_flightPathInfoReport_r15 = -1; /* FlightPathInfoReport_r15 */ +static int hf_lte_rrc_nonCriticalExtension_204 = -1; /* T_nonCriticalExtension_65 */ static int hf_lte_rrc_measResultLastServCell_r9 = -1; /* T_measResultLastServCell_r9 */ static int hf_lte_rrc_rsrpResult_r9 = -1; /* RSRP_Range */ static int hf_lte_rrc_rsrqResult_r9 = -1; /* RSRQ_Range */ @@ -1577,6 +1875,8 @@ static int hf_lte_rrc_lastServCellRSRQ_Type_r12 = -1; /* RSRQ_Type_r12 */ static int hf_lte_rrc_measResultListEUTRA_v1250 = -1; /* MeasResultList2EUTRA_v1250 */ static int hf_lte_rrc_drb_EstablishedWithQCI_1_r13 = -1; /* T_drb_EstablishedWithQCI_1_r13 */ static int hf_lte_rrc_measResultLastServCell_v1360 = -1; /* RSRP_Range_v1360 */ +static int hf_lte_rrc_logMeasResultListBT_r15 = -1; /* LogMeasResultListBT_r15 */ +static int hf_lte_rrc_logMeasResultListWLAN_r15 = -1; /* LogMeasResultListWLAN_r15 */ static int hf_lte_rrc_measResultListEUTRA_v9e0 = -1; /* MeasResultList2EUTRA_v9e0 */ static int hf_lte_rrc_MeasResultList2EUTRA_r9_item = -1; /* MeasResult2EUTRA_r9 */ static int hf_lte_rrc_MeasResultList2EUTRA_v9e0_item = -1; /* MeasResult2EUTRA_v9e0 */ @@ -1593,6 +1893,8 @@ static int hf_lte_rrc_measResultList_r9_02 = -1; /* MeasResultsCDMA2000 */ static int hf_lte_rrc_absoluteTimeStamp_r10 = -1; /* AbsoluteTimeInfo_r10 */ static int hf_lte_rrc_logMeasInfoList_r10 = -1; /* LogMeasInfoList_r10 */ static int hf_lte_rrc_logMeasAvailable_r10_03 = -1; /* T_logMeasAvailable_r10_03 */ +static int hf_lte_rrc_logMeasAvailableBT_r15_04 = -1; /* T_logMeasAvailableBT_r15_04 */ +static int hf_lte_rrc_logMeasAvailableWLAN_r15_04 = -1; /* T_logMeasAvailableWLAN_r15_04 */ static int hf_lte_rrc_LogMeasInfoList_r10_item = -1; /* LogMeasInfo_r10 */ static int hf_lte_rrc_relativeTimeStamp_r10 = -1; /* INTEGER_0_7200 */ static int hf_lte_rrc_servCellIdentity_r10 = -1; /* CellGlobalIdEUTRA */ @@ -1639,35 +1941,41 @@ static int hf_lte_rrc_measResultListEUTRA_v1130 = -1; /* MeasResultList2EUTRA_v static int hf_lte_rrc_measResultFailedCell_v1250 = -1; /* RSRQ_Range_v1250 */ static int hf_lte_rrc_failedCellRSRQ_Type_r12 = -1; /* RSRQ_Type_r12 */ static int hf_lte_rrc_measResultFailedCell_v1360 = -1; /* RSRP_Range_v1360 */ -static int hf_lte_rrc_criticalExtensions_49 = -1; /* T_criticalExtensions_49 */ +static int hf_lte_rrc_flightPath_r15 = -1; /* SEQUENCE_SIZE_1_maxWayPoint_r15_OF_WayPointLocation_r15 */ +static int hf_lte_rrc_flightPath_r15_item = -1; /* WayPointLocation_r15 */ +static int hf_lte_rrc_nonCriticalExtension_205 = -1; /* T_nonCriticalExtension_66 */ +static int hf_lte_rrc_wayPointLocation_r15 = -1; /* LocationInfo_r10 */ +static int hf_lte_rrc_timeStamp_r15 = -1; /* AbsoluteTimeInfo_r10 */ +static int hf_lte_rrc_criticalExtensions_52 = -1; /* T_criticalExtensions_52 */ static int hf_lte_rrc_c1_46 = -1; /* T_c1_46 */ static int hf_lte_rrc_ulHandoverPreparationTransfer_r8 = -1; /* ULHandoverPreparationTransfer_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_49 = -1; /* T_criticalExtensionsFuture_49 */ +static int hf_lte_rrc_criticalExtensionsFuture_51 = -1; /* T_criticalExtensionsFuture_51 */ static int hf_lte_rrc_meid = -1; /* BIT_STRING_SIZE_56 */ static int hf_lte_rrc_dedicatedInfo = -1; /* DedicatedInfoCDMA2000 */ -static int hf_lte_rrc_nonCriticalExtension_179 = -1; /* ULHandoverPreparationTransfer_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_180 = -1; /* T_nonCriticalExtension_60 */ -static int hf_lte_rrc_criticalExtensions_50 = -1; /* T_criticalExtensions_50 */ +static int hf_lte_rrc_nonCriticalExtension_206 = -1; /* ULHandoverPreparationTransfer_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_207 = -1; /* T_nonCriticalExtension_67 */ +static int hf_lte_rrc_criticalExtensions_53 = -1; /* T_criticalExtensions_53 */ static int hf_lte_rrc_c1_47 = -1; /* T_c1_47 */ static int hf_lte_rrc_ulInformationTransfer_r8 = -1; /* ULInformationTransfer_r8_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_50 = -1; /* T_criticalExtensionsFuture_50 */ +static int hf_lte_rrc_criticalExtensionsFuture_52 = -1; /* T_criticalExtensionsFuture_52 */ static int hf_lte_rrc_dedicatedInfoType_01 = -1; /* T_dedicatedInfoType_01 */ -static int hf_lte_rrc_nonCriticalExtension_181 = -1; /* ULInformationTransfer_v8a0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_182 = -1; /* T_nonCriticalExtension_61 */ -static int hf_lte_rrc_criticalExtensions_51 = -1; /* T_criticalExtensions_51 */ +static int hf_lte_rrc_nonCriticalExtension_208 = -1; /* ULInformationTransfer_v8a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_209 = -1; /* T_nonCriticalExtension_68 */ +static int hf_lte_rrc_criticalExtensions_54 = -1; /* T_criticalExtensions_54 */ static int hf_lte_rrc_c1_48 = -1; /* T_c1_48 */ static int hf_lte_rrc_ulInformationTransferMRDC_r15_01 = -1; /* ULInformationTransferMRDC_r15_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_51 = -1; /* T_criticalExtensionsFuture_51 */ +static int hf_lte_rrc_criticalExtensionsFuture_53 = -1; /* T_criticalExtensionsFuture_53 */ static int hf_lte_rrc_ul_DCCH_MessageNR_r15 = -1; /* T_ul_DCCH_MessageNR_r15 */ -static int hf_lte_rrc_nonCriticalExtension_183 = -1; /* T_nonCriticalExtension_62 */ -static int hf_lte_rrc_criticalExtensions_52 = -1; /* T_criticalExtensions_52 */ +static int hf_lte_rrc_nonCriticalExtension_210 = -1; /* T_nonCriticalExtension_69 */ +static int hf_lte_rrc_criticalExtensions_55 = -1; /* T_criticalExtensions_55 */ static int hf_lte_rrc_c1_49 = -1; /* T_c1_49 */ static int hf_lte_rrc_wlanConnectionStatusReport_r13_02 = -1; /* WLANConnectionStatusReport_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_52 = -1; /* T_criticalExtensionsFuture_52 */ +static int hf_lte_rrc_criticalExtensionsFuture_54 = -1; /* T_criticalExtensionsFuture_54 */ static int hf_lte_rrc_wlan_Status_r13 = -1; /* WLAN_Status_r13 */ -static int hf_lte_rrc_nonCriticalExtension_184 = -1; /* WLANConnectionStatusReport_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_211 = -1; /* WLANConnectionStatusReport_v1430_IEs */ static int hf_lte_rrc_wlan_Status_v1430 = -1; /* WLAN_Status_v1430 */ -static int hf_lte_rrc_nonCriticalExtension_185 = -1; /* T_nonCriticalExtension_63 */ +static int hf_lte_rrc_nonCriticalExtension_212 = -1; /* T_nonCriticalExtension_70 */ +static int hf_lte_rrc_assistanceDataSIB_Element_r15 = -1; /* OCTET_STRING */ static int hf_lte_rrc_ac_BarringInfo = -1; /* T_ac_BarringInfo */ static int hf_lte_rrc_ac_BarringForEmergency = -1; /* BOOLEAN */ static int hf_lte_rrc_ac_BarringForMO_Signalling = -1; /* AC_BarringConfig */ @@ -1699,18 +2007,22 @@ static int hf_lte_rrc_unicastFreqHoppingInd_r13 = -1; /* T_unicastFreqHoppingIn static int hf_lte_rrc_mbsfn_SubframeConfigList_v1430 = -1; /* MBSFN_SubframeConfigList_v1430 */ static int hf_lte_rrc_videoServiceCauseIndication_r14 = -1; /* T_videoServiceCauseIndication_r14 */ static int hf_lte_rrc_plmn_InfoList_r15 = -1; /* PLMN_InfoList_r15 */ +static int hf_lte_rrc_cp_EDT_r15 = -1; /* T_cp_EDT_r15 */ +static int hf_lte_rrc_up_EDT_r15 = -1; /* T_up_EDT_r15 */ +static int hf_lte_rrc_idleModeMeasurements_r15 = -1; /* T_idleModeMeasurements_r15 */ +static int hf_lte_rrc_reducedCP_LatencyEnabled_r15 = -1; /* T_reducedCP_LatencyEnabled_r15 */ static int hf_lte_rrc_multiBandInfoList_01 = -1; /* SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission */ static int hf_lte_rrc_multiBandInfoList_item = -1; /* AdditionalSpectrumEmission */ -static int hf_lte_rrc_nonCriticalExtension_186 = -1; /* SystemInformationBlockType2_v9e0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_213 = -1; /* SystemInformationBlockType2_v9e0_IEs */ static int hf_lte_rrc_ul_CarrierFreq_v9e0 = -1; /* ARFCN_ValueEUTRA_v9e0 */ -static int hf_lte_rrc_nonCriticalExtension_187 = -1; /* SystemInformationBlockType2_v9i0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_188 = -1; /* T_nonCriticalExtension_64 */ +static int hf_lte_rrc_nonCriticalExtension_214 = -1; /* SystemInformationBlockType2_v9i0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_215 = -1; /* T_nonCriticalExtension_71 */ static int hf_lte_rrc_dummy = -1; /* T_dummy */ static int hf_lte_rrc_freqInfo_v10l0 = -1; /* T_freqInfo_v10l0 */ static int hf_lte_rrc_additionalSpectrumEmission_v10l0 = -1; /* AdditionalSpectrumEmission_v10l0 */ static int hf_lte_rrc_multiBandInfoList_v10l0_01 = -1; /* SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0 */ static int hf_lte_rrc_multiBandInfoList_v10l0_item = -1; /* AdditionalSpectrumEmission_v10l0 */ -static int hf_lte_rrc_nonCriticalExtension_189 = -1; /* T_nonCriticalExtension_65 */ +static int hf_lte_rrc_nonCriticalExtension_216 = -1; /* T_nonCriticalExtension_72 */ static int hf_lte_rrc_ac_BarringFactor = -1; /* T_ac_BarringFactor */ static int hf_lte_rrc_ac_BarringTime = -1; /* T_ac_BarringTime */ static int hf_lte_rrc_ac_BarringForSpecialAC = -1; /* BIT_STRING_SIZE_5 */ @@ -1777,17 +2089,22 @@ static int hf_lte_rrc_cellReselectionServingFreqInfo_v1310 = -1; /* CellReselec static int hf_lte_rrc_redistributionServingInfo_r13 = -1; /* RedistributionServingInfo_r13 */ static int hf_lte_rrc_t_ReselectionEUTRA_CE_r13 = -1; /* T_ReselectionEUTRA_CE_r13 */ static int hf_lte_rrc_cellReselectionInfoCommon_v1460 = -1; /* CellReselectionInfoCommon_v1460 */ +static int hf_lte_rrc_cellReselectionInfoHSDN_r15 = -1; /* CellReselectionInfoHSDN_r15 */ +static int hf_lte_rrc_crs_IntfMitigNeighCellsCE_r15 = -1; /* T_crs_IntfMitigNeighCellsCE_r15 */ static int hf_lte_rrc_redistributionFactorServing_r13 = -1; /* INTEGER_0_10 */ static int hf_lte_rrc_redistributionFactorCell_r13 = -1; /* T_redistributionFactorCell_r13 */ static int hf_lte_rrc_t360_r13 = -1; /* T_t360_r13 */ static int hf_lte_rrc_redistrOnPagingOnly_r13 = -1; /* T_redistrOnPagingOnly_r13 */ -static int hf_lte_rrc_nonCriticalExtension_190 = -1; /* SystemInformationBlockType3_v10l0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_191 = -1; /* T_nonCriticalExtension_66 */ +static int hf_lte_rrc_nonCriticalExtension_217 = -1; /* SystemInformationBlockType3_v10l0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_218 = -1; /* T_nonCriticalExtension_73 */ static int hf_lte_rrc_s_SearchDeltaP_r14 = -1; /* T_s_SearchDeltaP_r14 */ +static int hf_lte_rrc_cellEquivalentSize_r15 = -1; /* INTEGER_2_16 */ static int hf_lte_rrc_intraFreqNeighCellList = -1; /* IntraFreqNeighCellList */ static int hf_lte_rrc_intraFreqBlackCellList = -1; /* IntraFreqBlackCellList */ static int hf_lte_rrc_csg_PhysCellIdRange = -1; /* PhysCellIdRange */ +static int hf_lte_rrc_intraFreqNeighHSDN_CellList_r15 = -1; /* IntraFreqNeighHSDN_CellList_r15 */ static int hf_lte_rrc_IntraFreqNeighCellList_item = -1; /* IntraFreqNeighCellInfo */ +static int hf_lte_rrc_IntraFreqNeighHSDN_CellList_r15_item = -1; /* PhysCellIdRange */ static int hf_lte_rrc_q_OffsetCell = -1; /* Q_OffsetRange */ static int hf_lte_rrc_IntraFreqBlackCellList_item = -1; /* PhysCellIdRange */ static int hf_lte_rrc_interFreqCarrierFreqList = -1; /* InterFreqCarrierFreqList */ @@ -1801,30 +2118,35 @@ static int hf_lte_rrc_interFreqCarrierFreqList_v1350 = -1; /* InterFreqCarrierF static int hf_lte_rrc_interFreqCarrierFreqListExt_v1350 = -1; /* InterFreqCarrierFreqListExt_v1350 */ static int hf_lte_rrc_interFreqCarrierFreqListExt_v1360 = -1; /* InterFreqCarrierFreqListExt_v1360 */ static int hf_lte_rrc_scptm_FreqOffset_r14 = -1; /* INTEGER_1_8 */ +static int hf_lte_rrc_interFreqCarrierFreqList_v1530 = -1; /* InterFreqCarrierFreqList_v1530 */ +static int hf_lte_rrc_interFreqCarrierFreqListExt_v1530 = -1; /* InterFreqCarrierFreqListExt_v1530 */ +static int hf_lte_rrc_measIdleConfigSIB_r15 = -1; /* MeasIdleConfigSIB_r15 */ static int hf_lte_rrc_interFreqCarrierFreqList_v8h0 = -1; /* SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0 */ static int hf_lte_rrc_interFreqCarrierFreqList_v8h0_item = -1; /* InterFreqCarrierFreqInfo_v8h0 */ -static int hf_lte_rrc_nonCriticalExtension_192 = -1; /* SystemInformationBlockType5_v9e0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_219 = -1; /* SystemInformationBlockType5_v9e0_IEs */ static int hf_lte_rrc_interFreqCarrierFreqList_v9e0 = -1; /* SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0 */ static int hf_lte_rrc_interFreqCarrierFreqList_v9e0_item = -1; /* InterFreqCarrierFreqInfo_v9e0 */ -static int hf_lte_rrc_nonCriticalExtension_193 = -1; /* SystemInformationBlockType5_v10j0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_220 = -1; /* SystemInformationBlockType5_v10j0_IEs */ static int hf_lte_rrc_interFreqCarrierFreqList_v10j0 = -1; /* SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0 */ static int hf_lte_rrc_interFreqCarrierFreqList_v10j0_item = -1; /* InterFreqCarrierFreqInfo_v10j0 */ -static int hf_lte_rrc_nonCriticalExtension_194 = -1; /* SystemInformationBlockType5_v10l0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_221 = -1; /* SystemInformationBlockType5_v10l0_IEs */ static int hf_lte_rrc_interFreqCarrierFreqList_v10l0 = -1; /* SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0 */ static int hf_lte_rrc_interFreqCarrierFreqList_v10l0_item = -1; /* InterFreqCarrierFreqInfo_v10l0 */ -static int hf_lte_rrc_nonCriticalExtension_195 = -1; /* SystemInformationBlockType5_v13a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_222 = -1; /* SystemInformationBlockType5_v13a0_IEs */ static int hf_lte_rrc_interFreqCarrierFreqList_v13a0 = -1; /* InterFreqCarrierFreqList_v13a0 */ -static int hf_lte_rrc_nonCriticalExtension_196 = -1; /* T_nonCriticalExtension_67 */ +static int hf_lte_rrc_nonCriticalExtension_223 = -1; /* T_nonCriticalExtension_74 */ static int hf_lte_rrc_InterFreqCarrierFreqList_item = -1; /* InterFreqCarrierFreqInfo */ static int hf_lte_rrc_InterFreqCarrierFreqList_v1250_item = -1; /* InterFreqCarrierFreqInfo_v1250 */ static int hf_lte_rrc_InterFreqCarrierFreqList_v1310_item = -1; /* InterFreqCarrierFreqInfo_v1310 */ static int hf_lte_rrc_InterFreqCarrierFreqList_v1350_item = -1; /* InterFreqCarrierFreqInfo_v1350 */ static int hf_lte_rrc_InterFreqCarrierFreqList_v13a0_item = -1; /* InterFreqCarrierFreqInfo_v1360 */ +static int hf_lte_rrc_InterFreqCarrierFreqList_v1530_item = -1; /* InterFreqCarrierFreqInfo_v1530 */ static int hf_lte_rrc_InterFreqCarrierFreqListExt_r12_item = -1; /* InterFreqCarrierFreqInfo_r12 */ static int hf_lte_rrc_InterFreqCarrierFreqListExt_v1280_item = -1; /* InterFreqCarrierFreqInfo_v10j0 */ static int hf_lte_rrc_InterFreqCarrierFreqListExt_v1310_item = -1; /* InterFreqCarrierFreqInfo_v1310 */ static int hf_lte_rrc_InterFreqCarrierFreqListExt_v1350_item = -1; /* InterFreqCarrierFreqInfo_v1350 */ static int hf_lte_rrc_InterFreqCarrierFreqListExt_v1360_item = -1; /* InterFreqCarrierFreqInfo_v1360 */ +static int hf_lte_rrc_InterFreqCarrierFreqListExt_v1530_item = -1; /* InterFreqCarrierFreqInfo_v1530 */ static int hf_lte_rrc_dl_CarrierFreq = -1; /* ARFCN_ValueEUTRA */ static int hf_lte_rrc_threshX_High = -1; /* ReselectionThreshold */ static int hf_lte_rrc_threshX_Low = -1; /* ReselectionThreshold */ @@ -1855,7 +2177,10 @@ static int hf_lte_rrc_q_QualMinWB_r12 = -1; /* Q_QualMin_r9 */ static int hf_lte_rrc_multiBandInfoList_r12 = -1; /* MultiBandInfoList_r11 */ static int hf_lte_rrc_reducedMeasPerformance_r12_01 = -1; /* T_reducedMeasPerformance_r12_01 */ static int hf_lte_rrc_redistributionInterFreqInfo_r13 = -1; /* RedistributionInterFreqInfo_r13 */ +static int hf_lte_rrc_hsdn_Indication_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_interFreqNeighHSDN_CellList_r15 = -1; /* InterFreqNeighHSDN_CellList_r15 */ static int hf_lte_rrc_InterFreqNeighCellList_item = -1; /* InterFreqNeighCellInfo */ +static int hf_lte_rrc_InterFreqNeighHSDN_CellList_r15_item = -1; /* PhysCellIdRange */ static int hf_lte_rrc_InterFreqBlackCellList_item = -1; /* PhysCellIdRange */ static int hf_lte_rrc_redistributionFactorFreq_r13 = -1; /* RedistributionFactor_r13 */ static int hf_lte_rrc_redistributionNeighCellList_r13 = -1; /* RedistributionNeighCellList_r13 */ @@ -1874,7 +2199,7 @@ static int hf_lte_rrc_carrierFreqListUTRA_FDD_Ext_r12 = -1; /* CarrierFreqListU static int hf_lte_rrc_carrierFreqListUTRA_TDD_Ext_r12 = -1; /* CarrierFreqListUTRA_TDD_Ext_r12 */ static int hf_lte_rrc_carrierFreqListUTRA_FDD_v8h0 = -1; /* SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0 */ static int hf_lte_rrc_carrierFreqListUTRA_FDD_v8h0_item = -1; /* CarrierFreqInfoUTRA_FDD_v8h0 */ -static int hf_lte_rrc_nonCriticalExtension_197 = -1; /* T_nonCriticalExtension_68 */ +static int hf_lte_rrc_nonCriticalExtension_224 = -1; /* T_nonCriticalExtension_75 */ static int hf_lte_rrc_reducedMeasPerformance_r12_02 = -1; /* T_reducedMeasPerformance_r12_02 */ static int hf_lte_rrc_CarrierFreqListUTRA_FDD_item = -1; /* CarrierFreqUTRA_FDD */ static int hf_lte_rrc_q_RxLevMin_01 = -1; /* INTEGER_M60_M13 */ @@ -1990,6 +2315,7 @@ static int hf_lte_rrc_warningMessageSegmentType_r9 = -1; /* T_warningMessageSeg static int hf_lte_rrc_warningMessageSegmentNumber_r9 = -1; /* T_warningMessageSegmentNumber_r9 */ static int hf_lte_rrc_warningMessageSegment_r9 = -1; /* T_warningMessageSegment_r9 */ static int hf_lte_rrc_dataCodingScheme_r9 = -1; /* T_dataCodingScheme_r9 */ +static int hf_lte_rrc_warningAreaCoordinatesSegment_r15 = -1; /* OCTET_STRING */ static int hf_lte_rrc_mbsfn_AreaInfoList_r9 = -1; /* MBSFN_AreaInfoList_r9 */ static int hf_lte_rrc_notificationConfig_r9 = -1; /* MBMS_NotificationConfig_r9 */ static int hf_lte_rrc_notificationConfig_v1430 = -1; /* MBMS_NotificationConfig_v1430 */ @@ -1997,6 +2323,7 @@ static int hf_lte_rrc_eab_Param_r11 = -1; /* T_eab_Param_r11 */ static int hf_lte_rrc_eab_Common_r11 = -1; /* EAB_Config_r11 */ static int hf_lte_rrc_eab_PerPLMN_List_r11 = -1; /* SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11 */ static int hf_lte_rrc_eab_PerPLMN_List_r11_item = -1; /* EAB_ConfigPLMN_r11 */ +static int hf_lte_rrc_eab_PerRSRP_r15 = -1; /* T_eab_PerRSRP_r15 */ static int hf_lte_rrc_eab_Config_r11 = -1; /* EAB_Config_r11 */ static int hf_lte_rrc_eab_Category_r11 = -1; /* T_eab_Category_r11 */ static int hf_lte_rrc_eab_BarringBitmap_r11 = -1; /* BIT_STRING_SIZE_10 */ @@ -2134,6 +2461,55 @@ static int hf_lte_rrc_thresSL_TxPrioritization_r14 = -1; /* SL_Priority_r13 */ static int hf_lte_rrc_anchorCarrierFreqList_r14 = -1; /* SL_AnchorCarrierFreqList_V2X_r14 */ static int hf_lte_rrc_offsetDFN_r14 = -1; /* INTEGER_0_1000 */ static int hf_lte_rrc_cbr_CommonTxConfigList_r14 = -1; /* SL_CBR_CommonTxConfigList_r14 */ +static int hf_lte_rrc_carrierFreqListNR_r15 = -1; /* CarrierFreqListNR_r15 */ +static int hf_lte_rrc_t_ReselectionNR_r15 = -1; /* T_Reselection */ +static int hf_lte_rrc_t_ReselectionNR_SF_r15 = -1; /* SpeedStateScaleFactors */ +static int hf_lte_rrc_CarrierFreqListNR_r15_item = -1; /* CarrierFreqNR_r15 */ +static int hf_lte_rrc_multiBandInfoList_r15 = -1; /* MultiFrequencyBandListNR_r15 */ +static int hf_lte_rrc_multiBandInfoListSUL_r15 = -1; /* MultiFrequencyBandListNR_r15 */ +static int hf_lte_rrc_measTimingConfig_r15 = -1; /* MTC_SSB_NR_r15 */ +static int hf_lte_rrc_subcarrierSpacingSSB_r15_01 = -1; /* T_subcarrierSpacingSSB_r15_01 */ +static int hf_lte_rrc_ss_RSSI_Measurement_r15 = -1; /* SS_RSSI_Measurement_r15 */ +static int hf_lte_rrc_threshX_High_r15 = -1; /* ReselectionThreshold */ +static int hf_lte_rrc_threshX_Low_r15 = -1; /* ReselectionThreshold */ +static int hf_lte_rrc_threshX_Q_r15 = -1; /* T_threshX_Q_r15 */ +static int hf_lte_rrc_threshX_HighQ_r15 = -1; /* ReselectionThresholdQ_r9 */ +static int hf_lte_rrc_threshX_LowQ_r15 = -1; /* ReselectionThresholdQ_r9 */ +static int hf_lte_rrc_q_RxLevMin_r15 = -1; /* INTEGER_M70_M22 */ +static int hf_lte_rrc_q_RxLevMinSUL_r15 = -1; /* INTEGER_M70_M22 */ +static int hf_lte_rrc_p_MaxNR_r15 = -1; /* P_MaxNR_r15 */ +static int hf_lte_rrc_ns_PmaxListNR_r15 = -1; /* NS_PmaxListNR_r15 */ +static int hf_lte_rrc_q_QualMin_r15 = -1; /* Q_QualMin_r9 */ +static int hf_lte_rrc_deriveSSB_IndexFromCell_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_maxRS_IndexCellQual_r15 = -1; /* MaxRS_IndexCellQualNR_r15 */ +static int hf_lte_rrc_threshRS_Index_r15 = -1; /* ThresholdListNR_r15 */ +static int hf_lte_rrc_uac_BarringForCommon_r15 = -1; /* UAC_BarringPerCatList_r15 */ +static int hf_lte_rrc_uac_BarringPerPLMN_List_r15 = -1; /* UAC_BarringPerPLMN_List_r15 */ +static int hf_lte_rrc_uac_BarringInfoSetList_r15 = -1; /* UAC_BarringInfoSetList_r15 */ +static int hf_lte_rrc_uac_AC1_SelectAssistInfo_r15 = -1; /* T_uac_AC1_SelectAssistInfo_r15 */ +static int hf_lte_rrc_plmnCommon_r15 = -1; /* UAC_AC1_SelectAssistInfo_r15 */ +static int hf_lte_rrc_individualPLMNList_r15 = -1; /* SEQUENCE_SIZE_2_maxPLMN_r11_OF_UAC_AC1_SelectAssistInfo_r15 */ +static int hf_lte_rrc_individualPLMNList_r15_item = -1; /* UAC_AC1_SelectAssistInfo_r15 */ +static int hf_lte_rrc_UAC_BarringPerPLMN_List_r15_item = -1; /* UAC_BarringPerPLMN_r15 */ +static int hf_lte_rrc_plmn_IdentityIndex_r15 = -1; /* INTEGER_1_maxPLMN_r11 */ +static int hf_lte_rrc_uac_AC_BarringListType_r15 = -1; /* T_uac_AC_BarringListType_r15 */ +static int hf_lte_rrc_uac_ImplicitAC_BarringList_r15 = -1; /* SEQUENCE_SIZE_maxAccessCat_1_r15_OF_UAC_BarringInfoSetIndex_r15 */ +static int hf_lte_rrc_uac_ImplicitAC_BarringList_r15_item = -1; /* UAC_BarringInfoSetIndex_r15 */ +static int hf_lte_rrc_uac_ExplicitAC_BarringList_r15 = -1; /* UAC_BarringPerCatList_r15 */ +static int hf_lte_rrc_UAC_BarringPerCatList_r15_item = -1; /* UAC_BarringPerCat_r15 */ +static int hf_lte_rrc_accessCategory_r15 = -1; /* INTEGER_1_maxAccessCat_1_r15 */ +static int hf_lte_rrc_uac_barringInfoSetIndex_r15 = -1; /* UAC_BarringInfoSetIndex_r15 */ +static int hf_lte_rrc_UAC_BarringInfoSetList_r15_item = -1; /* UAC_BarringInfoSet_r15 */ +static int hf_lte_rrc_uac_BarringFactor_r15 = -1; /* T_uac_BarringFactor_r15 */ +static int hf_lte_rrc_uac_BarringTime_r15 = -1; /* T_uac_BarringTime_r15 */ +static int hf_lte_rrc_uac_BarringForAccessIdentity_r15 = -1; /* BIT_STRING_SIZE_7 */ +static int hf_lte_rrc_v2x_InterFreqInfoList_r15 = -1; /* SL_InterFreqInfoListV2X_r14 */ +static int hf_lte_rrc_cbr_pssch_TxConfigList_r15 = -1; /* SL_CBR_PPPP_TxConfigList_r15 */ +static int hf_lte_rrc_v2x_PacketDuplicationConfig_r15 = -1; /* SL_V2X_PacketDuplicationConfig_r15 */ +static int hf_lte_rrc_syncFreqList_r15 = -1; /* SL_V2X_SyncFreqList_r15 */ +static int hf_lte_rrc_slss_TxMultiFreq_r15 = -1; /* T_slss_TxMultiFreq_r15 */ +static int hf_lte_rrc_v2x_FreqSelectionConfigList_r15 = -1; /* SL_V2X_FreqSelectionConfigList_r15 */ +static int hf_lte_rrc_threshS_RSSI_CBR_r14 = -1; /* INTEGER_0_45 */ static int hf_lte_rrc_antennaPortsCount = -1; /* T_antennaPortsCount */ static int hf_lte_rrc_transmissionMode = -1; /* T_transmissionMode */ static int hf_lte_rrc_codebookSubsetRestriction = -1; /* T_codebookSubsetRestriction */ @@ -2157,19 +2533,56 @@ static int hf_lte_rrc_setup_06 = -1; /* T_setup_06 */ static int hf_lte_rrc_maxLayersMIMO_r10 = -1; /* T_maxLayersMIMO_r10 */ static int hf_lte_rrc_alternativeCodebookEnabledFor4TX_r12 = -1; /* BOOLEAN */ static int hf_lte_rrc_ce_UE_TxAntennaSelection_config_r14 = -1; /* T_ce_UE_TxAntennaSelection_config_r14 */ +static int hf_lte_rrc_setup_07 = -1; /* T_setup_07 */ +static int hf_lte_rrc_transmissionModeDL_MBSFN_r15 = -1; /* T_transmissionModeDL_MBSFN_r15 */ +static int hf_lte_rrc_transmissionModeDL_nonMBSFN_r15 = -1; /* T_transmissionModeDL_nonMBSFN_r15 */ +static int hf_lte_rrc_codebookSubsetRestriction_01 = -1; /* T_codebookSubsetRestriction_01 */ +static int hf_lte_rrc_n2TxAntenna_tm3_r15 = -1; /* BIT_STRING_SIZE_2 */ +static int hf_lte_rrc_n4TxAntenna_tm3_r15 = -1; /* BIT_STRING_SIZE_4 */ +static int hf_lte_rrc_n2TxAntenna_tm4_r15 = -1; /* BIT_STRING_SIZE_6 */ +static int hf_lte_rrc_n4TxAntenna_tm4_r15 = -1; /* BIT_STRING_SIZE_64 */ +static int hf_lte_rrc_n2TxAntenna_tm5_r15 = -1; /* BIT_STRING_SIZE_4 */ +static int hf_lte_rrc_n4TxAntenna_tm5_r15 = -1; /* BIT_STRING_SIZE_16 */ +static int hf_lte_rrc_n2TxAntenna_tm6_r15 = -1; /* BIT_STRING_SIZE_4 */ +static int hf_lte_rrc_n4TxAntenna_tm6_r15 = -1; /* BIT_STRING_SIZE_16 */ +static int hf_lte_rrc_n2TxAntenna_tm8_r15 = -1; /* BIT_STRING_SIZE_6 */ +static int hf_lte_rrc_n4TxAntenna_tm8_r15 = -1; /* BIT_STRING_SIZE_64 */ +static int hf_lte_rrc_n2TxAntenna_tm9and10_r15 = -1; /* BIT_STRING_SIZE_6 */ +static int hf_lte_rrc_n4TxAntenna_tm9and10_r15 = -1; /* BIT_STRING_SIZE_96 */ +static int hf_lte_rrc_n8TxAntenna_tm9and10_r15 = -1; /* BIT_STRING_SIZE_109 */ +static int hf_lte_rrc_maxLayersMIMO_STTI_r15 = -1; /* T_maxLayersMIMO_STTI_r15 */ +static int hf_lte_rrc_slotSubslotPDSCH_TxDiv_2Layer_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_slotSubslotPDSCH_TxDiv_4Layer_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_setup_08 = -1; /* T_setup_08 */ +static int hf_lte_rrc_ue_TxAntennaSelection_SRS_1T4R_Config_r15 = -1; /* NULL */ +static int hf_lte_rrc_ue_TxAntennaSelection_SRS_2T4R_NrOfPairs_r15 = -1; /* T_ue_TxAntennaSelection_SRS_2T4R_NrOfPairs_r15 */ static int hf_lte_rrc_transmissionModeUL_r10 = -1; /* T_transmissionModeUL_r10 */ static int hf_lte_rrc_fourAntennaPortActivated_r10 = -1; /* T_fourAntennaPortActivated_r10 */ -static int hf_lte_rrc_setup_07 = -1; /* T_setup_07 */ +static int hf_lte_rrc_transmissionModeUL_STTI_r15 = -1; /* T_transmissionModeUL_STTI_r15 */ +static int hf_lte_rrc_setup_09 = -1; /* T_setup_09 */ +static int hf_lte_rrc_aul_CRNTI_r15 = -1; /* C_RNTI */ +static int hf_lte_rrc_aul_Subframes_r15 = -1; /* BIT_STRING_SIZE_40 */ +static int hf_lte_rrc_aul_HARQ_Processes_r15 = -1; /* INTEGER_1_16 */ +static int hf_lte_rrc_transmissionModeUL_AUL_r15 = -1; /* T_transmissionModeUL_AUL_r15 */ +static int hf_lte_rrc_aul_StartingFullBW_InsideMCOT_r15 = -1; /* BIT_STRING_SIZE_5 */ +static int hf_lte_rrc_aul_StartingFullBW_OutsideMCOT_r15 = -1; /* BIT_STRING_SIZE_7 */ +static int hf_lte_rrc_aul_StartingPartialBW_InsideMCOT_r15 = -1; /* T_aul_StartingPartialBW_InsideMCOT_r15 */ +static int hf_lte_rrc_aul_StartingPartialBW_OutsideMCOT_r15 = -1; /* T_aul_StartingPartialBW_OutsideMCOT_r15 */ +static int hf_lte_rrc_aul_RetransmissionTimer_r15 = -1; /* T_aul_RetransmissionTimer_r15 */ +static int hf_lte_rrc_endingSymbolAUL_r15 = -1; /* INTEGER_12_13 */ +static int hf_lte_rrc_subframeOffsetCOT_Sharing_r15 = -1; /* INTEGER_2_4 */ +static int hf_lte_rrc_contentionWindowSizeTimer_r15 = -1; /* T_contentionWindowSizeTimer_r15 */ +static int hf_lte_rrc_setup_10 = -1; /* T_setup_10 */ static int hf_lte_rrc_cqi_ReportModeAperiodic_r10 = -1; /* CQI_ReportModeAperiodic */ static int hf_lte_rrc_aperiodicCSI_Trigger_r10 = -1; /* T_aperiodicCSI_Trigger_r10 */ static int hf_lte_rrc_trigger1_r10 = -1; /* BIT_STRING_SIZE_8 */ static int hf_lte_rrc_trigger2_r10 = -1; /* BIT_STRING_SIZE_8 */ -static int hf_lte_rrc_setup_08 = -1; /* T_setup_08 */ +static int hf_lte_rrc_setup_11 = -1; /* T_setup_11 */ static int hf_lte_rrc_aperiodicCSI_Trigger_v1250 = -1; /* T_aperiodicCSI_Trigger_v1250 */ static int hf_lte_rrc_trigger_SubframeSetIndicator_r12 = -1; /* T_trigger_SubframeSetIndicator_r12 */ static int hf_lte_rrc_trigger1_SubframeSetIndicator_r12 = -1; /* BIT_STRING_SIZE_8 */ static int hf_lte_rrc_trigger2_SubframeSetIndicator_r12 = -1; /* BIT_STRING_SIZE_8 */ -static int hf_lte_rrc_setup_09 = -1; /* T_setup_09 */ +static int hf_lte_rrc_setup_12 = -1; /* T_setup_12 */ static int hf_lte_rrc_aperiodicCSI_Trigger_v1310 = -1; /* T_aperiodicCSI_Trigger_v1310 */ static int hf_lte_rrc_trigger1_r13 = -1; /* BIT_STRING_SIZE_32 */ static int hf_lte_rrc_trigger2_r13 = -1; /* BIT_STRING_SIZE_32 */ @@ -2178,7 +2591,7 @@ static int hf_lte_rrc_trigger4_r13 = -1; /* BIT_STRING_SIZE_32 */ static int hf_lte_rrc_trigger5_r13 = -1; /* BIT_STRING_SIZE_32 */ static int hf_lte_rrc_trigger6_r13 = -1; /* BIT_STRING_SIZE_32 */ static int hf_lte_rrc_aperiodicCSI_Trigger2_r13 = -1; /* T_aperiodicCSI_Trigger2_r13 */ -static int hf_lte_rrc_setup_10 = -1; /* T_setup_10 */ +static int hf_lte_rrc_setup_13 = -1; /* T_setup_13 */ static int hf_lte_rrc_trigger1_SubframeSetIndicator_r13 = -1; /* BIT_STRING_SIZE_32 */ static int hf_lte_rrc_trigger2_SubframeSetIndicator_r13 = -1; /* BIT_STRING_SIZE_32 */ static int hf_lte_rrc_trigger3_SubframeSetIndicator_r13 = -1; /* BIT_STRING_SIZE_32 */ @@ -2236,13 +2649,13 @@ static int hf_lte_rrc_cqi_ReportAperiodic_r10 = -1; /* CQI_ReportAperiodic_r10 static int hf_lte_rrc_cqi_ReportPeriodic_r10 = -1; /* CQI_ReportPeriodic_r10 */ static int hf_lte_rrc_pmi_RI_Report_r9_01 = -1; /* T_pmi_RI_Report_r9_01 */ static int hf_lte_rrc_csi_SubframePatternConfig_r10 = -1; /* T_csi_SubframePatternConfig_r10 */ -static int hf_lte_rrc_setup_11 = -1; /* T_setup_11 */ +static int hf_lte_rrc_setup_14 = -1; /* T_setup_14 */ static int hf_lte_rrc_csi_MeasSubframeSet1_r10 = -1; /* MeasSubframePattern_r10 */ static int hf_lte_rrc_csi_MeasSubframeSet2_r10 = -1; /* MeasSubframePattern_r10 */ static int hf_lte_rrc_cqi_ReportPeriodic_v1130 = -1; /* CQI_ReportPeriodic_v1130 */ static int hf_lte_rrc_cqi_ReportBoth_r11 = -1; /* CQI_ReportBoth_r11 */ static int hf_lte_rrc_csi_SubframePatternConfig_r12 = -1; /* T_csi_SubframePatternConfig_r12 */ -static int hf_lte_rrc_setup_12 = -1; /* T_setup_12 */ +static int hf_lte_rrc_setup_15 = -1; /* T_setup_15 */ static int hf_lte_rrc_csi_MeasSubframeSets_r12 = -1; /* BIT_STRING_SIZE_10 */ static int hf_lte_rrc_cqi_ReportBoth_v1250 = -1; /* CQI_ReportBoth_v1250 */ static int hf_lte_rrc_cqi_ReportAperiodic_v1250 = -1; /* CQI_ReportAperiodic_v1250 */ @@ -2252,10 +2665,21 @@ static int hf_lte_rrc_cqi_ReportAperiodic_v1310 = -1; /* CQI_ReportAperiodic_v1 static int hf_lte_rrc_cqi_ReportPeriodic_v1310 = -1; /* CQI_ReportPeriodic_v1310 */ static int hf_lte_rrc_cqi_ReportPeriodic_v1320 = -1; /* CQI_ReportPeriodic_v1320 */ static int hf_lte_rrc_cqi_ReportAperiodicHybrid_r14 = -1; /* CQI_ReportAperiodicHybrid_r14 */ +static int hf_lte_rrc_altCQI_Table_1024QAM_r15 = -1; /* T_altCQI_Table_1024QAM_r15 */ +static int hf_lte_rrc_setup_16 = -1; /* T_setup_16 */ +static int hf_lte_rrc_cqi_ReportConfig_r10 = -1; /* CQI_ReportConfig_r10 */ +static int hf_lte_rrc_cqi_ReportConfig_v1130 = -1; /* CQI_ReportConfig_v1130 */ +static int hf_lte_rrc_cqi_ReportConfigPCell_v1250 = -1; /* CQI_ReportConfig_v1250 */ +static int hf_lte_rrc_cqi_ReportConfig_v1310 = -1; /* CQI_ReportConfig_v1310 */ +static int hf_lte_rrc_cqi_ReportConfig_v1320 = -1; /* CQI_ReportConfig_v1320 */ +static int hf_lte_rrc_cqi_ReportConfig_v1430 = -1; /* CQI_ReportConfig_v1430 */ +static int hf_lte_rrc_altCQI_Table_1024QAM_r15_01 = -1; /* T_altCQI_Table_1024QAM_r15_01 */ static int hf_lte_rrc_nomPDSCH_RS_EPRE_Offset_r10 = -1; /* INTEGER_M1_6 */ static int hf_lte_rrc_cqi_ReportPeriodicSCell_r10 = -1; /* CQI_ReportPeriodic_r10 */ static int hf_lte_rrc_pmi_RI_Report_r10 = -1; /* T_pmi_RI_Report_r10 */ -static int hf_lte_rrc_setup_13 = -1; /* T_setup_13 */ +static int hf_lte_rrc_cqi_ReportPeriodicSCell_r15 = -1; /* CQI_ReportPeriodicSCell_r15 */ +static int hf_lte_rrc_altCQI_Table_1024QAM_r15_02 = -1; /* T_altCQI_Table_1024QAM_r15_02 */ +static int hf_lte_rrc_setup_17 = -1; /* T_setup_17 */ static int hf_lte_rrc_cqi_PUCCH_ResourceIndex = -1; /* INTEGER_0_1185 */ static int hf_lte_rrc_cqi_pmi_ConfigIndex = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_cqi_FormatIndicatorPeriodic = -1; /* T_cqi_FormatIndicatorPeriodic */ @@ -2264,7 +2688,7 @@ static int hf_lte_rrc_subbandCQI = -1; /* T_subbandCQI */ static int hf_lte_rrc_k = -1; /* INTEGER_1_4 */ static int hf_lte_rrc_ri_ConfigIndex = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_simultaneousAckNackAndCQI = -1; /* BOOLEAN */ -static int hf_lte_rrc_setup_14 = -1; /* T_setup_14 */ +static int hf_lte_rrc_setup_18 = -1; /* T_setup_18 */ static int hf_lte_rrc_cqi_PUCCH_ResourceIndex_r10 = -1; /* INTEGER_0_1184 */ static int hf_lte_rrc_cqi_PUCCH_ResourceIndexP1_r10 = -1; /* INTEGER_0_1184 */ static int hf_lte_rrc_cqi_FormatIndicatorPeriodic_r10 = -1; /* T_cqi_FormatIndicatorPeriodic_r10 */ @@ -2274,7 +2698,7 @@ static int hf_lte_rrc_subbandCQI_r10 = -1; /* T_subbandCQI_r10 */ static int hf_lte_rrc_periodicityFactor_r10 = -1; /* T_periodicityFactor_r10 */ static int hf_lte_rrc_cqi_Mask_r9_01 = -1; /* T_cqi_Mask_r9_01 */ static int hf_lte_rrc_csi_ConfigIndex_r10 = -1; /* T_csi_ConfigIndex_r10 */ -static int hf_lte_rrc_setup_15 = -1; /* T_setup_15 */ +static int hf_lte_rrc_setup_19 = -1; /* T_setup_19 */ static int hf_lte_rrc_cqi_pmi_ConfigIndex2_r10 = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_ri_ConfigIndex2_r10 = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_simultaneousAckNackAndCQI_Format3_r11 = -1; /* T_simultaneousAckNackAndCQI_Format3_r11 */ @@ -2283,6 +2707,19 @@ static int hf_lte_rrc_cqi_ReportPeriodicProcExtToAddModList_r11 = -1; /* CQI_Re static int hf_lte_rrc_cri_ReportConfig_r13 = -1; /* CRI_ReportConfig_r13 */ static int hf_lte_rrc_simultaneousAckNackAndCQI_Format4_Format5_r13 = -1; /* T_simultaneousAckNackAndCQI_Format4_Format5_r13 */ static int hf_lte_rrc_periodicityFactorWB_r13 = -1; /* T_periodicityFactorWB_r13 */ +static int hf_lte_rrc_setup_20 = -1; /* T_setup_20 */ +static int hf_lte_rrc_cqi_pmi_ConfigIndexDormant_r15 = -1; /* INTEGER_0_1023 */ +static int hf_lte_rrc_ri_ConfigIndexDormant_r15 = -1; /* INTEGER_0_1023 */ +static int hf_lte_rrc_csi_SubframePatternDormant_r15 = -1; /* T_csi_SubframePatternDormant_r15 */ +static int hf_lte_rrc_setup_21 = -1; /* T_setup_21 */ +static int hf_lte_rrc_csi_MeasSubframeSet1_r15 = -1; /* MeasSubframePattern_r10 */ +static int hf_lte_rrc_csi_MeasSubframeSet2_r15 = -1; /* MeasSubframePattern_r10 */ +static int hf_lte_rrc_cqi_FormatIndicatorDormant_r15 = -1; /* T_cqi_FormatIndicatorDormant_r15 */ +static int hf_lte_rrc_widebandCQI_r15 = -1; /* T_widebandCQI_r15 */ +static int hf_lte_rrc_csi_ReportMode_r15 = -1; /* T_csi_ReportMode_r15 */ +static int hf_lte_rrc_subbandCQI_r15 = -1; /* T_subbandCQI_r15 */ +static int hf_lte_rrc_k_r15 = -1; /* INTEGER_1_4 */ +static int hf_lte_rrc_periodicityFactor_r15 = -1; /* T_periodicityFactor_r15 */ static int hf_lte_rrc_CQI_ReportPeriodicProcExtToAddModList_r11_item = -1; /* CQI_ReportPeriodicProcExt_r11 */ static int hf_lte_rrc_CQI_ReportPeriodicProcExtToReleaseList_r11_item = -1; /* CQI_ReportPeriodicProcExtId_r11 */ static int hf_lte_rrc_cqi_ReportPeriodicProcExtId_r11 = -1; /* CQI_ReportPeriodicProcExtId_r11 */ @@ -2294,11 +2731,19 @@ static int hf_lte_rrc_subbandCQI_r11 = -1; /* T_subbandCQI_r11 */ static int hf_lte_rrc_periodicityFactor_r11 = -1; /* T_periodicityFactor_r11 */ static int hf_lte_rrc_ri_ConfigIndex_r11 = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_csi_ConfigIndex_r11 = -1; /* T_csi_ConfigIndex_r11 */ -static int hf_lte_rrc_setup_16 = -1; /* T_setup_16 */ +static int hf_lte_rrc_setup_22 = -1; /* T_setup_22 */ static int hf_lte_rrc_cqi_pmi_ConfigIndex2_r11 = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_ri_ConfigIndex2_r11 = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_periodicityFactorWB_r13_01 = -1; /* T_periodicityFactorWB_r13_01 */ -static int hf_lte_rrc_setup_17 = -1; /* T_setup_17 */ +static int hf_lte_rrc_setup_23 = -1; /* T_setup_23 */ +static int hf_lte_rrc_cqi_pmi_ConfigIndexShort_r15 = -1; /* INTEGER_0_1023 */ +static int hf_lte_rrc_ri_ConfigIndexShort_r15 = -1; /* INTEGER_0_1023 */ +static int hf_lte_rrc_cqi_FormatIndicatorShort_r15 = -1; /* T_cqi_FormatIndicatorShort_r15 */ +static int hf_lte_rrc_widebandCQI_Short_r15 = -1; /* T_widebandCQI_Short_r15 */ +static int hf_lte_rrc_csi_ReportModeShort_r15 = -1; /* T_csi_ReportModeShort_r15 */ +static int hf_lte_rrc_subbandCQI_Short_r15 = -1; /* T_subbandCQI_Short_r15 */ +static int hf_lte_rrc_periodicityFactor_r15_01 = -1; /* T_periodicityFactor_r15_01 */ +static int hf_lte_rrc_setup_24 = -1; /* T_setup_24 */ static int hf_lte_rrc_cri_ConfigIndex_r13 = -1; /* CRI_ConfigIndex_r13 */ static int hf_lte_rrc_cri_ConfigIndex2_r13 = -1; /* CRI_ConfigIndex_r13 */ static int hf_lte_rrc_schedulingCellInfo_r10 = -1; /* T_schedulingCellInfo_r10 */ @@ -2332,19 +2777,22 @@ static int hf_lte_rrc_cqi_ReportPeriodicProcId_r11 = -1; /* INTEGER_0_maxCQI_Pr static int hf_lte_rrc_cqi_ReportAperiodicProc_r11 = -1; /* CQI_ReportAperiodicProc_r11 */ static int hf_lte_rrc_alternativeCodebookEnabledFor4TXProc_r12 = -1; /* T_alternativeCodebookEnabledFor4TXProc_r12 */ static int hf_lte_rrc_csi_IM_ConfigIdList_r12 = -1; /* T_csi_IM_ConfigIdList_r12 */ -static int hf_lte_rrc_setup_18 = -1; /* SEQUENCE_SIZE_1_2_OF_CSI_IM_ConfigId_r12 */ +static int hf_lte_rrc_setup_25 = -1; /* SEQUENCE_SIZE_1_2_OF_CSI_IM_ConfigId_r12 */ static int hf_lte_rrc_setup_item = -1; /* CSI_IM_ConfigId_r12 */ static int hf_lte_rrc_cqi_ReportAperiodicProc2_r12 = -1; /* T_cqi_ReportAperiodicProc2_r12 */ -static int hf_lte_rrc_setup_19 = -1; /* CQI_ReportAperiodicProc_r11 */ +static int hf_lte_rrc_setup_26 = -1; /* CQI_ReportAperiodicProc_r11 */ static int hf_lte_rrc_cqi_ReportAperiodicProc_v1310 = -1; /* T_cqi_ReportAperiodicProc_v1310 */ -static int hf_lte_rrc_setup_20 = -1; /* CQI_ReportAperiodicProc_v1310 */ +static int hf_lte_rrc_setup_27 = -1; /* CQI_ReportAperiodicProc_v1310 */ static int hf_lte_rrc_cqi_ReportAperiodicProc2_v1310 = -1; /* T_cqi_ReportAperiodicProc2_v1310 */ static int hf_lte_rrc_eMIMO_Type_r13 = -1; /* CSI_RS_ConfigEMIMO_r13 */ -static int hf_lte_rrc_eMIMO_Type_v1430 = -1; /* CSI_RS_ConfigEMIMO_v1430 */ +static int hf_lte_rrc_dummy_03 = -1; /* CSI_RS_ConfigEMIMO_v1430 */ static int hf_lte_rrc_eMIMO_Hybrid_r14 = -1; /* CSI_RS_ConfigEMIMO_Hybrid_r14 */ static int hf_lte_rrc_advancedCodebookEnabled_r14 = -1; /* BOOLEAN */ +static int hf_lte_rrc_eMIMO_Type_v1480 = -1; /* CSI_RS_ConfigEMIMO_v1480 */ +static int hf_lte_rrc_feCOMP_CSI_Enabled_v1530 = -1; /* BOOLEAN */ +static int hf_lte_rrc_eMIMO_Type_v1530 = -1; /* CSI_RS_ConfigEMIMO_v1530 */ static int hf_lte_rrc_csi_RS_r10 = -1; /* T_csi_RS_r10 */ -static int hf_lte_rrc_setup_21 = -1; /* T_setup_18 */ +static int hf_lte_rrc_setup_28 = -1; /* T_setup_25 */ static int hf_lte_rrc_antennaPortsCount_r10 = -1; /* T_antennaPortsCount_r10 */ static int hf_lte_rrc_resourceConfig_r10 = -1; /* INTEGER_0_31 */ static int hf_lte_rrc_subframeConfig_r10 = -1; /* INTEGER_0_154 */ @@ -2352,10 +2800,15 @@ static int hf_lte_rrc_p_C_r10 = -1; /* INTEGER_M8_15 */ static int hf_lte_rrc_zeroTxPowerCSI_RS_r10 = -1; /* ZeroTxPowerCSI_RS_Conf_r12 */ static int hf_lte_rrc_zeroTxPowerCSI_RS2_r12 = -1; /* ZeroTxPowerCSI_RS_Conf_r12 */ static int hf_lte_rrc_ds_ZeroTxPowerCSI_RS_r12 = -1; /* T_ds_ZeroTxPowerCSI_RS_r12 */ -static int hf_lte_rrc_setup_22 = -1; /* T_setup_19 */ +static int hf_lte_rrc_setup_29 = -1; /* T_setup_26 */ static int hf_lte_rrc_zeroTxPowerCSI_RS_List_r12 = -1; /* SEQUENCE_SIZE_1_maxDS_ZTP_CSI_RS_r12_OF_ZeroTxPowerCSI_RS_r12 */ static int hf_lte_rrc_zeroTxPowerCSI_RS_List_r12_item = -1; /* ZeroTxPowerCSI_RS_r12 */ -static int hf_lte_rrc_setup_23 = -1; /* ZeroTxPowerCSI_RS_r12 */ +static int hf_lte_rrc_setup_30 = -1; /* T_setup_27 */ +static int hf_lte_rrc_csi_RS_Config_r10 = -1; /* CSI_RS_Config_r10 */ +static int hf_lte_rrc_csi_RS_Config_v1250 = -1; /* CSI_RS_Config_v1250 */ +static int hf_lte_rrc_csi_RS_Config_v1310 = -1; /* CSI_RS_Config_v1310 */ +static int hf_lte_rrc_csi_RS_Config_v1430 = -1; /* CSI_RS_Config_v1430 */ +static int hf_lte_rrc_setup_31 = -1; /* ZeroTxPowerCSI_RS_r12 */ static int hf_lte_rrc_zeroTxPowerResourceConfigList_r12 = -1; /* BIT_STRING_SIZE_16 */ static int hf_lte_rrc_zeroTxPowerSubframeConfig_r12 = -1; /* INTEGER_0_154 */ static int hf_lte_rrc_csi_RS_ConfigNZPIdListExt_r13 = -1; /* SEQUENCE_SIZE_1_7_OF_CSI_RS_ConfigNZPId_r13 */ @@ -2386,14 +2839,19 @@ static int hf_lte_rrc_transmissionComb_r14 = -1; /* NZP_TransmissionComb_r14 */ static int hf_lte_rrc_frequencyDensity_r14 = -1; /* NZP_FrequencyDensity_r14 */ static int hf_lte_rrc_csi_RS_NZP_mode_r14 = -1; /* T_csi_RS_NZP_mode_r14 */ static int hf_lte_rrc_activatedResources_r14 = -1; /* INTEGER_0_4 */ -static int hf_lte_rrc_setup_24 = -1; /* T_setup_20 */ +static int hf_lte_rrc_setup_32 = -1; /* T_setup_28 */ static int hf_lte_rrc_nonPrecoded_r13 = -1; /* CSI_RS_ConfigNonPrecoded_r13 */ static int hf_lte_rrc_beamformed_r13 = -1; /* CSI_RS_ConfigBeamformed_r13 */ -static int hf_lte_rrc_setup_25 = -1; /* T_setup_21 */ +static int hf_lte_rrc_setup_33 = -1; /* T_setup_29 */ static int hf_lte_rrc_nonPrecoded_v1430 = -1; /* CSI_RS_ConfigNonPrecoded_v1430 */ static int hf_lte_rrc_beamformed_v1430 = -1; /* CSI_RS_ConfigBeamformed_v1430 */ -static int hf_lte_rrc_setup_26 = -1; /* CSI_RS_ConfigBeamformed_r14 */ -static int hf_lte_rrc_setup_27 = -1; /* T_setup_22 */ +static int hf_lte_rrc_setup_34 = -1; /* T_setup_30 */ +static int hf_lte_rrc_nonPrecoded_v1480 = -1; /* CSI_RS_ConfigNonPrecoded_v1480 */ +static int hf_lte_rrc_beamformed_v1480 = -1; /* CSI_RS_ConfigBeamformed_v1430 */ +static int hf_lte_rrc_setup_35 = -1; /* T_setup_31 */ +static int hf_lte_rrc_nonPrecoded_v1530 = -1; /* CSI_RS_ConfigNonPrecoded_v1530 */ +static int hf_lte_rrc_setup_36 = -1; /* CSI_RS_ConfigBeamformed_r14 */ +static int hf_lte_rrc_setup_37 = -1; /* T_setup_32 */ static int hf_lte_rrc_periodicityOffsetIndex_r14 = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_eMIMO_Type2_r14 = -1; /* CSI_RS_ConfigEMIMO2_r14 */ static int hf_lte_rrc_p_C_AndCBSRList_r13 = -1; /* P_C_AndCBSR_Pair_r13 */ @@ -2406,21 +2864,26 @@ static int hf_lte_rrc_csi_IM_ConfigIdList_r13_01 = -1; /* SEQUENCE_SIZE_1_2_OF_ static int hf_lte_rrc_csi_RS_ConfigNZP_EMIMO_r13 = -1; /* CSI_RS_ConfigNZP_EMIMO_r13 */ static int hf_lte_rrc_csi_RS_ConfigNZP_EMIMO_v1430 = -1; /* CSI_RS_ConfigNZP_EMIMO_v1430 */ static int hf_lte_rrc_codebookConfigN1_v1430 = -1; /* T_codebookConfigN1_v1430 */ -static int hf_lte_rrc_codebookConfigN2_r1430 = -1; /* T_codebookConfigN2_r1430 */ +static int hf_lte_rrc_codebookConfigN2_v1430 = -1; /* T_codebookConfigN2_v1430 */ static int hf_lte_rrc_nzp_ResourceConfigTM9_Original_v1430 = -1; /* CSI_RS_Config_NZP_v1430 */ +static int hf_lte_rrc_csi_RS_ConfigNZP_EMIMO_v1480 = -1; /* CSI_RS_ConfigNZP_EMIMO_v1430 */ +static int hf_lte_rrc_codebookConfigN1_v1480 = -1; /* T_codebookConfigN1_v1480 */ +static int hf_lte_rrc_codebookConfigN2_r1480 = -1; /* T_codebookConfigN2_r1480 */ +static int hf_lte_rrc_nzp_ResourceConfigTM9_Original_v1480 = -1; /* CSI_RS_Config_NZP_v1430 */ +static int hf_lte_rrc_p_C_AndCBSRList_r15 = -1; /* P_C_AndCBSR_Pair_r15 */ static int hf_lte_rrc_antennaPortsCount_r11 = -1; /* T_antennaPortsCount_r11 */ static int hf_lte_rrc_scramblingIdentity_r11 = -1; /* INTEGER_0_503 */ static int hf_lte_rrc_qcl_CRS_Info_r11 = -1; /* T_qcl_CRS_Info_r11 */ static int hf_lte_rrc_qcl_ScramblingIdentity_r11 = -1; /* INTEGER_0_503 */ static int hf_lte_rrc_crs_PortsCount_r11 = -1; /* T_crs_PortsCount_r11 */ static int hf_lte_rrc_mbsfn_SubframeConfigList_r11 = -1; /* T_mbsfn_SubframeConfigList_r11 */ -static int hf_lte_rrc_setup_28 = -1; /* T_setup_23 */ +static int hf_lte_rrc_setup_38 = -1; /* T_setup_33 */ static int hf_lte_rrc_subframeConfigList = -1; /* MBSFN_SubframeConfigList */ static int hf_lte_rrc_csi_RS_ConfigNZPId_v1310 = -1; /* CSI_RS_ConfigNZPId_v1310 */ static int hf_lte_rrc_mbsfn_SubframeConfigList_v1430_01 = -1; /* T_mbsfn_SubframeConfigList_v1430 */ -static int hf_lte_rrc_setup_29 = -1; /* T_setup_24 */ +static int hf_lte_rrc_setup_39 = -1; /* T_setup_34 */ static int hf_lte_rrc_subframeConfigList_v1430 = -1; /* MBSFN_SubframeConfigList_v1430 */ -static int hf_lte_rrc_setup_30 = -1; /* T_setup_25 */ +static int hf_lte_rrc_setup_40 = -1; /* T_setup_35 */ static int hf_lte_rrc_nzp_resourceConfigList_r13 = -1; /* SEQUENCE_SIZE_1_2_OF_NZP_ResourceConfig_r13 */ static int hf_lte_rrc_nzp_resourceConfigList_r13_item = -1; /* NZP_ResourceConfig_r13 */ static int hf_lte_rrc_cdmType_r13 = -1; /* T_cdmType_r13 */ @@ -2430,15 +2893,15 @@ static int hf_lte_rrc_cdmType_v1430 = -1; /* T_cdmType_v1430 */ static int hf_lte_rrc_resourceConfig_r13 = -1; /* ResourceConfig_r13 */ static int hf_lte_rrc_csi_RS_ConfigZPId_r11 = -1; /* CSI_RS_ConfigZPId_r11 */ static int hf_lte_rrc_resourceConfigList_r11 = -1; /* BIT_STRING_SIZE_16 */ -static int hf_lte_rrc_setup_31 = -1; /* SEQUENCE_SIZE_1_maxCSI_RS_ZP_r11_OF_CSI_RS_ConfigZP_r11 */ +static int hf_lte_rrc_setup_41 = -1; /* SEQUENCE_SIZE_1_maxCSI_RS_ZP_r11_OF_CSI_RS_ConfigZP_r11 */ static int hf_lte_rrc_setup_item_01 = -1; /* CSI_RS_ConfigZP_r11 */ -static int hf_lte_rrc_setup_32 = -1; /* T_setup_26 */ +static int hf_lte_rrc_setup_42 = -1; /* T_setup_36 */ static int hf_lte_rrc_scramblingIdentity2_r11 = -1; /* INTEGER_0_503 */ static int hf_lte_rrc_dmrs_tableAlt_r13 = -1; /* T_dmrs_tableAlt_r13 */ static int hf_lte_rrc_config_r11 = -1; /* T_config_r11 */ -static int hf_lte_rrc_setup_33 = -1; /* T_setup_27 */ +static int hf_lte_rrc_setup_43 = -1; /* T_setup_37 */ static int hf_lte_rrc_subframePatternConfig_r11 = -1; /* T_subframePatternConfig_r11 */ -static int hf_lte_rrc_setup_34 = -1; /* T_setup_28 */ +static int hf_lte_rrc_setup_44 = -1; /* T_setup_38 */ static int hf_lte_rrc_subframePattern_r11 = -1; /* MeasSubframePattern_r10 */ static int hf_lte_rrc_startSymbol_r11 = -1; /* INTEGER_1_4 */ static int hf_lte_rrc_setConfigToReleaseList_r11 = -1; /* EPDCCH_SetConfigToReleaseList_r11 */ @@ -2454,11 +2917,11 @@ static int hf_lte_rrc_dmrs_ScramblingSequenceInt_r11 = -1; /* INTEGER_0_503 */ static int hf_lte_rrc_pucch_ResourceStartOffset_r11 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_re_MappingQCL_ConfigId_r11 = -1; /* PDSCH_RE_MappingQCL_ConfigId_r11 */ static int hf_lte_rrc_csi_RS_ConfigZPId2_r12 = -1; /* T_csi_RS_ConfigZPId2_r12 */ -static int hf_lte_rrc_setup_35 = -1; /* CSI_RS_ConfigZPId_r11 */ +static int hf_lte_rrc_setup_45 = -1; /* CSI_RS_ConfigZPId_r11 */ static int hf_lte_rrc_numberPRB_Pairs_v1310 = -1; /* T_numberPRB_Pairs_v1310 */ -static int hf_lte_rrc_setup_36 = -1; /* T_setup_29 */ +static int hf_lte_rrc_setup_46 = -1; /* T_setup_39 */ static int hf_lte_rrc_mpdcch_config_r13 = -1; /* T_mpdcch_config_r13 */ -static int hf_lte_rrc_setup_37 = -1; /* T_setup_30 */ +static int hf_lte_rrc_setup_47 = -1; /* T_setup_40 */ static int hf_lte_rrc_csi_NumRepetitionCE_r13 = -1; /* T_csi_NumRepetitionCE_r13 */ static int hf_lte_rrc_mpdcch_pdsch_HoppingConfig_r13 = -1; /* T_mpdcch_pdsch_HoppingConfig_r13 */ static int hf_lte_rrc_mpdcch_StartSF_UESS_r13 = -1; /* T_mpdcch_StartSF_UESS_r13 */ @@ -2466,15 +2929,15 @@ static int hf_lte_rrc_fdd_r13 = -1; /* T_fdd_r13 */ static int hf_lte_rrc_tdd_r13 = -1; /* T_tdd_r13 */ static int hf_lte_rrc_mpdcch_NumRepetition_r13_01 = -1; /* T_mpdcch_NumRepetition_r13 */ static int hf_lte_rrc_mpdcch_Narrowband_r13 = -1; /* INTEGER_1_maxAvailNarrowBands_r13 */ -static int hf_lte_rrc_setup_38 = -1; /* T_setup_31 */ +static int hf_lte_rrc_setup_48 = -1; /* T_setup_41 */ static int hf_lte_rrc_eimta_RNTI_r12 = -1; /* C_RNTI */ static int hf_lte_rrc_eimta_CommandPeriodicity_r12 = -1; /* T_eimta_CommandPeriodicity_r12 */ static int hf_lte_rrc_eimta_CommandSubframeSet_r12 = -1; /* BIT_STRING_SIZE_10 */ -static int hf_lte_rrc_setup_39 = -1; /* T_setup_32 */ +static int hf_lte_rrc_setup_49 = -1; /* T_setup_42 */ static int hf_lte_rrc_eimta_UL_DL_ConfigIndex_r12 = -1; /* INTEGER_1_5 */ static int hf_lte_rrc_eimta_HARQ_ReferenceConfig_r12 = -1; /* T_eimta_HARQ_ReferenceConfig_r12 */ static int hf_lte_rrc_mbsfn_SubframeConfigList_v1250 = -1; /* T_mbsfn_SubframeConfigList_v1250 */ -static int hf_lte_rrc_setup_40 = -1; /* T_setup_33 */ +static int hf_lte_rrc_setup_50 = -1; /* T_setup_43 */ static int hf_lte_rrc_subframeConfigList_r12 = -1; /* MBSFN_SubframeConfigList */ static int hf_lte_rrc_ul_SpecificParameters = -1; /* T_ul_SpecificParameters */ static int hf_lte_rrc_priority = -1; /* T_priority */ @@ -2485,12 +2948,21 @@ static int hf_lte_rrc_logicalChannelSR_Mask_r9 = -1; /* T_logicalChannelSR_Mask static int hf_lte_rrc_logicalChannelSR_Prohibit_r12 = -1; /* BOOLEAN */ static int hf_lte_rrc_laa_UL_Allowed_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_bitRateQueryProhibitTimer_r14 = -1; /* T_bitRateQueryProhibitTimer_r14 */ -static int hf_lte_rrc_setup_41 = -1; /* T_setup_34 */ +static int hf_lte_rrc_allowedTTI_Lengths_r15 = -1; /* T_allowedTTI_Lengths_r15 */ +static int hf_lte_rrc_setup_51 = -1; /* T_setup_44 */ +static int hf_lte_rrc_shortTTI_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_subframeTTI_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_logicalChannelSR_Restriction_r15 = -1; /* T_logicalChannelSR_Restriction_r15 */ +static int hf_lte_rrc_setup_52 = -1; /* T_setup_45 */ +static int hf_lte_rrc_channellAccessPriority_r15 = -1; /* T_channellAccessPriority_r15 */ +static int hf_lte_rrc_setup_53 = -1; /* INTEGER_1_4 */ +static int hf_lte_rrc_lch_CellRestriction_r15 = -1; /* BIT_STRING_SIZE_maxServCell_r13 */ +static int hf_lte_rrc_setup_54 = -1; /* T_setup_46 */ static int hf_lte_rrc_lwa_Config_r13 = -1; /* LWA_Config_r13 */ static int hf_lte_rrc_lwa_MobilityConfig_r13 = -1; /* WLAN_MobilityConfig_r13 */ static int hf_lte_rrc_lwa_WT_Counter_r13 = -1; /* INTEGER_0_65535 */ static int hf_lte_rrc_wt_MAC_Address_r14 = -1; /* OCTET_STRING_SIZE_6 */ -static int hf_lte_rrc_setup_42 = -1; /* T_setup_35 */ +static int hf_lte_rrc_setup_55 = -1; /* T_setup_47 */ static int hf_lte_rrc_lwip_Config_r13 = -1; /* LWIP_Config_r13 */ static int hf_lte_rrc_lwip_MobilityConfig_r13 = -1; /* WLAN_MobilityConfig_r13 */ static int hf_lte_rrc_tunnelConfigLWIP_r13 = -1; /* TunnelConfigLWIP_r13 */ @@ -2502,7 +2974,7 @@ static int hf_lte_rrc_ttiBundling = -1; /* BOOLEAN */ static int hf_lte_rrc_drx_Config = -1; /* DRX_Config */ static int hf_lte_rrc_timeAlignmentTimerDedicated = -1; /* TimeAlignmentTimer */ static int hf_lte_rrc_phr_Config = -1; /* T_phr_Config */ -static int hf_lte_rrc_setup_43 = -1; /* T_setup_36 */ +static int hf_lte_rrc_setup_56 = -1; /* T_setup_48 */ static int hf_lte_rrc_periodicPHR_Timer = -1; /* T_periodicPHR_Timer */ static int hf_lte_rrc_prohibitPHR_Timer = -1; /* T_prohibitPHR_Timer */ static int hf_lte_rrc_dl_PathlossChange = -1; /* T_dl_PathlossChange */ @@ -2516,30 +2988,41 @@ static int hf_lte_rrc_stag_ToAddModList_r11 = -1; /* STAG_ToAddModList_r11 */ static int hf_lte_rrc_drx_Config_v1130 = -1; /* DRX_Config_v1130 */ static int hf_lte_rrc_e_HARQ_Pattern_r12 = -1; /* BOOLEAN */ static int hf_lte_rrc_dualConnectivityPHR = -1; /* T_dualConnectivityPHR */ -static int hf_lte_rrc_setup_44 = -1; /* T_setup_37 */ +static int hf_lte_rrc_setup_57 = -1; /* T_setup_49 */ static int hf_lte_rrc_phr_ModeOtherCG_r12 = -1; /* T_phr_ModeOtherCG_r12 */ static int hf_lte_rrc_logicalChannelSR_Config_r12 = -1; /* T_logicalChannelSR_Config_r12 */ -static int hf_lte_rrc_setup_45 = -1; /* T_setup_38 */ +static int hf_lte_rrc_setup_58 = -1; /* T_setup_50 */ static int hf_lte_rrc_logicalChannelSR_ProhibitTimer_r12 = -1; /* T_logicalChannelSR_ProhibitTimer_r12 */ static int hf_lte_rrc_drx_Config_v1310 = -1; /* DRX_Config_v1310 */ static int hf_lte_rrc_extendedPHR2_r13 = -1; /* BOOLEAN */ static int hf_lte_rrc_eDRX_Config_CycleStartOffset_r13 = -1; /* T_eDRX_Config_CycleStartOffset_r13 */ -static int hf_lte_rrc_setup_46 = -1; /* T_setup_39 */ +static int hf_lte_rrc_setup_59 = -1; /* T_setup_51 */ static int hf_lte_rrc_sf5120 = -1; /* INTEGER_0_1 */ static int hf_lte_rrc_sf10240 = -1; /* INTEGER_0_3 */ static int hf_lte_rrc_drx_Config_r13 = -1; /* T_drx_Config_r13 */ -static int hf_lte_rrc_setup_47 = -1; /* DRX_Config_r13 */ +static int hf_lte_rrc_setup_60 = -1; /* DRX_Config_r13 */ static int hf_lte_rrc_skipUplinkTx_r14 = -1; /* T_skipUplinkTx_r14 */ -static int hf_lte_rrc_setup_48 = -1; /* T_setup_40 */ +static int hf_lte_rrc_setup_61 = -1; /* T_setup_52 */ static int hf_lte_rrc_skipUplinkTxSPS_r14 = -1; /* T_skipUplinkTxSPS_r14 */ static int hf_lte_rrc_skipUplinkTxDynamic_r14 = -1; /* T_skipUplinkTxDynamic_r14 */ static int hf_lte_rrc_dataInactivityTimerConfig_r14 = -1; /* T_dataInactivityTimerConfig_r14 */ -static int hf_lte_rrc_setup_49 = -1; /* T_setup_41 */ +static int hf_lte_rrc_setup_62 = -1; /* T_setup_53 */ static int hf_lte_rrc_dataInactivityTimer_r14 = -1; /* DataInactivityTimer_r14 */ static int hf_lte_rrc_rai_Activation_r14 = -1; /* T_rai_Activation_r14 */ +static int hf_lte_rrc_shortTTI_AndSPT_r15 = -1; /* T_shortTTI_AndSPT_r15 */ +static int hf_lte_rrc_setup_63 = -1; /* T_setup_54 */ +static int hf_lte_rrc_drx_Config_r15 = -1; /* DRX_Config_r15 */ +static int hf_lte_rrc_periodicBSR_Timer_r15 = -1; /* T_periodicBSR_Timer_r15 */ +static int hf_lte_rrc_proc_Timeline_r15 = -1; /* T_proc_Timeline_r15 */ +static int hf_lte_rrc_ssr_ProhibitTimer_r15 = -1; /* INTEGER_0_7 */ +static int hf_lte_rrc_mpdcch_UL_HARQ_ACK_FeedbackConfig_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_dormantStateTimers_r15 = -1; /* T_dormantStateTimers_r15 */ +static int hf_lte_rrc_setup_64 = -1; /* T_setup_55 */ +static int hf_lte_rrc_sCellHibernationTimer_r15 = -1; /* T_sCellHibernationTimer_r15 */ +static int hf_lte_rrc_dormantSCellDeactivationTimer_r15 = -1; /* T_dormantSCellDeactivationTimer_r15 */ static int hf_lte_rrc_stag_Id_r11 = -1; /* STAG_Id_r11 */ static int hf_lte_rrc_release_01 = -1; /* T_release */ -static int hf_lte_rrc_setup_50 = -1; /* T_setup_42 */ +static int hf_lte_rrc_setup_65 = -1; /* T_setup_56 */ static int hf_lte_rrc_onDurationTimer = -1; /* T_onDurationTimer */ static int hf_lte_rrc_drx_InactivityTimer = -1; /* T_drx_InactivityTimer */ static int hf_lte_rrc_drx_RetransmissionTimer = -1; /* T_drx_RetransmissionTimer */ @@ -2573,6 +3056,8 @@ static int hf_lte_rrc_sf60_v1310 = -1; /* T_sf60_v1310 */ static int hf_lte_rrc_onDurationTimer_v1310 = -1; /* T_onDurationTimer_v1310 */ static int hf_lte_rrc_drx_RetransmissionTimer_v1310 = -1; /* T_drx_RetransmissionTimer_v1310 */ static int hf_lte_rrc_drx_ULRetransmissionTimer_r13 = -1; /* T_drx_ULRetransmissionTimer_r13 */ +static int hf_lte_rrc_drx_RetransmissionTimerShortTTI_r15 = -1; /* T_drx_RetransmissionTimerShortTTI_r15 */ +static int hf_lte_rrc_drx_UL_RetransmissionTimerShortTTI_r15 = -1; /* T_drx_UL_RetransmissionTimerShortTTI_r15 */ static int hf_lte_rrc_STAG_ToReleaseList_r11_item = -1; /* STAG_Id_r11 */ static int hf_lte_rrc_STAG_ToAddModList_r11_item = -1; /* STAG_ToAddMod_r11 */ static int hf_lte_rrc_timeAlignmentTimerSTAG_r11 = -1; /* TimeAlignmentTimer */ @@ -2587,8 +3072,11 @@ static int hf_lte_rrc_beamformedK1a_r13 = -1; /* T_beamformedK1a_r13 */ static int hf_lte_rrc_codebookSubsetRestriction3_r13 = -1; /* BIT_STRING */ static int hf_lte_rrc_beamformedKN_r13 = -1; /* T_beamformedKN_r13 */ static int hf_lte_rrc_codebookSubsetRestriction_r13 = -1; /* BIT_STRING */ +static int hf_lte_rrc_p_C_r15 = -1; /* INTEGER_M8_15 */ +static int hf_lte_rrc_codebookSubsetRestriction4_r15 = -1; /* BIT_STRING */ static int hf_lte_rrc_P_C_AndCBSR_Pair_r13a_item = -1; /* P_C_AndCBSR_r11 */ static int hf_lte_rrc_P_C_AndCBSR_Pair_r13_item = -1; /* P_C_AndCBSR_r13 */ +static int hf_lte_rrc_P_C_AndCBSR_Pair_r15_item = -1; /* P_C_AndCBSR_r15 */ static int hf_lte_rrc_skipMonitoringDCI_format0_1A_r13 = -1; /* T_skipMonitoringDCI_format0_1A_r13 */ static int hf_lte_rrc_maxNumberOfSchedSubframes_Format0B_r14 = -1; /* T_maxNumberOfSchedSubframes_Format0B_r14 */ static int hf_lte_rrc_maxNumberOfSchedSubframes_Format4B_r14 = -1; /* T_maxNumberOfSchedSubframes_Format4B_r14 */ @@ -2598,13 +3086,13 @@ static int hf_lte_rrc_pdcch_CandidateReductions_Format0A_r14 = -1; /* PDCCH_Can static int hf_lte_rrc_pdcch_CandidateReductions_Format4A_r14 = -1; /* PDCCH_CandidateReductionsLAA_UL_r14 */ static int hf_lte_rrc_pdcch_CandidateReductions_Format0B_r14 = -1; /* PDCCH_CandidateReductionsLAA_UL_r14 */ static int hf_lte_rrc_pdcch_CandidateReductions_Format4B_r14 = -1; /* PDCCH_CandidateReductionsLAA_UL_r14 */ -static int hf_lte_rrc_setup_51 = -1; /* T_setup_43 */ +static int hf_lte_rrc_setup_66 = -1; /* T_setup_57 */ static int hf_lte_rrc_pdcch_candidateReductionAL1_r13 = -1; /* PDCCH_CandidateReductionValue_r13 */ static int hf_lte_rrc_pdcch_candidateReductionAL2_r13 = -1; /* PDCCH_CandidateReductionValue_r13 */ static int hf_lte_rrc_pdcch_candidateReductionAL3_r13 = -1; /* PDCCH_CandidateReductionValue_r13 */ static int hf_lte_rrc_pdcch_candidateReductionAL4_r13 = -1; /* PDCCH_CandidateReductionValue_r13 */ static int hf_lte_rrc_pdcch_candidateReductionAL5_r13 = -1; /* PDCCH_CandidateReductionValue_r13 */ -static int hf_lte_rrc_setup_52 = -1; /* T_setup_44 */ +static int hf_lte_rrc_setup_67 = -1; /* T_setup_58 */ static int hf_lte_rrc_pdcch_candidateReductionAL1_r14 = -1; /* PDCCH_CandidateReductionValue_r13 */ static int hf_lte_rrc_pdcch_candidateReductionAL2_r14 = -1; /* PDCCH_CandidateReductionValue_r13 */ static int hf_lte_rrc_pdcch_candidateReductionAL3_r14 = -1; /* PDCCH_CandidateReductionValue_r14 */ @@ -2634,16 +3122,16 @@ static int hf_lte_rrc_pdcp_SN_Size_v1130 = -1; /* T_pdcp_SN_Size_v1130 */ static int hf_lte_rrc_ul_DataSplitDRB_ViaSCG_r12 = -1; /* BOOLEAN */ static int hf_lte_rrc_t_Reordering_r12 = -1; /* T_t_Reordering_r12 */ static int hf_lte_rrc_ul_DataSplitThreshold_r13 = -1; /* T_ul_DataSplitThreshold_r13 */ -static int hf_lte_rrc_setup_53 = -1; /* T_setup_45 */ +static int hf_lte_rrc_setup_68 = -1; /* T_setup_59 */ static int hf_lte_rrc_pdcp_SN_Size_v1310 = -1; /* T_pdcp_SN_Size_v1310 */ static int hf_lte_rrc_statusFeedback_r13 = -1; /* T_statusFeedback_r13 */ -static int hf_lte_rrc_setup_54 = -1; /* T_setup_46 */ +static int hf_lte_rrc_setup_69 = -1; /* T_setup_60 */ static int hf_lte_rrc_statusPDU_TypeForPolling_r13 = -1; /* T_statusPDU_TypeForPolling_r13 */ static int hf_lte_rrc_statusPDU_Periodicity_Type1_r13 = -1; /* T_statusPDU_Periodicity_Type1_r13 */ static int hf_lte_rrc_statusPDU_Periodicity_Type2_r13 = -1; /* T_statusPDU_Periodicity_Type2_r13 */ static int hf_lte_rrc_statusPDU_Periodicity_Offset_r13 = -1; /* T_statusPDU_Periodicity_Offset_r13 */ static int hf_lte_rrc_ul_LWA_Config_r14 = -1; /* T_ul_LWA_Config_r14 */ -static int hf_lte_rrc_setup_55 = -1; /* T_setup_47 */ +static int hf_lte_rrc_setup_70 = -1; /* T_setup_61 */ static int hf_lte_rrc_ul_LWA_DRB_ViaWLAN_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_ul_LWA_DataSplitThreshold_r14 = -1; /* T_ul_LWA_DataSplitThreshold_r14 */ static int hf_lte_rrc_uplinkOnlyHeaderCompression_r14 = -1; /* T_uplinkOnlyHeaderCompression_r14 */ @@ -2652,6 +3140,12 @@ static int hf_lte_rrc_rohc_r14 = -1; /* T_rohc_r14 */ static int hf_lte_rrc_maxCID_r14 = -1; /* INTEGER_1_16383 */ static int hf_lte_rrc_profiles_r14 = -1; /* T_profiles_r14 */ static int hf_lte_rrc_profile0x0006_r14 = -1; /* BOOLEAN */ +static int hf_lte_rrc_uplinkDataCompression_r15 = -1; /* T_uplinkDataCompression_r15 */ +static int hf_lte_rrc_bufferSize_r15 = -1; /* T_bufferSize_r15 */ +static int hf_lte_rrc_dictionary_r15 = -1; /* T_dictionary_r15 */ +static int hf_lte_rrc_pdcp_DuplicationConfig_r15 = -1; /* T_pdcp_DuplicationConfig_r15 */ +static int hf_lte_rrc_setup_71 = -1; /* T_setup_62 */ +static int hf_lte_rrc_pdcp_Duplication_r15 = -1; /* T_pdcp_Duplication_r15 */ static int hf_lte_rrc_referenceSignalPower = -1; /* INTEGER_M60_50 */ static int hf_lte_rrc_p_b = -1; /* INTEGER_0_3 */ static int hf_lte_rrc_pdsch_maxNumRepetitionCEmodeA_r13 = -1; /* T_pdsch_maxNumRepetitionCEmodeA_r13 */ @@ -2668,6 +3162,12 @@ static int hf_lte_rrc_ce_PDSCH_TenProcesses_r14 = -1; /* T_ce_PDSCH_TenProcesse static int hf_lte_rrc_ce_HARQ_AckBundling_r14 = -1; /* T_ce_HARQ_AckBundling_r14 */ static int hf_lte_rrc_ce_SchedulingEnhancement_r14 = -1; /* T_ce_SchedulingEnhancement_r14 */ static int hf_lte_rrc_tbsIndexAlt2_r14 = -1; /* T_tbsIndexAlt2_r14 */ +static int hf_lte_rrc_qcl_Operation_v1530 = -1; /* T_qcl_Operation_v1530 */ +static int hf_lte_rrc_tbs_IndexAlt3_r15 = -1; /* T_tbs_IndexAlt3_r15 */ +static int hf_lte_rrc_ce_CQI_AlternativeTableConfig_r15 = -1; /* T_ce_CQI_AlternativeTableConfig_r15 */ +static int hf_lte_rrc_ce_PDSCH_64QAM_Config_r15 = -1; /* T_ce_PDSCH_64QAM_Config_r15 */ +static int hf_lte_rrc_ce_PDSCH_FlexibleStartPRB_AllocConfig_r15 = -1; /* T_ce_PDSCH_FlexibleStartPRB_AllocConfig_r15 */ +static int hf_lte_rrc_altMCS_TableScalingConfig_r15 = -1; /* T_altMCS_TableScalingConfig_r15 */ static int hf_lte_rrc_tbsIndexAlt2_r14_01 = -1; /* T_tbsIndexAlt2_r14_01 */ static int hf_lte_rrc_RE_MappingQCLConfigToAddModList_r11_item = -1; /* PDSCH_RE_MappingQCL_Config_r11 */ static int hf_lte_rrc_RE_MappingQCLConfigToReleaseList_r11_item = -1; /* PDSCH_RE_MappingQCL_ConfigId_r11 */ @@ -2676,11 +3176,20 @@ static int hf_lte_rrc_optionalSetOfFields_r11 = -1; /* T_optionalSetOfFields_r1 static int hf_lte_rrc_crs_PortsCount_r11_01 = -1; /* T_crs_PortsCount_r11_01 */ static int hf_lte_rrc_crs_FreqShift_r11 = -1; /* INTEGER_0_5 */ static int hf_lte_rrc_mbsfn_SubframeConfigList_r11_01 = -1; /* T_mbsfn_SubframeConfigList_r11_01 */ -static int hf_lte_rrc_setup_56 = -1; /* T_setup_48 */ +static int hf_lte_rrc_setup_72 = -1; /* T_setup_63 */ static int hf_lte_rrc_pdsch_Start_r11 = -1; /* T_pdsch_Start_r11 */ static int hf_lte_rrc_qcl_CSI_RS_ConfigNZPId_r11 = -1; /* CSI_RS_ConfigNZPId_r11 */ static int hf_lte_rrc_mbsfn_SubframeConfigList_v1430_02 = -1; /* T_mbsfn_SubframeConfigList_v1430_01 */ -static int hf_lte_rrc_setup_57 = -1; /* T_setup_49 */ +static int hf_lte_rrc_setup_73 = -1; /* T_setup_64 */ +static int hf_lte_rrc_codewordOneConfig_v1530 = -1; /* T_codewordOneConfig_v1530 */ +static int hf_lte_rrc_setup_74 = -1; /* T_setup_65 */ +static int hf_lte_rrc_crs_PortsCount_v1530 = -1; /* T_crs_PortsCount_v1530 */ +static int hf_lte_rrc_crs_FreqShift_v1530 = -1; /* INTEGER_0_5 */ +static int hf_lte_rrc_mbsfn_SubframeConfigList_v1530 = -1; /* MBSFN_SubframeConfigList */ +static int hf_lte_rrc_mbsfn_SubframeConfigListExt_v1530 = -1; /* MBSFN_SubframeConfigList_v1430 */ +static int hf_lte_rrc_pdsch_Start_v1530 = -1; /* T_pdsch_Start_v1530 */ +static int hf_lte_rrc_csi_RS_ConfigZPId_v1530 = -1; /* CSI_RS_ConfigZPId_r11 */ +static int hf_lte_rrc_qcl_CSI_RS_ConfigNZPId_v1530 = -1; /* CSI_RS_ConfigNZPId_r11 */ static int hf_lte_rrc_PerCC_GapIndicationList_r14_item = -1; /* PerCC_GapIndication_r14 */ static int hf_lte_rrc_servCellId_r14 = -1; /* ServCellIndex_r13 */ static int hf_lte_rrc_gapIndication_r14 = -1; /* T_gapIndication_r14 */ @@ -2702,8 +3211,6 @@ static int hf_lte_rrc_antennaInfo_v920 = -1; /* AntennaInfoDedicated_v920 * static int hf_lte_rrc_antennaInfo_r10 = -1; /* T_antennaInfo_r10 */ static int hf_lte_rrc_explicitValue_r10 = -1; /* AntennaInfoDedicated_r10 */ static int hf_lte_rrc_antennaInfoUL_r10 = -1; /* AntennaInfoUL_r10 */ -static int hf_lte_rrc_cqi_ReportConfig_r10 = -1; /* CQI_ReportConfig_r10 */ -static int hf_lte_rrc_csi_RS_Config_r10 = -1; /* CSI_RS_Config_r10 */ static int hf_lte_rrc_pucch_ConfigDedicated_v1020 = -1; /* PUCCH_ConfigDedicated_v1020 */ static int hf_lte_rrc_pusch_ConfigDedicated_v1020 = -1; /* PUSCH_ConfigDedicated_v1020 */ static int hf_lte_rrc_schedulingRequestConfig_v1020 = -1; /* SchedulingRequestConfig_v1020 */ @@ -2711,7 +3218,7 @@ static int hf_lte_rrc_soundingRS_UL_ConfigDedicated_v1020 = -1; /* SoundingRS_U static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_r10 = -1; /* SoundingRS_UL_ConfigDedicatedAperiodic_r10 */ static int hf_lte_rrc_uplinkPowerControlDedicated_v1020 = -1; /* UplinkPowerControlDedicated_v1020 */ static int hf_lte_rrc_additionalSpectrumEmissionCA_r10 = -1; /* T_additionalSpectrumEmissionCA_r10 */ -static int hf_lte_rrc_setup_58 = -1; /* T_setup_50 */ +static int hf_lte_rrc_setup_75 = -1; /* T_setup_66 */ static int hf_lte_rrc_additionalSpectrumEmissionPCell_r10 = -1; /* AdditionalSpectrumEmission */ static int hf_lte_rrc_csi_RS_ConfigNZPToReleaseList_r11 = -1; /* CSI_RS_ConfigNZPToReleaseList_r11 */ static int hf_lte_rrc_csi_RS_ConfigNZPToAddModList_r11 = -1; /* CSI_RS_ConfigNZPToAddModList_r11 */ @@ -2719,7 +3226,6 @@ static int hf_lte_rrc_csi_RS_ConfigZPToReleaseList_r11 = -1; /* CSI_RS_ConfigZP static int hf_lte_rrc_csi_RS_ConfigZPToAddModList_r11 = -1; /* CSI_RS_ConfigZPToAddModList_r11 */ static int hf_lte_rrc_epdcch_Config_r11 = -1; /* EPDCCH_Config_r11 */ static int hf_lte_rrc_pdsch_ConfigDedicated_v1130 = -1; /* PDSCH_ConfigDedicated_v1130 */ -static int hf_lte_rrc_cqi_ReportConfig_v1130 = -1; /* CQI_ReportConfig_v1130 */ static int hf_lte_rrc_pucch_ConfigDedicated_v1130 = -1; /* PUCCH_ConfigDedicated_v1130 */ static int hf_lte_rrc_pusch_ConfigDedicated_v1130 = -1; /* PUSCH_ConfigDedicated_v1130 */ static int hf_lte_rrc_uplinkPowerControlDedicated_v1130 = -1; /* UplinkPowerControlDedicated_v1130 */ @@ -2727,31 +3233,26 @@ static int hf_lte_rrc_antennaInfo_v1250 = -1; /* AntennaInfoDedicated_v1250 static int hf_lte_rrc_eimta_MainConfig_r12 = -1; /* EIMTA_MainConfig_r12 */ static int hf_lte_rrc_eimta_MainConfigPCell_r12 = -1; /* EIMTA_MainConfigServCell_r12 */ static int hf_lte_rrc_pucch_ConfigDedicated_v1250 = -1; /* PUCCH_ConfigDedicated_v1250 */ -static int hf_lte_rrc_cqi_ReportConfigPCell_v1250 = -1; /* CQI_ReportConfig_v1250 */ static int hf_lte_rrc_uplinkPowerControlDedicated_v1250 = -1; /* UplinkPowerControlDedicated_v1250 */ static int hf_lte_rrc_pusch_ConfigDedicated_v1250 = -1; /* PUSCH_ConfigDedicated_v1250 */ -static int hf_lte_rrc_csi_RS_Config_v1250 = -1; /* CSI_RS_Config_v1250 */ static int hf_lte_rrc_pdsch_ConfigDedicated_v1280 = -1; /* PDSCH_ConfigDedicated_v1280 */ static int hf_lte_rrc_pdsch_ConfigDedicated_v1310 = -1; /* PDSCH_ConfigDedicated_v1310 */ static int hf_lte_rrc_pucch_ConfigDedicated_r13 = -1; /* PUCCH_ConfigDedicated_r13 */ static int hf_lte_rrc_pusch_ConfigDedicated_r13 = -1; /* PUSCH_ConfigDedicated_r13 */ static int hf_lte_rrc_pdcch_CandidateReductions_r13 = -1; /* PDCCH_CandidateReductions_r13 */ -static int hf_lte_rrc_cqi_ReportConfig_v1310 = -1; /* CQI_ReportConfig_v1310 */ static int hf_lte_rrc_soundingRS_UL_ConfigDedicated_v1310 = -1; /* SoundingRS_UL_ConfigDedicated_v1310 */ static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedUpPTsExt_r13 = -1; /* SoundingRS_UL_ConfigDedicatedUpPTsExt_r13 */ static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_v1310 = -1; /* SoundingRS_UL_ConfigDedicatedAperiodic_v1310 */ static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 = -1; /* SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 */ -static int hf_lte_rrc_csi_RS_Config_v1310 = -1; /* CSI_RS_Config_v1310 */ static int hf_lte_rrc_ce_Mode_r13 = -1; /* T_ce_Mode_r13 */ -static int hf_lte_rrc_setup_59 = -1; /* T_setup_51 */ +static int hf_lte_rrc_setup_76 = -1; /* T_setup_67 */ static int hf_lte_rrc_csi_RS_ConfigNZPToAddModListExt_r13 = -1; /* CSI_RS_ConfigNZPToAddModListExt_r13 */ static int hf_lte_rrc_csi_RS_ConfigNZPToReleaseListExt_r13 = -1; /* CSI_RS_ConfigNZPToReleaseListExt_r13 */ -static int hf_lte_rrc_cqi_ReportConfig_v1320 = -1; /* CQI_ReportConfig_v1320 */ static int hf_lte_rrc_typeA_SRS_TPC_PDCCH_Group_r14 = -1; /* T_typeA_SRS_TPC_PDCCH_Group_r14 */ -static int hf_lte_rrc_setup_60 = -1; /* SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config_r14 */ +static int hf_lte_rrc_setup_77 = -1; /* SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config_r14 */ static int hf_lte_rrc_setup_item_02 = -1; /* SRS_TPC_PDCCH_Config_r14 */ static int hf_lte_rrc_must_Config_r14 = -1; /* T_must_Config_r14 */ -static int hf_lte_rrc_setup_61 = -1; /* T_setup_52 */ +static int hf_lte_rrc_setup_78 = -1; /* T_setup_68 */ static int hf_lte_rrc_k_max_r14 = -1; /* T_k_max_r14 */ static int hf_lte_rrc_p_a_must_r14 = -1; /* T_p_a_must_r14 */ static int hf_lte_rrc_pusch_EnhancementsConfig_r14 = -1; /* PUSCH_EnhancementsConfig_r14 */ @@ -2768,10 +3269,32 @@ static int hf_lte_rrc_soundingRS_UL_AperiodicConfigDedicatedList_r14 = -1; /* S static int hf_lte_rrc_soundingRS_UL_AperiodicConfigDedicatedList_r14_item = -1; /* SoundingRS_UL_ConfigDedicatedAperiodic_r10 */ static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedApUpPTsExtList_r14 = -1; /* SEQUENCE_SIZE_1_4_OF_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 */ static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedApUpPTsExtList_r14_item = -1; /* SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 */ -static int hf_lte_rrc_csi_RS_Config_v1430 = -1; /* CSI_RS_Config_v1430 */ static int hf_lte_rrc_csi_RS_ConfigZP_ApList_r14 = -1; /* CSI_RS_ConfigZP_ApList_r14 */ -static int hf_lte_rrc_cqi_ReportConfig_v1430 = -1; /* CQI_ReportConfig_v1430 */ static int hf_lte_rrc_semiOpenLoop_r14 = -1; /* BOOLEAN */ +static int hf_lte_rrc_csi_RS_Config_v1480 = -1; /* CSI_RS_Config_v1480 */ +static int hf_lte_rrc_physicalConfigDedicatedSTTI_r15 = -1; /* PhysicalConfigDedicatedSTTI_r15 */ +static int hf_lte_rrc_pdsch_ConfigDedicated_v1530 = -1; /* PDSCH_ConfigDedicated_v1530 */ +static int hf_lte_rrc_pusch_ConfigDedicated_v1530 = -1; /* PUSCH_ConfigDedicated_v1530 */ +static int hf_lte_rrc_cqi_ReportConfig_v1530 = -1; /* CQI_ReportConfig_v1530 */ +static int hf_lte_rrc_antennaInfo_v1530 = -1; /* AntennaInfoDedicated_v1530 */ +static int hf_lte_rrc_csi_RS_Config_v1530 = -1; /* CSI_RS_Config_v1530 */ +static int hf_lte_rrc_uplinkPowerControlDedicated_v1530 = -1; /* UplinkPowerControlDedicated_v1530 */ +static int hf_lte_rrc_semiStaticCFI_Config_r15 = -1; /* T_semiStaticCFI_Config_r15 */ +static int hf_lte_rrc_setup_79 = -1; /* T_setup_69 */ +static int hf_lte_rrc_cfi_Config_r15 = -1; /* CFI_Config_r15 */ +static int hf_lte_rrc_cfi_PatternConfig_r15 = -1; /* CFI_PatternConfig_r15 */ +static int hf_lte_rrc_blindPDSCH_Repetition_Config_r15 = -1; /* T_blindPDSCH_Repetition_Config_r15 */ +static int hf_lte_rrc_setup_80 = -1; /* T_setup_70 */ +static int hf_lte_rrc_blindSubframePDSCH_Repetitions_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_blindSlotSubslotPDSCH_Repetitions_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_maxNumber_SubframePDSCH_Repetitions_r15 = -1; /* T_maxNumber_SubframePDSCH_Repetitions_r15 */ +static int hf_lte_rrc_maxNumber_SlotSubslotPDSCH_Repetitions_r15 = -1; /* T_maxNumber_SlotSubslotPDSCH_Repetitions_r15 */ +static int hf_lte_rrc_rv_SubframePDSCH_Repetitions_r15 = -1; /* T_rv_SubframePDSCH_Repetitions_r15 */ +static int hf_lte_rrc_rv_SlotsublotPDSCH_Repetitions_r15 = -1; /* T_rv_SlotsublotPDSCH_Repetitions_r15 */ +static int hf_lte_rrc_numberOfProcesses_SubframePDSCH_Repetitions_r15 = -1; /* INTEGER_1_16 */ +static int hf_lte_rrc_numberOfProcesses_SlotSubslotPDSCH_Repetitions_r15 = -1; /* INTEGER_1_16 */ +static int hf_lte_rrc_mcs_restrictionSubframePDSCH_Repetitions_r15 = -1; /* T_mcs_restrictionSubframePDSCH_Repetitions_r15 */ +static int hf_lte_rrc_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15 = -1; /* T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15 */ static int hf_lte_rrc_pucch_ConfigDedicated_v1370 = -1; /* PUCCH_ConfigDedicated_v1370 */ static int hf_lte_rrc_nonUL_Configuration_r10 = -1; /* T_nonUL_Configuration_r10 */ static int hf_lte_rrc_antennaInfo_r10_01 = -1; /* AntennaInfoDedicated_r10 */ @@ -2788,7 +3311,7 @@ static int hf_lte_rrc_cqi_ReportConfigSCell_v1250 = -1; /* CQI_ReportConfig_v12 static int hf_lte_rrc_uplinkPowerControlDedicatedSCell_v1250 = -1; /* UplinkPowerControlDedicated_v1250 */ static int hf_lte_rrc_pucch_Cell_r13 = -1; /* T_pucch_Cell_r13 */ static int hf_lte_rrc_pucch_SCell = -1; /* T_pucch_SCell */ -static int hf_lte_rrc_setup_62 = -1; /* T_setup_53 */ +static int hf_lte_rrc_setup_81 = -1; /* T_setup_71 */ static int hf_lte_rrc_schedulingRequestConfig_r13 = -1; /* SchedulingRequestConfigSCell_r13 */ static int hf_lte_rrc_tpc_PDCCH_ConfigPUCCH_SCell_r13 = -1; /* TPC_PDCCH_ConfigSCell_r13 */ static int hf_lte_rrc_uplinkPowerControlDedicated_r13 = -1; /* UplinkPowerControlDedicatedSCell_v1310 */ @@ -2803,34 +3326,87 @@ static int hf_lte_rrc_soundingRS_UL_AperiodicConfigDedicatedList_r14_item_01 = - static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedApUpPTsExtList_r14_01 = -1; /* SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14 */ static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedApUpPTsExtList_r14_item_01 = -1; /* SoundingRS_AperiodicSetUpPTsExt_r14 */ static int hf_lte_rrc_must_Config_r14_01 = -1; /* T_must_Config_r14_01 */ -static int hf_lte_rrc_setup_63 = -1; /* T_setup_54 */ +static int hf_lte_rrc_setup_82 = -1; /* T_setup_72 */ static int hf_lte_rrc_k_max_r14_01 = -1; /* T_k_max_r14_01 */ static int hf_lte_rrc_p_a_must_r14_01 = -1; /* T_p_a_must_r14_01 */ static int hf_lte_rrc_pusch_ConfigDedicated_v1430_01 = -1; /* PUSCH_ConfigDedicatedSCell_v1430 */ static int hf_lte_rrc_pdsch_ConfigDedicatedSCell_v1430 = -1; /* PDSCH_ConfigDedicatedSCell_v1430 */ +static int hf_lte_rrc_cqi_ReportConfigSCell_r15 = -1; /* CQI_ReportConfigSCell_r15 */ +static int hf_lte_rrc_cqi_ShortConfigSCell_r15 = -1; /* CQI_ShortConfigSCell_r15 */ +static int hf_lte_rrc_uplinkPowerControlDedicatedSCell_v1530 = -1; /* UplinkPowerControlDedicated_v1530 */ +static int hf_lte_rrc_laa_SCellConfiguration_v1530 = -1; /* LAA_SCellConfiguration_v1530 */ +static int hf_lte_rrc_pusch_ConfigDedicated_v1530_01 = -1; /* PUSCH_ConfigDedicatedScell_v1530 */ +static int hf_lte_rrc_semiStaticCFI_Config_r15_01 = -1; /* T_semiStaticCFI_Config_r15_01 */ +static int hf_lte_rrc_setup_83 = -1; /* T_setup_73 */ +static int hf_lte_rrc_blindPDSCH_Repetition_Config_r15_01 = -1; /* T_blindPDSCH_Repetition_Config_r15_01 */ +static int hf_lte_rrc_setup_84 = -1; /* T_setup_74 */ +static int hf_lte_rrc_maxNumber_SubframePDSCH_Repetitions_r15_01 = -1; /* T_maxNumber_SubframePDSCH_Repetitions_r15_01 */ +static int hf_lte_rrc_maxNumber_SlotSubslotPDSCH_Repetitions_r15_01 = -1; /* T_maxNumber_SlotSubslotPDSCH_Repetitions_r15_01 */ +static int hf_lte_rrc_rv_SubframePDSCH_Repetitions_r15_01 = -1; /* T_rv_SubframePDSCH_Repetitions_r15_01 */ +static int hf_lte_rrc_rv_SlotsublotPDSCH_Repetitions_r15_01 = -1; /* T_rv_SlotsublotPDSCH_Repetitions_r15_01 */ +static int hf_lte_rrc_mcs_restrictionSubframePDSCH_Repetitions_r15_01 = -1; /* T_mcs_restrictionSubframePDSCH_Repetitions_r15_01 */ +static int hf_lte_rrc_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_01 = -1; /* T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_01 */ static int hf_lte_rrc_pucch_SCell_v1370 = -1; /* T_pucch_SCell_v1370 */ -static int hf_lte_rrc_setup_64 = -1; /* T_setup_55 */ +static int hf_lte_rrc_setup_85 = -1; /* T_setup_75 */ +static int hf_lte_rrc_cfi_SubframeNonMBSFN_r15 = -1; /* INTEGER_1_4 */ +static int hf_lte_rrc_cfi_SlotSubslotNonMBSFN_r15 = -1; /* INTEGER_1_3 */ +static int hf_lte_rrc_cfi_SubframeMBSFN_r15 = -1; /* INTEGER_1_2 */ +static int hf_lte_rrc_cfi_SlotSubslotMBSFN_r15 = -1; /* INTEGER_1_2 */ +static int hf_lte_rrc_cfi_PatternSubframe_r15 = -1; /* T_cfi_PatternSubframe_r15 */ +static int hf_lte_rrc_cfi_PatternSubframe_r15_item = -1; /* INTEGER_1_4 */ +static int hf_lte_rrc_cfi_PatternSlotSubslot_r15 = -1; /* T_cfi_PatternSlotSubslot_r15 */ +static int hf_lte_rrc_cfi_PatternSlotSubslot_r15_item = -1; /* INTEGER_1_3 */ static int hf_lte_rrc_subframeStartPosition_r13 = -1; /* T_subframeStartPosition_r13 */ static int hf_lte_rrc_laa_SCellSubframeConfig_r13 = -1; /* BIT_STRING_SIZE_8 */ static int hf_lte_rrc_crossCarrierSchedulingConfig_UL_r14 = -1; /* T_crossCarrierSchedulingConfig_UL_r14 */ -static int hf_lte_rrc_setup_65 = -1; /* T_setup_56 */ +static int hf_lte_rrc_setup_86 = -1; /* T_setup_76 */ static int hf_lte_rrc_crossCarrierSchedulingConfigLAA_UL_r14 = -1; /* CrossCarrierSchedulingConfigLAA_UL_r14 */ static int hf_lte_rrc_lbt_Config_r14 = -1; /* LBT_Config_r14 */ static int hf_lte_rrc_pdcch_ConfigLAA_r14 = -1; /* PDCCH_ConfigLAA_r14 */ static int hf_lte_rrc_absenceOfAnyOtherTechnology_r14 = -1; /* T_absenceOfAnyOtherTechnology_r14 */ static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_v1430 = -1; /* SoundingRS_UL_ConfigDedicatedAperiodic_v1430 */ +static int hf_lte_rrc_aul_Config_r15 = -1; /* AUL_Config_r15 */ +static int hf_lte_rrc_pusch_ModeConfigLAA_r15 = -1; /* PUSCH_ModeConfigLAA_r15 */ +static int hf_lte_rrc_laa_PUSCH_Mode1 = -1; /* BOOLEAN */ +static int hf_lte_rrc_laa_PUSCH_Mode2 = -1; /* BOOLEAN */ +static int hf_lte_rrc_laa_PUSCH_Mode3 = -1; /* BOOLEAN */ static int hf_lte_rrc_maxEnergyDetectionThreshold_r14 = -1; /* INTEGER_M85_M52 */ static int hf_lte_rrc_energyDetectionThresholdOffset_r14 = -1; /* INTEGER_M13_20 */ static int hf_lte_rrc_CSI_RS_ConfigNZPToAddModList_r11_item = -1; /* CSI_RS_ConfigNZP_r11 */ static int hf_lte_rrc_CSI_RS_ConfigNZPToAddModListExt_r13_item = -1; /* CSI_RS_ConfigNZP_r11 */ +static int hf_lte_rrc_CSI_RS_ConfigNZPToAddModList_r15_item = -1; /* CSI_RS_ConfigNZP_r11 */ static int hf_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r11_item = -1; /* CSI_RS_ConfigNZPId_r11 */ static int hf_lte_rrc_CSI_RS_ConfigNZPToReleaseListExt_r13_item = -1; /* CSI_RS_ConfigNZPId_v1310 */ +static int hf_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r15_item = -1; /* CSI_RS_ConfigNZPId_r13 */ static int hf_lte_rrc_CSI_RS_ConfigZPToAddModList_r11_item = -1; /* CSI_RS_ConfigZP_r11 */ static int hf_lte_rrc_CSI_RS_ConfigZPToReleaseList_r11_item = -1; /* CSI_RS_ConfigZPId_r11 */ +static int hf_lte_rrc_setup_87 = -1; /* T_setup_77 */ +static int hf_lte_rrc_antennaInfoDedicatedSTTI_r15 = -1; /* AntennaInfoDedicatedSTTI_r15 */ +static int hf_lte_rrc_antennaInfoUL_STTI_r15 = -1; /* AntennaInfoUL_STTI_r15 */ +static int hf_lte_rrc_pucch_ConfigDedicated_v1530 = -1; /* PUCCH_ConfigDedicated_v1530 */ +static int hf_lte_rrc_schedulingRequestConfig_v1530 = -1; /* SchedulingRequestConfig_v1530 */ +static int hf_lte_rrc_uplinkPowerControlDedicatedSTTI_r15 = -1; /* UplinkPowerControlDedicatedSTTI_r15 */ +static int hf_lte_rrc_cqi_ReportConfig_r15 = -1; /* CQI_ReportConfig_r15 */ +static int hf_lte_rrc_csi_RS_Config_r15 = -1; /* CSI_RS_Config_r15 */ +static int hf_lte_rrc_csi_RS_ConfigNZPToReleaseList_r15 = -1; /* CSI_RS_ConfigNZPToReleaseList_r15 */ +static int hf_lte_rrc_csi_RS_ConfigNZPToAddModList_r15 = -1; /* CSI_RS_ConfigNZPToAddModList_r15 */ +static int hf_lte_rrc_csi_RS_ConfigZPToReleaseList_r15 = -1; /* CSI_RS_ConfigZPToReleaseList_r11 */ +static int hf_lte_rrc_csi_RS_ConfigZP_ApList_r15 = -1; /* CSI_RS_ConfigZP_ApList_r14 */ +static int hf_lte_rrc_eimta_MainConfigServCell_r15 = -1; /* EIMTA_MainConfigServCell_r12 */ +static int hf_lte_rrc_semiOpenLoopSTTI_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_slotOrSubslotPDSCH_Config_r15 = -1; /* SlotOrSubslotPDSCH_Config_r15 */ +static int hf_lte_rrc_slotOrSubslotPUSCH_Config_r15 = -1; /* SlotOrSubslotPUSCH_Config_r15 */ +static int hf_lte_rrc_spdcch_Config_r15 = -1; /* SPDCCH_Config_r15 */ +static int hf_lte_rrc_spucch_Config_r15 = -1; /* SPUCCH_Config_r15 */ +static int hf_lte_rrc_srs_DCI7_TriggeringConfig_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_shortProcessingTime_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_shortTTI_r15_01 = -1; /* ShortTTI_r15 */ static int hf_lte_rrc_srs_CC_SetIndexList_r14 = -1; /* SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex_r14 */ static int hf_lte_rrc_srs_CC_SetIndexList_r14_item = -1; /* SRS_CC_SetIndex_r14 */ static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_r14 = -1; /* SoundingRS_UL_ConfigDedicatedAperiodic_r10 */ static int hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r14 = -1; /* SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 */ +static int hf_lte_rrc_dl_STTI_Length_r15 = -1; /* ShortTTI_Length_r15 */ +static int hf_lte_rrc_ul_STTI_Length_r15 = -1; /* ShortTTI_Length_r15 */ static int hf_lte_rrc_rootSequenceIndex = -1; /* INTEGER_0_837 */ static int hf_lte_rrc_prach_ConfigInfo = -1; /* PRACH_ConfigInfo */ static int hf_lte_rrc_rsrp_ThresholdsPrachInfoList_r13 = -1; /* RSRP_ThresholdsPrachInfoList_r13 */ @@ -2839,6 +3415,8 @@ static int hf_lte_rrc_fdd_r13_01 = -1; /* T_fdd_r13_01 */ static int hf_lte_rrc_tdd_r13_01 = -1; /* T_tdd_r13_01 */ static int hf_lte_rrc_prach_HoppingOffset_r13 = -1; /* INTEGER_0_94 */ static int hf_lte_rrc_prach_ParametersListCE_r13 = -1; /* PRACH_ParametersListCE_r13 */ +static int hf_lte_rrc_edt_PRACH_ParametersListCE_r15 = -1; /* SEQUENCE_SIZE_1_maxCE_Level_r13_OF_EDT_PRACH_ParametersCE_r15 */ +static int hf_lte_rrc_edt_PRACH_ParametersListCE_r15_item = -1; /* EDT_PRACH_ParametersCE_r15 */ static int hf_lte_rrc_mpdcch_startSF_CSS_RA_r13_01 = -1; /* T_mpdcch_startSF_CSS_RA_r13_01 */ static int hf_lte_rrc_fdd_r13_02 = -1; /* T_fdd_r13_02 */ static int hf_lte_rrc_tdd_r13_02 = -1; /* T_tdd_r13_02 */ @@ -2862,6 +3440,12 @@ static int hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r13 = -1; /* T_mpdcch_Narrowb static int hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r13_item = -1; /* INTEGER_1_maxAvailNarrowBands_r13 */ static int hf_lte_rrc_mpdcch_NumRepetition_RA_r13 = -1; /* T_mpdcch_NumRepetition_RA_r13 */ static int hf_lte_rrc_prach_HoppingConfig_r13 = -1; /* T_prach_HoppingConfig_r13 */ +static int hf_lte_rrc_edt_PRACH_ParametersCE_r15 = -1; /* T_edt_PRACH_ParametersCE_r15 */ +static int hf_lte_rrc_prach_ConfigIndex_r15 = -1; /* INTEGER_0_63 */ +static int hf_lte_rrc_prach_FreqOffset_r15 = -1; /* INTEGER_0_94 */ +static int hf_lte_rrc_prach_StartingSubframe_r15 = -1; /* T_prach_StartingSubframe_r15 */ +static int hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r15 = -1; /* T_mpdcch_NarrowbandsToMonitor_r15 */ +static int hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r15_item = -1; /* INTEGER_1_maxAvailNarrowBands_r13 */ static int hf_lte_rrc_RSRP_ThresholdsPrachInfoList_r13_item = -1; /* RSRP_Range */ static int hf_lte_rrc_deltaPUCCH_Shift = -1; /* T_deltaPUCCH_Shift */ static int hf_lte_rrc_nRB_CQI = -1; /* INTEGER_0_98 */ @@ -2874,7 +3458,7 @@ static int hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level2_r13 = -1; /* T_pucch_Nu static int hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level3_r13 = -1; /* T_pucch_NumRepetitionCE_Msg4_Level3_r13 */ static int hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level3_r14 = -1; /* T_pucch_NumRepetitionCE_Msg4_Level3_r14 */ static int hf_lte_rrc_ackNackRepetition = -1; /* T_ackNackRepetition */ -static int hf_lte_rrc_setup_66 = -1; /* T_setup_57 */ +static int hf_lte_rrc_setup_88 = -1; /* T_setup_78 */ static int hf_lte_rrc_repetitionFactor = -1; /* T_repetitionFactor */ static int hf_lte_rrc_n1PUCCH_AN_Rep = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_tdd_AckNackFeedbackMode = -1; /* T_tdd_AckNackFeedbackMode */ @@ -2882,25 +3466,25 @@ static int hf_lte_rrc_pucch_Format_r10 = -1; /* T_pucch_Format_r10 */ static int hf_lte_rrc_format3_r10 = -1; /* PUCCH_Format3_Conf_r13 */ static int hf_lte_rrc_channelSelection_r10 = -1; /* T_channelSelection_r10 */ static int hf_lte_rrc_n1PUCCH_AN_CS_r10 = -1; /* T_n1PUCCH_AN_CS_r10 */ -static int hf_lte_rrc_setup_67 = -1; /* T_setup_58 */ +static int hf_lte_rrc_setup_89 = -1; /* T_setup_79 */ static int hf_lte_rrc_n1PUCCH_AN_CS_List_r10 = -1; /* SEQUENCE_SIZE_1_2_OF_N1PUCCH_AN_CS_r10 */ static int hf_lte_rrc_n1PUCCH_AN_CS_List_r10_item = -1; /* N1PUCCH_AN_CS_r10 */ static int hf_lte_rrc_twoAntennaPortActivatedPUCCH_Format1a1b_r10 = -1; /* T_twoAntennaPortActivatedPUCCH_Format1a1b_r10 */ static int hf_lte_rrc_simultaneousPUCCH_PUSCH_r10 = -1; /* T_simultaneousPUCCH_PUSCH_r10 */ static int hf_lte_rrc_n1PUCCH_AN_RepP1_r10 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_n1PUCCH_AN_CS_v1130 = -1; /* T_n1PUCCH_AN_CS_v1130 */ -static int hf_lte_rrc_setup_68 = -1; /* T_setup_59 */ +static int hf_lte_rrc_setup_90 = -1; /* T_setup_80 */ static int hf_lte_rrc_n1PUCCH_AN_CS_ListP1_r11 = -1; /* T_n1PUCCH_AN_CS_ListP1_r11 */ static int hf_lte_rrc_n1PUCCH_AN_CS_ListP1_r11_item = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_nPUCCH_Param_r11 = -1; /* T_nPUCCH_Param_r11 */ -static int hf_lte_rrc_setup_69 = -1; /* T_setup_60 */ +static int hf_lte_rrc_setup_91 = -1; /* T_setup_81 */ static int hf_lte_rrc_nPUCCH_Identity_r11 = -1; /* INTEGER_0_503 */ static int hf_lte_rrc_n1PUCCH_AN_r11 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_nkaPUCCH_Param_r12 = -1; /* T_nkaPUCCH_Param_r12 */ -static int hf_lte_rrc_setup_70 = -1; /* T_setup_61 */ +static int hf_lte_rrc_setup_92 = -1; /* T_setup_82 */ static int hf_lte_rrc_nkaPUCCH_AN_r12 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_ackNackRepetition_r13 = -1; /* T_ackNackRepetition_r13 */ -static int hf_lte_rrc_setup_71 = -1; /* T_setup_62 */ +static int hf_lte_rrc_setup_93 = -1; /* T_setup_83 */ static int hf_lte_rrc_repetitionFactor_r13 = -1; /* T_repetitionFactor_r13 */ static int hf_lte_rrc_n1PUCCH_AN_Rep_r13 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_tdd_AckNackFeedbackMode_r13 = -1; /* T_tdd_AckNackFeedbackMode_r13 */ @@ -2909,12 +3493,12 @@ static int hf_lte_rrc_format3_r13 = -1; /* T_format3_r13 */ static int hf_lte_rrc_n3PUCCH_AN_List_r13 = -1; /* T_n3PUCCH_AN_List_r13 */ static int hf_lte_rrc_n3PUCCH_AN_List_r13_item = -1; /* INTEGER_0_549 */ static int hf_lte_rrc_twoAntennaPortActivatedPUCCH_Format3_r13 = -1; /* T_twoAntennaPortActivatedPUCCH_Format3_r13 */ -static int hf_lte_rrc_setup_72 = -1; /* T_setup_63 */ +static int hf_lte_rrc_setup_94 = -1; /* T_setup_84 */ static int hf_lte_rrc_n3PUCCH_AN_ListP1_r13 = -1; /* T_n3PUCCH_AN_ListP1_r13 */ static int hf_lte_rrc_n3PUCCH_AN_ListP1_r13_item = -1; /* INTEGER_0_549 */ static int hf_lte_rrc_channelSelection_r13 = -1; /* T_channelSelection_r13 */ static int hf_lte_rrc_n1PUCCH_AN_CS_r13 = -1; /* T_n1PUCCH_AN_CS_r13 */ -static int hf_lte_rrc_setup_73 = -1; /* T_setup_64 */ +static int hf_lte_rrc_setup_95 = -1; /* T_setup_85 */ static int hf_lte_rrc_n1PUCCH_AN_CS_List_r13 = -1; /* N1PUCCH_AN_CS_List_r13 */ static int hf_lte_rrc_n1PUCCH_AN_CS_List_r13_item = -1; /* N1PUCCH_AN_CS_r10 */ static int hf_lte_rrc_n1PUCCH_AN_CS_ListP1_r13 = -1; /* T_n1PUCCH_AN_CS_ListP1_r13 */ @@ -2932,11 +3516,11 @@ static int hf_lte_rrc_twoAntennaPortActivatedPUCCH_Format1a1b_r13 = -1; /* T_tw static int hf_lte_rrc_simultaneousPUCCH_PUSCH_r13 = -1; /* T_simultaneousPUCCH_PUSCH_r13 */ static int hf_lte_rrc_n1PUCCH_AN_RepP1_r13 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_nPUCCH_Param_r13 = -1; /* T_nPUCCH_Param_r13 */ -static int hf_lte_rrc_setup_74 = -1; /* T_setup_65 */ +static int hf_lte_rrc_setup_96 = -1; /* T_setup_86 */ static int hf_lte_rrc_nPUCCH_Identity_r13 = -1; /* INTEGER_0_503 */ static int hf_lte_rrc_n1PUCCH_AN_r13 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_nkaPUCCH_Param_r13 = -1; /* T_nkaPUCCH_Param_r13 */ -static int hf_lte_rrc_setup_75 = -1; /* T_setup_66 */ +static int hf_lte_rrc_setup_97 = -1; /* T_setup_87 */ static int hf_lte_rrc_nkaPUCCH_AN_r13 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_spatialBundlingPUCCH_r13 = -1; /* BOOLEAN */ static int hf_lte_rrc_spatialBundlingPUSCH_r13 = -1; /* BOOLEAN */ @@ -2944,7 +3528,7 @@ static int hf_lte_rrc_harq_TimingTDD_r13 = -1; /* BOOLEAN */ static int hf_lte_rrc_codebooksizeDetermination_r13 = -1; /* T_codebooksizeDetermination_r13 */ static int hf_lte_rrc_maximumPayloadCoderate_r13 = -1; /* INTEGER_0_7 */ static int hf_lte_rrc_pucch_NumRepetitionCE_r13 = -1; /* T_pucch_NumRepetitionCE_r13 */ -static int hf_lte_rrc_setup_76 = -1; /* T_setup_67 */ +static int hf_lte_rrc_setup_98 = -1; /* T_setup_88 */ static int hf_lte_rrc_modeA = -1; /* T_modeA */ static int hf_lte_rrc_pucch_NumRepetitionCE_format1_r13 = -1; /* T_pucch_NumRepetitionCE_format1_r13 */ static int hf_lte_rrc_pucch_NumRepetitionCE_format2_r13 = -1; /* T_pucch_NumRepetitionCE_format2_r13 */ @@ -2952,12 +3536,14 @@ static int hf_lte_rrc_modeB = -1; /* T_modeB */ static int hf_lte_rrc_pucch_NumRepetitionCE_format1_r13_01 = -1; /* T_pucch_NumRepetitionCE_format1_r13_01 */ static int hf_lte_rrc_pucch_NumRepetitionCE_format2_r13_01 = -1; /* T_pucch_NumRepetitionCE_format2_r13_01 */ static int hf_lte_rrc_pucch_Format_v1370 = -1; /* T_pucch_Format_v1370 */ -static int hf_lte_rrc_setup_77 = -1; /* PUCCH_Format3_Conf_r13 */ +static int hf_lte_rrc_setup_99 = -1; /* PUCCH_Format3_Conf_r13 */ static int hf_lte_rrc_n3PUCCH_AN_List_r13_01 = -1; /* T_n3PUCCH_AN_List_r13_01 */ static int hf_lte_rrc_twoAntennaPortActivatedPUCCH_Format3_r13_01 = -1; /* T_twoAntennaPortActivatedPUCCH_Format3_r13_01 */ -static int hf_lte_rrc_setup_78 = -1; /* T_setup_68 */ +static int hf_lte_rrc_setup_100 = -1; /* T_setup_89 */ static int hf_lte_rrc_n3PUCCH_AN_ListP1_r13_01 = -1; /* T_n3PUCCH_AN_ListP1_r13_01 */ static int hf_lte_rrc_pucch_NumRepetitionCE_format1_r14 = -1; /* T_pucch_NumRepetitionCE_format1_r14 */ +static int hf_lte_rrc_n1PUCCH_AN_SPT_r15 = -1; /* INTEGER_0_2047 */ +static int hf_lte_rrc_codebooksizeDeterminationSTTI_r15 = -1; /* T_codebooksizeDeterminationSTTI_r15 */ static int hf_lte_rrc_startingPRB_format4_r13 = -1; /* INTEGER_0_109 */ static int hf_lte_rrc_numberOfPRB_format4_r13 = -1; /* INTEGER_0_7 */ static int hf_lte_rrc_startingPRB_format5_r13 = -1; /* INTEGER_0_109 */ @@ -2984,11 +3570,11 @@ static int hf_lte_rrc_betaOffset_CQI_Index_MC_r10 = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_groupHoppingDisabled_r10 = -1; /* T_groupHoppingDisabled_r10 */ static int hf_lte_rrc_dmrs_WithOCC_Activated_r10 = -1; /* T_dmrs_WithOCC_Activated_r10 */ static int hf_lte_rrc_pusch_DMRS_r11 = -1; /* T_pusch_DMRS_r11 */ -static int hf_lte_rrc_setup_79 = -1; /* T_setup_69 */ +static int hf_lte_rrc_setup_101 = -1; /* T_setup_90 */ static int hf_lte_rrc_nPUSCH_Identity_r11 = -1; /* INTEGER_0_509 */ static int hf_lte_rrc_nDMRS_CSH_Identity_r11 = -1; /* INTEGER_0_509 */ static int hf_lte_rrc_uciOnPUSCH = -1; /* T_uciOnPUSCH */ -static int hf_lte_rrc_setup_80 = -1; /* T_setup_70 */ +static int hf_lte_rrc_setup_102 = -1; /* T_setup_91 */ static int hf_lte_rrc_betaOffset_ACK_Index_SubframeSet2_r12 = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_betaOffset_RI_Index_SubframeSet2_r12 = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_betaOffset_CQI_Index_SubframeSet2_r12 = -1; /* INTEGER_0_15 */ @@ -3008,11 +3594,11 @@ static int hf_lte_rrc_betaOffset_CQI_Index_MC_r13 = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_groupHoppingDisabled_r13 = -1; /* T_groupHoppingDisabled_r13 */ static int hf_lte_rrc_dmrs_WithOCC_Activated_r13 = -1; /* T_dmrs_WithOCC_Activated_r13 */ static int hf_lte_rrc_pusch_DMRS_r11_01 = -1; /* T_pusch_DMRS_r11_01 */ -static int hf_lte_rrc_setup_81 = -1; /* T_setup_71 */ +static int hf_lte_rrc_setup_103 = -1; /* T_setup_92 */ static int hf_lte_rrc_nPUSCH_Identity_r13 = -1; /* INTEGER_0_509 */ static int hf_lte_rrc_nDMRS_CSH_Identity_r13 = -1; /* INTEGER_0_509 */ static int hf_lte_rrc_uciOnPUSCH_01 = -1; /* T_uciOnPUSCH_01 */ -static int hf_lte_rrc_setup_82 = -1; /* T_setup_72 */ +static int hf_lte_rrc_setup_104 = -1; /* T_setup_93 */ static int hf_lte_rrc_betaOffset_ACK_Index_SubframeSet2_r13 = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_betaOffset2_ACK_Index_SubframeSet2_r13 = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_betaOffset_RI_Index_SubframeSet2_r13 = -1; /* INTEGER_0_15 */ @@ -3028,12 +3614,23 @@ static int hf_lte_rrc_ce_PUSCH_MaxBandwidth_r14 = -1; /* T_ce_PUSCH_MaxBandwidt static int hf_lte_rrc_tdd_PUSCH_UpPTS_r14 = -1; /* TDD_PUSCH_UpPTS_r14 */ static int hf_lte_rrc_ul_DMRS_IFDMA_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_enable256QAM_r14 = -1; /* Enable256QAM_r14 */ +static int hf_lte_rrc_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15 = -1; /* T_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15 */ +static int hf_lte_rrc_setup_105 = -1; /* T_setup_94 */ +static int hf_lte_rrc_offsetCE_ModeB_r15 = -1; /* INTEGER_M1_3 */ +static int hf_lte_rrc_ce_PUSCH_SubPRB_Config_r15 = -1; /* T_ce_PUSCH_SubPRB_Config_r15 */ +static int hf_lte_rrc_setup_106 = -1; /* T_setup_95 */ +static int hf_lte_rrc_locationCE_ModeB_r15 = -1; /* INTEGER_0_5 */ +static int hf_lte_rrc_sixToneCyclicShift_r15 = -1; /* INTEGER_0_3 */ +static int hf_lte_rrc_threeToneCyclicShift_r15 = -1; /* INTEGER_0_2 */ static int hf_lte_rrc_groupHoppingDisabled_r10_01 = -1; /* T_groupHoppingDisabled_r10_01 */ static int hf_lte_rrc_dmrs_WithOCC_Activated_r10_01 = -1; /* T_dmrs_WithOCC_Activated_r10_01 */ -static int hf_lte_rrc_setup_83 = -1; /* T_setup_73 */ +static int hf_lte_rrc_uci_OnPUSCH_r15 = -1; /* T_uci_OnPUSCH_r15 */ +static int hf_lte_rrc_setup_107 = -1; /* T_setup_96 */ +static int hf_lte_rrc_betaOffsetAUL_r15 = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_setup_108 = -1; /* T_setup_97 */ static int hf_lte_rrc_symPUSCH_UpPTS_r14 = -1; /* T_symPUSCH_UpPTS_r14 */ static int hf_lte_rrc_dmrs_LessUpPTS_Config_r14 = -1; /* T_dmrs_LessUpPTS_Config_r14 */ -static int hf_lte_rrc_setup_84 = -1; /* T_setup_74 */ +static int hf_lte_rrc_setup_109 = -1; /* T_setup_98 */ static int hf_lte_rrc_tpc_SubframeSet_Configured_r14 = -1; /* T_tpc_SubframeSet_Configured_r14 */ static int hf_lte_rrc_subframeSet1_DCI_Format0_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_subframeSet1_DCI_Format4_r14 = -1; /* BOOLEAN */ @@ -3042,7 +3639,7 @@ static int hf_lte_rrc_subframeSet2_DCI_Format4_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_tpc_SubframeSet_NotConfigured_r14 = -1; /* T_tpc_SubframeSet_NotConfigured_r14 */ static int hf_lte_rrc_dci_Format0_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_dci_Format4_r14 = -1; /* BOOLEAN */ -static int hf_lte_rrc_setup_85 = -1; /* T_setup_75 */ +static int hf_lte_rrc_setup_110 = -1; /* T_setup_99 */ static int hf_lte_rrc_pusch_HoppingOffsetPUSCH_Enh_r14 = -1; /* INTEGER_1_100 */ static int hf_lte_rrc_interval_ULHoppingPUSCH_Enh_r14 = -1; /* T_interval_ULHoppingPUSCH_Enh_r14 */ static int hf_lte_rrc_interval_FDD_PUSCH_Enh_r14 = -1; /* T_interval_FDD_PUSCH_Enh_r14 */ @@ -3065,6 +3662,7 @@ static int hf_lte_rrc_mac_ContentionResolutionTimer = -1; /* T_mac_ContentionRe static int hf_lte_rrc_maxHARQ_Msg3Tx = -1; /* INTEGER_1_8 */ static int hf_lte_rrc_preambleTransMax_CE_r13 = -1; /* PreambleTransMax */ static int hf_lte_rrc_rach_CE_LevelInfoList_r13 = -1; /* RACH_CE_LevelInfoList_r13 */ +static int hf_lte_rrc_edt_SmallTBS_Subset_r15 = -1; /* T_edt_SmallTBS_Subset_r15 */ static int hf_lte_rrc_txFailParams_r12 = -1; /* T_txFailParams_r12 */ static int hf_lte_rrc_connEstFailCount_r12 = -1; /* T_connEstFailCount_r12 */ static int hf_lte_rrc_connEstFailOffsetValidity_r12 = -1; /* T_connEstFailOffsetValidity_r12 */ @@ -3079,6 +3677,11 @@ static int hf_lte_rrc_lastPreamble_r13 = -1; /* INTEGER_0_63 */ static int hf_lte_rrc_ra_ResponseWindowSize_r13 = -1; /* T_ra_ResponseWindowSize_r13 */ static int hf_lte_rrc_mac_ContentionResolutionTimer_r13 = -1; /* T_mac_ContentionResolutionTimer_r13 */ static int hf_lte_rrc_rar_HoppingConfig_r13 = -1; /* T_rar_HoppingConfig_r13 */ +static int hf_lte_rrc_edt_Parameters_r15 = -1; /* T_edt_Parameters_r15 */ +static int hf_lte_rrc_edt_LastPreamble_r15 = -1; /* INTEGER_0_63 */ +static int hf_lte_rrc_edt_SmallTBS_Enabled_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_edt_TBS_r15 = -1; /* T_edt_TBS_r15 */ +static int hf_lte_rrc_mac_ContentionResolutionTimer_r15 = -1; /* T_mac_ContentionResolutionTimer_r15 */ static int hf_lte_rrc_powerRampingStep = -1; /* T_powerRampingStep */ static int hf_lte_rrc_preambleInitialReceivedTargetPower = -1; /* T_preambleInitialReceivedTargetPower */ static int hf_lte_rrc_ra_PreambleIndex = -1; /* INTEGER_0_63 */ @@ -3106,14 +3709,20 @@ static int hf_lte_rrc_pucch_ConfigCommon_v1310 = -1; /* PUCCH_ConfigCommon_v131 static int hf_lte_rrc_highSpeedConfig_r14 = -1; /* HighSpeedConfig_r14 */ static int hf_lte_rrc_prach_Config_v1430 = -1; /* PRACH_Config_v1430 */ static int hf_lte_rrc_pucch_ConfigCommon_v1430 = -1; /* PUCCH_ConfigCommon_v1430 */ +static int hf_lte_rrc_prach_Config_v1530 = -1; /* PRACH_ConfigSIB_v1530 */ +static int hf_lte_rrc_ce_RSS_Config_r15 = -1; /* RSS_Config_r15 */ +static int hf_lte_rrc_wus_Config_r15 = -1; /* WUS_Config_r15 */ +static int hf_lte_rrc_highSpeedConfig_v1530 = -1; /* HighSpeedConfig_v1530 */ static int hf_lte_rrc_prach_Config_01 = -1; /* PRACH_Config */ static int hf_lte_rrc_prach_Config_v1310 = -1; /* PRACH_Config_v1310 */ static int hf_lte_rrc_uplinkPowerControlCommon_v1310 = -1; /* UplinkPowerControlCommon_v1310 */ +static int hf_lte_rrc_uplinkPowerControlCommon_v1530 = -1; /* UplinkPowerControlCommon_v1530 */ static int hf_lte_rrc_basicFields_r12 = -1; /* RadioResourceConfigCommonSCell_r10 */ static int hf_lte_rrc_pucch_ConfigCommon_r12 = -1; /* PUCCH_ConfigCommon */ static int hf_lte_rrc_rach_ConfigCommon_r12 = -1; /* RACH_ConfigCommon */ static int hf_lte_rrc_uplinkPowerControlCommonPSCell_r12 = -1; /* UplinkPowerControlCommonPSCell_r12 */ static int hf_lte_rrc_uplinkPowerControlCommonPSCell_v1310 = -1; /* UplinkPowerControlCommon_v1310 */ +static int hf_lte_rrc_uplinkPowerControlCommonPSCell_v1530 = -1; /* UplinkPowerControlCommon_v1530 */ static int hf_lte_rrc_basicFields_v12f0 = -1; /* RadioResourceConfigCommonSCell_v10l0 */ static int hf_lte_rrc_basicFields_v1440 = -1; /* RadioResourceConfigCommonSCell_v1440 */ static int hf_lte_rrc_nonUL_Configuration_r10_01 = -1; /* T_nonUL_Configuration_r10_01 */ @@ -3153,6 +3762,7 @@ static int hf_lte_rrc_prach_ConfigSCell_r14 = -1; /* PRACH_ConfigSCell_r10 */ static int hf_lte_rrc_uplinkPowerControlCommonPUSCH_LessCell_v1430 = -1; /* UplinkPowerControlCommonPUSCH_LessCell_v1430 */ static int hf_lte_rrc_harq_ReferenceConfig_r14 = -1; /* T_harq_ReferenceConfig_r14 */ static int hf_lte_rrc_soundingRS_FlexibleTiming_r14 = -1; /* T_soundingRS_FlexibleTiming_r14 */ +static int hf_lte_rrc_uplinkPowerControlCommonSCell_v1530 = -1; /* UplinkPowerControlCommon_v1530 */ static int hf_lte_rrc_ul_Configuration_v10l0 = -1; /* T_ul_Configuration_v10l0 */ static int hf_lte_rrc_additionalSpectrumEmissionSCell_v10l0 = -1; /* AdditionalSpectrumEmission_v10l0 */ static int hf_lte_rrc_ul_Configuration_v1440 = -1; /* T_ul_Configuration_v1440 */ @@ -3160,7 +3770,7 @@ static int hf_lte_rrc_ul_FreqInfo_v1440 = -1; /* T_ul_FreqInfo_v1440 */ static int hf_lte_rrc_additionalSpectrumEmissionSCell_v1440 = -1; /* AdditionalSpectrumEmission_v10l0 */ static int hf_lte_rrc_modificationPeriodCoeff = -1; /* T_modificationPeriodCoeff */ static int hf_lte_rrc_modificationPeriodCoeff_v1310 = -1; /* T_modificationPeriodCoeff_v1310 */ -static int hf_lte_rrc_dummy_03 = -1; /* T_dummy_02 */ +static int hf_lte_rrc_dummy_04 = -1; /* T_dummy_02 */ static int hf_lte_rrc_dummy2_01 = -1; /* T_dummy2_01 */ static int hf_lte_rrc_interval_FDD_r13_02 = -1; /* T_interval_FDD_r13_02 */ static int hf_lte_rrc_interval_TDD_r13_02 = -1; /* T_interval_TDD_r13_02 */ @@ -3181,6 +3791,7 @@ static int hf_lte_rrc_mpdcch_NumRepetition_Paging_r13 = -1; /* T_mpdcch_NumRepe static int hf_lte_rrc_nB_v1310 = -1; /* T_nB_v1310 */ static int hf_lte_rrc_highSpeedEnhancedMeasFlag_r14 = -1; /* T_highSpeedEnhancedMeasFlag_r14 */ static int hf_lte_rrc_highSpeedEnhancedDemodulationFlag_r14 = -1; /* T_highSpeedEnhancedDemodulationFlag_r14 */ +static int hf_lte_rrc_highSpeedMeasGapCE_ModeA_r15 = -1; /* T_highSpeedMeasGapCE_ModeA_r15 */ static int hf_lte_rrc_highSpeedEnhancedDemodulationFlag_r14_01 = -1; /* T_highSpeedEnhancedDemodulationFlag_r14_01 */ static int hf_lte_rrc_srb_ToAddModList = -1; /* SRB_ToAddModList */ static int hf_lte_rrc_drb_ToAddModList = -1; /* DRB_ToAddModList */ @@ -3196,27 +3807,46 @@ static int hf_lte_rrc_naics_Info_r12 = -1; /* NAICS_AssistanceInfo_r12 */ static int hf_lte_rrc_neighCellsCRS_Info_r13 = -1; /* NeighCellsCRS_Info_r13 */ static int hf_lte_rrc_rlf_TimersAndConstants_r13 = -1; /* RLF_TimersAndConstants_r13 */ static int hf_lte_rrc_sps_Config_v1430 = -1; /* SPS_Config_v1430 */ +static int hf_lte_rrc_srb_ToAddModExtList_r15 = -1; /* SRB_ToAddModExtList_r15 */ +static int hf_lte_rrc_srb_ToReleaseExtList_r15 = -1; /* INTEGER_4 */ +static int hf_lte_rrc_sps_Config_v1530 = -1; /* SPS_Config_v1530 */ +static int hf_lte_rrc_crs_IntfMitigConfig_r15_01 = -1; /* T_crs_IntfMitigConfig_r15_01 */ +static int hf_lte_rrc_setup_111 = -1; /* T_setup_100 */ +static int hf_lte_rrc_crs_IntfMitigNumPRBs_r15_01 = -1; /* T_crs_IntfMitigNumPRBs_r15_01 */ +static int hf_lte_rrc_neighCellsCRS_Info_r15 = -1; /* NeighCellsCRS_Info_r15 */ +static int hf_lte_rrc_drb_ToAddModList_r15 = -1; /* DRB_ToAddModList_r15 */ +static int hf_lte_rrc_drb_ToReleaseList_r15 = -1; /* DRB_ToReleaseList_r15 */ +static int hf_lte_rrc_srb_ToReleaseListDupl_r15 = -1; /* SRB_ToReleaseListDupl_r15 */ static int hf_lte_rrc_physicalConfigDedicated_v1370 = -1; /* PhysicalConfigDedicated_v1370 */ static int hf_lte_rrc_physicalConfigDedicatedPSCell_r12 = -1; /* PhysicalConfigDedicated */ static int hf_lte_rrc_sps_Config_r12 = -1; /* SPS_Config */ static int hf_lte_rrc_neighCellsCRS_InfoPSCell_r13 = -1; /* NeighCellsCRS_Info_r13 */ +static int hf_lte_rrc_crs_IntfMitigEnabled_r15 = -1; /* BOOLEAN */ static int hf_lte_rrc_physicalConfigDedicatedPSCell_v1370 = -1; /* PhysicalConfigDedicated_v1370 */ static int hf_lte_rrc_drb_ToAddModListSCG_r12_01 = -1; /* DRB_ToAddModListSCG_r12 */ static int hf_lte_rrc_mac_MainConfigSCG_r12 = -1; /* MAC_MainConfig */ static int hf_lte_rrc_rlf_TimersAndConstantsSCG_r12 = -1; /* RLF_TimersAndConstantsSCG_r12 */ +static int hf_lte_rrc_drb_ToAddModListSCG_r15_01 = -1; /* DRB_ToAddModListSCG_r15 */ static int hf_lte_rrc_physicalConfigDedicatedSCell_r10 = -1; /* PhysicalConfigDedicatedSCell_r10 */ static int hf_lte_rrc_mac_MainConfigSCell_r11 = -1; /* MAC_MainConfigSCell_r11 */ static int hf_lte_rrc_neighCellsCRS_InfoSCell_r13 = -1; /* NeighCellsCRS_Info_r13 */ static int hf_lte_rrc_physicalConfigDedicatedSCell_v1370 = -1; /* PhysicalConfigDedicatedSCell_v1370 */ static int hf_lte_rrc_SRB_ToAddModList_item = -1; /* SRB_ToAddMod */ +static int hf_lte_rrc_SRB_ToAddModExtList_r15_item = -1; /* SRB_ToAddMod */ static int hf_lte_rrc_srb_Identity = -1; /* INTEGER_1_2 */ static int hf_lte_rrc_rlc_Config = -1; /* T_rlc_Config */ static int hf_lte_rrc_explicitValue_04 = -1; /* RLC_Config */ static int hf_lte_rrc_logicalChannelConfig = -1; /* T_logicalChannelConfig */ static int hf_lte_rrc_explicitValue_05 = -1; /* LogicalChannelConfig */ static int hf_lte_rrc_pdcp_verChange_r15 = -1; /* T_pdcp_verChange_r15 */ +static int hf_lte_rrc_rlc_Config_v1530 = -1; /* RLC_Config_v1530 */ +static int hf_lte_rrc_rlc_BearerConfigDupl_r15 = -1; /* RLC_BearerConfig_r15 */ +static int hf_lte_rrc_srb_Identity_v1530 = -1; /* INTEGER_4 */ +static int hf_lte_rrc_SRB_ToReleaseListDupl_r15_item = -1; /* INTEGER_1_2 */ static int hf_lte_rrc_DRB_ToAddModList_item = -1; /* DRB_ToAddMod */ +static int hf_lte_rrc_DRB_ToAddModList_r15_item = -1; /* DRB_ToAddMod */ static int hf_lte_rrc_DRB_ToAddModListSCG_r12_item = -1; /* DRB_ToAddModSCG_r12 */ +static int hf_lte_rrc_DRB_ToAddModListSCG_r15_item = -1; /* DRB_ToAddModSCG_r12 */ static int hf_lte_rrc_eps_BearerIdentity = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_pdcp_Config = -1; /* PDCP_Config */ static int hf_lte_rrc_rlc_Config_01 = -1; /* RLC_Config */ @@ -3232,6 +3862,7 @@ static int hf_lte_rrc_lwip_UL_Aggregation_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_lwip_DL_Aggregation_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_lwa_WLAN_AC_r14 = -1; /* T_lwa_WLAN_AC_r14 */ static int hf_lte_rrc_rlc_Config_v1510 = -1; /* RLC_Config_v1510 */ +static int hf_lte_rrc_logicalChannelIdentity_r15_01 = -1; /* INTEGER_32_38 */ static int hf_lte_rrc_drb_Type_r12_01 = -1; /* T_drb_Type_r12_01 */ static int hf_lte_rrc_split_r12 = -1; /* NULL */ static int hf_lte_rrc_scg_r12 = -1; /* T_scg_r12 */ @@ -3239,18 +3870,24 @@ static int hf_lte_rrc_pdcp_Config_r12 = -1; /* PDCP_Config */ static int hf_lte_rrc_rlc_ConfigSCG_r12 = -1; /* RLC_Config */ static int hf_lte_rrc_logicalChannelIdentitySCG_r12 = -1; /* INTEGER_3_10 */ static int hf_lte_rrc_logicalChannelConfigSCG_r12 = -1; /* LogicalChannelConfig */ +static int hf_lte_rrc_logicalChannelIdentitySCG_r15 = -1; /* INTEGER_32_38 */ static int hf_lte_rrc_DRB_ToReleaseList_item = -1; /* DRB_Identity */ -static int hf_lte_rrc_setup_86 = -1; /* MeasSubframePattern_r10 */ -static int hf_lte_rrc_setup_87 = -1; /* CRS_AssistanceInfoList_r11 */ +static int hf_lte_rrc_DRB_ToReleaseList_r15_item = -1; /* DRB_Identity */ +static int hf_lte_rrc_setup_112 = -1; /* MeasSubframePattern_r10 */ +static int hf_lte_rrc_setup_113 = -1; /* CRS_AssistanceInfoList_r11 */ static int hf_lte_rrc_CRS_AssistanceInfoList_r11_item = -1; /* CRS_AssistanceInfo_r11 */ static int hf_lte_rrc_physCellId_r11_02 = -1; /* PhysCellId */ static int hf_lte_rrc_antennaPortsCount_r11_01 = -1; /* T_antennaPortsCount_r11_01 */ static int hf_lte_rrc_mbsfn_SubframeConfigList_r11_02 = -1; /* MBSFN_SubframeConfigList */ -static int hf_lte_rrc_setup_88 = -1; /* CRS_AssistanceInfoList_r13 */ +static int hf_lte_rrc_setup_114 = -1; /* CRS_AssistanceInfoList_r13 */ static int hf_lte_rrc_CRS_AssistanceInfoList_r13_item = -1; /* CRS_AssistanceInfo_r13 */ static int hf_lte_rrc_antennaPortsCount_r13 = -1; /* T_antennaPortsCount_r13 */ static int hf_lte_rrc_mbsfn_SubframeConfigList_r13 = -1; /* MBSFN_SubframeConfigList */ -static int hf_lte_rrc_setup_89 = -1; /* T_setup_76 */ +static int hf_lte_rrc_setup_115 = -1; /* CRS_AssistanceInfoList_r15 */ +static int hf_lte_rrc_CRS_AssistanceInfoList_r15_item = -1; /* CRS_AssistanceInfo_r15 */ +static int hf_lte_rrc_physCellId_r15 = -1; /* PhysCellId */ +static int hf_lte_rrc_crs_IntfMitigEnabled_15_01 = -1; /* T_crs_IntfMitigEnabled_15 */ +static int hf_lte_rrc_setup_116 = -1; /* T_setup_101 */ static int hf_lte_rrc_neighCellsToReleaseList_r12 = -1; /* NeighCellsToReleaseList_r12 */ static int hf_lte_rrc_neighCellsToAddModList_r12 = -1; /* NeighCellsToAddModList_r12 */ static int hf_lte_rrc_servCellp_a_r12 = -1; /* P_a */ @@ -3263,7 +3900,11 @@ static int hf_lte_rrc_p_aList_r12 = -1; /* SEQUENCE_SIZE_1_maxP_a_PerN static int hf_lte_rrc_p_aList_r12_item = -1; /* P_a */ static int hf_lte_rrc_transmissionModeList_r12 = -1; /* T_transmissionModeList_r12 */ static int hf_lte_rrc_resAllocGranularity_r12 = -1; /* INTEGER_1_4 */ -static int hf_lte_rrc_setup_90 = -1; /* T_setup_77 */ +static int hf_lte_rrc_setup_117 = -1; /* T_setup_102 */ +static int hf_lte_rrc_rlc_Config_r15 = -1; /* RLC_Config_r15 */ +static int hf_lte_rrc_logicalChannelIdentityConfig_r15 = -1; /* T_logicalChannelIdentityConfig_r15 */ +static int hf_lte_rrc_logicalChannelConfig_r15 = -1; /* LogicalChannelConfig */ +static int hf_lte_rrc_setup_118 = -1; /* T_setup_103 */ static int hf_lte_rrc_rclwi_Config_r13 = -1; /* RCLWI_Config_r13 */ static int hf_lte_rrc_command = -1; /* T_command */ static int hf_lte_rrc_steerToWLAN_r13 = -1; /* T_steerToWLAN_r13 */ @@ -3282,26 +3923,47 @@ static int hf_lte_rrc_dl_extended_RLC_LI_Field_r12 = -1; /* T_dl_extended_RLC_L static int hf_lte_rrc_ul_extended_RLC_AM_SN_r13 = -1; /* T_ul_extended_RLC_AM_SN_r13 */ static int hf_lte_rrc_dl_extended_RLC_AM_SN_r13 = -1; /* T_dl_extended_RLC_AM_SN_r13 */ static int hf_lte_rrc_pollPDU_v1310 = -1; /* PollPDU_v1310 */ -static int hf_lte_rrc_setup_91 = -1; /* T_setup_78 */ +static int hf_lte_rrc_setup_119 = -1; /* T_setup_104 */ static int hf_lte_rrc_pollByte_r14 = -1; /* PollByte_r14 */ static int hf_lte_rrc_reestablishRLC_r15 = -1; /* T_reestablishRLC_r15 */ +static int hf_lte_rrc_setup_120 = -1; /* T_setup_105 */ +static int hf_lte_rrc_rlc_OutOfOrderDelivery_r15 = -1; /* T_rlc_OutOfOrderDelivery_r15 */ +static int hf_lte_rrc_mode_r15 = -1; /* T_mode_r15 */ +static int hf_lte_rrc_am_r15 = -1; /* T_am_r15 */ +static int hf_lte_rrc_ul_AM_RLC_r15 = -1; /* UL_AM_RLC_r15 */ +static int hf_lte_rrc_dl_AM_RLC_r15 = -1; /* DL_AM_RLC_r15 */ +static int hf_lte_rrc_um_Bi_Directional_r15 = -1; /* T_um_Bi_Directional_r15 */ +static int hf_lte_rrc_ul_UM_RLC_r15 = -1; /* UL_UM_RLC */ +static int hf_lte_rrc_dl_UM_RLC_r15 = -1; /* DL_UM_RLC_r15 */ +static int hf_lte_rrc_um_Uni_Directional_UL_r15 = -1; /* T_um_Uni_Directional_UL_r15 */ +static int hf_lte_rrc_um_Uni_Directional_DL_r15 = -1; /* T_um_Uni_Directional_DL_r15 */ +static int hf_lte_rrc_reestablishRLC_r15_01 = -1; /* T_reestablishRLC_r15_01 */ +static int hf_lte_rrc_rlc_OutOfOrderDelivery_r15_01 = -1; /* T_rlc_OutOfOrderDelivery_r15_01 */ static int hf_lte_rrc_t_PollRetransmit = -1; /* T_PollRetransmit */ static int hf_lte_rrc_pollPDU = -1; /* PollPDU */ static int hf_lte_rrc_pollByte = -1; /* PollByte */ static int hf_lte_rrc_maxRetxThreshold = -1; /* T_maxRetxThreshold */ +static int hf_lte_rrc_t_PollRetransmit_r15 = -1; /* T_PollRetransmit */ +static int hf_lte_rrc_pollPDU_r15 = -1; /* PollPDU_r15 */ +static int hf_lte_rrc_pollByte_r15 = -1; /* PollByte_r14 */ +static int hf_lte_rrc_maxRetxThreshold_r15 = -1; /* T_maxRetxThreshold_r15 */ +static int hf_lte_rrc_extended_RLC_LI_Field_r15 = -1; /* BOOLEAN */ static int hf_lte_rrc_t_Reordering = -1; /* T_Reordering */ static int hf_lte_rrc_t_StatusProhibit = -1; /* T_StatusProhibit */ +static int hf_lte_rrc_t_Reordering_r15 = -1; /* T_Reordering */ +static int hf_lte_rrc_t_StatusProhibit_r15 = -1; /* T_StatusProhibit */ static int hf_lte_rrc_sn_FieldLength = -1; /* SN_FieldLength */ -static int hf_lte_rrc_setup_92 = -1; /* T_setup_79 */ +static int hf_lte_rrc_sn_FieldLength_r15 = -1; /* SN_FieldLength_r15 */ +static int hf_lte_rrc_setup_121 = -1; /* T_setup_106 */ static int hf_lte_rrc_t301_r9 = -1; /* T_t301_r9 */ static int hf_lte_rrc_t310_r9 = -1; /* T_t310_r9 */ static int hf_lte_rrc_n310_r9 = -1; /* T_n310_r9 */ static int hf_lte_rrc_t311_r9 = -1; /* T_t311_r9 */ static int hf_lte_rrc_n311_r9 = -1; /* T_n311_r9 */ -static int hf_lte_rrc_setup_93 = -1; /* T_setup_80 */ +static int hf_lte_rrc_setup_122 = -1; /* T_setup_107 */ static int hf_lte_rrc_t301_v1310 = -1; /* T_t301_v1310 */ static int hf_lte_rrc_t310_v1330 = -1; /* T_t310_v1330 */ -static int hf_lte_rrc_setup_94 = -1; /* T_setup_81 */ +static int hf_lte_rrc_setup_123 = -1; /* T_setup_108 */ static int hf_lte_rrc_t313_r12 = -1; /* T_t313_r12 */ static int hf_lte_rrc_n313_r12 = -1; /* T_n313_r12 */ static int hf_lte_rrc_n314_r12 = -1; /* T_n314_r12 */ @@ -3338,22 +4000,57 @@ static int hf_lte_rrc_fallbackForFormat3 = -1; /* T_fallbackForFormat3 */ static int hf_lte_rrc_n1PUCCH_AN_P0_r10 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_n1PUCCH_AN_P1_r10 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_fdd = -1; /* T_fdd */ -static int hf_lte_rrc_setup_95 = -1; /* T_setup_82 */ +static int hf_lte_rrc_duration_r15 = -1; /* T_duration_r15 */ +static int hf_lte_rrc_freqLocation_r15 = -1; /* INTEGER_0_98 */ +static int hf_lte_rrc_periodicity_r15 = -1; /* T_periodicity_r15 */ +static int hf_lte_rrc_powerBoost_r15 = -1; /* T_powerBoost_r15 */ +static int hf_lte_rrc_timeOffset_r15 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_setup_124 = -1; /* T_setup_109 */ static int hf_lte_rrc_sr_PUCCH_ResourceIndex = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_sr_ConfigIndex = -1; /* T_sr_ConfigIndex */ static int hf_lte_rrc_dsr_TransMax = -1; /* T_dsr_TransMax */ static int hf_lte_rrc_sr_PUCCH_ResourceIndexP1_r10 = -1; /* INTEGER_0_2047 */ -static int hf_lte_rrc_setup_96 = -1; /* T_setup_83 */ +static int hf_lte_rrc_setup_125 = -1; /* T_setup_110 */ static int hf_lte_rrc_sr_PUCCH_ResourceIndex_r13 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_sr_PUCCH_ResourceIndexP1_r13 = -1; /* INTEGER_0_2047 */ static int hf_lte_rrc_sr_ConfigIndex_r13 = -1; /* T_sr_ConfigIndex_r13 */ static int hf_lte_rrc_dsr_TransMax_r13 = -1; /* T_dsr_TransMax_r13 */ -static int hf_lte_rrc_setup_97 = -1; /* T_setup_84 */ +static int hf_lte_rrc_setup_126 = -1; /* T_setup_111 */ +static int hf_lte_rrc_sr_SlotSPUCCH_IndexFH_r15 = -1; /* INTEGER_0_1319 */ +static int hf_lte_rrc_sr_SlotSPUCCH_IndexNoFH_r15 = -1; /* INTEGER_0_3959 */ +static int hf_lte_rrc_sr_SubslotSPUCCH_ResourceList_r15 = -1; /* SR_SubslotSPUCCH_ResourceList_r15 */ +static int hf_lte_rrc_sr_ConfigIndexSlot_r15 = -1; /* INTEGER_0_36 */ +static int hf_lte_rrc_sr_ConfigIndexSubslot_r15 = -1; /* INTEGER_0_122 */ +static int hf_lte_rrc_dssr_TransMax_r15 = -1; /* T_dssr_TransMax_r15 */ +static int hf_lte_rrc_SR_SubslotSPUCCH_ResourceList_r15_item = -1; /* INTEGER_0_1319 */ +static int hf_lte_rrc_setup_127 = -1; /* T_setup_112 */ +static int hf_lte_rrc_altCQI_TableSTTI_r15 = -1; /* T_altCQI_TableSTTI_r15 */ +static int hf_lte_rrc_altCQI_Table1024QAM_STTI_r15 = -1; /* T_altCQI_Table1024QAM_STTI_r15 */ +static int hf_lte_rrc_resourceAllocation_r15 = -1; /* T_resourceAllocation_r15 */ +static int hf_lte_rrc_tbsIndexAlt_STTI_r15 = -1; /* T_tbsIndexAlt_STTI_r15 */ +static int hf_lte_rrc_tbsIndexAlt2_STTI_r15 = -1; /* T_tbsIndexAlt2_STTI_r15 */ +static int hf_lte_rrc_tbsIndexAlt3_STTI_r15 = -1; /* T_tbsIndexAlt3_STTI_r15 */ +static int hf_lte_rrc_setup_128 = -1; /* T_setup_113 */ +static int hf_lte_rrc_betaOffsetSlot_ACK_Index_r15 = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_betaOffset2Slot_ACK_Index_r15 = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_betaOffsetSubslot_ACK_Index_r15 = -1; /* T_betaOffsetSubslot_ACK_Index_r15 */ +static int hf_lte_rrc_betaOffsetSubslot_ACK_Index_r15_item = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_betaOffset2Subslot_ACK_Index_r15 = -1; /* T_betaOffset2Subslot_ACK_Index_r15 */ +static int hf_lte_rrc_betaOffset2Subslot_ACK_Index_r15_item = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_betaOffsetSlot_RI_Index_r15 = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_betaOffsetSubslot_RI_Index_r15 = -1; /* T_betaOffsetSubslot_RI_Index_r15 */ +static int hf_lte_rrc_betaOffsetSubslot_RI_Index_r15_item = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_betaOffsetSlot_CQI_Index_r15 = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_betaOffsetSubslot_CQI_Index_r15 = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_enable256QAM_SlotOrSubslot_r15 = -1; /* Enable256QAM_r14 */ +static int hf_lte_rrc_resourceAllocationOffset_r15 = -1; /* INTEGER_1_2 */ +static int hf_lte_rrc_ul_DMRS_IFDMA_SlotOrSubslot_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_setup_129 = -1; /* T_setup_114 */ static int hf_lte_rrc_srs_BandwidthConfig = -1; /* T_srs_BandwidthConfig */ static int hf_lte_rrc_srs_SubframeConfig = -1; /* T_srs_SubframeConfig */ static int hf_lte_rrc_ackNackSRS_SimultaneousTransmission = -1; /* BOOLEAN */ static int hf_lte_rrc_srs_MaxUpPts = -1; /* T_srs_MaxUpPts */ -static int hf_lte_rrc_setup_98 = -1; /* T_setup_85 */ +static int hf_lte_rrc_setup_130 = -1; /* T_setup_115 */ static int hf_lte_rrc_srs_Bandwidth = -1; /* T_srs_Bandwidth */ static int hf_lte_rrc_srs_HoppingBandwidth = -1; /* T_srs_HoppingBandwidth */ static int hf_lte_rrc_freqDomainPosition = -1; /* INTEGER_0_23 */ @@ -3362,11 +4059,11 @@ static int hf_lte_rrc_srs_ConfigIndex = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_transmissionComb = -1; /* INTEGER_0_1 */ static int hf_lte_rrc_cyclicShift_01 = -1; /* T_cyclicShift */ static int hf_lte_rrc_srs_AntennaPort_r10 = -1; /* SRS_AntennaPort */ -static int hf_lte_rrc_setup_99 = -1; /* T_setup_86 */ +static int hf_lte_rrc_setup_131 = -1; /* T_setup_116 */ static int hf_lte_rrc_transmissionComb_v1310 = -1; /* INTEGER_2_3 */ static int hf_lte_rrc_cyclicShift_v1310 = -1; /* T_cyclicShift_v1310 */ static int hf_lte_rrc_transmissionCombNum_r13 = -1; /* T_transmissionCombNum_r13 */ -static int hf_lte_rrc_setup_100 = -1; /* T_setup_87 */ +static int hf_lte_rrc_setup_132 = -1; /* T_setup_117 */ static int hf_lte_rrc_srs_UpPtsAdd_r13 = -1; /* T_srs_UpPtsAdd_r13 */ static int hf_lte_rrc_srs_Bandwidth_r13 = -1; /* T_srs_Bandwidth_r13 */ static int hf_lte_rrc_srs_HoppingBandwidth_r13 = -1; /* T_srs_HoppingBandwidth_r13 */ @@ -3377,31 +4074,31 @@ static int hf_lte_rrc_transmissionComb_r13 = -1; /* INTEGER_0_3 */ static int hf_lte_rrc_cyclicShift_r13 = -1; /* T_cyclicShift_r13 */ static int hf_lte_rrc_srs_AntennaPort_r13 = -1; /* SRS_AntennaPort */ static int hf_lte_rrc_transmissionCombNum_r13_01 = -1; /* T_transmissionCombNum_r13_01 */ -static int hf_lte_rrc_setup_101 = -1; /* T_setup_88 */ +static int hf_lte_rrc_setup_133 = -1; /* T_setup_118 */ static int hf_lte_rrc_srs_ConfigIndexAp_r10 = -1; /* INTEGER_0_31 */ static int hf_lte_rrc_srs_ConfigApDCI_Format4_r10 = -1; /* SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_r10 */ static int hf_lte_rrc_srs_ConfigApDCI_Format4_r10_item = -1; /* SRS_ConfigAp_r10 */ static int hf_lte_rrc_srs_ActivateAp_r10 = -1; /* T_srs_ActivateAp_r10 */ -static int hf_lte_rrc_setup_102 = -1; /* T_setup_89 */ +static int hf_lte_rrc_setup_134 = -1; /* T_setup_119 */ static int hf_lte_rrc_srs_ConfigApDCI_Format0_r10 = -1; /* SRS_ConfigAp_r10 */ static int hf_lte_rrc_srs_ConfigApDCI_Format1a2b2c_r10 = -1; /* SRS_ConfigAp_r10 */ -static int hf_lte_rrc_setup_103 = -1; /* T_setup_90 */ +static int hf_lte_rrc_setup_135 = -1; /* T_setup_120 */ static int hf_lte_rrc_srs_ConfigApDCI_Format4_v1310 = -1; /* SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_v1310 */ static int hf_lte_rrc_srs_ConfigApDCI_Format4_v1310_item = -1; /* SRS_ConfigAp_v1310 */ static int hf_lte_rrc_srs_ActivateAp_v1310 = -1; /* T_srs_ActivateAp_v1310 */ -static int hf_lte_rrc_setup_104 = -1; /* T_setup_91 */ +static int hf_lte_rrc_setup_136 = -1; /* T_setup_121 */ static int hf_lte_rrc_srs_ConfigApDCI_Format0_v1310 = -1; /* SRS_ConfigAp_v1310 */ static int hf_lte_rrc_srs_ConfigApDCI_Format1a2b2c_v1310 = -1; /* SRS_ConfigAp_v1310 */ -static int hf_lte_rrc_setup_105 = -1; /* T_setup_92 */ +static int hf_lte_rrc_setup_137 = -1; /* T_setup_122 */ static int hf_lte_rrc_srs_UpPtsAdd_r13_01 = -1; /* T_srs_UpPtsAdd_r13_01 */ static int hf_lte_rrc_srs_ConfigIndexAp_r13 = -1; /* INTEGER_0_31 */ static int hf_lte_rrc_srs_ConfigApDCI_Format4_r13 = -1; /* SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_r13 */ static int hf_lte_rrc_srs_ConfigApDCI_Format4_r13_item = -1; /* SRS_ConfigAp_r13 */ static int hf_lte_rrc_srs_ActivateAp_r13 = -1; /* T_srs_ActivateAp_r13 */ -static int hf_lte_rrc_setup_106 = -1; /* T_setup_93 */ +static int hf_lte_rrc_setup_138 = -1; /* T_setup_123 */ static int hf_lte_rrc_srs_ConfigApDCI_Format0_r13 = -1; /* SRS_ConfigAp_r13 */ static int hf_lte_rrc_srs_ConfigApDCI_Format1a2b2c_r13 = -1; /* SRS_ConfigAp_r13 */ -static int hf_lte_rrc_setup_107 = -1; /* T_setup_94 */ +static int hf_lte_rrc_setup_139 = -1; /* T_setup_124 */ static int hf_lte_rrc_srs_SubframeIndication_r14 = -1; /* INTEGER_1_4 */ static int hf_lte_rrc_srs_AntennaPortAp_r10 = -1; /* SRS_AntennaPort */ static int hf_lte_rrc_srs_BandwidthAp_r10 = -1; /* T_srs_BandwidthAp_r10 */ @@ -3417,6 +4114,29 @@ static int hf_lte_rrc_freqDomainPositionAp_r13 = -1; /* INTEGER_0_23 */ static int hf_lte_rrc_transmissionCombAp_r13 = -1; /* INTEGER_0_3 */ static int hf_lte_rrc_cyclicShiftAp_r13 = -1; /* T_cyclicShiftAp_r13 */ static int hf_lte_rrc_transmissionCombNum_r13_03 = -1; /* T_transmissionCombNum_r13_03 */ +static int hf_lte_rrc_setup_140 = -1; /* T_setup_125 */ +static int hf_lte_rrc_spdcch_L1_ReuseIndication_r15 = -1; /* T_spdcch_L1_ReuseIndication_r15 */ +static int hf_lte_rrc_spdcch_SetConfig_r15 = -1; /* SPDCCH_Set_r15 */ +static int hf_lte_rrc_SPDCCH_Set_r15_item = -1; /* SPDCCH_Elements_r15 */ +static int hf_lte_rrc_setup_141 = -1; /* T_setup_126 */ +static int hf_lte_rrc_spdcch_SetConfigId_r15 = -1; /* INTEGER_0_3 */ +static int hf_lte_rrc_spdcch_SetReferenceSig_r15 = -1; /* T_spdcch_SetReferenceSig_r15 */ +static int hf_lte_rrc_transmissionType_r15 = -1; /* T_transmissionType_r15 */ +static int hf_lte_rrc_spdcch_NoOfSymbols_r15 = -1; /* INTEGER_1_2 */ +static int hf_lte_rrc_dmrs_ScramblingSequenceInt_r15 = -1; /* INTEGER_0_503 */ +static int hf_lte_rrc_dci7_CandidatesPerAL_PDCCH_r15 = -1; /* SEQUENCE_SIZE_1_4_OF_DCI7_Candidates_r15 */ +static int hf_lte_rrc_dci7_CandidatesPerAL_PDCCH_r15_item = -1; /* DCI7_Candidates_r15 */ +static int hf_lte_rrc_dci7_CandidateSetsPerAL_SPDCCH_r15 = -1; /* SEQUENCE_SIZE_1_2_OF_DCI7_CandidatesPerAL_SPDCCH_r15 */ +static int hf_lte_rrc_dci7_CandidateSetsPerAL_SPDCCH_r15_item = -1; /* DCI7_CandidatesPerAL_SPDCCH_r15 */ +static int hf_lte_rrc_resourceBlockAssignment_r15 = -1; /* T_resourceBlockAssignment_r15 */ +static int hf_lte_rrc_numberRB_InFreq_domain_r15 = -1; /* INTEGER_2_100 */ +static int hf_lte_rrc_resourceBlockAssignment_r15_01 = -1; /* BIT_STRING_SIZE_98 */ +static int hf_lte_rrc_subslotApplicability_r15 = -1; /* BIT_STRING_SIZE_5 */ +static int hf_lte_rrc_al_StartingPointSPDCCH_r15 = -1; /* T_al_StartingPointSPDCCH_r15 */ +static int hf_lte_rrc_al_StartingPointSPDCCH_r15_item = -1; /* INTEGER_0_49 */ +static int hf_lte_rrc_subframeType_r15 = -1; /* T_subframeType_r15 */ +static int hf_lte_rrc_rateMatchingMode_r15 = -1; /* T_rateMatchingMode_r15 */ +static int hf_lte_rrc_DCI7_CandidatesPerAL_SPDCCH_r15_item = -1; /* DCI7_Candidates_r15 */ static int hf_lte_rrc_semiPersistSchedC_RNTI = -1; /* C_RNTI */ static int hf_lte_rrc_sps_ConfigDL = -1; /* SPS_ConfigDL */ static int hf_lte_rrc_sps_ConfigUL = -1; /* SPS_ConfigUL */ @@ -3430,14 +4150,23 @@ static int hf_lte_rrc_SPS_ConfigUL_ToAddModList_r14_item = -1; /* SPS_ConfigUL static int hf_lte_rrc_SPS_ConfigUL_ToReleaseList_r14_item = -1; /* SPS_ConfigIndex_r14 */ static int hf_lte_rrc_SPS_ConfigSL_ToAddModList_r14_item = -1; /* SPS_ConfigSL_r14 */ static int hf_lte_rrc_SPS_ConfigSL_ToReleaseList_r14_item = -1; /* SPS_ConfigIndex_r14 */ -static int hf_lte_rrc_setup_108 = -1; /* T_setup_95 */ +static int hf_lte_rrc_semiPersistSchedC_RNTI_r15 = -1; /* C_RNTI */ +static int hf_lte_rrc_sps_ConfigUL_STTI_ToAddModList_r15 = -1; /* SPS_ConfigUL_STTI_ToAddModList_r15 */ +static int hf_lte_rrc_sps_ConfigUL_STTI_ToReleaseList_r15 = -1; /* SPS_ConfigUL_STTI_ToReleaseList_r15 */ +static int hf_lte_rrc_sps_ConfigUL_ToAddModList_r15 = -1; /* SPS_ConfigUL_ToAddModList_r15 */ +static int hf_lte_rrc_sps_ConfigUL_ToReleaseList_r15 = -1; /* SPS_ConfigUL_ToReleaseList_r15 */ +static int hf_lte_rrc_SPS_ConfigUL_STTI_ToAddModList_r15_item = -1; /* SPS_ConfigUL_STTI_r15 */ +static int hf_lte_rrc_SPS_ConfigUL_STTI_ToReleaseList_r15_item = -1; /* SPS_ConfigIndex_r15 */ +static int hf_lte_rrc_SPS_ConfigUL_ToAddModList_r15_item = -1; /* SPS_ConfigUL */ +static int hf_lte_rrc_SPS_ConfigUL_ToReleaseList_r15_item = -1; /* SPS_ConfigIndex_r15 */ +static int hf_lte_rrc_setup_142 = -1; /* T_setup_127 */ static int hf_lte_rrc_semiPersistSchedIntervalDL = -1; /* T_semiPersistSchedIntervalDL */ static int hf_lte_rrc_numberOfConfSPS_Processes = -1; /* INTEGER_1_8 */ static int hf_lte_rrc_n1PUCCH_AN_PersistentList = -1; /* N1PUCCH_AN_PersistentList */ static int hf_lte_rrc_twoAntennaPortActivated_r10 = -1; /* T_twoAntennaPortActivated_r10 */ -static int hf_lte_rrc_setup_109 = -1; /* T_setup_96 */ +static int hf_lte_rrc_setup_143 = -1; /* T_setup_128 */ static int hf_lte_rrc_n1PUCCH_AN_PersistentListP1_r10 = -1; /* N1PUCCH_AN_PersistentList */ -static int hf_lte_rrc_setup_110 = -1; /* T_setup_97 */ +static int hf_lte_rrc_setup_144 = -1; /* T_setup_129 */ static int hf_lte_rrc_semiPersistSchedIntervalUL = -1; /* T_semiPersistSchedIntervalUL */ static int hf_lte_rrc_implicitReleaseAfter = -1; /* T_implicitReleaseAfter */ static int hf_lte_rrc_p0_Persistent = -1; /* T_p0_Persistent */ @@ -3445,16 +4174,64 @@ static int hf_lte_rrc_p0_NominalPUSCH_Persistent = -1; /* INTEGER_M126_24 */ static int hf_lte_rrc_p0_UE_PUSCH_Persistent = -1; /* INTEGER_M8_7 */ static int hf_lte_rrc_twoIntervalsConfig = -1; /* T_twoIntervalsConfig */ static int hf_lte_rrc_p0_PersistentSubframeSet2_r12 = -1; /* T_p0_PersistentSubframeSet2_r12 */ -static int hf_lte_rrc_setup_111 = -1; /* T_setup_98 */ +static int hf_lte_rrc_setup_145 = -1; /* T_setup_130 */ static int hf_lte_rrc_p0_NominalPUSCH_PersistentSubframeSet2_r12 = -1; /* INTEGER_M126_24 */ static int hf_lte_rrc_p0_UE_PUSCH_PersistentSubframeSet2_r12 = -1; /* INTEGER_M8_7 */ static int hf_lte_rrc_numberOfConfUlSPS_Processes_r13 = -1; /* INTEGER_1_8 */ static int hf_lte_rrc_fixedRV_NonAdaptive_r14 = -1; /* T_fixedRV_NonAdaptive_r14 */ static int hf_lte_rrc_sps_ConfigIndex_r14 = -1; /* SPS_ConfigIndex_r14 */ static int hf_lte_rrc_semiPersistSchedIntervalUL_v1430 = -1; /* T_semiPersistSchedIntervalUL_v1430 */ +static int hf_lte_rrc_cyclicShiftSPS_r15 = -1; /* T_cyclicShiftSPS_r15 */ +static int hf_lte_rrc_harq_ProcID_Offset_r15 = -1; /* INTEGER_0_7 */ +static int hf_lte_rrc_rv_SPS_UL_Repetitions_r15 = -1; /* T_rv_SPS_UL_Repetitions_r15 */ +static int hf_lte_rrc_tpc_PDCCH_ConfigPUSCH_SPS_r15 = -1; /* TPC_PDCCH_Config */ +static int hf_lte_rrc_totalNumberPUSCH_SPS_UL_Repetitions_r15 = -1; /* T_totalNumberPUSCH_SPS_UL_Repetitions_r15 */ +static int hf_lte_rrc_sps_ConfigIndex_r15 = -1; /* SPS_ConfigIndex_r15 */ static int hf_lte_rrc_semiPersistSchedIntervalSL_r14 = -1; /* T_semiPersistSchedIntervalSL_r14 */ static int hf_lte_rrc_N1PUCCH_AN_PersistentList_item = -1; /* INTEGER_0_2047 */ -static int hf_lte_rrc_setup_112 = -1; /* T_setup_99 */ +static int hf_lte_rrc_setup_146 = -1; /* T_setup_131 */ +static int hf_lte_rrc_semiPersistSchedIntervalUL_STTI_r15 = -1; /* T_semiPersistSchedIntervalUL_STTI_r15 */ +static int hf_lte_rrc_implicitReleaseAfter_01 = -1; /* T_implicitReleaseAfter_01 */ +static int hf_lte_rrc_p0_Persistent_r15 = -1; /* T_p0_Persistent_r15 */ +static int hf_lte_rrc_p0_NominalSPUSCH_Persistent_r15 = -1; /* INTEGER_M126_24 */ +static int hf_lte_rrc_p0_UE_SPUSCH_Persistent_r15 = -1; /* INTEGER_M8_7 */ +static int hf_lte_rrc_twoIntervalsConfig_r15 = -1; /* T_twoIntervalsConfig_r15 */ +static int hf_lte_rrc_p0_PersistentSubframeSet2_r15 = -1; /* T_p0_PersistentSubframeSet2_r15 */ +static int hf_lte_rrc_setup_147 = -1; /* T_setup_132 */ +static int hf_lte_rrc_p0_NominalSPUSCH_PersistentSubframeSet2_r15 = -1; /* INTEGER_M126_24 */ +static int hf_lte_rrc_p0_UE_SPUSCH_PersistentSubframeSet2_r15 = -1; /* INTEGER_M8_7 */ +static int hf_lte_rrc_numberOfConfUL_SPS_Processes_STTI_r15 = -1; /* INTEGER_1_12 */ +static int hf_lte_rrc_sTTI_StartTimeUL_r15 = -1; /* INTEGER_0_5 */ +static int hf_lte_rrc_cyclicShiftSPS_sTTI_r15 = -1; /* T_cyclicShiftSPS_sTTI_r15 */ +static int hf_lte_rrc_ifdma_Config_SPS_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_harq_ProcID_offset_r15 = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_rv_SPS_STTI_UL_Repetitions_r15 = -1; /* T_rv_SPS_STTI_UL_Repetitions_r15 */ +static int hf_lte_rrc_tbs_scalingFactorSubslotSPS_UL_Repetitions_r15 = -1; /* T_tbs_scalingFactorSubslotSPS_UL_Repetitions_r15 */ +static int hf_lte_rrc_totalNumberPUSCH_SPS_STTI_UL_Repetitions_r15 = -1; /* T_totalNumberPUSCH_SPS_STTI_UL_Repetitions_r15 */ +static int hf_lte_rrc_setup_148 = -1; /* T_setup_133 */ +static int hf_lte_rrc_spucch_Set_r15 = -1; /* SPUCCH_Set_r15 */ +static int hf_lte_rrc_twoAntennaPortActivatedSPUCCH_Format1a1b_r15 = -1; /* T_twoAntennaPortActivatedSPUCCH_Format1a1b_r15 */ +static int hf_lte_rrc_twoAntennaPortActivatedSPUCCH_Format3_r15 = -1; /* T_twoAntennaPortActivatedSPUCCH_Format3_r15 */ +static int hf_lte_rrc_n3SPUCCH_AN_List_r15 = -1; /* T_n3SPUCCH_AN_List_r15 */ +static int hf_lte_rrc_n3SPUCCH_AN_List_r15_item = -1; /* INTEGER_0_549 */ +static int hf_lte_rrc_SPUCCH_Set_r15_item = -1; /* SPUCCH_Elements_r15 */ +static int hf_lte_rrc_setup_149 = -1; /* T_setup_134 */ +static int hf_lte_rrc_n1SubslotSPUCCH_AN_List_r15 = -1; /* T_n1SubslotSPUCCH_AN_List_r15 */ +static int hf_lte_rrc_n1SubslotSPUCCH_AN_List_r15_item = -1; /* INTEGER_0_1319 */ +static int hf_lte_rrc_n1SlotSPUCCH_FH_AN_List_r15 = -1; /* INTEGER_0_1319 */ +static int hf_lte_rrc_n1SlotSPUCCH_NoFH_AN_List_r15 = -1; /* INTEGER_0_3959 */ +static int hf_lte_rrc_n3SPUCCH_AN_List_r15_01 = -1; /* INTEGER_0_549 */ +static int hf_lte_rrc_n4SPUCCHSlot_Resource_r15 = -1; /* SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15 */ +static int hf_lte_rrc_n4SPUCCHSlot_Resource_r15_item = -1; /* N4SPUCCH_Resource_r15 */ +static int hf_lte_rrc_n4SPUCCHSubslot_Resource_r15 = -1; /* SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15 */ +static int hf_lte_rrc_n4SPUCCHSubslot_Resource_r15_item = -1; /* N4SPUCCH_Resource_r15 */ +static int hf_lte_rrc_n4maxCoderateSlotPUCCH_r15 = -1; /* INTEGER_0_7 */ +static int hf_lte_rrc_n4maxCoderateSubslotPUCCH_r15 = -1; /* INTEGER_0_7 */ +static int hf_lte_rrc_n4maxCoderateMultiResourceSlotPUCCH_r15 = -1; /* INTEGER_0_7 */ +static int hf_lte_rrc_n4maxCoderateMultiResourceSubslotPUCCH_r15 = -1; /* INTEGER_0_7 */ +static int hf_lte_rrc_n4startingPRB_r15 = -1; /* INTEGER_0_109 */ +static int hf_lte_rrc_n4numberOfPRB_r15 = -1; /* INTEGER_0_7 */ +static int hf_lte_rrc_setup_150 = -1; /* T_setup_135 */ static int hf_lte_rrc_srs_TPC_RNTI_r14 = -1; /* BIT_STRING_SIZE_16 */ static int hf_lte_rrc_startingBitOfFormat3B_r14 = -1; /* INTEGER_0_31 */ static int hf_lte_rrc_fieldTypeFormat3B_r14 = -1; /* INTEGER_1_4 */ @@ -3468,10 +4245,18 @@ static int hf_lte_rrc_specialSubframePatterns_v1130 = -1; /* T_specialSubframeP static int hf_lte_rrc_specialSubframePatterns_v1430 = -1; /* T_specialSubframePatterns_v1430 */ static int hf_lte_rrc_specialSubframePatterns_v1450 = -1; /* T_specialSubframePatterns_v1450 */ static int hf_lte_rrc_subframeAssignmentSL_r12 = -1; /* T_subframeAssignmentSL_r12 */ -static int hf_lte_rrc_setup_113 = -1; /* T_setup_100 */ +static int hf_lte_rrc_time_r15 = -1; /* ReferenceTime_r15 */ +static int hf_lte_rrc_uncertainty_r15 = -1; /* INTEGER_0_12 */ +static int hf_lte_rrc_timeInfoType_r15 = -1; /* T_timeInfoType_r15 */ +static int hf_lte_rrc_referenceSFN_r15 = -1; /* INTEGER_0_1023 */ +static int hf_lte_rrc_refDays_r15 = -1; /* INTEGER_0_72999 */ +static int hf_lte_rrc_refSeconds_r15 = -1; /* INTEGER_0_86399 */ +static int hf_lte_rrc_refMilliSeconds_r15 = -1; /* INTEGER_0_999 */ +static int hf_lte_rrc_refQuarterMicroSeconds_r15 = -1; /* INTEGER_0_3999 */ +static int hf_lte_rrc_setup_151 = -1; /* T_setup_136 */ static int hf_lte_rrc_tpc_RNTI = -1; /* BIT_STRING_SIZE_16 */ static int hf_lte_rrc_tpc_Index = -1; /* TPC_Index */ -static int hf_lte_rrc_setup_114 = -1; /* T_setup_101 */ +static int hf_lte_rrc_setup_152 = -1; /* T_setup_137 */ static int hf_lte_rrc_tpc_Index_PUCCH_SCell_r13 = -1; /* TPC_Index */ static int hf_lte_rrc_indexOfFormat3 = -1; /* INTEGER_1_15 */ static int hf_lte_rrc_indexOfFormat3A = -1; /* INTEGER_1_31 */ @@ -3490,6 +4275,7 @@ static int hf_lte_rrc_deltaF_PUCCH_Format3_r10 = -1; /* T_deltaF_PUCCH_Format3_ static int hf_lte_rrc_deltaF_PUCCH_Format1bCS_r10 = -1; /* T_deltaF_PUCCH_Format1bCS_r10 */ static int hf_lte_rrc_deltaF_PUCCH_Format4_r13 = -1; /* T_deltaF_PUCCH_Format4_r13 */ static int hf_lte_rrc_deltaF_PUCCH_Format5_13 = -1; /* T_deltaF_PUCCH_Format5_13 */ +static int hf_lte_rrc_deltaFList_SPUCCH_r15 = -1; /* DeltaFList_SPUCCH_r15 */ static int hf_lte_rrc_deltaF_PUCCH_Format3_r12 = -1; /* T_deltaF_PUCCH_Format3_r12 */ static int hf_lte_rrc_deltaF_PUCCH_Format1bCS_r12 = -1; /* T_deltaF_PUCCH_Format1bCS_r12 */ static int hf_lte_rrc_p0_NominalPUCCH_r12 = -1; /* INTEGER_M127_M96 */ @@ -3516,11 +4302,16 @@ static int hf_lte_rrc_pSRS_Offset_v1130 = -1; /* INTEGER_16_31 */ static int hf_lte_rrc_pSRS_OffsetAp_v1130 = -1; /* INTEGER_16_31 */ static int hf_lte_rrc_deltaTxD_OffsetListPUCCH_v1130 = -1; /* DeltaTxD_OffsetListPUCCH_v1130 */ static int hf_lte_rrc_set2PowerControlParameter = -1; /* T_set2PowerControlParameter */ -static int hf_lte_rrc_setup_115 = -1; /* T_setup_102 */ +static int hf_lte_rrc_setup_153 = -1; /* T_setup_138 */ static int hf_lte_rrc_tpc_SubframeSet_r12 = -1; /* BIT_STRING_SIZE_10 */ static int hf_lte_rrc_p0_NominalPUSCH_SubframeSet2_r12 = -1; /* INTEGER_M126_24 */ static int hf_lte_rrc_alpha_SubframeSet2_r12 = -1; /* Alpha_r12 */ static int hf_lte_rrc_p0_UE_PUSCH_SubframeSet2_r12 = -1; /* INTEGER_M8_7 */ +static int hf_lte_rrc_alpha_UE_r15 = -1; /* Alpha_r12 */ +static int hf_lte_rrc_p0_UE_PUSCH_r15 = -1; /* INTEGER_M16_15 */ +static int hf_lte_rrc_accumulationEnabledSTTI_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_deltaTxD_OffsetListSPUCCH_r15 = -1; /* DeltaTxD_OffsetListSPUCCH_r15 */ +static int hf_lte_rrc_uplinkPower_CSIPayload = -1; /* BOOLEAN */ static int hf_lte_rrc_p0_UE_PeriodicSRS_r14 = -1; /* INTEGER_M8_7 */ static int hf_lte_rrc_p0_UE_AperiodicSRS_r14 = -1; /* INTEGER_M8_7 */ static int hf_lte_rrc_accumulationEnabled_r14 = -1; /* BOOLEAN */ @@ -3535,17 +4326,38 @@ static int hf_lte_rrc_deltaF_PUCCH_Format1b = -1; /* T_deltaF_PUCCH_Format1b */ static int hf_lte_rrc_deltaF_PUCCH_Format2 = -1; /* T_deltaF_PUCCH_Format2 */ static int hf_lte_rrc_deltaF_PUCCH_Format2a = -1; /* T_deltaF_PUCCH_Format2a */ static int hf_lte_rrc_deltaF_PUCCH_Format2b = -1; /* T_deltaF_PUCCH_Format2b */ +static int hf_lte_rrc_setup_154 = -1; /* T_setup_139 */ +static int hf_lte_rrc_deltaF_slotSPUCCH_Format1_r15 = -1; /* T_deltaF_slotSPUCCH_Format1_r15 */ +static int hf_lte_rrc_deltaF_slotSPUCCH_Format1a_r15 = -1; /* T_deltaF_slotSPUCCH_Format1a_r15 */ +static int hf_lte_rrc_deltaF_slotSPUCCH_Format1b_r15 = -1; /* T_deltaF_slotSPUCCH_Format1b_r15 */ +static int hf_lte_rrc_deltaF_slotSPUCCH_Format3_r15 = -1; /* T_deltaF_slotSPUCCH_Format3_r15 */ +static int hf_lte_rrc_deltaF_slotSPUCCH_RM_Format4_r15 = -1; /* T_deltaF_slotSPUCCH_RM_Format4_r15 */ +static int hf_lte_rrc_deltaF_slotSPUCCH_TBCC_Format4_r15 = -1; /* T_deltaF_slotSPUCCH_TBCC_Format4_r15 */ +static int hf_lte_rrc_deltaF_subslotSPUCCH_Format1and1a_r15 = -1; /* T_deltaF_subslotSPUCCH_Format1and1a_r15 */ +static int hf_lte_rrc_deltaF_subslotSPUCCH_Format1b_r15 = -1; /* T_deltaF_subslotSPUCCH_Format1b_r15 */ +static int hf_lte_rrc_deltaF_subslotSPUCCH_RM_Format4_r15 = -1; /* T_deltaF_subslotSPUCCH_RM_Format4_r15 */ +static int hf_lte_rrc_deltaF_subslotSPUCCH_TBCC_Format4_r15 = -1; /* T_deltaF_subslotSPUCCH_TBCC_Format4_r15 */ static int hf_lte_rrc_deltaTxD_OffsetPUCCH_Format1_r10 = -1; /* T_deltaTxD_OffsetPUCCH_Format1_r10 */ static int hf_lte_rrc_deltaTxD_OffsetPUCCH_Format1a1b_r10 = -1; /* T_deltaTxD_OffsetPUCCH_Format1a1b_r10 */ static int hf_lte_rrc_deltaTxD_OffsetPUCCH_Format22a2b_r10 = -1; /* T_deltaTxD_OffsetPUCCH_Format22a2b_r10 */ static int hf_lte_rrc_deltaTxD_OffsetPUCCH_Format3_r10 = -1; /* T_deltaTxD_OffsetPUCCH_Format3_r10 */ static int hf_lte_rrc_deltaTxD_OffsetPUCCH_Format1bCS_r11 = -1; /* T_deltaTxD_OffsetPUCCH_Format1bCS_r11 */ +static int hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format1_r15 = -1; /* T_deltaTxD_OffsetSPUCCH_Format1_r15 */ +static int hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format1a_r15 = -1; /* T_deltaTxD_OffsetSPUCCH_Format1a_r15 */ +static int hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format1b_r15 = -1; /* T_deltaTxD_OffsetSPUCCH_Format1b_r15 */ +static int hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format3_r15 = -1; /* T_deltaTxD_OffsetSPUCCH_Format3_r15 */ static int hf_lte_rrc_WLAN_Id_List_r13_item = -1; /* WLAN_Identifiers_r12 */ static int hf_lte_rrc_wlan_ToReleaseList_r13 = -1; /* WLAN_Id_List_r13 */ static int hf_lte_rrc_wlan_ToAddList_r13 = -1; /* WLAN_Id_List_r13 */ static int hf_lte_rrc_associationTimer_r13 = -1; /* T_associationTimer_r13 */ static int hf_lte_rrc_successReportRequested_r13 = -1; /* T_successReportRequested_r13 */ static int hf_lte_rrc_wlan_SuspendConfig_r14 = -1; /* WLAN_SuspendConfig_r14 */ +static int hf_lte_rrc_maxDurationFactor_r15 = -1; /* T_maxDurationFactor_r15 */ +static int hf_lte_rrc_numPOs_r15 = -1; /* T_numPOs_r15 */ +static int hf_lte_rrc_freqLocation_r15_01 = -1; /* T_freqLocation_r15 */ +static int hf_lte_rrc_timeOffsetDRX_r15 = -1; /* T_timeOffsetDRX_r15 */ +static int hf_lte_rrc_timeOffset_eDRX_Short_r15 = -1; /* T_timeOffset_eDRX_Short_r15 */ +static int hf_lte_rrc_timeOffset_eDRX_Long_r15 = -1; /* T_timeOffset_eDRX_Long_r15 */ static int hf_lte_rrc_cipheringAlgorithm = -1; /* CipheringAlgorithm_r12 */ static int hf_lte_rrc_integrityProtAlgorithm = -1; /* T_integrityProtAlgorithm */ static int hf_lte_rrc_arfcn_01 = -1; /* ARFCN_ValueGERAN */ @@ -3561,6 +4373,7 @@ static int hf_lte_rrc_CarrierFreqListMBMS_r11_item = -1; /* ARFCN_ValueEUTRA_r9 static int hf_lte_rrc_CellIndexList_item = -1; /* CellIndex */ static int hf_lte_rrc_q_RxLevMinCE_r13 = -1; /* Q_RxLevMin */ static int hf_lte_rrc_q_QualMinRSRQ_CE_r13 = -1; /* Q_QualMin_r9 */ +static int hf_lte_rrc_powerClass14dBm_Offset_r15 = -1; /* T_powerClass14dBm_Offset_r15 */ static int hf_lte_rrc_q_RxLevMinCE1_r13 = -1; /* Q_RxLevMin */ static int hf_lte_rrc_q_QualMinRSRQ_CE1_r13 = -1; /* Q_QualMin_r9 */ static int hf_lte_rrc_delta_RxLevMinCE1_v1360 = -1; /* INTEGER_M8_M1 */ @@ -3634,9 +4447,13 @@ static int hf_lte_rrc_MultiBandInfoList_v9e0_item = -1; /* MultiBandInfo_v9e0 * static int hf_lte_rrc_MultiBandInfoList_v10j0_item = -1; /* NS_PmaxList_r10 */ static int hf_lte_rrc_MultiBandInfoList_v10l0_item = -1; /* NS_PmaxList_v10l0 */ static int hf_lte_rrc_MultiBandInfoList_r11_item = -1; /* FreqBandIndicator_r11 */ +static int hf_lte_rrc_MultiFrequencyBandListNR_r15_item = -1; /* FreqBandIndicatorNR_r15 */ static int hf_lte_rrc_NS_PmaxList_r10_item = -1; /* NS_PmaxValue_r10 */ static int hf_lte_rrc_NS_PmaxList_v10l0_item = -1; /* NS_PmaxValue_v10l0 */ static int hf_lte_rrc_additionalPmax_r10 = -1; /* P_Max */ +static int hf_lte_rrc_NS_PmaxListNR_r15_item = -1; /* NS_PmaxValueNR_r15 */ +static int hf_lte_rrc_additionalPmaxNR_r15 = -1; /* P_MaxNR_r15 */ +static int hf_lte_rrc_additionalSpectrumEmissionNR_r15 = -1; /* AdditionalSpectrumEmissionNR_r15 */ static int hf_lte_rrc_start_01 = -1; /* PhysCellId */ static int hf_lte_rrc_range = -1; /* T_range */ static int hf_lte_rrc_PhysCellIdRangeUTRA_FDDList_r9_item = -1; /* PhysCellIdRangeUTRA_FDD_r9 */ @@ -3663,6 +4480,8 @@ static int hf_lte_rrc_asynchronousSystemTime = -1; /* T_asynchronousSystemTime static int hf_lte_rrc_nr_RSRP_r15 = -1; /* RSRP_RangeNR_r15 */ static int hf_lte_rrc_nr_RSRQ_r15 = -1; /* RSRQ_RangeNR_r15 */ static int hf_lte_rrc_nr_SINR_r15 = -1; /* RS_SINR_RangeNR_r15 */ +static int hf_lte_rrc_setup_155 = -1; /* BT_NameList_r15 */ +static int hf_lte_rrc_BT_NameList_r15_item = -1; /* BT_Name_r15 */ static int hf_lte_rrc_locationCoordinates_r10 = -1; /* T_locationCoordinates_r10 */ static int hf_lte_rrc_ellipsoid_Point_r10 = -1; /* T_ellipsoid_Point_r10 */ static int hf_lte_rrc_ellipsoidPointWithAltitude_r10 = -1; /* T_ellipsoidPointWithAltitude_r10 */ @@ -3673,6 +4492,16 @@ static int hf_lte_rrc_ellipsoidArc_r11 = -1; /* T_ellipsoidArc_r11 */ static int hf_lte_rrc_polygon_r11 = -1; /* T_polygon_r11 */ static int hf_lte_rrc_horizontalVelocity_r10 = -1; /* T_horizontalVelocity_r10 */ static int hf_lte_rrc_gnss_TOD_msec_r10 = -1; /* T_gnss_TOD_msec_r10 */ +static int hf_lte_rrc_verticalVelocityInfo_r15 = -1; /* T_verticalVelocityInfo_r15 */ +static int hf_lte_rrc_verticalVelocity_r15 = -1; /* T_verticalVelocity_r15 */ +static int hf_lte_rrc_verticalVelocityAndUncertainty_r15 = -1; /* T_verticalVelocityAndUncertainty_r15 */ +static int hf_lte_rrc_LogMeasResultListBT_r15_item = -1; /* LogMeasResultBT_r15 */ +static int hf_lte_rrc_bt_Addr_r15 = -1; /* T_bt_Addr_r15 */ +static int hf_lte_rrc_rssi_BT_r15 = -1; /* INTEGER_M128_127 */ +static int hf_lte_rrc_LogMeasResultListWLAN_r15_item = -1; /* LogMeasResultWLAN_r15 */ +static int hf_lte_rrc_wlan_Identifiers_r15 = -1; /* WLAN_Identifiers_r12 */ +static int hf_lte_rrc_rssiWLAN_r15 = -1; /* WLAN_RSSI_Range_r13 */ +static int hf_lte_rrc_rtt_WLAN_r15 = -1; /* WLAN_RTT_r15 */ static int hf_lte_rrc_measObjectToRemoveList = -1; /* MeasObjectToRemoveList */ static int hf_lte_rrc_measObjectToAddModList = -1; /* MeasObjectToAddModList */ static int hf_lte_rrc_reportConfigToRemoveList = -1; /* ReportConfigToRemoveList */ @@ -3683,12 +4512,12 @@ static int hf_lte_rrc_quantityConfig = -1; /* QuantityConfig */ static int hf_lte_rrc_measGapConfig = -1; /* MeasGapConfig */ static int hf_lte_rrc_s_Measure = -1; /* S_Measure */ static int hf_lte_rrc_speedStatePars = -1; /* T_speedStatePars */ -static int hf_lte_rrc_setup_116 = -1; /* T_setup_103 */ +static int hf_lte_rrc_setup_156 = -1; /* T_setup_140 */ static int hf_lte_rrc_timeToTrigger_SF = -1; /* SpeedStateScaleFactors */ static int hf_lte_rrc_measObjectToAddModList_v9e0 = -1; /* MeasObjectToAddModList_v9e0 */ static int hf_lte_rrc_allowInterruptions_r11 = -1; /* BOOLEAN */ static int hf_lte_rrc_measScaleFactor_r12 = -1; /* T_measScaleFactor_r12 */ -static int hf_lte_rrc_setup_117 = -1; /* MeasScaleFactor_r12 */ +static int hf_lte_rrc_setup_157 = -1; /* MeasScaleFactor_r12 */ static int hf_lte_rrc_measIdToRemoveListExt_r12 = -1; /* MeasIdToRemoveListExt_r12 */ static int hf_lte_rrc_measIdToAddModListExt_r12 = -1; /* MeasIdToAddModListExt_r12 */ static int hf_lte_rrc_measRSRQ_OnAllSymbols_r12 = -1; /* BOOLEAN */ @@ -3700,12 +4529,15 @@ static int hf_lte_rrc_measGapConfigPerCC_List_r14 = -1; /* MeasGapConfigPerCC_L static int hf_lte_rrc_measGapSharingConfig_r14 = -1; /* MeasGapSharingConfig_r14 */ static int hf_lte_rrc_fr1_Gap_r15 = -1; /* BOOLEAN */ static int hf_lte_rrc_mgta_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_measGapConfigDensePRS_r15 = -1; /* MeasGapConfigDensePRS_r15 */ +static int hf_lte_rrc_heightThreshRef_r15 = -1; /* T_heightThreshRef_r15 */ +static int hf_lte_rrc_setup_158 = -1; /* INTEGER_0_31 */ static int hf_lte_rrc_MeasIdToRemoveList_item = -1; /* MeasId */ static int hf_lte_rrc_MeasIdToRemoveListExt_r12_item = -1; /* MeasId_v1250 */ static int hf_lte_rrc_MeasObjectToRemoveList_item = -1; /* MeasObjectId */ static int hf_lte_rrc_MeasObjectToRemoveListExt_r13_item = -1; /* MeasObjectId_v1310 */ static int hf_lte_rrc_ReportConfigToRemoveList_item = -1; /* ReportConfigId */ -static int hf_lte_rrc_setup_118 = -1; /* T_setup_104 */ +static int hf_lte_rrc_setup_159 = -1; /* T_setup_141 */ static int hf_lte_rrc_dmtc_PeriodOffset_r12 = -1; /* T_dmtc_PeriodOffset_r12 */ static int hf_lte_rrc_ms40_r12 = -1; /* INTEGER_0_39 */ static int hf_lte_rrc_ms80_r12 = -1; /* INTEGER_0_79 */ @@ -3722,7 +4554,7 @@ static int hf_lte_rrc_physCellId_r12_01 = -1; /* INTEGER_0_503 */ static int hf_lte_rrc_scramblingIdentity_r12 = -1; /* INTEGER_0_503 */ static int hf_lte_rrc_subframeOffset_r12 = -1; /* INTEGER_0_4 */ static int hf_lte_rrc_csi_RS_IndividualOffset_r12 = -1; /* Q_OffsetRange */ -static int hf_lte_rrc_setup_119 = -1; /* T_setup_105 */ +static int hf_lte_rrc_setup_160 = -1; /* T_setup_142 */ static int hf_lte_rrc_gapOffset = -1; /* T_gapOffset */ static int hf_lte_rrc_gp0 = -1; /* INTEGER_0_39 */ static int hf_lte_rrc_gp1 = -1; /* INTEGER_0_79 */ @@ -3744,14 +4576,28 @@ static int hf_lte_rrc_gp8_r15 = -1; /* INTEGER_0_79 */ static int hf_lte_rrc_gp9_r15 = -1; /* INTEGER_0_159 */ static int hf_lte_rrc_gp10_r15 = -1; /* INTEGER_0_19 */ static int hf_lte_rrc_gp11_r15 = -1; /* INTEGER_0_159 */ -static int hf_lte_rrc_setup_120 = -1; /* T_setup_106 */ +static int hf_lte_rrc_setup_161 = -1; /* T_setup_143 */ +static int hf_lte_rrc_gapOffsetDensePRS_r15 = -1; /* T_gapOffsetDensePRS_r15 */ +static int hf_lte_rrc_setup_162 = -1; /* T_setup_144 */ static int hf_lte_rrc_measGapConfigToRemoveList_r14 = -1; /* MeasGapConfigToRemoveList_r14 */ static int hf_lte_rrc_measGapConfigToAddModList_r14 = -1; /* MeasGapConfigToAddModList_r14 */ static int hf_lte_rrc_MeasGapConfigToRemoveList_r14_item = -1; /* ServCellIndex_r13 */ static int hf_lte_rrc_MeasGapConfigToAddModList_r14_item = -1; /* MeasGapConfigPerCC_r14 */ static int hf_lte_rrc_measGapConfigCC_r14 = -1; /* MeasGapConfig */ -static int hf_lte_rrc_setup_121 = -1; /* T_setup_107 */ +static int hf_lte_rrc_setup_163 = -1; /* T_setup_145 */ static int hf_lte_rrc_measGapSharingScheme_r14 = -1; /* T_measGapSharingScheme_r14 */ +static int hf_lte_rrc_measIdleCarrierListEUTRA_r15 = -1; /* EUTRA_CarrierList_r15 */ +static int hf_lte_rrc_measIdleDuration_r15 = -1; /* T_measIdleDuration_r15 */ +static int hf_lte_rrc_EUTRA_CarrierList_r15_item = -1; /* MeasIdleCarrierEUTRA_r15 */ +static int hf_lte_rrc_carrierFreq_r15_01 = -1; /* ARFCN_ValueEUTRA_r9 */ +static int hf_lte_rrc_allowedMeasBandwidth_r15 = -1; /* AllowedMeasBandwidth */ +static int hf_lte_rrc_validityArea_r15 = -1; /* CellList_r15 */ +static int hf_lte_rrc_measCellList_r15 = -1; /* CellList_r15 */ +static int hf_lte_rrc_reportQuantities = -1; /* T_reportQuantities */ +static int hf_lte_rrc_qualityThreshold_r15 = -1; /* T_qualityThreshold_r15 */ +static int hf_lte_rrc_idleRSRP_Threshold_r15 = -1; /* RSRP_Range */ +static int hf_lte_rrc_idleRSRQ_Threshold_r15 = -1; /* RSRQ_Range_r13 */ +static int hf_lte_rrc_CellList_r15_item = -1; /* PhysCellIdRange */ static int hf_lte_rrc_MeasIdToAddModList_item = -1; /* MeasIdToAddMod */ static int hf_lte_rrc_MeasIdToAddModList_v1310_item = -1; /* MeasIdToAddMod_v1310 */ static int hf_lte_rrc_MeasIdToAddModListExt_r12_item = -1; /* MeasIdToAddModExt_r12 */ @@ -3782,7 +4628,7 @@ static int hf_lte_rrc_widebandRSRQ_Meas_r11 = -1; /* BOOLEAN */ static int hf_lte_rrc_altTTT_CellsToRemoveList_r12 = -1; /* CellIndexList */ static int hf_lte_rrc_altTTT_CellsToAddModList_r12 = -1; /* AltTTT_CellsToAddModList_r12 */ static int hf_lte_rrc_t312_r12 = -1; /* T_t312_r12 */ -static int hf_lte_rrc_setup_122 = -1; /* T_setup_108 */ +static int hf_lte_rrc_setup_164 = -1; /* T_setup_146 */ static int hf_lte_rrc_reducedMeasPerformance_r12_05 = -1; /* BOOLEAN */ static int hf_lte_rrc_measDS_Config_r12 = -1; /* MeasDS_Config_r12 */ static int hf_lte_rrc_whiteCellsToRemoveList_r13 = -1; /* CellIndexList */ @@ -3792,11 +4638,12 @@ static int hf_lte_rrc_carrierFreq_r13 = -1; /* ARFCN_ValueEUTRA_v9e0 */ static int hf_lte_rrc_tx_ResourcePoolToRemoveList_r14 = -1; /* Tx_ResourcePoolMeasList_r14 */ static int hf_lte_rrc_tx_ResourcePoolToAddList_r14 = -1; /* Tx_ResourcePoolMeasList_r14 */ static int hf_lte_rrc_fembms_MixedCarrier_r14 = -1; /* BOOLEAN */ +static int hf_lte_rrc_measSensing_Config_r15 = -1; /* MeasSensing_Config_r15 */ static int hf_lte_rrc_CellsToAddModList_item = -1; /* CellsToAddMod */ static int hf_lte_rrc_cellIndividualOffset = -1; /* Q_OffsetRange */ static int hf_lte_rrc_BlackCellsToAddModList_item = -1; /* BlackCellsToAddMod */ static int hf_lte_rrc_physCellIdRange = -1; /* PhysCellIdRange */ -static int hf_lte_rrc_setup_123 = -1; /* T_setup_109 */ +static int hf_lte_rrc_setup_165 = -1; /* T_setup_147 */ static int hf_lte_rrc_measSubframePatternNeigh_r10 = -1; /* MeasSubframePattern_r10 */ static int hf_lte_rrc_measSubframeCellList_r10 = -1; /* MeasSubframeCellList_r10 */ static int hf_lte_rrc_MeasSubframeCellList_r10_item = -1; /* PhysCellIdRange */ @@ -3806,34 +4653,26 @@ static int hf_lte_rrc_physCellIdRange_r12 = -1; /* PhysCellIdRange */ static int hf_lte_rrc_WhiteCellsToAddModList_r13_item = -1; /* WhiteCellsToAddMod_r13 */ static int hf_lte_rrc_cellIndex_r13 = -1; /* INTEGER_1_maxCellMeas */ static int hf_lte_rrc_physCellIdRange_r13 = -1; /* PhysCellIdRange */ -static int hf_lte_rrc_setup_124 = -1; /* T_setup_110 */ +static int hf_lte_rrc_setup_166 = -1; /* T_setup_148 */ static int hf_lte_rrc_rmtc_Period_r13 = -1; /* T_rmtc_Period_r13 */ static int hf_lte_rrc_rmtc_SubframeOffset_r13 = -1; /* INTEGER_0_639 */ static int hf_lte_rrc_measDuration_r13 = -1; /* T_measDuration_r13 */ static int hf_lte_rrc_Tx_ResourcePoolMeasList_r14_item = -1; /* SL_V2X_TxPoolReportIdentity_r14 */ static int hf_lte_rrc_cellForWhichToReportCGI_02 = -1; /* PhysCellIdGERAN */ static int hf_lte_rrc_rs_ConfigSSB_r15 = -1; /* RS_ConfigSSB_NR_r15 */ -static int hf_lte_rrc_threshRS_Index_r15 = -1; /* ThresholdListNR_r15 */ -static int hf_lte_rrc_maxRS_IndexCellQual_r15 = -1; /* INTEGER_1_maxRS_IndexCellQual_r15 */ static int hf_lte_rrc_offsetFreq_r15 = -1; /* Q_OffsetRangeInterRAT */ static int hf_lte_rrc_blackCellsToRemoveList_r15 = -1; /* CellIndexList */ static int hf_lte_rrc_blackCellsToAddModList_r15 = -1; /* CellsToAddModListNR_r15 */ static int hf_lte_rrc_quantityConfigSet_r15 = -1; /* INTEGER_1_maxQuantSetsNR_r15 */ static int hf_lte_rrc_cellsForWhichToReportSFTD_r15 = -1; /* SEQUENCE_SIZE_1_maxCellSFTD_OF_PhysCellIdNR_r15 */ static int hf_lte_rrc_cellsForWhichToReportSFTD_r15_item = -1; /* PhysCellIdNR_r15 */ -static int hf_lte_rrc_measTimingConfig_r15 = -1; /* MTC_SSB_NR_r15 */ -static int hf_lte_rrc_subcarrierSpacingSSB_r15 = -1; /* T_subcarrierSpacingSSB_r15 */ +static int hf_lte_rrc_cellForWhichToReportCGI_r15 = -1; /* PhysCellIdNR_r15 */ +static int hf_lte_rrc_bandNR_r15 = -1; /* T_bandNR_r15 */ +static int hf_lte_rrc_setup_167 = -1; /* FreqBandIndicatorNR_r15 */ +static int hf_lte_rrc_subcarrierSpacingSSB_r15_02 = -1; /* T_subcarrierSpacingSSB_r15_02 */ static int hf_lte_rrc_CellsToAddModListNR_r15_item = -1; /* CellsToAddModNR_r15 */ static int hf_lte_rrc_cellIndex_r15 = -1; /* INTEGER_1_maxCellMeas */ -static int hf_lte_rrc_physCellId_r15 = -1; /* PhysCellIdNR_r15 */ -static int hf_lte_rrc_periodicityAndOffset_r15 = -1; /* T_periodicityAndOffset_r15 */ -static int hf_lte_rrc_sf5_r15 = -1; /* INTEGER_0_4 */ -static int hf_lte_rrc_sf10_r15 = -1; /* INTEGER_0_9 */ -static int hf_lte_rrc_sf20_r15 = -1; /* INTEGER_0_19 */ -static int hf_lte_rrc_sf40_r15 = -1; /* INTEGER_0_39 */ -static int hf_lte_rrc_sf80_r15 = -1; /* INTEGER_0_79 */ -static int hf_lte_rrc_sf160_r15 = -1; /* INTEGER_0_159 */ -static int hf_lte_rrc_ssb_Duration_r15 = -1; /* T_ssb_Duration_r15 */ +static int hf_lte_rrc_physCellId_r15_01 = -1; /* PhysCellIdNR_r15 */ static int hf_lte_rrc_MeasObjectToAddModList_item = -1; /* MeasObjectToAddMod */ static int hf_lte_rrc_MeasObjectToAddModListExt_r13_item = -1; /* MeasObjectToAddModExt_r13 */ static int hf_lte_rrc_MeasObjectToAddModList_v9e0_item = -1; /* MeasObjectToAddMod_v9e0 */ @@ -3892,6 +4731,8 @@ static int hf_lte_rrc_measResultListCBR_r14 = -1; /* MeasResultListCBR_r14 */ static int hf_lte_rrc_measResultListWLAN_r14 = -1; /* MeasResultListWLAN_r14 */ static int hf_lte_rrc_measResultServFreqListNR_r15 = -1; /* MeasResultServFreqListNR_r15 */ static int hf_lte_rrc_measResultCellListSFTD_r15 = -1; /* MeasResultCellListSFTD_r15 */ +static int hf_lte_rrc_measResultSensing_r15 = -1; /* MeasResultSensing_r15 */ +static int hf_lte_rrc_heightUE_r15 = -1; /* INTEGER_M400_8880 */ static int hf_lte_rrc_MeasResultListEUTRA_item = -1; /* MeasResultEUTRA */ static int hf_lte_rrc_cgi_Info = -1; /* T_cgi_Info */ static int hf_lte_rrc_cellGlobalId = -1; /* CellGlobalIdEUTRA */ @@ -3905,6 +4746,16 @@ static int hf_lte_rrc_freqBandIndicator_r13 = -1; /* FreqBandIndicator_r11 */ static int hf_lte_rrc_multiBandInfoList_r13 = -1; /* MultiBandInfoList_r11 */ static int hf_lte_rrc_freqBandIndicatorPriority_r13 = -1; /* T_freqBandIndicatorPriority_r13 */ static int hf_lte_rrc_measResult_v1360 = -1; /* RSRP_Range_v1360 */ +static int hf_lte_rrc_cgi_Info_5GC_r15 = -1; /* SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15 */ +static int hf_lte_rrc_cgi_Info_5GC_r15_item = -1; /* CellAccessRelatedInfo_5GC_r15 */ +static int hf_lte_rrc_MeasResultListIdle_r15_item = -1; /* MeasResultIdle_r15 */ +static int hf_lte_rrc_measResultServingCell_r15 = -1; /* T_measResultServingCell_r15 */ +static int hf_lte_rrc_rsrpResult_r15 = -1; /* RSRP_Range */ +static int hf_lte_rrc_rsrqResult_r15 = -1; /* RSRQ_Range_r13 */ +static int hf_lte_rrc_measResultNeighCells_r15 = -1; /* T_measResultNeighCells_r15 */ +static int hf_lte_rrc_measResultIdleListEUTRA_r15 = -1; /* MeasResultIdleListEUTRA_r15 */ +static int hf_lte_rrc_MeasResultIdleListEUTRA_r15_item = -1; /* MeasResultIdleEUTRA_r15 */ +static int hf_lte_rrc_measResult_r15 = -1; /* T_measResult_r15 */ static int hf_lte_rrc_MeasResultServFreqListNR_r15_item = -1; /* MeasResultServFreqNR_r15 */ static int hf_lte_rrc_measResultSCell_r15 = -1; /* MeasResultCellNR_r15 */ static int hf_lte_rrc_measResultBestNeighCell_r15 = -1; /* MeasResultCellNR_r15 */ @@ -3912,8 +4763,9 @@ static int hf_lte_rrc_MeasResultCellListNR_r15_item = -1; /* MeasResultCellNR_r static int hf_lte_rrc_pci_r15 = -1; /* PhysCellIdNR_r15 */ static int hf_lte_rrc_measResultCell_r15 = -1; /* MeasResultNR_r15 */ static int hf_lte_rrc_measResultRS_IndexList_r15 = -1; /* MeasResultSSB_IndexList_r15 */ -static int hf_lte_rrc_rsrpResult_r15 = -1; /* RSRP_RangeNR_r15 */ -static int hf_lte_rrc_rsrqResult_r15 = -1; /* RSRQ_RangeNR_r15 */ +static int hf_lte_rrc_cgi_Info_r15 = -1; /* CGI_InfoNR_r15 */ +static int hf_lte_rrc_rsrpResult_r15_01 = -1; /* RSRP_RangeNR_r15 */ +static int hf_lte_rrc_rsrqResult_r15_01 = -1; /* RSRQ_RangeNR_r15 */ static int hf_lte_rrc_rs_sinr_Result_r15 = -1; /* RS_SINR_RangeNR_r15 */ static int hf_lte_rrc_MeasResultSSB_IndexList_r15_item = -1; /* MeasResultSSB_Index_r15 */ static int hf_lte_rrc_ssb_Index_r15 = -1; /* RS_IndexNR_r15 */ @@ -3981,6 +4833,10 @@ static int hf_lte_rrc_MeasResultListCBR_r14_item = -1; /* MeasResultCBR_r14 */ static int hf_lte_rrc_poolIdentity_r14 = -1; /* SL_V2X_TxPoolReportIdentity_r14 */ static int hf_lte_rrc_cbr_PSSCH_r14 = -1; /* SL_CBR_r14 */ static int hf_lte_rrc_cbr_PSCCH_r14 = -1; /* SL_CBR_r14 */ +static int hf_lte_rrc_sl_SubframeRef_r15 = -1; /* INTEGER_0_10239 */ +static int hf_lte_rrc_sensingResult_r15 = -1; /* SEQUENCE_SIZE_0_400_OF_SensingResult_r15 */ +static int hf_lte_rrc_sensingResult_r15_item = -1; /* SensingResult_r15 */ +static int hf_lte_rrc_resourceIndex_r15 = -1; /* INTEGER_1_2000 */ static int hf_lte_rrc_ue_RxTxTimeDiffResult_r9 = -1; /* INTEGER_0_4095 */ static int hf_lte_rrc_currentSFN_r9 = -1; /* BIT_STRING_SIZE_10 */ static int hf_lte_rrc_PLMN_IdentityList2_item = -1; /* PLMN_Identity */ @@ -3991,12 +4847,34 @@ static int hf_lte_rrc_channelOccupancy_r13 = -1; /* INTEGER_0_100 */ static int hf_lte_rrc_UL_PDCP_DelayResultList_r13_item = -1; /* UL_PDCP_DelayResult_r13 */ static int hf_lte_rrc_qci_Id_r13 = -1; /* T_qci_Id_r13 */ static int hf_lte_rrc_excessDelay_r13 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_plmn_IdentityInfoList_r15 = -1; /* PLMN_IdentityInfoListNR_r15 */ +static int hf_lte_rrc_frequencyBandList_15 = -1; /* MultiFrequencyBandListNR_r15 */ +static int hf_lte_rrc_noSIB1_r15 = -1; /* T_noSIB1_r15 */ +static int hf_lte_rrc_ssb_SubcarrierOffset_r15 = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_pdcch_ConfigSIB1_r15 = -1; /* INTEGER_0_255 */ +static int hf_lte_rrc_PLMN_IdentityListNR_r15_item = -1; /* PLMN_Identity */ +static int hf_lte_rrc_PLMN_IdentityInfoListNR_r15_item = -1; /* PLMN_IdentityInfoNR_r15 */ +static int hf_lte_rrc_plmn_IdentityList_r15_01 = -1; /* PLMN_IdentityListNR_r15 */ +static int hf_lte_rrc_trackingAreaCode_r15 = -1; /* TrackingAreaCodeNR_r15 */ +static int hf_lte_rrc_cellIdentity_r15_01 = -1; /* CellIdentityNR_r15 */ static int hf_lte_rrc_MeasResultCellListSFTD_r15_item = -1; /* MeasResultCellSFTD_r15 */ static int hf_lte_rrc_sfn_OffsetResult_r15 = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_frameBoundaryOffsetResult_r15 = -1; /* INTEGER_M30720_30719 */ static int hf_lte_rrc_sfn_OffsetResult_r13 = -1; /* INTEGER_0_1023 */ static int hf_lte_rrc_frameBoundaryOffsetResult_r13 = -1; /* INTEGER_M5_4 */ static int hf_lte_rrc_subframeBoundaryOffsetResult_r13 = -1; /* INTEGER_0_127 */ +static int hf_lte_rrc_sensingSubchannelNumber_r15 = -1; /* INTEGER_1_20 */ +static int hf_lte_rrc_sensingPeriodicity_r15 = -1; /* T_sensingPeriodicity_r15 */ +static int hf_lte_rrc_sensingReselectionCounter_r15 = -1; /* INTEGER_5_75 */ +static int hf_lte_rrc_sensingPriority_r15 = -1; /* INTEGER_1_8 */ +static int hf_lte_rrc_periodicityAndOffset_r15 = -1; /* T_periodicityAndOffset_r15 */ +static int hf_lte_rrc_sf5_r15 = -1; /* INTEGER_0_4 */ +static int hf_lte_rrc_sf10_r15 = -1; /* INTEGER_0_9 */ +static int hf_lte_rrc_sf20_r15 = -1; /* INTEGER_0_19 */ +static int hf_lte_rrc_sf40_r15 = -1; /* INTEGER_0_39 */ +static int hf_lte_rrc_sf80_r15 = -1; /* INTEGER_0_79 */ +static int hf_lte_rrc_sf160_r15 = -1; /* INTEGER_0_159 */ +static int hf_lte_rrc_ssb_Duration_r15 = -1; /* T_ssb_Duration_r15 */ static int hf_lte_rrc_quantityConfigEUTRA = -1; /* QuantityConfigEUTRA */ static int hf_lte_rrc_quantityConfigUTRA = -1; /* QuantityConfigUTRA */ static int hf_lte_rrc_quantityConfigGERAN = -1; /* QuantityConfigGERAN */ @@ -4051,6 +4929,12 @@ static int hf_lte_rrc_eventV1_r14 = -1; /* T_eventV1_r14 */ static int hf_lte_rrc_v1_Threshold_r14 = -1; /* SL_CBR_r14 */ static int hf_lte_rrc_eventV2_r14 = -1; /* T_eventV2_r14 */ static int hf_lte_rrc_v2_Threshold_r14 = -1; /* SL_CBR_r14 */ +static int hf_lte_rrc_eventH1_r15 = -1; /* T_eventH1_r15 */ +static int hf_lte_rrc_h1_ThresholdOffset_r15 = -1; /* INTEGER_0_300 */ +static int hf_lte_rrc_h1_Hysteresis_15 = -1; /* INTEGER_1_16 */ +static int hf_lte_rrc_eventH2_r15 = -1; /* T_eventH2_r15 */ +static int hf_lte_rrc_h2_ThresholdOffset_r15 = -1; /* INTEGER_0_300 */ +static int hf_lte_rrc_h2_Hysteresis_15 = -1; /* INTEGER_1_16 */ static int hf_lte_rrc_hysteresis = -1; /* Hysteresis */ static int hf_lte_rrc_timeToTrigger = -1; /* TimeToTrigger */ static int hf_lte_rrc_periodical = -1; /* T_periodical */ @@ -4065,7 +4949,7 @@ static int hf_lte_rrc_ue_RxTxTimeDiffPeriodical_r9 = -1; /* T_ue_RxTxTimeDiffPe static int hf_lte_rrc_includeLocationInfo_r10 = -1; /* T_includeLocationInfo_r10 */ static int hf_lte_rrc_reportAddNeighMeas_r10 = -1; /* T_reportAddNeighMeas_r10 */ static int hf_lte_rrc_alternativeTimeToTrigger_r12 = -1; /* T_alternativeTimeToTrigger_r12 */ -static int hf_lte_rrc_setup_125 = -1; /* TimeToTrigger */ +static int hf_lte_rrc_setup_168 = -1; /* TimeToTrigger */ static int hf_lte_rrc_useT312_r12 = -1; /* BOOLEAN */ static int hf_lte_rrc_usePSCell_r12 = -1; /* BOOLEAN */ static int hf_lte_rrc_aN_Threshold1_v1250 = -1; /* RSRQ_RangeConfig_r12 */ @@ -4075,7 +4959,7 @@ static int hf_lte_rrc_reportCRS_Meas_r12 = -1; /* BOOLEAN */ static int hf_lte_rrc_triggerQuantityCSI_RS_r12 = -1; /* BOOLEAN */ static int hf_lte_rrc_reportSSTD_Meas_r13 = -1; /* BOOLEAN */ static int hf_lte_rrc_rs_sinr_Config_r13 = -1; /* T_rs_sinr_Config_r13 */ -static int hf_lte_rrc_setup_126 = -1; /* T_setup_111 */ +static int hf_lte_rrc_setup_169 = -1; /* T_setup_149 */ static int hf_lte_rrc_triggerQuantity_v1310 = -1; /* T_triggerQuantity_v1310 */ static int hf_lte_rrc_aN_Threshold1_r13 = -1; /* RS_SINR_Range_r13 */ static int hf_lte_rrc_a5_Threshold2_r13 = -1; /* RS_SINR_Range_r13 */ @@ -4087,7 +4971,12 @@ static int hf_lte_rrc_ul_DelayConfig_r13 = -1; /* UL_DelayConfig_r13 */ static int hf_lte_rrc_ue_RxTxTimeDiffPeriodicalTDD_r13 = -1; /* BOOLEAN */ static int hf_lte_rrc_purpose_v1430 = -1; /* T_purpose_v1430 */ static int hf_lte_rrc_maxReportRS_Index_r15 = -1; /* INTEGER_0_maxRS_IndexReport_r15 */ -static int hf_lte_rrc_setup_127 = -1; /* RSRQ_Range_v1250 */ +static int hf_lte_rrc_includeBT_Meas_r15 = -1; /* BT_NameListConfig_r15 */ +static int hf_lte_rrc_includeWLAN_Meas_r15 = -1; /* WLAN_NameListConfig_r15 */ +static int hf_lte_rrc_purpose_r15 = -1; /* T_purpose_r15 */ +static int hf_lte_rrc_numberOfTriggeringCells_r15 = -1; /* INTEGER_2_maxCellReport */ +static int hf_lte_rrc_a4_a5_ReportOnLeave_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_setup_170 = -1; /* RSRQ_Range_v1250 */ static int hf_lte_rrc_threshold_RSRP = -1; /* Threshold_RSRP_Range */ static int hf_lte_rrc_threshold_RSRQ = -1; /* Threshold_RSRQ_Range */ static int hf_lte_rrc_channelOccupancyThreshold_r13 = -1; /* RSSI_Range_r13 */ @@ -4149,12 +5038,19 @@ static int hf_lte_rrc_reportConfigEUTRA = -1; /* ReportConfigEUTRA */ static int hf_lte_rrc_reportConfigInterRAT = -1; /* ReportConfigInterRAT */ static int hf_lte_rrc_allSymbols_r12 = -1; /* BOOLEAN */ static int hf_lte_rrc_wideBand_r12 = -1; /* BOOLEAN */ -static int hf_lte_rrc_setup_128 = -1; /* T_setup_112 */ +static int hf_lte_rrc_measurementSlots_r15 = -1; /* BIT_STRING_SIZE_1_80 */ +static int hf_lte_rrc_endSymbol_r15 = -1; /* INTEGER_0_3 */ +static int hf_lte_rrc_setup_171 = -1; /* T_setup_150 */ static int hf_lte_rrc_delayThreshold_r13 = -1; /* T_delayThreshold_r13 */ static int hf_lte_rrc_operatingClass_r13 = -1; /* INTEGER_0_255 */ static int hf_lte_rrc_countryCode_r13 = -1; /* T_countryCode_r13 */ static int hf_lte_rrc_channelNumbers_r13 = -1; /* WLAN_ChannelList_r13 */ static int hf_lte_rrc_WLAN_ChannelList_r13_item = -1; /* WLAN_Channel_r13 */ +static int hf_lte_rrc_setup_172 = -1; /* WLAN_NameList_r15 */ +static int hf_lte_rrc_WLAN_NameList_r15_item = -1; /* WLAN_Name_r15 */ +static int hf_lte_rrc_rttValue_r15 = -1; /* INTEGER_0_16777215 */ +static int hf_lte_rrc_rttUnits_r15 = -1; /* T_rttUnits_r15 */ +static int hf_lte_rrc_rttAccuracy_r15 = -1; /* INTEGER_0_255 */ static int hf_lte_rrc_wlan_SuspendResumeAllowed_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_wlan_SuspendTriggersStatusReport_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_cellGlobalIdList_r10 = -1; /* CellGlobalIdList_r10 */ @@ -4169,6 +5065,9 @@ static int hf_lte_rrc_BandCombination_r14_item = -1; /* BandIndication_r14 */ static int hf_lte_rrc_bandEUTRA_r14 = -1; /* FreqBandIndicator_r11 */ static int hf_lte_rrc_ca_BandwidthClassDL_r14 = -1; /* CA_BandwidthClass_r10 */ static int hf_lte_rrc_ca_BandwidthClassUL_r14 = -1; /* CA_BandwidthClass_r10 */ +static int hf_lte_rrc_maxWayPointNumber_r15 = -1; /* INTEGER_1_maxWayPoint_r15 */ +static int hf_lte_rrc_includeTimeStamp_r15 = -1; /* T_includeTimeStamp_r15 */ +static int hf_lte_rrc_gnss_id_r15_01 = -1; /* T_gnss_id_r15 */ static int hf_lte_rrc_subframePatternFDD_r10 = -1; /* BIT_STRING_SIZE_40 */ static int hf_lte_rrc_subframePatternTDD_r10 = -1; /* T_subframePatternTDD_r10 */ static int hf_lte_rrc_subframeConfig1_5_r10 = -1; /* BIT_STRING_SIZE_20 */ @@ -4181,26 +5080,39 @@ static int hf_lte_rrc_obtainLocationConfig_r11 = -1; /* ObtainLocationConfig_r1 static int hf_lte_rrc_bw_PreferenceIndicationTimer_r14 = -1; /* T_bw_PreferenceIndicationTimer_r14 */ static int hf_lte_rrc_sps_AssistanceInfoReport_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_delayBudgetReportingConfig_r14 = -1; /* T_delayBudgetReportingConfig_r14 */ -static int hf_lte_rrc_setup_129 = -1; /* T_setup_113 */ +static int hf_lte_rrc_setup_173 = -1; /* T_setup_151 */ static int hf_lte_rrc_delayBudgetReportingProhibitTimer_r14 = -1; /* T_delayBudgetReportingProhibitTimer_r14 */ static int hf_lte_rrc_rlm_ReportConfig_r14 = -1; /* T_rlm_ReportConfig_r14 */ -static int hf_lte_rrc_setup_130 = -1; /* T_setup_114 */ +static int hf_lte_rrc_setup_174 = -1; /* T_setup_152 */ static int hf_lte_rrc_rlmReportTimer_r14 = -1; /* T_rlmReportTimer_r14 */ static int hf_lte_rrc_rlmReportRep_MPDCCH_r14 = -1; /* T_rlmReportRep_MPDCCH_r14 */ static int hf_lte_rrc_overheatingAssistanceConfig_r14 = -1; /* T_overheatingAssistanceConfig_r14 */ -static int hf_lte_rrc_setup_131 = -1; /* T_setup_115 */ +static int hf_lte_rrc_setup_175 = -1; /* T_setup_153 */ static int hf_lte_rrc_overheatingIndicationProhibitTimer_r14 = -1; /* T_overheatingIndicationProhibitTimer_r14 */ +static int hf_lte_rrc_measConfigAppLayer_r15 = -1; /* T_measConfigAppLayer_r15 */ +static int hf_lte_rrc_setup_176 = -1; /* T_setup_154 */ +static int hf_lte_rrc_measConfigAppLayerContainer_r15 = -1; /* OCTET_STRING_SIZE_1_1000 */ +static int hf_lte_rrc_serviceType_01 = -1; /* T_serviceType_01 */ +static int hf_lte_rrc_ailc_BitConfig_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_bt_NameListConfig_r15 = -1; /* BT_NameListConfig_r15 */ +static int hf_lte_rrc_wlan_NameListConfig_r15 = -1; /* WLAN_NameListConfig_r15 */ static int hf_lte_rrc_idc_Indication_r11_01 = -1; /* T_idc_Indication_r11_01 */ static int hf_lte_rrc_autonomousDenialParameters_r11 = -1; /* T_autonomousDenialParameters_r11 */ static int hf_lte_rrc_autonomousDenialSubframes_r11 = -1; /* T_autonomousDenialSubframes_r11 */ static int hf_lte_rrc_autonomousDenialValidity_r11 = -1; /* T_autonomousDenialValidity_r11 */ static int hf_lte_rrc_idc_Indication_UL_CA_r11 = -1; /* T_idc_Indication_UL_CA_r11 */ static int hf_lte_rrc_idc_HardwareSharingIndication_r13 = -1; /* T_idc_HardwareSharingIndication_r13 */ +static int hf_lte_rrc_idc_Indication_MRDC_r15 = -1; /* T_idc_Indication_MRDC_r15 */ +static int hf_lte_rrc_setup_177 = -1; /* CandidateServingFreqListNR_r15 */ static int hf_lte_rrc_obtainLocation_r11 = -1; /* T_obtainLocation_r11 */ -static int hf_lte_rrc_setup_132 = -1; /* T_setup_116 */ +static int hf_lte_rrc_setup_178 = -1; /* T_setup_155 */ static int hf_lte_rrc_powerPrefIndicationTimer_r11 = -1; /* T_powerPrefIndicationTimer_r11 */ static int hf_lte_rrc_proximityIndicationEUTRA_r9 = -1; /* T_proximityIndicationEUTRA_r9 */ static int hf_lte_rrc_proximityIndicationUTRA_r9 = -1; /* T_proximityIndicationUTRA_r9 */ +static int hf_lte_rrc_CandidateServingFreqListNR_r15_item = -1; /* ARFCN_ValueNR_r15 */ +static int hf_lte_rrc_sbas_id_r15_01 = -1; /* T_sbas_id_r15 */ +static int hf_lte_rrc_sst = -1; /* BIT_STRING_SIZE_8 */ +static int hf_lte_rrc_sst_SD = -1; /* BIT_STRING_SIZE_32 */ static int hf_lte_rrc_m_TMSI = -1; /* BIT_STRING_SIZE_32 */ static int hf_lte_rrc_plmn_Identity_r10 = -1; /* PLMN_Identity */ static int hf_lte_rrc_traceId_r10 = -1; /* OCTET_STRING_SIZE_3 */ @@ -4222,51 +5134,51 @@ static int hf_lte_rrc_utraTDD768 = -1; /* IRAT_ParametersUTRA_TDD768 static int hf_lte_rrc_geran_02 = -1; /* IRAT_ParametersGERAN */ static int hf_lte_rrc_cdma2000_HRPD_01 = -1; /* IRAT_ParametersCDMA2000_HRPD */ static int hf_lte_rrc_cdma2000_1xRTT_01 = -1; /* IRAT_ParametersCDMA2000_1XRTT */ -static int hf_lte_rrc_nonCriticalExtension_198 = -1; /* UE_EUTRA_Capability_v920_IEs */ +static int hf_lte_rrc_nonCriticalExtension_225 = -1; /* UE_EUTRA_Capability_v920_IEs */ static int hf_lte_rrc_featureGroupIndRel9Add_r9 = -1; /* T_featureGroupIndRel9Add_r9 */ static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_r9 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_r9 */ static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_r9 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_r9 */ -static int hf_lte_rrc_nonCriticalExtension_199 = -1; /* UE_EUTRA_Capability_v9c0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_226 = -1; /* UE_EUTRA_Capability_v9c0_IEs */ static int hf_lte_rrc_interRAT_ParametersUTRA_v9c0 = -1; /* IRAT_ParametersUTRA_v9c0 */ -static int hf_lte_rrc_nonCriticalExtension_200 = -1; /* UE_EUTRA_Capability_v9d0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_227 = -1; /* UE_EUTRA_Capability_v9d0_IEs */ static int hf_lte_rrc_phyLayerParameters_v9d0 = -1; /* PhyLayerParameters_v9d0 */ -static int hf_lte_rrc_nonCriticalExtension_201 = -1; /* UE_EUTRA_Capability_v9e0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_228 = -1; /* UE_EUTRA_Capability_v9e0_IEs */ static int hf_lte_rrc_rf_Parameters_v9e0 = -1; /* RF_Parameters_v9e0 */ -static int hf_lte_rrc_nonCriticalExtension_202 = -1; /* UE_EUTRA_Capability_v9h0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_229 = -1; /* UE_EUTRA_Capability_v9h0_IEs */ static int hf_lte_rrc_interRAT_ParametersUTRA_v9h0 = -1; /* IRAT_ParametersUTRA_v9h0 */ -static int hf_lte_rrc_nonCriticalExtension_203 = -1; /* UE_EUTRA_Capability_v10c0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_230 = -1; /* UE_EUTRA_Capability_v10c0_IEs */ static int hf_lte_rrc_otdoa_PositioningCapabilities_r10 = -1; /* OTDOA_PositioningCapabilities_r10 */ -static int hf_lte_rrc_nonCriticalExtension_204 = -1; /* UE_EUTRA_Capability_v10f0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_231 = -1; /* UE_EUTRA_Capability_v10f0_IEs */ static int hf_lte_rrc_rf_Parameters_v10f0 = -1; /* RF_Parameters_v10f0 */ -static int hf_lte_rrc_nonCriticalExtension_205 = -1; /* UE_EUTRA_Capability_v10i0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_232 = -1; /* UE_EUTRA_Capability_v10i0_IEs */ static int hf_lte_rrc_rf_Parameters_v10i0 = -1; /* RF_Parameters_v10i0 */ static int hf_lte_rrc_lateNonCriticalExtension_11 = -1; /* T_lateNonCriticalExtension_10 */ -static int hf_lte_rrc_nonCriticalExtension_206 = -1; /* UE_EUTRA_Capability_v11d0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_233 = -1; /* UE_EUTRA_Capability_v11d0_IEs */ static int hf_lte_rrc_rf_Parameters_v10j0 = -1; /* RF_Parameters_v10j0 */ -static int hf_lte_rrc_nonCriticalExtension_207 = -1; /* T_nonCriticalExtension_69 */ +static int hf_lte_rrc_nonCriticalExtension_234 = -1; /* T_nonCriticalExtension_76 */ static int hf_lte_rrc_rf_Parameters_v11d0 = -1; /* RF_Parameters_v11d0 */ static int hf_lte_rrc_otherParameters_v11d0 = -1; /* Other_Parameters_v11d0 */ -static int hf_lte_rrc_nonCriticalExtension_208 = -1; /* UE_EUTRA_Capability_v11x0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_209 = -1; /* UE_EUTRA_Capability_v12b0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_235 = -1; /* UE_EUTRA_Capability_v11x0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_236 = -1; /* UE_EUTRA_Capability_v12b0_IEs */ static int hf_lte_rrc_rf_Parameters_v12b0 = -1; /* RF_Parameters_v12b0 */ -static int hf_lte_rrc_nonCriticalExtension_210 = -1; /* UE_EUTRA_Capability_v12x0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_211 = -1; /* UE_EUTRA_Capability_v1370_IEs */ +static int hf_lte_rrc_nonCriticalExtension_237 = -1; /* UE_EUTRA_Capability_v12x0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_238 = -1; /* UE_EUTRA_Capability_v1370_IEs */ static int hf_lte_rrc_ce_Parameters_v1370 = -1; /* CE_Parameters_v1370 */ static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1370 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1370 */ static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1370 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1370 */ -static int hf_lte_rrc_nonCriticalExtension_212 = -1; /* UE_EUTRA_Capability_v1380_IEs */ +static int hf_lte_rrc_nonCriticalExtension_239 = -1; /* UE_EUTRA_Capability_v1380_IEs */ static int hf_lte_rrc_rf_Parameters_v1380 = -1; /* RF_Parameters_v1380 */ static int hf_lte_rrc_ce_Parameters_v1380 = -1; /* CE_Parameters_v1380 */ static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1380 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1380 */ static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1380 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1380 */ -static int hf_lte_rrc_nonCriticalExtension_213 = -1; /* UE_EUTRA_Capability_v1390_IEs */ +static int hf_lte_rrc_nonCriticalExtension_240 = -1; /* UE_EUTRA_Capability_v1390_IEs */ static int hf_lte_rrc_rf_Parameters_v1390 = -1; /* RF_Parameters_v1390 */ -static int hf_lte_rrc_nonCriticalExtension_214 = -1; /* UE_EUTRA_Capability_v13x0_IEs */ -static int hf_lte_rrc_nonCriticalExtension_215 = -1; /* UE_EUTRA_Capability_v1470_IEs */ +static int hf_lte_rrc_nonCriticalExtension_241 = -1; /* UE_EUTRA_Capability_v13x0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_242 = -1; /* UE_EUTRA_Capability_v1470_IEs */ static int hf_lte_rrc_mbms_Parameters_v1470 = -1; /* MBMS_Parameters_v1470 */ static int hf_lte_rrc_phyLayerParameters_v1470 = -1; /* PhyLayerParameters_v1470 */ static int hf_lte_rrc_rf_Parameters_v1470 = -1; /* RF_Parameters_v1470 */ -static int hf_lte_rrc_nonCriticalExtension_216 = -1; /* T_nonCriticalExtension_70 */ +static int hf_lte_rrc_nonCriticalExtension_243 = -1; /* T_nonCriticalExtension_77 */ static int hf_lte_rrc_phyLayerParameters_v920 = -1; /* PhyLayerParameters_v920 */ static int hf_lte_rrc_interRAT_ParametersGERAN_v920 = -1; /* IRAT_ParametersGERAN_v920 */ static int hf_lte_rrc_interRAT_ParametersUTRA_v920 = -1; /* IRAT_ParametersUTRA_v920 */ @@ -4275,9 +5187,9 @@ static int hf_lte_rrc_deviceType_r9 = -1; /* T_deviceType_r9 */ static int hf_lte_rrc_csg_ProximityIndicationParameters_r9 = -1; /* CSG_ProximityIndicationParameters_r9 */ static int hf_lte_rrc_neighCellSI_AcquisitionParameters_r9 = -1; /* NeighCellSI_AcquisitionParameters_r9 */ static int hf_lte_rrc_son_Parameters_r9 = -1; /* SON_Parameters_r9 */ -static int hf_lte_rrc_nonCriticalExtension_217 = -1; /* UE_EUTRA_Capability_v940_IEs */ +static int hf_lte_rrc_nonCriticalExtension_244 = -1; /* UE_EUTRA_Capability_v940_IEs */ static int hf_lte_rrc_lateNonCriticalExtension_12 = -1; /* T_lateNonCriticalExtension_11 */ -static int hf_lte_rrc_nonCriticalExtension_218 = -1; /* UE_EUTRA_Capability_v1020_IEs */ +static int hf_lte_rrc_nonCriticalExtension_245 = -1; /* UE_EUTRA_Capability_v1020_IEs */ static int hf_lte_rrc_ue_Category_v1020 = -1; /* INTEGER_6_8 */ static int hf_lte_rrc_phyLayerParameters_v1020 = -1; /* PhyLayerParameters_v1020 */ static int hf_lte_rrc_rf_Parameters_v1020 = -1; /* RF_Parameters_v1020 */ @@ -4286,13 +5198,13 @@ static int hf_lte_rrc_featureGroupIndRel10_r10 = -1; /* T_featureGroupIndRel10_ static int hf_lte_rrc_interRAT_ParametersCDMA2000_v1020 = -1; /* IRAT_ParametersCDMA2000_1XRTT_v1020 */ static int hf_lte_rrc_ue_BasedNetwPerfMeasParameters_r10 = -1; /* UE_BasedNetwPerfMeasParameters_r10 */ static int hf_lte_rrc_interRAT_ParametersUTRA_TDD_v1020 = -1; /* IRAT_ParametersUTRA_TDD_v1020 */ -static int hf_lte_rrc_nonCriticalExtension_219 = -1; /* UE_EUTRA_Capability_v1060_IEs */ +static int hf_lte_rrc_nonCriticalExtension_246 = -1; /* UE_EUTRA_Capability_v1060_IEs */ static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1060 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1060 */ static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1060 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1060 */ static int hf_lte_rrc_rf_Parameters_v1060 = -1; /* RF_Parameters_v1060 */ -static int hf_lte_rrc_nonCriticalExtension_220 = -1; /* UE_EUTRA_Capability_v1090_IEs */ +static int hf_lte_rrc_nonCriticalExtension_247 = -1; /* UE_EUTRA_Capability_v1090_IEs */ static int hf_lte_rrc_rf_Parameters_v1090 = -1; /* RF_Parameters_v1090 */ -static int hf_lte_rrc_nonCriticalExtension_221 = -1; /* UE_EUTRA_Capability_v1130_IEs */ +static int hf_lte_rrc_nonCriticalExtension_248 = -1; /* UE_EUTRA_Capability_v1130_IEs */ static int hf_lte_rrc_pdcp_Parameters_v1130 = -1; /* PDCP_Parameters_v1130 */ static int hf_lte_rrc_phyLayerParameters_v1130 = -1; /* PhyLayerParameters_v1130 */ static int hf_lte_rrc_rf_Parameters_v1130 = -1; /* RF_Parameters_v1130 */ @@ -4301,18 +5213,18 @@ static int hf_lte_rrc_interRAT_ParametersCDMA2000_v1130 = -1; /* IRAT_Parameter static int hf_lte_rrc_otherParameters_r11 = -1; /* Other_Parameters_r11 */ static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1130 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1130 */ static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1130 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1130 */ -static int hf_lte_rrc_nonCriticalExtension_222 = -1; /* UE_EUTRA_Capability_v1170_IEs */ +static int hf_lte_rrc_nonCriticalExtension_249 = -1; /* UE_EUTRA_Capability_v1170_IEs */ static int hf_lte_rrc_phyLayerParameters_v1170 = -1; /* PhyLayerParameters_v1170 */ static int hf_lte_rrc_ue_Category_v1170 = -1; /* INTEGER_9_10 */ -static int hf_lte_rrc_nonCriticalExtension_223 = -1; /* UE_EUTRA_Capability_v1180_IEs */ +static int hf_lte_rrc_nonCriticalExtension_250 = -1; /* UE_EUTRA_Capability_v1180_IEs */ static int hf_lte_rrc_rf_Parameters_v1180 = -1; /* RF_Parameters_v1180 */ static int hf_lte_rrc_mbms_Parameters_r11 = -1; /* MBMS_Parameters_r11 */ static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1180 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1180 */ static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1180 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1180 */ -static int hf_lte_rrc_nonCriticalExtension_224 = -1; /* UE_EUTRA_Capability_v11a0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_251 = -1; /* UE_EUTRA_Capability_v11a0_IEs */ static int hf_lte_rrc_ue_Category_v11a0 = -1; /* INTEGER_11_12 */ static int hf_lte_rrc_measParameters_v11a0 = -1; /* MeasParameters_v11a0 */ -static int hf_lte_rrc_nonCriticalExtension_225 = -1; /* UE_EUTRA_Capability_v1250_IEs */ +static int hf_lte_rrc_nonCriticalExtension_252 = -1; /* UE_EUTRA_Capability_v1250_IEs */ static int hf_lte_rrc_phyLayerParameters_v1250 = -1; /* PhyLayerParameters_v1250 */ static int hf_lte_rrc_rf_Parameters_v1250 = -1; /* RF_Parameters_v1250 */ static int hf_lte_rrc_rlc_Parameters_r12 = -1; /* RLC_Parameters_r12 */ @@ -4327,13 +5239,13 @@ static int hf_lte_rrc_mac_Parameters_r12 = -1; /* MAC_Parameters_r12 */ static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1250 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1250 */ static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1250 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1250 */ static int hf_lte_rrc_sl_Parameters_r12 = -1; /* SL_Parameters_r12 */ -static int hf_lte_rrc_nonCriticalExtension_226 = -1; /* UE_EUTRA_Capability_v1260_IEs */ +static int hf_lte_rrc_nonCriticalExtension_253 = -1; /* UE_EUTRA_Capability_v1260_IEs */ static int hf_lte_rrc_ue_CategoryDL_v1260 = -1; /* INTEGER_15_16 */ -static int hf_lte_rrc_nonCriticalExtension_227 = -1; /* UE_EUTRA_Capability_v1270_IEs */ +static int hf_lte_rrc_nonCriticalExtension_254 = -1; /* UE_EUTRA_Capability_v1270_IEs */ static int hf_lte_rrc_rf_Parameters_v1270 = -1; /* RF_Parameters_v1270 */ -static int hf_lte_rrc_nonCriticalExtension_228 = -1; /* UE_EUTRA_Capability_v1280_IEs */ +static int hf_lte_rrc_nonCriticalExtension_255 = -1; /* UE_EUTRA_Capability_v1280_IEs */ static int hf_lte_rrc_phyLayerParameters_v1280 = -1; /* PhyLayerParameters_v1280 */ -static int hf_lte_rrc_nonCriticalExtension_229 = -1; /* UE_EUTRA_Capability_v1310_IEs */ +static int hf_lte_rrc_nonCriticalExtension_256 = -1; /* UE_EUTRA_Capability_v1310_IEs */ static int hf_lte_rrc_ue_CategoryDL_v1310 = -1; /* T_ue_CategoryDL_v1310 */ static int hf_lte_rrc_ue_CategoryUL_v1310 = -1; /* T_ue_CategoryUL_v1310 */ static int hf_lte_rrc_pdcp_Parameters_v1310 = -1; /* PDCP_Parameters_v1310 */ @@ -4353,25 +5265,25 @@ static int hf_lte_rrc_wlan_IW_Parameters_v1310 = -1; /* WLAN_IW_Parameters_v131 static int hf_lte_rrc_lwip_Parameters_r13 = -1; /* LWIP_Parameters_r13 */ static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1310 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1310 */ static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1310 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1310 */ -static int hf_lte_rrc_nonCriticalExtension_230 = -1; /* UE_EUTRA_Capability_v1320_IEs */ +static int hf_lte_rrc_nonCriticalExtension_257 = -1; /* UE_EUTRA_Capability_v1320_IEs */ static int hf_lte_rrc_ce_Parameters_v1320 = -1; /* CE_Parameters_v1320 */ static int hf_lte_rrc_phyLayerParameters_v1320 = -1; /* PhyLayerParameters_v1320 */ static int hf_lte_rrc_rf_Parameters_v1320 = -1; /* RF_Parameters_v1320 */ static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1320 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1320 */ static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1320 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1320 */ -static int hf_lte_rrc_nonCriticalExtension_231 = -1; /* UE_EUTRA_Capability_v1330_IEs */ +static int hf_lte_rrc_nonCriticalExtension_258 = -1; /* UE_EUTRA_Capability_v1330_IEs */ static int hf_lte_rrc_ue_CategoryDL_v1330 = -1; /* INTEGER_18_19 */ static int hf_lte_rrc_phyLayerParameters_v1330 = -1; /* PhyLayerParameters_v1330 */ static int hf_lte_rrc_ue_CE_NeedULGaps_r13_01 = -1; /* T_ue_CE_NeedULGaps_r13_01 */ -static int hf_lte_rrc_nonCriticalExtension_232 = -1; /* UE_EUTRA_Capability_v1340_IEs */ +static int hf_lte_rrc_nonCriticalExtension_259 = -1; /* UE_EUTRA_Capability_v1340_IEs */ static int hf_lte_rrc_ue_CategoryUL_v1340 = -1; /* INTEGER_15 */ -static int hf_lte_rrc_nonCriticalExtension_233 = -1; /* UE_EUTRA_Capability_v1350_IEs */ +static int hf_lte_rrc_nonCriticalExtension_260 = -1; /* UE_EUTRA_Capability_v1350_IEs */ static int hf_lte_rrc_ue_CategoryDL_v1350 = -1; /* T_ue_CategoryDL_v1350 */ static int hf_lte_rrc_ue_CategoryUL_v1350 = -1; /* T_ue_CategoryUL_v1350 */ static int hf_lte_rrc_ce_Parameters_v1350 = -1; /* CE_Parameters_v1350 */ -static int hf_lte_rrc_nonCriticalExtension_234 = -1; /* UE_EUTRA_Capability_v1360_IEs */ +static int hf_lte_rrc_nonCriticalExtension_261 = -1; /* UE_EUTRA_Capability_v1360_IEs */ static int hf_lte_rrc_other_Parameters_v1360 = -1; /* Other_Parameters_v1360 */ -static int hf_lte_rrc_nonCriticalExtension_235 = -1; /* UE_EUTRA_Capability_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_262 = -1; /* UE_EUTRA_Capability_v1430_IEs */ static int hf_lte_rrc_phyLayerParameters_v1430 = -1; /* PhyLayerParameters_v1430 */ static int hf_lte_rrc_ue_CategoryDL_v1430 = -1; /* T_ue_CategoryDL_v1430 */ static int hf_lte_rrc_ue_CategoryUL_v1430 = -1; /* T_ue_CategoryUL_v1430 */ @@ -4394,26 +5306,44 @@ static int hf_lte_rrc_mbms_Parameters_v1430 = -1; /* MBMS_Parameters_v1430 */ static int hf_lte_rrc_sl_Parameters_v1430 = -1; /* SL_Parameters_v1430 */ static int hf_lte_rrc_ue_BasedNetwPerfMeasParameters_v1430 = -1; /* UE_BasedNetwPerfMeasParameters_v1430 */ static int hf_lte_rrc_highSpeedEnhParameters_r14 = -1; /* HighSpeedEnhParameters_r14 */ -static int hf_lte_rrc_nonCriticalExtension_236 = -1; /* UE_EUTRA_Capability_v1440_IEs */ +static int hf_lte_rrc_nonCriticalExtension_263 = -1; /* UE_EUTRA_Capability_v1440_IEs */ static int hf_lte_rrc_lwa_Parameters_v1440 = -1; /* LWA_Parameters_v1440 */ static int hf_lte_rrc_mac_Parameters_v1440 = -1; /* MAC_Parameters_v1440 */ -static int hf_lte_rrc_nonCriticalExtension_237 = -1; /* UE_EUTRA_Capability_v1450_IEs */ +static int hf_lte_rrc_nonCriticalExtension_264 = -1; /* UE_EUTRA_Capability_v1450_IEs */ static int hf_lte_rrc_phyLayerParameters_v1450 = -1; /* PhyLayerParameters_v1450 */ static int hf_lte_rrc_rf_Parameters_v1450 = -1; /* RF_Parameters_v1450 */ static int hf_lte_rrc_otherParameters_v1450 = -1; /* OtherParameters_v1450 */ static int hf_lte_rrc_ue_CategoryDL_v1450 = -1; /* INTEGER_20 */ -static int hf_lte_rrc_nonCriticalExtension_238 = -1; /* UE_EUTRA_Capability_v1460_IEs */ +static int hf_lte_rrc_nonCriticalExtension_265 = -1; /* UE_EUTRA_Capability_v1460_IEs */ static int hf_lte_rrc_ue_CategoryDL_v1460 = -1; /* INTEGER_21 */ static int hf_lte_rrc_otherParameters_v1460 = -1; /* Other_Parameters_v1460 */ -static int hf_lte_rrc_nonCriticalExtension_239 = -1; /* UE_EUTRA_Capability_v1510_IEs */ +static int hf_lte_rrc_nonCriticalExtension_266 = -1; /* UE_EUTRA_Capability_v1510_IEs */ static int hf_lte_rrc_irat_ParametersNR_r15 = -1; /* IRAT_ParametersNR_r15 */ static int hf_lte_rrc_featureSetsEUTRA_r15 = -1; /* FeatureSetsEUTRA_r15 */ static int hf_lte_rrc_pdcp_ParametersNR_r15 = -1; /* PDCP_ParametersNR_r15 */ static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1510 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1510 */ static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1510 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1510 */ -static int hf_lte_rrc_nonCriticalExtension_240 = -1; /* UE_EUTRA_Capability_v1520_IEs */ +static int hf_lte_rrc_nonCriticalExtension_267 = -1; /* UE_EUTRA_Capability_v1520_IEs */ static int hf_lte_rrc_measParameters_v1520 = -1; /* MeasParameters_v1520 */ -static int hf_lte_rrc_nonCriticalExtension_241 = -1; /* T_nonCriticalExtension_71 */ +static int hf_lte_rrc_nonCriticalExtension_268 = -1; /* UE_EUTRA_Capability_v1530_IEs */ +static int hf_lte_rrc_measParameters_v1530 = -1; /* MeasParameters_v1530 */ +static int hf_lte_rrc_otherParameters_v1530 = -1; /* Other_Parameters_v1530 */ +static int hf_lte_rrc_neighCellSI_AcquisitionParameters_v1530 = -1; /* NeighCellSI_AcquisitionParameters_v1530 */ +static int hf_lte_rrc_mac_Parameters_v1530 = -1; /* MAC_Parameters_v1530 */ +static int hf_lte_rrc_phyLayerParameters_v1530 = -1; /* PhyLayerParameters_v1530 */ +static int hf_lte_rrc_rf_Parameters_v1530 = -1; /* RF_Parameters_v1530 */ +static int hf_lte_rrc_pdcp_Parameters_v1530 = -1; /* PDCP_Parameters_v1530 */ +static int hf_lte_rrc_ue_CategoryDL_v1530 = -1; /* INTEGER_22_26 */ +static int hf_lte_rrc_ue_BasedNetwPerfMeasParameters_v1530 = -1; /* UE_BasedNetwPerfMeasParameters_v1530 */ +static int hf_lte_rrc_rlc_Parameters_v1530 = -1; /* RLC_Parameters_v1530 */ +static int hf_lte_rrc_sl_Parameters_v1530 = -1; /* SL_Parameters_v1530 */ +static int hf_lte_rrc_extendedNumberOfDRBs_r15 = -1; /* T_extendedNumberOfDRBs_r15 */ +static int hf_lte_rrc_reducedCP_Latency_r15 = -1; /* T_reducedCP_Latency_r15 */ +static int hf_lte_rrc_laa_Parameters_v1530 = -1; /* LAA_Parameters_v1530 */ +static int hf_lte_rrc_ue_CategoryUL_v1530 = -1; /* INTEGER_22_26 */ +static int hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1530 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1530 */ +static int hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1530 = -1; /* UE_EUTRA_CapabilityAddXDD_Mode_v1530 */ +static int hf_lte_rrc_nonCriticalExtension_269 = -1; /* T_nonCriticalExtension_78 */ static int hf_lte_rrc_phyLayerParameters_r9 = -1; /* PhyLayerParameters */ static int hf_lte_rrc_featureGroupIndicators_r9 = -1; /* T_featureGroupIndicators_r9 */ static int hf_lte_rrc_featureGroupIndRel9Add_r9_01 = -1; /* T_featureGroupIndRel9Add_r9_01 */ @@ -4424,6 +5354,7 @@ static int hf_lte_rrc_phyLayerParameters_v1060 = -1; /* PhyLayerParameters_v102 static int hf_lte_rrc_featureGroupIndRel10_v1060 = -1; /* T_featureGroupIndRel10_v1060 */ static int hf_lte_rrc_interRAT_ParametersCDMA2000_v1060 = -1; /* IRAT_ParametersCDMA2000_1XRTT_v1020 */ static int hf_lte_rrc_interRAT_ParametersUTRA_TDD_v1060 = -1; /* IRAT_ParametersUTRA_TDD_v1020 */ +static int hf_lte_rrc_reducedCP_Latency_r15_01 = -1; /* T_reducedCP_Latency_r15_01 */ static int hf_lte_rrc_featureSetsDL_r15 = -1; /* SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15 */ static int hf_lte_rrc_featureSetsDL_r15_item = -1; /* FeatureSetDL_r15 */ static int hf_lte_rrc_featureSetsDL_PerCC_r15 = -1; /* SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15 */ @@ -4449,9 +5380,21 @@ static int hf_lte_rrc_skipUplinkSPS_r14 = -1; /* T_skipUplinkSPS_r14 */ static int hf_lte_rrc_multipleUplinkSPS_r14 = -1; /* T_multipleUplinkSPS_r14 */ static int hf_lte_rrc_dataInactMon_r14 = -1; /* T_dataInactMon_r14 */ static int hf_lte_rrc_rai_Support_r14 = -1; /* T_rai_Support_r14 */ +static int hf_lte_rrc_min_Proc_TimelineSubslot_r15 = -1; /* SEQUENCE_SIZE_1_3_OF_ProcessingTimelineSet_r15 */ +static int hf_lte_rrc_min_Proc_TimelineSubslot_r15_item = -1; /* ProcessingTimelineSet_r15 */ +static int hf_lte_rrc_skipSubframeProcessing_r15 = -1; /* SkipSubframeProcessing_r15 */ +static int hf_lte_rrc_earlyData_UP_r15 = -1; /* T_earlyData_UP_r15 */ +static int hf_lte_rrc_dormantSCellState_r15 = -1; /* T_dormantSCellState_r15 */ +static int hf_lte_rrc_directSCellActivation_r15 = -1; /* T_directSCellActivation_r15 */ +static int hf_lte_rrc_directSCellHibernation_r15 = -1; /* T_directSCellHibernation_r15 */ +static int hf_lte_rrc_extendedLCID_Duplication_r15 = -1; /* T_extendedLCID_Duplication_r15 */ +static int hf_lte_rrc_sps_ServingCell_r15 = -1; /* T_sps_ServingCell_r15 */ static int hf_lte_rrc_extended_RLC_LI_Field_r12 = -1; /* T_extended_RLC_LI_Field_r12 */ static int hf_lte_rrc_extendedRLC_SN_SO_Field_r13 = -1; /* T_extendedRLC_SN_SO_Field_r13 */ static int hf_lte_rrc_extendedPollByte_r14 = -1; /* T_extendedPollByte_r14 */ +static int hf_lte_rrc_flexibleUM_AM_Combinations_r15 = -1; /* T_flexibleUM_AM_Combinations_r15 */ +static int hf_lte_rrc_rlc_AM_Ooo_Delivery_r15 = -1; /* T_rlc_AM_Ooo_Delivery_r15 */ +static int hf_lte_rrc_rlc_UM_Ooo_Delivery_r15 = -1; /* T_rlc_UM_Ooo_Delivery_r15 */ static int hf_lte_rrc_supportedROHC_Profiles = -1; /* ROHC_ProfileSupportList_r15 */ static int hf_lte_rrc_maxNumberROHC_ContextSessions = -1; /* T_maxNumberROHC_ContextSessions */ static int hf_lte_rrc_pdcp_SN_Extension_r11 = -1; /* T_pdcp_SN_Extension_r11 */ @@ -4459,6 +5402,12 @@ static int hf_lte_rrc_supportRohcContextContinue_r11 = -1; /* T_supportRohcCont static int hf_lte_rrc_pdcp_SN_Extension_18bits_r13 = -1; /* T_pdcp_SN_Extension_18bits_r13 */ static int hf_lte_rrc_supportedUplinkOnlyROHC_Profiles_r14 = -1; /* T_supportedUplinkOnlyROHC_Profiles_r14 */ static int hf_lte_rrc_maxNumberROHC_ContextSessions_r14 = -1; /* T_maxNumberROHC_ContextSessions_r14 */ +static int hf_lte_rrc_supportedUDC_r15 = -1; /* SupportedUDC_r15 */ +static int hf_lte_rrc_pdcp_Duplication_r15_01 = -1; /* T_pdcp_Duplication_r15_01 */ +static int hf_lte_rrc_supportedStandardDic_r15 = -1; /* T_supportedStandardDic_r15 */ +static int hf_lte_rrc_supportedOperatorDic_r15 = -1; /* SupportedOperatorDic_r15 */ +static int hf_lte_rrc_versionOfDictionary_r15 = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_associatedPLMN_ID_r15 = -1; /* PLMN_Identity */ static int hf_lte_rrc_ue_TxAntennaSelectionSupported = -1; /* BOOLEAN */ static int hf_lte_rrc_ue_SpecificRefSigsSupported = -1; /* BOOLEAN */ static int hf_lte_rrc_enhancedDualLayerFDD_r9 = -1; /* T_enhancedDualLayerFDD_r9 */ @@ -4533,6 +5482,77 @@ static int hf_lte_rrc_ce_SRS_EnhancementWithoutComb4_r14 = -1; /* T_ce_SRS_Enha static int hf_lte_rrc_crs_LessDwPTS_r14 = -1; /* T_crs_LessDwPTS_r14 */ static int hf_lte_rrc_mimo_UE_Parameters_v1470 = -1; /* MIMO_UE_Parameters_v1470 */ static int hf_lte_rrc_srs_UpPTS_6sym_r14 = -1; /* T_srs_UpPTS_6sym_r14 */ +static int hf_lte_rrc_stti_SPT_Capabilities_r15 = -1; /* T_stti_SPT_Capabilities_r15 */ +static int hf_lte_rrc_aperiodicCsi_ReportingSTTI_r15 = -1; /* T_aperiodicCsi_ReportingSTTI_r15 */ +static int hf_lte_rrc_dmrs_BasedSPDCCH_MBSFN_r15 = -1; /* T_dmrs_BasedSPDCCH_MBSFN_r15 */ +static int hf_lte_rrc_dmrs_BasedSPDCCH_nonMBSFN_r15 = -1; /* T_dmrs_BasedSPDCCH_nonMBSFN_r15 */ +static int hf_lte_rrc_dmrs_PositionPattern_r15 = -1; /* T_dmrs_PositionPattern_r15 */ +static int hf_lte_rrc_dmrs_SharingSubslotPDSCH_r15 = -1; /* T_dmrs_SharingSubslotPDSCH_r15 */ +static int hf_lte_rrc_dmrs_RepetitionSubslotPDSCH_r15 = -1; /* T_dmrs_RepetitionSubslotPDSCH_r15 */ +static int hf_lte_rrc_epdcch_SPT_differentCells_r15 = -1; /* T_epdcch_SPT_differentCells_r15 */ +static int hf_lte_rrc_epdcch_STTI_differentCells_r15 = -1; /* T_epdcch_STTI_differentCells_r15 */ +static int hf_lte_rrc_maxLayersSlotOrSubslotPUSCH_r15 = -1; /* T_maxLayersSlotOrSubslotPUSCH_r15 */ +static int hf_lte_rrc_maxNumberUpdatedCSI_Proc_SPT_r15 = -1; /* INTEGER_5_32 */ +static int hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb77_r15 = -1; /* INTEGER_1_32 */ +static int hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb27_r15 = -1; /* INTEGER_1_32 */ +static int hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb22_Set1_r15 = -1; /* INTEGER_1_32 */ +static int hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb22_Set2_r15 = -1; /* INTEGER_1_32 */ +static int hf_lte_rrc_mimo_UE_ParametersSTTI_r15 = -1; /* MIMO_UE_Parameters_r13 */ +static int hf_lte_rrc_mimo_UE_ParametersSTTI_v1530 = -1; /* MIMO_UE_Parameters_v1430 */ +static int hf_lte_rrc_numberOfBlindDecodesUSS_r15 = -1; /* INTEGER_4_32 */ +static int hf_lte_rrc_pdsch_SlotSubslotPDSCH_Decoding_r15 = -1; /* T_pdsch_SlotSubslotPDSCH_Decoding_r15 */ +static int hf_lte_rrc_powerUCI_SlotPUSCH = -1; /* T_powerUCI_SlotPUSCH */ +static int hf_lte_rrc_powerUCI_SubslotPUSCH = -1; /* T_powerUCI_SubslotPUSCH */ +static int hf_lte_rrc_slotPDSCH_TxDiv_TM9and10 = -1; /* T_slotPDSCH_TxDiv_TM9and10 */ +static int hf_lte_rrc_subslotPDSCH_TxDiv_TM9and10 = -1; /* T_subslotPDSCH_TxDiv_TM9and10 */ +static int hf_lte_rrc_spdcch_differentRS_types_r15 = -1; /* T_spdcch_differentRS_types_r15 */ +static int hf_lte_rrc_srs_DCI7_TriggeringFS2_r15 = -1; /* T_srs_DCI7_TriggeringFS2_r15 */ +static int hf_lte_rrc_sps_cyclicShift_r15 = -1; /* T_sps_cyclicShift_r15 */ +static int hf_lte_rrc_spdcch_Reuse_r15 = -1; /* T_spdcch_Reuse_r15 */ +static int hf_lte_rrc_sps_STTI_r15 = -1; /* T_sps_STTI_r15 */ +static int hf_lte_rrc_tm8_slotPDSCH_r15 = -1; /* T_tm8_slotPDSCH_r15 */ +static int hf_lte_rrc_tm9_slotSubslot_r15 = -1; /* T_tm9_slotSubslot_r15 */ +static int hf_lte_rrc_tm9_slotSubslotMBSFN_r15 = -1; /* T_tm9_slotSubslotMBSFN_r15 */ +static int hf_lte_rrc_tm10_slotSubslot_r15 = -1; /* T_tm10_slotSubslot_r15 */ +static int hf_lte_rrc_tm10_slotSubslotMBSFN_r15 = -1; /* T_tm10_slotSubslotMBSFN_r15 */ +static int hf_lte_rrc_txDiv_SPUCCH_r15 = -1; /* T_txDiv_SPUCCH_r15 */ +static int hf_lte_rrc_ul_AsyncHarqSharingDiff_TTI_Lengths_r15 = -1; /* T_ul_AsyncHarqSharingDiff_TTI_Lengths_r15 */ +static int hf_lte_rrc_ce_Capabilities_r15 = -1; /* T_ce_Capabilities_r15 */ +static int hf_lte_rrc_ce_CRS_IntfMitig_r15 = -1; /* T_ce_CRS_IntfMitig_r15 */ +static int hf_lte_rrc_ce_CQI_AlternativeTable_r15 = -1; /* T_ce_CQI_AlternativeTable_r15 */ +static int hf_lte_rrc_ce_PDSCH_FlexibleStartPRB_CE_ModeA_r15 = -1; /* T_ce_PDSCH_FlexibleStartPRB_CE_ModeA_r15 */ +static int hf_lte_rrc_ce_PDSCH_FlexibleStartPRB_CE_ModeB_r15 = -1; /* T_ce_PDSCH_FlexibleStartPRB_CE_ModeB_r15 */ +static int hf_lte_rrc_ce_PDSCH_64QAM_r15 = -1; /* T_ce_PDSCH_64QAM_r15 */ +static int hf_lte_rrc_ce_PUSCH_FlexibleStartPRB_CE_ModeA_r15 = -1; /* T_ce_PUSCH_FlexibleStartPRB_CE_ModeA_r15 */ +static int hf_lte_rrc_ce_PUSCH_FlexibleStartPRB_CE_ModeB_r15 = -1; /* T_ce_PUSCH_FlexibleStartPRB_CE_ModeB_r15 */ +static int hf_lte_rrc_ce_PUSCH_SubPRB_Allocation_r15 = -1; /* T_ce_PUSCH_SubPRB_Allocation_r15 */ +static int hf_lte_rrc_ce_UL_HARQ_ACK_Feedback_r15 = -1; /* T_ce_UL_HARQ_ACK_Feedback_r15 */ +static int hf_lte_rrc_shortCQI_ForSCellActivation_r15 = -1; /* T_shortCQI_ForSCellActivation_r15 */ +static int hf_lte_rrc_mimo_CBSR_AdvancedCSI_r15 = -1; /* T_mimo_CBSR_AdvancedCSI_r15 */ +static int hf_lte_rrc_crs_IntfMitig_r15 = -1; /* T_crs_IntfMitig_r15 */ +static int hf_lte_rrc_ul_PowerControlEnhancements_r15 = -1; /* T_ul_PowerControlEnhancements_r15 */ +static int hf_lte_rrc_urllc_Capabilities_r15 = -1; /* T_urllc_Capabilities_r15 */ +static int hf_lte_rrc_pdsch_RepSubframe_r15 = -1; /* T_pdsch_RepSubframe_r15 */ +static int hf_lte_rrc_pdsch_RepSlot_r15 = -1; /* T_pdsch_RepSlot_r15 */ +static int hf_lte_rrc_pdsch_RepSubslot_r15 = -1; /* T_pdsch_RepSubslot_r15 */ +static int hf_lte_rrc_pusch_SPS_MultiConfigSubframe_r15 = -1; /* INTEGER_0_6 */ +static int hf_lte_rrc_pusch_SPS_MaxConfigSubframe_r15 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_pusch_SPS_MultiConfigSlot_r15 = -1; /* INTEGER_0_6 */ +static int hf_lte_rrc_pusch_SPS_MaxConfigSlot_r15 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_pusch_SPS_MultiConfigSubslot_r15 = -1; /* INTEGER_0_6 */ +static int hf_lte_rrc_pusch_SPS_MaxConfigSubslot_r15 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_pusch_SPS_SlotRepPCell_r15 = -1; /* T_pusch_SPS_SlotRepPCell_r15 */ +static int hf_lte_rrc_pusch_SPS_SlotRepPSCell_r15 = -1; /* T_pusch_SPS_SlotRepPSCell_r15 */ +static int hf_lte_rrc_pusch_SPS_SlotRepSCell_r15 = -1; /* T_pusch_SPS_SlotRepSCell_r15 */ +static int hf_lte_rrc_pusch_SPS_SubframeRepPCell_r15 = -1; /* T_pusch_SPS_SubframeRepPCell_r15 */ +static int hf_lte_rrc_pusch_SPS_SubframeRepPSCell_r15 = -1; /* T_pusch_SPS_SubframeRepPSCell_r15 */ +static int hf_lte_rrc_pusch_SPS_SubframeRepSCell_r15 = -1; /* T_pusch_SPS_SubframeRepSCell_r15 */ +static int hf_lte_rrc_pusch_SPS_SubslotRepPCell_r15 = -1; /* T_pusch_SPS_SubslotRepPCell_r15 */ +static int hf_lte_rrc_pusch_SPS_SubslotRepPSCell_r15 = -1; /* T_pusch_SPS_SubslotRepPSCell_r15 */ +static int hf_lte_rrc_pusch_SPS_SubslotRepSCell_r15 = -1; /* T_pusch_SPS_SubslotRepSCell_r15 */ +static int hf_lte_rrc_semiStaticCFI_r15 = -1; /* T_semiStaticCFI_r15 */ +static int hf_lte_rrc_semiStaticCFI_Pattern_r15 = -1; /* T_semiStaticCFI_Pattern_r15 */ +static int hf_lte_rrc_altMCS_Table_r15 = -1; /* T_altMCS_Table_r15 */ static int hf_lte_rrc_parametersTM9_r13 = -1; /* MIMO_UE_ParametersPerTM_r13 */ static int hf_lte_rrc_parametersTM10_r13 = -1; /* MIMO_UE_ParametersPerTM_r13 */ static int hf_lte_rrc_srs_EnhancementsTDD_r13 = -1; /* T_srs_EnhancementsTDD_r13 */ @@ -4641,6 +5661,41 @@ static int hf_lte_rrc_supportedBandCombinationReduced_v1450 = -1; /* SupportedB static int hf_lte_rrc_supportedBandCombination_v1470 = -1; /* SupportedBandCombination_v1470 */ static int hf_lte_rrc_supportedBandCombinationAdd_v1470 = -1; /* SupportedBandCombinationAdd_v1470 */ static int hf_lte_rrc_supportedBandCombinationReduced_v1470 = -1; /* SupportedBandCombinationReduced_v1470 */ +static int hf_lte_rrc_sTTI_SPT_Supported_r15 = -1; /* T_sTTI_SPT_Supported_r15 */ +static int hf_lte_rrc_supportedBandCombination_v1530 = -1; /* SupportedBandCombination_v1530 */ +static int hf_lte_rrc_supportedBandCombinationAdd_v1530 = -1; /* SupportedBandCombinationAdd_v1530 */ +static int hf_lte_rrc_supportedBandCombinationReduced_v1530 = -1; /* SupportedBandCombinationReduced_v1530 */ +static int hf_lte_rrc_powerClass_14dBm_r15 = -1; /* T_powerClass_14dBm_r15 */ +static int hf_lte_rrc_skipProcessingDL_Slot_r15 = -1; /* INTEGER_0_3 */ +static int hf_lte_rrc_skipProcessingDL_SubSlot_r15 = -1; /* INTEGER_0_3 */ +static int hf_lte_rrc_skipProcessingUL_Slot_r15 = -1; /* INTEGER_0_3 */ +static int hf_lte_rrc_skipProcessingUL_SubSlot_r15 = -1; /* INTEGER_0_3 */ +static int hf_lte_rrc_frameStructureType_SPT_r15 = -1; /* BIT_STRING_SIZE_3 */ +static int hf_lte_rrc_maxNumberCCs_SPT_r15 = -1; /* INTEGER_1_32 */ +static int hf_lte_rrc_dl_1024QAM_Slot_r15 = -1; /* T_dl_1024QAM_Slot_r15 */ +static int hf_lte_rrc_dl_1024QAM_SubslotTA_1_r15 = -1; /* T_dl_1024QAM_SubslotTA_1_r15 */ +static int hf_lte_rrc_dl_1024QAM_SubslotTA_2_r15 = -1; /* T_dl_1024QAM_SubslotTA_2_r15 */ +static int hf_lte_rrc_simultaneousTx_differentTx_duration_r15 = -1; /* T_simultaneousTx_differentTx_duration_r15 */ +static int hf_lte_rrc_sTTI_CA_MIMO_ParametersDL_r15 = -1; /* CA_MIMO_ParametersDL_r15 */ +static int hf_lte_rrc_sTTI_CA_MIMO_ParametersUL_r15 = -1; /* CA_MIMO_ParametersUL_r15 */ +static int hf_lte_rrc_sTTI_FD_MIMO_Coexistence = -1; /* T_sTTI_FD_MIMO_Coexistence */ +static int hf_lte_rrc_sTTI_MIMO_CA_ParametersPerBoBCs_r15 = -1; /* MIMO_CA_ParametersPerBoBC_r13 */ +static int hf_lte_rrc_sTTI_MIMO_CA_ParametersPerBoBCs_v1530 = -1; /* MIMO_CA_ParametersPerBoBC_v1430 */ +static int hf_lte_rrc_sTTI_SupportedCombinations_r15 = -1; /* STTI_SupportedCombinations_r15 */ +static int hf_lte_rrc_sTTI_SupportedCSI_Proc_r15 = -1; /* T_sTTI_SupportedCSI_Proc_r15 */ +static int hf_lte_rrc_ul_256QAM_Slot_r15 = -1; /* T_ul_256QAM_Slot_r15 */ +static int hf_lte_rrc_ul_256QAM_Subslot_r15 = -1; /* T_ul_256QAM_Subslot_r15 */ +static int hf_lte_rrc_combination_22_r15 = -1; /* DL_UL_CCs_r15 */ +static int hf_lte_rrc_combination_77_r15 = -1; /* DL_UL_CCs_r15 */ +static int hf_lte_rrc_combination_27_r15 = -1; /* DL_UL_CCs_r15 */ +static int hf_lte_rrc_combination_22_27_r15 = -1; /* SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15 */ +static int hf_lte_rrc_combination_22_27_r15_item = -1; /* DL_UL_CCs_r15 */ +static int hf_lte_rrc_combination_77_22_r15 = -1; /* SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15 */ +static int hf_lte_rrc_combination_77_22_r15_item = -1; /* DL_UL_CCs_r15 */ +static int hf_lte_rrc_combination_77_27_r15 = -1; /* SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15 */ +static int hf_lte_rrc_combination_77_27_r15_item = -1; /* DL_UL_CCs_r15 */ +static int hf_lte_rrc_maxNumberDL_CCs_r15 = -1; /* INTEGER_1_32 */ +static int hf_lte_rrc_maxNumberUL_CCs_r15 = -1; /* INTEGER_1_32 */ static int hf_lte_rrc_SupportedBandCombination_r10_item = -1; /* BandCombinationParameters_r10 */ static int hf_lte_rrc_SupportedBandCombinationExt_r10_item = -1; /* BandCombinationParametersExt_r10 */ static int hf_lte_rrc_SupportedBandCombination_v1090_item = -1; /* BandCombinationParameters_v1090 */ @@ -4654,6 +5709,7 @@ static int hf_lte_rrc_SupportedBandCombination_v1390_item = -1; /* BandCombinat static int hf_lte_rrc_SupportedBandCombination_v1430_item = -1; /* BandCombinationParameters_v1430 */ static int hf_lte_rrc_SupportedBandCombination_v1450_item = -1; /* BandCombinationParameters_v1450 */ static int hf_lte_rrc_SupportedBandCombination_v1470_item = -1; /* BandCombinationParameters_v1470 */ +static int hf_lte_rrc_SupportedBandCombination_v1530_item = -1; /* BandCombinationParameters_v1530 */ static int hf_lte_rrc_SupportedBandCombinationAdd_r11_item = -1; /* BandCombinationParameters_r11 */ static int hf_lte_rrc_SupportedBandCombinationAdd_v11d0_item = -1; /* BandCombinationParameters_v10i0 */ static int hf_lte_rrc_SupportedBandCombinationAdd_v1250_item = -1; /* BandCombinationParameters_v1250 */ @@ -4664,6 +5720,7 @@ static int hf_lte_rrc_SupportedBandCombinationAdd_v1390_item = -1; /* BandCombi static int hf_lte_rrc_SupportedBandCombinationAdd_v1430_item = -1; /* BandCombinationParameters_v1430 */ static int hf_lte_rrc_SupportedBandCombinationAdd_v1450_item = -1; /* BandCombinationParameters_v1450 */ static int hf_lte_rrc_SupportedBandCombinationAdd_v1470_item = -1; /* BandCombinationParameters_v1470 */ +static int hf_lte_rrc_SupportedBandCombinationAdd_v1530_item = -1; /* BandCombinationParameters_v1530 */ static int hf_lte_rrc_SupportedBandCombinationReduced_r13_item = -1; /* BandCombinationParameters_r13 */ static int hf_lte_rrc_SupportedBandCombinationReduced_v1320_item = -1; /* BandCombinationParameters_v1320 */ static int hf_lte_rrc_SupportedBandCombinationReduced_v1380_item = -1; /* BandCombinationParameters_v1380 */ @@ -4671,6 +5728,7 @@ static int hf_lte_rrc_SupportedBandCombinationReduced_v1390_item = -1; /* BandC static int hf_lte_rrc_SupportedBandCombinationReduced_v1430_item = -1; /* BandCombinationParameters_v1430 */ static int hf_lte_rrc_SupportedBandCombinationReduced_v1450_item = -1; /* BandCombinationParameters_v1450 */ static int hf_lte_rrc_SupportedBandCombinationReduced_v1470_item = -1; /* BandCombinationParameters_v1470 */ +static int hf_lte_rrc_SupportedBandCombinationReduced_v1530_item = -1; /* BandCombinationParameters_v1530 */ static int hf_lte_rrc_BandCombinationParameters_r10_item = -1; /* BandParameters_r10 */ static int hf_lte_rrc_supportedBandwidthCombinationSet_r10 = -1; /* SupportedBandwidthCombinationSet_r10 */ static int hf_lte_rrc_BandCombinationParameters_v1090_item = -1; /* BandParameters_v1090 */ @@ -4726,6 +5784,9 @@ static int hf_lte_rrc_bandParameterList_v1450_item = -1; /* BandParameters_v145 static int hf_lte_rrc_bandParameterList_v1470 = -1; /* SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470 */ static int hf_lte_rrc_bandParameterList_v1470_item = -1; /* BandParameters_v1470 */ static int hf_lte_rrc_srs_MaxSimultaneousCCs_r14 = -1; /* INTEGER_1_31 */ +static int hf_lte_rrc_bandParameterList_v1530 = -1; /* SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1530 */ +static int hf_lte_rrc_bandParameterList_v1530_item = -1; /* BandParameters_v1530 */ +static int hf_lte_rrc_spt_Parameters_r15 = -1; /* SPT_Parameters_r15 */ static int hf_lte_rrc_bandEUTRA_r10 = -1; /* T_bandEUTRA_r10 */ static int hf_lte_rrc_bandParametersUL_r10 = -1; /* BandParametersUL_r10 */ static int hf_lte_rrc_bandParametersDL_r10 = -1; /* BandParametersDL_r10 */ @@ -4754,9 +5815,17 @@ static int hf_lte_rrc_retuningTimeInfoBandList_r14 = -1; /* SEQUENCE_SIZE_1_max static int hf_lte_rrc_retuningTimeInfoBandList_r14_item = -1; /* RetuningTimeInfo_r14 */ static int hf_lte_rrc_must_CapabilityPerBand_r14 = -1; /* MUST_Parameters_r14 */ static int hf_lte_rrc_bandParametersDL_v1470 = -1; /* MIMO_CA_ParametersPerBoBC_v1470 */ +static int hf_lte_rrc_ue_TxAntennaSelection_SRS_1T4R_r15 = -1; /* T_ue_TxAntennaSelection_SRS_1T4R_r15 */ +static int hf_lte_rrc_ue_TxAntennaSelection_SRS_2T4R_2Pairs_r15 = -1; /* T_ue_TxAntennaSelection_SRS_2T4R_2Pairs_r15 */ +static int hf_lte_rrc_ue_TxAntennaSelection_SRS_2T4R_3Pairs_r15 = -1; /* T_ue_TxAntennaSelection_SRS_2T4R_3Pairs_r15 */ +static int hf_lte_rrc_dl_1024QAM_r15 = -1; /* T_dl_1024QAM_r15 */ +static int hf_lte_rrc_qcl_TypeC_Operation_r15 = -1; /* T_qcl_TypeC_Operation_r15 */ +static int hf_lte_rrc_qcl_CRI_BasedCSI_Reporting_r15 = -1; /* T_qcl_CRI_BasedCSI_Reporting_r15 */ +static int hf_lte_rrc_stti_SPT_BandParameters_r15 = -1; /* STTI_SPT_BandParameters_r15 */ static int hf_lte_rrc_v2x_FreqBandEUTRA_r14 = -1; /* FreqBandIndicator_r11 */ static int hf_lte_rrc_bandParametersTxSL_r14 = -1; /* BandParametersTxSL_r14 */ static int hf_lte_rrc_bandParametersRxSL_r14 = -1; /* BandParametersRxSL_r14 */ +static int hf_lte_rrc_v2x_EnhancedHighReception_r15 = -1; /* T_v2x_EnhancedHighReception_r15 */ static int hf_lte_rrc_v2x_BandwidthClassTxSL_r14 = -1; /* V2X_BandwidthClassSL_r14 */ static int hf_lte_rrc_v2x_eNB_Scheduled_r14 = -1; /* T_v2x_eNB_Scheduled_r14 */ static int hf_lte_rrc_v2x_HighPower_r14 = -1; /* T_v2x_HighPower_r14 */ @@ -4788,6 +5857,9 @@ static int hf_lte_rrc_supportedMIMO_CapabilityDL_r13 = -1; /* MIMO_CapabilityDL static int hf_lte_rrc_fourLayerTM3_TM4_r13 = -1; /* T_fourLayerTM3_TM4_r13 */ static int hf_lte_rrc_intraBandContiguousCC_InfoList_r13 = -1; /* SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12 */ static int hf_lte_rrc_intraBandContiguousCC_InfoList_r13_item = -1; /* IntraBandContiguousCC_Info_r12 */ +static int hf_lte_rrc_fourLayerTM3_TM4_r15_01 = -1; /* T_fourLayerTM3_TM4_r15_01 */ +static int hf_lte_rrc_intraBandContiguousCC_InfoList_r15 = -1; /* SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12 */ +static int hf_lte_rrc_intraBandContiguousCC_InfoList_r15_item = -1; /* IntraBandContiguousCC_Info_r12 */ static int hf_lte_rrc_fourLayerTM3_TM4_perCC_r12 = -1; /* T_fourLayerTM3_TM4_perCC_r12 */ static int hf_lte_rrc_supportedMIMO_CapabilityDL_r12 = -1; /* MIMO_CapabilityDL_r10 */ static int hf_lte_rrc_supportedCSI_Proc_r12 = -1; /* T_supportedCSI_Proc_r12 */ @@ -4835,6 +5907,12 @@ static int hf_lte_rrc_shortMeasurementGap_r14 = -1; /* T_shortMeasurementGap_r1 static int hf_lte_rrc_perServingCellMeasurementGap_r14 = -1; /* T_perServingCellMeasurementGap_r14 */ static int hf_lte_rrc_nonUniformGap_r14 = -1; /* T_nonUniformGap_r14 */ static int hf_lte_rrc_measGapPatterns_v1520 = -1; /* T_measGapPatterns_v1520 */ +static int hf_lte_rrc_qoe_MeasReport_r15 = -1; /* T_qoe_MeasReport_r15 */ +static int hf_lte_rrc_qoe_MTSI_MeasReport_r15 = -1; /* T_qoe_MTSI_MeasReport_r15 */ +static int hf_lte_rrc_ca_IdleModeMeasurements_r15 = -1; /* T_ca_IdleModeMeasurements_r15 */ +static int hf_lte_rrc_ca_IdleModeValidityArea_r15 = -1; /* T_ca_IdleModeValidityArea_r15 */ +static int hf_lte_rrc_heightMeas_r15 = -1; /* T_heightMeas_r15 */ +static int hf_lte_rrc_multipleCellsMeasExtension_r15 = -1; /* T_multipleCellsMeasExtension_r15 */ static int hf_lte_rrc_BandListEUTRA_item = -1; /* BandInfoEUTRA */ static int hf_lte_rrc_BandCombinationListEUTRA_r10_item = -1; /* BandInfoEUTRA */ static int hf_lte_rrc_interFreqBandList = -1; /* InterFreqBandList */ @@ -4864,7 +5942,7 @@ static int hf_lte_rrc_profile0x0102_r15 = -1; /* BOOLEAN */ static int hf_lte_rrc_profile0x0103_r15 = -1; /* BOOLEAN */ static int hf_lte_rrc_profile0x0104_r15 = -1; /* BOOLEAN */ static int hf_lte_rrc_SupportedBandListNR_r15_item = -1; /* SupportedBandNR_r15 */ -static int hf_lte_rrc_bandNR_r15 = -1; /* FreqBandIndicatorNR_r15 */ +static int hf_lte_rrc_bandNR_r15_01 = -1; /* FreqBandIndicatorNR_r15 */ static int hf_lte_rrc_supportedBandListUTRA_FDD = -1; /* SupportedBandListUTRA_FDD */ static int hf_lte_rrc_e_RedirectionUTRA_r9 = -1; /* T_e_RedirectionUTRA_r9 */ static int hf_lte_rrc_voiceOverPS_HS_UTRA_FDD_r9 = -1; /* T_voiceOverPS_HS_UTRA_FDD_r9 */ @@ -4907,11 +5985,17 @@ static int hf_lte_rrc_utran_ProximityIndication_r9 = -1; /* T_utran_ProximityIn static int hf_lte_rrc_intraFreqSI_AcquisitionForHO_r9 = -1; /* T_intraFreqSI_AcquisitionForHO_r9 */ static int hf_lte_rrc_interFreqSI_AcquisitionForHO_r9 = -1; /* T_interFreqSI_AcquisitionForHO_r9 */ static int hf_lte_rrc_utran_SI_AcquisitionForHO_r9 = -1; /* T_utran_SI_AcquisitionForHO_r9 */ +static int hf_lte_rrc_reportCGI_NR_EN_DC_r15 = -1; /* T_reportCGI_NR_EN_DC_r15 */ +static int hf_lte_rrc_reportCGI_NR_NoEN_DC_r15 = -1; /* T_reportCGI_NR_NoEN_DC_r15 */ static int hf_lte_rrc_rach_Report_r9_01 = -1; /* T_rach_Report_r9_01 */ static int hf_lte_rrc_loggedMeasurementsIdle_r10 = -1; /* T_loggedMeasurementsIdle_r10 */ static int hf_lte_rrc_standaloneGNSS_Location_r10 = -1; /* T_standaloneGNSS_Location_r10 */ static int hf_lte_rrc_loggedMBSFNMeasurements_r12 = -1; /* T_loggedMBSFNMeasurements_r12 */ static int hf_lte_rrc_locationReport_r14 = -1; /* T_locationReport_r14 */ +static int hf_lte_rrc_loggedMeasBT_r15 = -1; /* T_loggedMeasBT_r15 */ +static int hf_lte_rrc_loggedMeasWLAN_r15 = -1; /* T_loggedMeasWLAN_r15 */ +static int hf_lte_rrc_immMeasBT_r15 = -1; /* T_immMeasBT_r15 */ +static int hf_lte_rrc_immMeasWLAN_r15 = -1; /* T_immMeasWLAN_r15 */ static int hf_lte_rrc_otdoa_UE_Assisted_r10 = -1; /* T_otdoa_UE_Assisted_r10 */ static int hf_lte_rrc_interFreqRSTD_Measurement_r10 = -1; /* T_interFreqRSTD_Measurement_r10 */ static int hf_lte_rrc_inDeviceCoexInd_r11 = -1; /* T_inDeviceCoexInd_r11 */ @@ -4923,6 +6007,9 @@ static int hf_lte_rrc_bwPrefInd_r14 = -1; /* T_bwPrefInd_r14 */ static int hf_lte_rrc_rlm_ReportSupport_r14 = -1; /* T_rlm_ReportSupport_r14 */ static int hf_lte_rrc_overheatingInd_r14 = -1; /* T_overheatingInd_r14 */ static int hf_lte_rrc_nonCSG_SI_Reporting_r14 = -1; /* T_nonCSG_SI_Reporting_r14 */ +static int hf_lte_rrc_assistInfoBitForLC_r15 = -1; /* T_assistInfoBitForLC_r15 */ +static int hf_lte_rrc_timeReferenceProvision_r15 = -1; /* T_timeReferenceProvision_r15 */ +static int hf_lte_rrc_flightPathPlan_r15 = -1; /* T_flightPathPlan_r15 */ static int hf_lte_rrc_mbms_SCell_r11 = -1; /* T_mbms_SCell_r11 */ static int hf_lte_rrc_mbms_NonServingCell_r11 = -1; /* T_mbms_NonServingCell_r11 */ static int hf_lte_rrc_mbms_AsyncDC_r12 = -1; /* T_mbms_AsyncDC_r12 */ @@ -4965,6 +6052,10 @@ static int hf_lte_rrc_twoStepSchedulingTimingInfo_r14 = -1; /* T_twoStepSchedul static int hf_lte_rrc_uss_BlindDecodingAdjustment_r14 = -1; /* T_uss_BlindDecodingAdjustment_r14 */ static int hf_lte_rrc_uss_BlindDecodingReduction_r14 = -1; /* T_uss_BlindDecodingReduction_r14 */ static int hf_lte_rrc_outOfSequenceGrantHandling_r14 = -1; /* T_outOfSequenceGrantHandling_r14 */ +static int hf_lte_rrc_aul_r15 = -1; /* T_aul_r15 */ +static int hf_lte_rrc_laa_PUSCH_Mode1_r15 = -1; /* T_laa_PUSCH_Mode1_r15 */ +static int hf_lte_rrc_laa_PUSCH_Mode2_r15 = -1; /* T_laa_PUSCH_Mode2_r15 */ +static int hf_lte_rrc_laa_PUSCH_Mode3_r15 = -1; /* T_laa_PUSCH_Mode3_r15 */ static int hf_lte_rrc_wlan_IW_RAN_Rules_r12 = -1; /* T_wlan_IW_RAN_Rules_r12 */ static int hf_lte_rrc_wlan_IW_ANDSF_Policies_r12 = -1; /* T_wlan_IW_ANDSF_Policies_r12 */ static int hf_lte_rrc_lwa_r13 = -1; /* T_lwa_r13 */ @@ -5004,8 +6095,17 @@ static int hf_lte_rrc_v2x_numberTxRxTiming_r14 = -1; /* INTEGER_1_16 */ static int hf_lte_rrc_v2x_nonAdjacentPSCCH_PSSCH_r14 = -1; /* T_v2x_nonAdjacentPSCCH_PSSCH_r14 */ static int hf_lte_rrc_slss_TxRx_r14 = -1; /* T_slss_TxRx_r14 */ static int hf_lte_rrc_v2x_SupportedBandCombinationList_r14 = -1; /* V2X_SupportedBandCombination_r14 */ +static int hf_lte_rrc_slss_SupportedTxFreq_r15 = -1; /* T_slss_SupportedTxFreq_r15 */ +static int hf_lte_rrc_sl_64QAM_Tx_r15 = -1; /* T_sl_64QAM_Tx_r15 */ +static int hf_lte_rrc_sl_TxDiversity_r15 = -1; /* T_sl_TxDiversity_r15 */ +static int hf_lte_rrc_ue_CategorySL_r15 = -1; /* UE_CategorySL_r15 */ +static int hf_lte_rrc_v2x_SupportedBandCombinationList_v1530 = -1; /* V2X_SupportedBandCombination_v1530 */ +static int hf_lte_rrc_ue_CategorySL_C_TX_r15 = -1; /* INTEGER_1_5 */ +static int hf_lte_rrc_ue_CategorySL_C_RX_r15 = -1; /* INTEGER_1_4 */ static int hf_lte_rrc_V2X_SupportedBandCombination_r14_item = -1; /* V2X_BandCombinationParameters_r14 */ +static int hf_lte_rrc_V2X_SupportedBandCombination_v1530_item = -1; /* V2X_BandCombinationParameters_v1530 */ static int hf_lte_rrc_V2X_BandCombinationParameters_r14_item = -1; /* V2X_BandParameters_r14 */ +static int hf_lte_rrc_V2X_BandCombinationParameters_v1530_item = -1; /* V2X_BandParameters_v1530 */ static int hf_lte_rrc_SupportedBandInfoList_r12_item = -1; /* SupportedBandInfo_r12 */ static int hf_lte_rrc_support_r12 = -1; /* T_support_r12 */ static int hf_lte_rrc_FreqBandIndicatorListEUTRA_r12_item = -1; /* FreqBandIndicator_r11 */ @@ -5023,6 +6123,10 @@ static int hf_lte_rrc_ue_Category_v1250 = -1; /* INTEGER_0 */ static int hf_lte_rrc_ue_CategoryDL_v1310_01 = -1; /* T_ue_CategoryDL_v1310_01 */ static int hf_lte_rrc_ce_ModeA_r13_01 = -1; /* T_ce_ModeA_r13_01 */ static int hf_lte_rrc_ce_ModeB_r13_02 = -1; /* T_ce_ModeB_r13_02 */ +static int hf_lte_rrc_wakeUpSignal_r15 = -1; /* T_wakeUpSignal_r15 */ +static int hf_lte_rrc_wakeUpSignal_TDD_r15 = -1; /* T_wakeUpSignal_TDD_r15 */ +static int hf_lte_rrc_wakeUpSignalMinGap_eDRX_r15 = -1; /* T_wakeUpSignalMinGap_eDRX_r15 */ +static int hf_lte_rrc_wakeUpSignalMinGap_eDRX_TDD_r15 = -1; /* T_wakeUpSignalMinGap_eDRX_TDD_r15 */ static int hf_lte_rrc_t300 = -1; /* T_t300 */ static int hf_lte_rrc_t301 = -1; /* T_t301 */ static int hf_lte_rrc_t310 = -1; /* T_t310 */ @@ -5032,6 +6136,7 @@ static int hf_lte_rrc_n311 = -1; /* T_n311 */ static int hf_lte_rrc_t300_v1310 = -1; /* T_t300_v1310 */ static int hf_lte_rrc_t301_v1310_01 = -1; /* T_t301_v1310_01 */ static int hf_lte_rrc_t310_v1330_01 = -1; /* T_t310_v1330_01 */ +static int hf_lte_rrc_t300_r15 = -1; /* T_t300_r15 */ static int hf_lte_rrc_VisitedCellInfoList_r12_item = -1; /* VisitedCellInfo_r12 */ static int hf_lte_rrc_visitedCellId_r12 = -1; /* T_visitedCellId_r12 */ static int hf_lte_rrc_cellGlobalId_r12 = -1; /* CellGlobalIdEUTRA */ @@ -5164,8 +6269,19 @@ static int hf_lte_rrc_defaultTxConfigIndex_r14 = -1; /* INTEGER_0_maxCBR_Level_ static int hf_lte_rrc_cbr_ConfigIndex_r14 = -1; /* INTEGER_0_maxSL_V2X_CBRConfig_1_r14 */ static int hf_lte_rrc_tx_ConfigIndexList_r14 = -1; /* SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14 */ static int hf_lte_rrc_tx_ConfigIndexList_r14_item = -1; /* Tx_ConfigIndex_r14 */ +static int hf_lte_rrc_SL_CBR_PPPP_TxConfigList_v1530_item = -1; /* SL_PPPP_TxConfigIndex_v1530 */ +static int hf_lte_rrc_mcs_PSSCH_RangeList_r15 = -1; /* SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_MCS_PSSCH_Range_r15 */ +static int hf_lte_rrc_mcs_PSSCH_RangeList_r15_item = -1; /* MCS_PSSCH_Range_r15 */ +static int hf_lte_rrc_minMCS_PSSCH_r15 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_maxMCS_PSSCH_r15 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_SL_CBR_PPPP_TxConfigList_r15_item = -1; /* SL_PPPP_TxConfigIndex_r15 */ +static int hf_lte_rrc_priorityThreshold_r15 = -1; /* SL_Priority_r13 */ +static int hf_lte_rrc_defaultTxConfigIndex_r15 = -1; /* INTEGER_0_maxCBR_Level_1_r14 */ +static int hf_lte_rrc_cbr_ConfigIndex_r15 = -1; /* INTEGER_0_maxSL_V2X_CBRConfig_1_r14 */ +static int hf_lte_rrc_tx_ConfigIndexList_r15 = -1; /* SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14 */ +static int hf_lte_rrc_tx_ConfigIndexList_r15_item = -1; /* Tx_ConfigIndex_r14 */ static int hf_lte_rrc_commTxResources_r12 = -1; /* T_commTxResources_r12 */ -static int hf_lte_rrc_setup_133 = -1; /* T_setup_117 */ +static int hf_lte_rrc_setup_179 = -1; /* T_setup_156 */ static int hf_lte_rrc_scheduled_r12 = -1; /* T_scheduled_r12 */ static int hf_lte_rrc_sl_RNTI_r12 = -1; /* C_RNTI */ static int hf_lte_rrc_mac_MainConfig_r12 = -1; /* MAC_MainConfigSL_r12 */ @@ -5176,7 +6292,7 @@ static int hf_lte_rrc_commTxPoolNormalDedicated_r12 = -1; /* T_commTxPoolNormal static int hf_lte_rrc_poolToReleaseList_r12 = -1; /* SL_TxPoolToReleaseList_r12 */ static int hf_lte_rrc_poolToAddModList_r12 = -1; /* SL_CommTxPoolToAddModList_r12 */ static int hf_lte_rrc_commTxResources_v1310 = -1; /* T_commTxResources_v1310 */ -static int hf_lte_rrc_setup_134 = -1; /* T_setup_118 */ +static int hf_lte_rrc_setup_180 = -1; /* T_setup_157 */ static int hf_lte_rrc_scheduled_v1310 = -1; /* T_scheduled_v1310 */ static int hf_lte_rrc_logicalChGroupInfoList_r13 = -1; /* LogicalChGroupInfoList_r13 */ static int hf_lte_rrc_multipleTx_r13 = -1; /* BOOLEAN */ @@ -5226,12 +6342,16 @@ static int hf_lte_rrc_tdd_Config_r14 = -1; /* TDD_Config */ static int hf_lte_rrc_syncConfigIndex_r14 = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_dataTxParameters_r14 = -1; /* SL_TxParameters_r12 */ static int hf_lte_rrc_zoneID_r14 = -1; /* INTEGER_0_7 */ -static int hf_lte_rrc_threshS_RSSI_CBR_r14 = -1; /* INTEGER_0_45 */ static int hf_lte_rrc_poolReportId_r14 = -1; /* SL_V2X_TxPoolReportIdentity_r14 */ static int hf_lte_rrc_cbr_pssch_TxConfigList_r14 = -1; /* SL_CBR_PPPP_TxConfigList_r14 */ static int hf_lte_rrc_resourceSelectionConfigP2X_r14 = -1; /* SL_P2X_ResourceSelectionConfig_r14 */ static int hf_lte_rrc_syncAllowed_r14 = -1; /* SL_SyncAllowed_r14 */ static int hf_lte_rrc_restrictResourceReservationPeriod_r14 = -1; /* SL_RestrictResourceReservationPeriodList_r14 */ +static int hf_lte_rrc_sl_MinT2ValueList_r15 = -1; /* SL_MinT2ValueList_r15 */ +static int hf_lte_rrc_cbr_pssch_TxConfigList_v1530 = -1; /* SL_CBR_PPPP_TxConfigList_v1530 */ +static int hf_lte_rrc_SL_MinT2ValueList_r15_item = -1; /* SL_MinT2Value_r15 */ +static int hf_lte_rrc_priorityList_r15 = -1; /* SL_PriorityList_r13 */ +static int hf_lte_rrc_minT2Value_r15 = -1; /* INTEGER_10_20 */ static int hf_lte_rrc_pssch_TxConfigList_r14 = -1; /* SL_PSSCH_TxConfigList_r14 */ static int hf_lte_rrc_thresPSSCH_RSRP_List_r14 = -1; /* SL_ThresPSSCH_RSRP_List_r14 */ static int hf_lte_rrc_probResourceKeep_r14 = -1; /* T_probResourceKeep_r14 */ @@ -5240,7 +6360,7 @@ static int hf_lte_rrc_minNumCandidateSF_r14 = -1; /* INTEGER_1_13 */ static int hf_lte_rrc_gapCandidateSensing_r14 = -1; /* BIT_STRING_SIZE_10 */ static int hf_lte_rrc_sl_ReselectAfter_r14 = -1; /* T_sl_ReselectAfter_r14 */ static int hf_lte_rrc_discTxResources_r12 = -1; /* T_discTxResources_r12 */ -static int hf_lte_rrc_setup_135 = -1; /* T_setup_119 */ +static int hf_lte_rrc_setup_181 = -1; /* T_setup_158 */ static int hf_lte_rrc_scheduled_r12_01 = -1; /* T_scheduled_r12_01 */ static int hf_lte_rrc_discTxConfig_r12 = -1; /* SL_DiscResourcePool_r12 */ static int hf_lte_rrc_discTF_IndexList_r12 = -1; /* SL_TF_IndexPairList_r12 */ @@ -5249,24 +6369,24 @@ static int hf_lte_rrc_ue_Selected_r12_01 = -1; /* T_ue_Selected_r12_01 */ static int hf_lte_rrc_discTxPoolDedicated_r12 = -1; /* T_discTxPoolDedicated_r12 */ static int hf_lte_rrc_poolToAddModList_r12_01 = -1; /* SL_DiscTxPoolToAddModList_r12 */ static int hf_lte_rrc_discTF_IndexList_v1260 = -1; /* T_discTF_IndexList_v1260 */ -static int hf_lte_rrc_setup_136 = -1; /* T_setup_120 */ +static int hf_lte_rrc_setup_182 = -1; /* T_setup_159 */ static int hf_lte_rrc_discTF_IndexList_r12b = -1; /* SL_TF_IndexPairList_r12b */ static int hf_lte_rrc_discTxResourcesPS_r13 = -1; /* T_discTxResourcesPS_r13 */ -static int hf_lte_rrc_setup_137 = -1; /* T_setup_121 */ +static int hf_lte_rrc_setup_183 = -1; /* T_setup_160 */ static int hf_lte_rrc_scheduled_r13 = -1; /* SL_DiscTxConfigScheduled_r13 */ static int hf_lte_rrc_ue_Selected_r13 = -1; /* T_ue_Selected_r13 */ static int hf_lte_rrc_discTxPoolPS_Dedicated_r13 = -1; /* SL_DiscTxPoolDedicated_r13 */ static int hf_lte_rrc_discTxInterFreqInfo_r13 = -1; /* T_discTxInterFreqInfo_r13 */ -static int hf_lte_rrc_setup_138 = -1; /* T_setup_122 */ +static int hf_lte_rrc_setup_184 = -1; /* T_setup_161 */ static int hf_lte_rrc_discTxCarrierFreq_r13 = -1; /* ARFCN_ValueEUTRA_r9 */ static int hf_lte_rrc_discTxRefCarrierDedicated_r13 = -1; /* SL_DiscTxRefCarrierDedicated_r13 */ static int hf_lte_rrc_discTxInfoInterFreqListAdd_r13 = -1; /* SL_DiscTxInfoInterFreqListAdd_r13 */ static int hf_lte_rrc_gapRequestsAllowedDedicated_r13 = -1; /* BOOLEAN */ static int hf_lte_rrc_discRxGapConfig_r13 = -1; /* T_discRxGapConfig_r13 */ -static int hf_lte_rrc_setup_139 = -1; /* SL_GapConfig_r13 */ +static int hf_lte_rrc_setup_185 = -1; /* SL_GapConfig_r13 */ static int hf_lte_rrc_discTxGapConfig_r13 = -1; /* T_discTxGapConfig_r13 */ static int hf_lte_rrc_discSysInfoToReportConfig_r13 = -1; /* T_discSysInfoToReportConfig_r13 */ -static int hf_lte_rrc_setup_140 = -1; /* SL_DiscSysInfoToReportFreqList_r13 */ +static int hf_lte_rrc_setup_186 = -1; /* SL_DiscSysInfoToReportFreqList_r13 */ static int hf_lte_rrc_SL_DiscSysInfoToReportFreqList_r13_item = -1; /* ARFCN_ValueEUTRA_r9 */ static int hf_lte_rrc_discTxFreqToAddModList_r13 = -1; /* SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13 */ static int hf_lte_rrc_discTxFreqToAddModList_r13_item = -1; /* SL_DiscTxResourceInfoPerFreq_r13 */ @@ -5274,7 +6394,7 @@ static int hf_lte_rrc_discTxFreqToReleaseList_r13 = -1; /* SEQUENCE_SIZE_1_maxF static int hf_lte_rrc_discTxFreqToReleaseList_r13_item = -1; /* ARFCN_ValueEUTRA_r9 */ static int hf_lte_rrc_discTxResources_r13 = -1; /* SL_DiscTxResource_r13 */ static int hf_lte_rrc_discTxResourcesPS_r13_01 = -1; /* SL_DiscTxResource_r13 */ -static int hf_lte_rrc_setup_141 = -1; /* T_setup_123 */ +static int hf_lte_rrc_setup_187 = -1; /* T_setup_162 */ static int hf_lte_rrc_ue_Selected_r13_01 = -1; /* SL_DiscTxPoolDedicated_r13 */ static int hf_lte_rrc_SL_DiscTxPoolToAddModList_r12_item = -1; /* SL_DiscTxPoolToAddMod_r12 */ static int hf_lte_rrc_pool_r12_01 = -1; /* SL_DiscResourcePool_r12 */ @@ -5307,18 +6427,18 @@ static int hf_lte_rrc_random_r12 = -1; /* NULL */ static int hf_lte_rrc_txProbability_r12 = -1; /* T_txProbability_r12 */ static int hf_lte_rrc_rxParameters_r12 = -1; /* T_rxParameters_r12 */ static int hf_lte_rrc_discPeriod_v1310 = -1; /* T_discPeriod_v1310 */ -static int hf_lte_rrc_setup_142 = -1; /* T_setup_124 */ +static int hf_lte_rrc_setup_188 = -1; /* T_setup_163 */ static int hf_lte_rrc_rxParamsAddNeighFreq_r13 = -1; /* T_rxParamsAddNeighFreq_r13 */ -static int hf_lte_rrc_setup_143 = -1; /* T_setup_125 */ +static int hf_lte_rrc_setup_189 = -1; /* T_setup_164 */ static int hf_lte_rrc_physCellId_r13_01 = -1; /* PhysCellIdList_r13 */ static int hf_lte_rrc_txParamsAddNeighFreq_r13 = -1; /* T_txParamsAddNeighFreq_r13 */ -static int hf_lte_rrc_setup_144 = -1; /* T_setup_126 */ +static int hf_lte_rrc_setup_190 = -1; /* T_setup_165 */ static int hf_lte_rrc_tdd_Config_r13 = -1; /* TDD_Config */ static int hf_lte_rrc_freqInfo_01 = -1; /* T_freqInfo_01 */ static int hf_lte_rrc_ul_Bandwidth_02 = -1; /* T_ul_Bandwidth_02 */ static int hf_lte_rrc_syncConfigIndex_r13 = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_txParamsAddNeighFreq_v1370 = -1; /* T_txParamsAddNeighFreq_v1370 */ -static int hf_lte_rrc_setup_145 = -1; /* T_setup_127 */ +static int hf_lte_rrc_setup_191 = -1; /* T_setup_166 */ static int hf_lte_rrc_freqInfo_v1370 = -1; /* T_freqInfo_v1370 */ static int hf_lte_rrc_additionalSpectrumEmission_v1370 = -1; /* AdditionalSpectrumEmission_v10l0 */ static int hf_lte_rrc_PhysCellIdList_r13_item = -1; /* PhysCellId */ @@ -5378,12 +6498,15 @@ static int hf_lte_rrc_SL_PSSCH_TxConfigList_r14_item = -1; /* SL_PSSCH_TxConfig static int hf_lte_rrc_thresUE_Speed_r14 = -1; /* T_thresUE_Speed_r14 */ static int hf_lte_rrc_parametersAboveThres_r14 = -1; /* SL_PSSCH_TxParameters_r14 */ static int hf_lte_rrc_parametersBelowThres_r14 = -1; /* SL_PSSCH_TxParameters_r14 */ +static int hf_lte_rrc_parametersAboveThres_v1530 = -1; /* SL_PSSCH_TxParameters_v1530 */ +static int hf_lte_rrc_parametersBelowThres_v1530 = -1; /* SL_PSSCH_TxParameters_v1530 */ static int hf_lte_rrc_minMCS_PSSCH_r14 = -1; /* INTEGER_0_31 */ static int hf_lte_rrc_maxMCS_PSSCH_r14 = -1; /* INTEGER_0_31 */ static int hf_lte_rrc_minSubChannel_NumberPSSCH_r14 = -1; /* INTEGER_1_20 */ static int hf_lte_rrc_maxSubchannel_NumberPSSCH_r14 = -1; /* INTEGER_1_20 */ static int hf_lte_rrc_allowedRetxNumberPSSCH_r14 = -1; /* T_allowedRetxNumberPSSCH_r14 */ static int hf_lte_rrc_maxTxPower_r14 = -1; /* SL_TxPower_r14 */ +static int hf_lte_rrc_SL_ReliabilityList_r15_item = -1; /* SL_Reliability_r15 */ static int hf_lte_rrc_SL_RestrictResourceReservationPeriodList_r14_item = -1; /* SL_RestrictResourceReservationPeriod_r14 */ static int hf_lte_rrc_gnss_Sync_r14 = -1; /* T_gnss_Sync_r14 */ static int hf_lte_rrc_enb_Sync_r14 = -1; /* T_enb_Sync_r14 */ @@ -5404,6 +6527,7 @@ static int hf_lte_rrc_syncOffsetIndicator_v1430 = -1; /* SL_OffsetIndicatorSync static int hf_lte_rrc_gnss_Sync_r14_01 = -1; /* T_gnss_Sync_r14_01 */ static int hf_lte_rrc_syncOffsetIndicator2_r14 = -1; /* SL_OffsetIndicatorSync_r14 */ static int hf_lte_rrc_syncOffsetIndicator3_r14 = -1; /* SL_OffsetIndicatorSync_r14 */ +static int hf_lte_rrc_slss_TxDisabled_r15 = -1; /* T_slss_TxDisabled_r15 */ static int hf_lte_rrc_SL_SyncConfigListNFreq_r13_item = -1; /* SL_SyncConfigNFreq_r13 */ static int hf_lte_rrc_SL_SyncConfigListNFreqV2X_r14_item = -1; /* SL_SyncConfigNFreq_r13 */ static int hf_lte_rrc_asyncParameters_r13 = -1; /* T_asyncParameters_r13 */ @@ -5418,6 +6542,7 @@ static int hf_lte_rrc_syncTxPeriodic_r13_01 = -1; /* T_syncTxPeriodic_r13_01 */ static int hf_lte_rrc_rxParameters_r13 = -1; /* T_rxParameters_r13 */ static int hf_lte_rrc_discSyncWindow_r13 = -1; /* T_discSyncWindow_r13 */ static int hf_lte_rrc_gnss_Sync_r14_02 = -1; /* T_gnss_Sync_r14_02 */ +static int hf_lte_rrc_slss_TxDisabled_r15_01 = -1; /* T_slss_TxDisabled_r15_01 */ static int hf_lte_rrc_prb_Num_r12 = -1; /* INTEGER_1_100 */ static int hf_lte_rrc_prb_Start_r12 = -1; /* INTEGER_0_99 */ static int hf_lte_rrc_prb_End_r12 = -1; /* INTEGER_0_99 */ @@ -5446,7 +6571,7 @@ static int hf_lte_rrc_p0_r12 = -1; /* P0_SL_r12 */ static int hf_lte_rrc_SL_TxPoolToReleaseList_r12_item = -1; /* SL_TxPoolIdentity_r12 */ static int hf_lte_rrc_SL_TxPoolToReleaseListExt_r13_item = -1; /* SL_TxPoolIdentity_v1310 */ static int hf_lte_rrc_commTxResources_r14 = -1; /* T_commTxResources_r14 */ -static int hf_lte_rrc_setup_146 = -1; /* T_setup_128 */ +static int hf_lte_rrc_setup_192 = -1; /* T_setup_167 */ static int hf_lte_rrc_scheduled_r14 = -1; /* T_scheduled_r14 */ static int hf_lte_rrc_sl_V_RNTI_r14 = -1; /* C_RNTI */ static int hf_lte_rrc_mac_MainConfig_r14 = -1; /* MAC_MainConfigSL_r12 */ @@ -5458,10 +6583,31 @@ static int hf_lte_rrc_poolToReleaseList_r14 = -1; /* SL_TxPoolToReleaseListV2X_ static int hf_lte_rrc_poolToAddModList_r14 = -1; /* SL_TxPoolToAddModListV2X_r14 */ static int hf_lte_rrc_v2x_CommTxPoolSensingConfig_r14 = -1; /* SL_CommTxPoolSensingConfig_r14 */ static int hf_lte_rrc_cbr_DedicatedTxConfigList_r14 = -1; /* SL_CBR_CommonTxConfigList_r14 */ +static int hf_lte_rrc_commTxResources_v1530 = -1; /* T_commTxResources_v1530 */ +static int hf_lte_rrc_setup_193 = -1; /* T_setup_168 */ +static int hf_lte_rrc_scheduled_v1530 = -1; /* T_scheduled_v1530 */ +static int hf_lte_rrc_logicalChGroupInfoList_v1530 = -1; /* LogicalChGroupInfoList_v1530 */ +static int hf_lte_rrc_mcs_r15 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_ue_Selected_v1530 = -1; /* T_ue_Selected_v1530 */ +static int hf_lte_rrc_slss_TxMultiFreq_r15_01 = -1; /* T_slss_TxMultiFreq_r15_01 */ +static int hf_lte_rrc_LogicalChGroupInfoList_v1530_item = -1; /* SL_ReliabilityList_r15 */ static int hf_lte_rrc_SL_TxPoolToAddModListV2X_r14_item = -1; /* SL_TxPoolToAddMod_r14 */ static int hf_lte_rrc_poolIdentity_r14_01 = -1; /* SL_V2X_TxPoolIdentity_r14 */ static int hf_lte_rrc_pool_r14 = -1; /* SL_CommResourcePoolV2X_r14 */ static int hf_lte_rrc_SL_TxPoolToReleaseListV2X_r14_item = -1; /* SL_V2X_TxPoolIdentity_r14 */ +static int hf_lte_rrc_SL_V2X_FreqSelectionConfigList_r15_item = -1; /* SL_V2X_FreqSelectionConfig_r15 */ +static int hf_lte_rrc_threshCBR_FreqReselection_r15 = -1; /* SL_CBR_r14 */ +static int hf_lte_rrc_threshCBR_FreqKeeping_r15 = -1; /* SL_CBR_r14 */ +static int hf_lte_rrc_threshSL_Reliability_r15 = -1; /* SL_Reliability_r15 */ +static int hf_lte_rrc_allowedCarrierFreqConfig_r15 = -1; /* SL_PPPR_Dest_CarrierFreqList_r15 */ +static int hf_lte_rrc_SL_PPPR_Dest_CarrierFreqList_r15_item = -1; /* SL_PPPR_Dest_CarrierFreq */ +static int hf_lte_rrc_destinationInfoList_r15 = -1; /* SL_DestinationInfoList_r12 */ +static int hf_lte_rrc_allowedCarrierFreqList_r15 = -1; /* SL_AllowedCarrierFreqList_r15 */ +static int hf_lte_rrc_allowedCarrierFreqSet1 = -1; /* SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9 */ +static int hf_lte_rrc_allowedCarrierFreqSet1_item = -1; /* ARFCN_ValueEUTRA_r9 */ +static int hf_lte_rrc_allowedCarrierFreqSet2 = -1; /* SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9 */ +static int hf_lte_rrc_allowedCarrierFreqSet2_item = -1; /* ARFCN_ValueEUTRA_r9 */ +static int hf_lte_rrc_SL_V2X_SyncFreqList_r15_item = -1; /* ARFCN_ValueEUTRA_r9 */ static int hf_lte_rrc_zoneLength_r14 = -1; /* T_zoneLength_r14 */ static int hf_lte_rrc_zoneWidth_r14 = -1; /* T_zoneWidth_r14 */ static int hf_lte_rrc_zoneIdLongiMod_r14 = -1; /* INTEGER_1_4 */ @@ -5480,39 +6626,39 @@ static int hf_lte_rrc_directFrameNumber_r14 = -1; /* BIT_STRING_SIZE_10 */ static int hf_lte_rrc_directSubframeNumber_r14 = -1; /* INTEGER_0_9 */ static int hf_lte_rrc_inCoverage_r14 = -1; /* BOOLEAN */ static int hf_lte_rrc_reserved_r14 = -1; /* BIT_STRING_SIZE_27 */ -static int hf_lte_rrc_criticalExtensions_53 = -1; /* T_criticalExtensions_53 */ +static int hf_lte_rrc_criticalExtensions_56 = -1; /* T_criticalExtensions_56 */ static int hf_lte_rrc_c1_50 = -1; /* T_c1_50 */ static int hf_lte_rrc_handoverPreparationInformation_r13 = -1; /* HandoverPreparationInformation_NB_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_53 = -1; /* T_criticalExtensionsFuture_53 */ +static int hf_lte_rrc_criticalExtensionsFuture_55 = -1; /* T_criticalExtensionsFuture_55 */ static int hf_lte_rrc_ue_RadioAccessCapabilityInfo_r13 = -1; /* UE_Capability_NB_r13 */ static int hf_lte_rrc_as_Config_r13 = -1; /* AS_Config_NB */ static int hf_lte_rrc_rrm_Config_r13 = -1; /* RRM_Config_NB */ static int hf_lte_rrc_as_Context_r13 = -1; /* AS_Context_NB */ -static int hf_lte_rrc_nonCriticalExtension_242 = -1; /* HandoverPreparationInformation_NB_v1380_IEs */ -static int hf_lte_rrc_nonCriticalExtension_243 = -1; /* HandoverPreparationInformation_NB_Ext_r14_IEs */ +static int hf_lte_rrc_nonCriticalExtension_270 = -1; /* HandoverPreparationInformation_NB_v1380_IEs */ +static int hf_lte_rrc_nonCriticalExtension_271 = -1; /* HandoverPreparationInformation_NB_Ext_r14_IEs */ static int hf_lte_rrc_ue_RadioAccessCapabilityInfoExt_r14 = -1; /* T_ue_RadioAccessCapabilityInfoExt_r14 */ -static int hf_lte_rrc_nonCriticalExtension_244 = -1; /* T_nonCriticalExtension_72 */ -static int hf_lte_rrc_criticalExtensions_54 = -1; /* T_criticalExtensions_54 */ +static int hf_lte_rrc_nonCriticalExtension_272 = -1; /* T_nonCriticalExtension_79 */ +static int hf_lte_rrc_criticalExtensions_57 = -1; /* T_criticalExtensions_57 */ static int hf_lte_rrc_c1_51 = -1; /* T_c1_51 */ static int hf_lte_rrc_uePagingCoverageInformation_r13_01 = -1; /* UEPagingCoverageInformation_NB_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_54 = -1; /* T_criticalExtensionsFuture_54 */ +static int hf_lte_rrc_criticalExtensionsFuture_56 = -1; /* T_criticalExtensionsFuture_56 */ static int hf_lte_rrc_npdcch_NumRepetitionPaging_r13 = -1; /* INTEGER_1_2048 */ -static int hf_lte_rrc_nonCriticalExtension_245 = -1; /* T_nonCriticalExtension_73 */ -static int hf_lte_rrc_criticalExtensions_55 = -1; /* T_criticalExtensions_55 */ +static int hf_lte_rrc_nonCriticalExtension_273 = -1; /* T_nonCriticalExtension_80 */ +static int hf_lte_rrc_criticalExtensions_58 = -1; /* T_criticalExtensions_58 */ static int hf_lte_rrc_c1_52 = -1; /* T_c1_52 */ static int hf_lte_rrc_ueRadioAccessCapabilityInformation_r13 = -1; /* UERadioAccessCapabilityInformation_NB_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_55 = -1; /* T_criticalExtensionsFuture_55 */ +static int hf_lte_rrc_criticalExtensionsFuture_57 = -1; /* T_criticalExtensionsFuture_57 */ static int hf_lte_rrc_ue_RadioAccessCapabilityInfo_r13_01 = -1; /* T_ue_RadioAccessCapabilityInfo_r13 */ -static int hf_lte_rrc_nonCriticalExtension_246 = -1; /* UERadioAccessCapabilityInformation_NB_v1380_IEs */ -static int hf_lte_rrc_nonCriticalExtension_247 = -1; /* UERadioAccessCapabilityInformation_NB_r14_IEs */ +static int hf_lte_rrc_nonCriticalExtension_274 = -1; /* UERadioAccessCapabilityInformation_NB_v1380_IEs */ +static int hf_lte_rrc_nonCriticalExtension_275 = -1; /* UERadioAccessCapabilityInformation_NB_r14_IEs */ static int hf_lte_rrc_ue_RadioAccessCapabilityInfo_r14 = -1; /* T_ue_RadioAccessCapabilityInfo_r14 */ -static int hf_lte_rrc_nonCriticalExtension_248 = -1; /* T_nonCriticalExtension_74 */ -static int hf_lte_rrc_criticalExtensions_56 = -1; /* T_criticalExtensions_56 */ +static int hf_lte_rrc_nonCriticalExtension_276 = -1; /* T_nonCriticalExtension_81 */ +static int hf_lte_rrc_criticalExtensions_59 = -1; /* T_criticalExtensions_59 */ static int hf_lte_rrc_c1_53 = -1; /* T_c1_53 */ static int hf_lte_rrc_ueRadioPagingInformation_r13 = -1; /* UERadioPagingInformation_NB_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_56 = -1; /* T_criticalExtensionsFuture_56 */ +static int hf_lte_rrc_criticalExtensionsFuture_58 = -1; /* T_criticalExtensionsFuture_58 */ static int hf_lte_rrc_ue_RadioPagingInfo_r13 = -1; /* T_ue_RadioPagingInfo_r13 */ -static int hf_lte_rrc_nonCriticalExtension_249 = -1; /* T_nonCriticalExtension_75 */ +static int hf_lte_rrc_nonCriticalExtension_277 = -1; /* T_nonCriticalExtension_82 */ static int hf_lte_rrc_sourceRadioResourceConfig_r13 = -1; /* RadioResourceConfigDedicated_NB_r13 */ static int hf_lte_rrc_sourceSecurityAlgorithmConfig_r13 = -1; /* SecurityAlgorithmConfig */ static int hf_lte_rrc_sourceUE_Identity_r13 = -1; /* C_RNTI */ @@ -5523,23 +6669,25 @@ static int hf_lte_rrc_targetCellShortMAC_I_r13 = -1; /* ShortMAC_I */ static int hf_lte_rrc_additionalReestabInfoList_r13 = -1; /* AdditionalReestabInfoList */ static int hf_lte_rrc_ue_InactiveTime_01 = -1; /* T_ue_InactiveTime_01 */ static int hf_lte_rrc_message_14 = -1; /* BCCH_BCH_MessageType_NB */ -static int hf_lte_rrc_message_15 = -1; /* BCCH_DL_SCH_MessageType_NB */ +static int hf_lte_rrc_message_15 = -1; /* BCCH_BCH_MessageType_TDD_NB_r15 */ +static int hf_lte_rrc_message_16 = -1; /* BCCH_DL_SCH_MessageType_NB */ static int hf_lte_rrc_c1_54 = -1; /* T_c1_54 */ static int hf_lte_rrc_systemInformation_r13 = -1; /* SystemInformation_NB */ static int hf_lte_rrc_systemInformationBlockType1_r13 = -1; /* SystemInformationBlockType1_NB */ static int hf_lte_rrc_messageClassExtension_10 = -1; /* T_messageClassExtension_10 */ -static int hf_lte_rrc_message_16 = -1; /* PCCH_MessageType_NB */ +static int hf_lte_rrc_message_17 = -1; /* PCCH_MessageType_NB */ static int hf_lte_rrc_c1_55 = -1; /* T_c1_55 */ static int hf_lte_rrc_paging_r13 = -1; /* Paging_NB */ static int hf_lte_rrc_messageClassExtension_11 = -1; /* T_messageClassExtension_11 */ -static int hf_lte_rrc_message_17 = -1; /* DL_CCCH_MessageType_NB */ +static int hf_lte_rrc_message_18 = -1; /* DL_CCCH_MessageType_NB */ static int hf_lte_rrc_c1_56 = -1; /* T_c1_56 */ static int hf_lte_rrc_rrcConnectionReestablishment_r13 = -1; /* RRCConnectionReestablishment_NB */ static int hf_lte_rrc_rrcConnectionReestablishmentReject_r13 = -1; /* RRCConnectionReestablishmentReject */ static int hf_lte_rrc_rrcConnectionReject_r13 = -1; /* RRCConnectionReject_NB */ static int hf_lte_rrc_rrcConnectionSetup_r13 = -1; /* RRCConnectionSetup_NB */ +static int hf_lte_rrc_rrcEarlyDataComplete_r15_02 = -1; /* RRCEarlyDataComplete_NB_r15 */ static int hf_lte_rrc_messageClassExtension_12 = -1; /* T_messageClassExtension_12 */ -static int hf_lte_rrc_message_18 = -1; /* DL_DCCH_MessageType_NB */ +static int hf_lte_rrc_message_19 = -1; /* DL_DCCH_MessageType_NB */ static int hf_lte_rrc_c1_57 = -1; /* T_c1_57 */ static int hf_lte_rrc_dlInformationTransfer_r13 = -1; /* DLInformationTransfer_NB */ static int hf_lte_rrc_rrcConnectionReconfiguration_r13 = -1; /* RRCConnectionReconfiguration_NB */ @@ -5548,17 +6696,18 @@ static int hf_lte_rrc_securityModeCommand_r13 = -1; /* SecurityModeCommand */ static int hf_lte_rrc_ueCapabilityEnquiry_r13 = -1; /* UECapabilityEnquiry_NB */ static int hf_lte_rrc_rrcConnectionResume_r13_02 = -1; /* RRCConnectionResume_NB */ static int hf_lte_rrc_messageClassExtension_13 = -1; /* T_messageClassExtension_13 */ -static int hf_lte_rrc_message_19 = -1; /* UL_CCCH_MessageType_NB */ +static int hf_lte_rrc_message_20 = -1; /* UL_CCCH_MessageType_NB */ static int hf_lte_rrc_c1_58 = -1; /* T_c1_58 */ static int hf_lte_rrc_rrcConnectionReestablishmentRequest_r13 = -1; /* RRCConnectionReestablishmentRequest_NB */ static int hf_lte_rrc_rrcConnectionRequest_r13 = -1; /* RRCConnectionRequest_NB */ static int hf_lte_rrc_rrcConnectionResumeRequest_r13_02 = -1; /* RRCConnectionResumeRequest_NB */ +static int hf_lte_rrc_rrcEarlyDataRequest_r15_02 = -1; /* RRCEarlyDataRequest_NB_r15 */ static int hf_lte_rrc_messageClassExtension_14 = -1; /* T_messageClassExtension_14 */ -static int hf_lte_rrc_message_20 = -1; /* SC_MCCH_MessageType_NB */ +static int hf_lte_rrc_message_21 = -1; /* SC_MCCH_MessageType_NB */ static int hf_lte_rrc_c1_59 = -1; /* T_c1_59 */ static int hf_lte_rrc_scptmConfiguration_r14 = -1; /* SCPTMConfiguration_NB_r14 */ static int hf_lte_rrc_messageClassExtension_15 = -1; /* T_messageClassExtension_15 */ -static int hf_lte_rrc_message_21 = -1; /* UL_DCCH_MessageType_NB */ +static int hf_lte_rrc_message_22 = -1; /* UL_DCCH_MessageType_NB */ static int hf_lte_rrc_c1_60 = -1; /* T_c1_60 */ static int hf_lte_rrc_rrcConnectionReconfigurationComplete_r13 = -1; /* RRCConnectionReconfigurationComplete_NB */ static int hf_lte_rrc_rrcConnectionReestablishmentComplete_r13 = -1; /* RRCConnectionReestablishmentComplete_NB */ @@ -5570,11 +6719,11 @@ static int hf_lte_rrc_ulInformationTransfer_r13 = -1; /* ULInformationTransfer_ static int hf_lte_rrc_rrcConnectionResumeComplete_r13_02 = -1; /* RRCConnectionResumeComplete_NB */ static int hf_lte_rrc_spare8 = -1; /* NULL */ static int hf_lte_rrc_messageClassExtension_16 = -1; /* T_messageClassExtension_16 */ -static int hf_lte_rrc_criticalExtensions_57 = -1; /* T_criticalExtensions_57 */ +static int hf_lte_rrc_criticalExtensions_60 = -1; /* T_criticalExtensions_60 */ static int hf_lte_rrc_c1_61 = -1; /* T_c1_61 */ static int hf_lte_rrc_dlInformationTransfer_r13_01 = -1; /* DLInformationTransfer_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_57 = -1; /* T_criticalExtensionsFuture_57 */ -static int hf_lte_rrc_nonCriticalExtension_250 = -1; /* T_nonCriticalExtension_76 */ +static int hf_lte_rrc_criticalExtensionsFuture_59 = -1; /* T_criticalExtensionsFuture_59 */ +static int hf_lte_rrc_nonCriticalExtension_278 = -1; /* T_nonCriticalExtension_83 */ static int hf_lte_rrc_systemFrameNumber_MSB_r13 = -1; /* BIT_STRING_SIZE_4 */ static int hf_lte_rrc_hyperSFN_LSB_r13 = -1; /* BIT_STRING_SIZE_2 */ static int hf_lte_rrc_schedulingInfoSIB1_r13 = -1; /* INTEGER_0_15 */ @@ -5585,124 +6734,165 @@ static int hf_lte_rrc_inband_SamePCI_r13 = -1; /* Inband_SamePCI_NB_r13 */ static int hf_lte_rrc_inband_DifferentPCI_r13 = -1; /* Inband_DifferentPCI_NB_r13 */ static int hf_lte_rrc_guardband_r13 = -1; /* Guardband_NB_r13 */ static int hf_lte_rrc_standalone_r13 = -1; /* Standalone_NB_r13 */ -static int hf_lte_rrc_spare_05 = -1; /* BIT_STRING_SIZE_11 */ +static int hf_lte_rrc_additionalTransmissionSIB1_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_spare_05 = -1; /* BIT_STRING_SIZE_10 */ static int hf_lte_rrc_rasterOffset_r13 = -1; /* ChannelRasterOffset_NB_r13 */ static int hf_lte_rrc_spare_06 = -1; /* BIT_STRING_SIZE_3 */ static int hf_lte_rrc_eutra_CRS_SequenceInfo_r13 = -1; /* INTEGER_0_31 */ static int hf_lte_rrc_eutra_NumCRS_Ports_r13 = -1; /* T_eutra_NumCRS_Ports_r13 */ +static int hf_lte_rrc_spare_07 = -1; /* BIT_STRING_SIZE_5 */ +static int hf_lte_rrc_systemFrameNumber_MSB_r15 = -1; /* BIT_STRING_SIZE_4 */ +static int hf_lte_rrc_hyperSFN_LSB_r15 = -1; /* BIT_STRING_SIZE_2 */ +static int hf_lte_rrc_schedulingInfoSIB1_r15 = -1; /* INTEGER_0_15 */ +static int hf_lte_rrc_systemInfoValueTag_r15 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_ab_Enabled_r15 = -1; /* BOOLEAN */ +static int hf_lte_rrc_operationModeInfo_r15 = -1; /* T_operationModeInfo_r15 */ +static int hf_lte_rrc_inband_SamePCI_r15 = -1; /* Inband_SamePCI_TDD_NB_r15 */ +static int hf_lte_rrc_inband_DifferentPCI_r15 = -1; /* Inband_DifferentPCI_TDD_NB_r15 */ +static int hf_lte_rrc_guardband_r15 = -1; /* GuardbandTDD_NB_r15 */ +static int hf_lte_rrc_standalone_r15 = -1; /* StandaloneTDD_NB_r15 */ +static int hf_lte_rrc_sib1_CarrierInfo_r15 = -1; /* T_sib1_CarrierInfo_r15 */ +static int hf_lte_rrc_spare_08 = -1; /* BIT_STRING_SIZE_9 */ +static int hf_lte_rrc_rasterOffset_r15 = -1; /* ChannelRasterOffset_NB_r13 */ +static int hf_lte_rrc_sib_GuardbandInfo_r15 = -1; /* T_sib_GuardbandInfo_r15 */ +static int hf_lte_rrc_sib_GuardbandAnchor_r15 = -1; /* SIB_GuardbandAnchorTDD_NB_r15 */ +static int hf_lte_rrc_sib_GuardbandGuardband_r15 = -1; /* SIB_GuardbandGuardbandTDD_NB_r15 */ +static int hf_lte_rrc_sib_GuardbandInbandSamePCI_r15 = -1; /* SIB_GuardbandInbandSamePCI_TDD_NB_r15 */ +static int hf_lte_rrc_sib_GuardbandinbandDiffPCI_r15 = -1; /* SIB_GuardbandInbandDiffPCI_TDD_NB_r15 */ +static int hf_lte_rrc_eutra_Bandwitdh_r15 = -1; /* T_eutra_Bandwitdh_r15 */ +static int hf_lte_rrc_eutra_CRS_SequenceInfo_r15 = -1; /* INTEGER_0_31 */ +static int hf_lte_rrc_sib_InbandLocation_r15 = -1; /* T_sib_InbandLocation_r15 */ +static int hf_lte_rrc_eutra_NumCRS_Ports_r15 = -1; /* T_eutra_NumCRS_Ports_r15 */ +static int hf_lte_rrc_sib_InbandLocation_r15_01 = -1; /* T_sib_InbandLocation_r15_01 */ +static int hf_lte_rrc_sib_StandaloneLocation_r15 = -1; /* T_sib_StandaloneLocation_r15 */ +static int hf_lte_rrc_sib_GuardbandGuardbandLocation_r15 = -1; /* T_sib_GuardbandGuardbandLocation_r15 */ +static int hf_lte_rrc_sib_EUTRA_NumCRS_Ports_r15 = -1; /* T_sib_EUTRA_NumCRS_Ports_r15 */ static int hf_lte_rrc_pagingRecordList_r13 = -1; /* PagingRecordList_NB_r13 */ static int hf_lte_rrc_systemInfoModification_r13 = -1; /* T_systemInfoModification_r13 */ static int hf_lte_rrc_systemInfoModification_eDRX_r13_01 = -1; /* T_systemInfoModification_eDRX_r13_01 */ -static int hf_lte_rrc_nonCriticalExtension_251 = -1; /* T_nonCriticalExtension_77 */ +static int hf_lte_rrc_nonCriticalExtension_279 = -1; /* T_nonCriticalExtension_84 */ static int hf_lte_rrc_PagingRecordList_NB_r13_item = -1; /* PagingRecord_NB_r13 */ static int hf_lte_rrc_ue_Identity_r13 = -1; /* PagingUE_Identity */ -static int hf_lte_rrc_criticalExtensions_58 = -1; /* T_criticalExtensions_58 */ +static int hf_lte_rrc_criticalExtensions_61 = -1; /* T_criticalExtensions_61 */ static int hf_lte_rrc_c1_62 = -1; /* T_c1_62 */ static int hf_lte_rrc_rrcConnectionReconfiguration_r13_01 = -1; /* RRCConnectionReconfiguration_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_58 = -1; /* T_criticalExtensionsFuture_58 */ +static int hf_lte_rrc_criticalExtensionsFuture_60 = -1; /* T_criticalExtensionsFuture_60 */ static int hf_lte_rrc_dedicatedInfoNASList_r13 = -1; /* SEQUENCE_SIZE_1_maxDRB_NB_r13_OF_DedicatedInfoNAS */ static int hf_lte_rrc_dedicatedInfoNASList_r13_item = -1; /* DedicatedInfoNAS */ static int hf_lte_rrc_radioResourceConfigDedicated_r13_01 = -1; /* RadioResourceConfigDedicated_NB_r13 */ static int hf_lte_rrc_fullConfig_r13 = -1; /* T_fullConfig_r13 */ -static int hf_lte_rrc_nonCriticalExtension_252 = -1; /* T_nonCriticalExtension_78 */ -static int hf_lte_rrc_criticalExtensions_59 = -1; /* T_criticalExtensions_59 */ +static int hf_lte_rrc_nonCriticalExtension_280 = -1; /* T_nonCriticalExtension_85 */ +static int hf_lte_rrc_criticalExtensions_62 = -1; /* T_criticalExtensions_62 */ static int hf_lte_rrc_rrcConnectionReconfigurationComplete_r13_01 = -1; /* RRCConnectionReconfigurationComplete_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_59 = -1; /* T_criticalExtensionsFuture_59 */ -static int hf_lte_rrc_nonCriticalExtension_253 = -1; /* T_nonCriticalExtension_79 */ -static int hf_lte_rrc_criticalExtensions_60 = -1; /* T_criticalExtensions_60 */ +static int hf_lte_rrc_criticalExtensionsFuture_61 = -1; /* T_criticalExtensionsFuture_61 */ +static int hf_lte_rrc_nonCriticalExtension_281 = -1; /* T_nonCriticalExtension_86 */ +static int hf_lte_rrc_criticalExtensions_63 = -1; /* T_criticalExtensions_63 */ static int hf_lte_rrc_c1_63 = -1; /* T_c1_63 */ static int hf_lte_rrc_rrcConnectionReestablishment_r13_01 = -1; /* RRCConnectionReestablishment_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_60 = -1; /* T_criticalExtensionsFuture_60 */ -static int hf_lte_rrc_nonCriticalExtension_254 = -1; /* RRCConnectionReestablishment_NB_v1430_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_62 = -1; /* T_criticalExtensionsFuture_62 */ +static int hf_lte_rrc_nonCriticalExtension_282 = -1; /* RRCConnectionReestablishment_NB_v1430_IEs */ static int hf_lte_rrc_dl_NAS_MAC = -1; /* BIT_STRING_SIZE_16 */ -static int hf_lte_rrc_nonCriticalExtension_255 = -1; /* T_nonCriticalExtension_80 */ -static int hf_lte_rrc_criticalExtensions_61 = -1; /* T_criticalExtensions_61 */ +static int hf_lte_rrc_nonCriticalExtension_283 = -1; /* T_nonCriticalExtension_87 */ +static int hf_lte_rrc_criticalExtensions_64 = -1; /* T_criticalExtensions_64 */ static int hf_lte_rrc_rrcConnectionReestablishmentComplete_r13_01 = -1; /* RRCConnectionReestablishmentComplete_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_61 = -1; /* T_criticalExtensionsFuture_61 */ -static int hf_lte_rrc_nonCriticalExtension_256 = -1; /* RRCConnectionReestablishmentComplete_NB_v1470_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_63 = -1; /* T_criticalExtensionsFuture_63 */ +static int hf_lte_rrc_nonCriticalExtension_284 = -1; /* RRCConnectionReestablishmentComplete_NB_v1470_IEs */ static int hf_lte_rrc_measResultServCell_r14 = -1; /* MeasResultServCell_NB_r14 */ -static int hf_lte_rrc_nonCriticalExtension_257 = -1; /* T_nonCriticalExtension_81 */ -static int hf_lte_rrc_criticalExtensions_62 = -1; /* T_criticalExtensions_62 */ +static int hf_lte_rrc_nonCriticalExtension_285 = -1; /* T_nonCriticalExtension_88 */ +static int hf_lte_rrc_criticalExtensions_65 = -1; /* T_criticalExtensions_65 */ static int hf_lte_rrc_rrcConnectionReestablishmentRequest_r13_01 = -1; /* RRCConnectionReestablishmentRequest_NB_r13_IEs */ static int hf_lte_rrc_later_01 = -1; /* T_later_01 */ static int hf_lte_rrc_rrcConnectionReestablishmentRequest_r14 = -1; /* RRCConnectionReestablishmentRequest_NB_r14_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_62 = -1; /* T_criticalExtensionsFuture_62 */ +static int hf_lte_rrc_criticalExtensionsFuture_64 = -1; /* T_criticalExtensionsFuture_64 */ static int hf_lte_rrc_ue_Identity_r13_01 = -1; /* ReestabUE_Identity */ static int hf_lte_rrc_reestablishmentCause_r13 = -1; /* ReestablishmentCause_NB_r13 */ static int hf_lte_rrc_cqi_NPDCCH_r14 = -1; /* CQI_NPDCCH_NB_r14 */ static int hf_lte_rrc_earlyContentionResolution_r14 = -1; /* BOOLEAN */ -static int hf_lte_rrc_spare_07 = -1; /* BIT_STRING_SIZE_20 */ +static int hf_lte_rrc_spare_09 = -1; /* BIT_STRING_SIZE_20 */ static int hf_lte_rrc_ue_Identity_r14 = -1; /* ReestabUE_Identity_CP_NB_r14 */ static int hf_lte_rrc_reestablishmentCause_r14 = -1; /* ReestablishmentCause_NB_r13 */ static int hf_lte_rrc_cqi_NPDCCH_r14_01 = -1; /* CQI_NPDCCH_Short_NB_r14 */ static int hf_lte_rrc_s_TMSI_r14 = -1; /* S_TMSI */ static int hf_lte_rrc_ul_NAS_MAC_r14 = -1; /* BIT_STRING_SIZE_16 */ static int hf_lte_rrc_ul_NAS_Count_r14 = -1; /* BIT_STRING_SIZE_5 */ -static int hf_lte_rrc_criticalExtensions_63 = -1; /* T_criticalExtensions_63 */ +static int hf_lte_rrc_criticalExtensions_66 = -1; /* T_criticalExtensions_66 */ static int hf_lte_rrc_c1_64 = -1; /* T_c1_64 */ static int hf_lte_rrc_rrcConnectionReject_r13_01 = -1; /* RRCConnectionReject_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_63 = -1; /* T_criticalExtensionsFuture_63 */ +static int hf_lte_rrc_criticalExtensionsFuture_65 = -1; /* T_criticalExtensionsFuture_65 */ static int hf_lte_rrc_extendedWaitTime_r13 = -1; /* INTEGER_1_1800 */ static int hf_lte_rrc_rrc_SuspendIndication_r13_01 = -1; /* T_rrc_SuspendIndication_r13_01 */ -static int hf_lte_rrc_nonCriticalExtension_258 = -1; /* T_nonCriticalExtension_82 */ -static int hf_lte_rrc_criticalExtensions_64 = -1; /* T_criticalExtensions_64 */ +static int hf_lte_rrc_nonCriticalExtension_286 = -1; /* T_nonCriticalExtension_89 */ +static int hf_lte_rrc_criticalExtensions_67 = -1; /* T_criticalExtensions_67 */ static int hf_lte_rrc_c1_65 = -1; /* T_c1_65 */ static int hf_lte_rrc_rrcConnectionRelease_r13_01 = -1; /* RRCConnectionRelease_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_64 = -1; /* T_criticalExtensionsFuture_64 */ +static int hf_lte_rrc_criticalExtensionsFuture_66 = -1; /* T_criticalExtensionsFuture_66 */ static int hf_lte_rrc_releaseCause_r13 = -1; /* ReleaseCause_NB_r13 */ static int hf_lte_rrc_redirectedCarrierInfo_r13 = -1; /* RedirectedCarrierInfo_NB_r13 */ -static int hf_lte_rrc_nonCriticalExtension_259 = -1; /* RRCConnectionRelease_NB_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_287 = -1; /* RRCConnectionRelease_NB_v1430_IEs */ static int hf_lte_rrc_redirectedCarrierInfo_v1430 = -1; /* RedirectedCarrierInfo_NB_v1430 */ static int hf_lte_rrc_extendedWaitTime_CPdata_r14 = -1; /* INTEGER_1_1800 */ -static int hf_lte_rrc_nonCriticalExtension_260 = -1; /* T_nonCriticalExtension_83 */ +static int hf_lte_rrc_nonCriticalExtension_288 = -1; /* RRCConnectionRelease_NB_v1530_IEs */ +static int hf_lte_rrc_drb_ContinueROHC_r15_01 = -1; /* T_drb_ContinueROHC_r15_01 */ +static int hf_lte_rrc_nonCriticalExtension_289 = -1; /* T_nonCriticalExtension_90 */ static int hf_lte_rrc_redirectedCarrierOffsetDedicated_r14 = -1; /* T_redirectedCarrierOffsetDedicated_r14 */ static int hf_lte_rrc_t322_r14 = -1; /* T_t322_r14 */ -static int hf_lte_rrc_criticalExtensions_65 = -1; /* T_criticalExtensions_65 */ +static int hf_lte_rrc_criticalExtensions_68 = -1; /* T_criticalExtensions_68 */ static int hf_lte_rrc_rrcConnectionRequest_r13_01 = -1; /* RRCConnectionRequest_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_65 = -1; /* T_criticalExtensionsFuture_65 */ +static int hf_lte_rrc_criticalExtensionsFuture_67 = -1; /* T_criticalExtensionsFuture_67 */ static int hf_lte_rrc_ue_Identity_r13_02 = -1; /* InitialUE_Identity */ static int hf_lte_rrc_establishmentCause_r13 = -1; /* EstablishmentCause_NB_r13 */ static int hf_lte_rrc_multiToneSupport_r13 = -1; /* T_multiToneSupport_r13 */ static int hf_lte_rrc_multiCarrierSupport_r13 = -1; /* T_multiCarrierSupport_r13 */ -static int hf_lte_rrc_spare_08 = -1; /* BIT_STRING_SIZE_17 */ -static int hf_lte_rrc_criticalExtensions_66 = -1; /* T_criticalExtensions_66 */ +static int hf_lte_rrc_spare_10 = -1; /* BIT_STRING_SIZE_17 */ +static int hf_lte_rrc_criticalExtensions_69 = -1; /* T_criticalExtensions_69 */ static int hf_lte_rrc_c1_66 = -1; /* T_c1_66 */ static int hf_lte_rrc_rrcConnectionResume_r13_03 = -1; /* RRCConnectionResume_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_66 = -1; /* T_criticalExtensionsFuture_66 */ +static int hf_lte_rrc_criticalExtensionsFuture_68 = -1; /* T_criticalExtensionsFuture_68 */ static int hf_lte_rrc_drb_ContinueROHC_r13_01 = -1; /* T_drb_ContinueROHC_r13_01 */ -static int hf_lte_rrc_nonCriticalExtension_261 = -1; /* T_nonCriticalExtension_84 */ -static int hf_lte_rrc_criticalExtensions_67 = -1; /* T_criticalExtensions_67 */ +static int hf_lte_rrc_nonCriticalExtension_290 = -1; /* T_nonCriticalExtension_91 */ +static int hf_lte_rrc_criticalExtensions_70 = -1; /* T_criticalExtensions_70 */ static int hf_lte_rrc_rrcConnectionResumeComplete_r13_03 = -1; /* RRCConnectionResumeComplete_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_67 = -1; /* T_criticalExtensionsFuture_67 */ -static int hf_lte_rrc_nonCriticalExtension_262 = -1; /* RRCConnectionResumeComplete_NB_v1470_IEs */ -static int hf_lte_rrc_nonCriticalExtension_263 = -1; /* T_nonCriticalExtension_85 */ -static int hf_lte_rrc_criticalExtensions_68 = -1; /* T_criticalExtensions_68 */ +static int hf_lte_rrc_criticalExtensionsFuture_69 = -1; /* T_criticalExtensionsFuture_69 */ +static int hf_lte_rrc_nonCriticalExtension_291 = -1; /* RRCConnectionResumeComplete_NB_v1470_IEs */ +static int hf_lte_rrc_nonCriticalExtension_292 = -1; /* T_nonCriticalExtension_92 */ +static int hf_lte_rrc_criticalExtensions_71 = -1; /* T_criticalExtensions_71 */ static int hf_lte_rrc_rrcConnectionResumeRequest_r13_03 = -1; /* RRCConnectionResumeRequest_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_68 = -1; /* T_criticalExtensionsFuture_68 */ +static int hf_lte_rrc_criticalExtensionsFuture_70 = -1; /* T_criticalExtensionsFuture_70 */ static int hf_lte_rrc_shortResumeMAC_I_r13_01 = -1; /* ShortMAC_I */ static int hf_lte_rrc_resumeCause_r13_01 = -1; /* EstablishmentCause_NB_r13 */ -static int hf_lte_rrc_spare_09 = -1; /* BIT_STRING_SIZE_4 */ -static int hf_lte_rrc_criticalExtensions_69 = -1; /* T_criticalExtensions_69 */ +static int hf_lte_rrc_criticalExtensions_72 = -1; /* T_criticalExtensions_72 */ static int hf_lte_rrc_c1_67 = -1; /* T_c1_67 */ static int hf_lte_rrc_rrcConnectionSetup_r13_01 = -1; /* RRCConnectionSetup_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_69 = -1; /* T_criticalExtensionsFuture_69 */ -static int hf_lte_rrc_nonCriticalExtension_264 = -1; /* T_nonCriticalExtension_86 */ -static int hf_lte_rrc_criticalExtensions_70 = -1; /* T_criticalExtensions_70 */ +static int hf_lte_rrc_criticalExtensionsFuture_71 = -1; /* T_criticalExtensionsFuture_71 */ +static int hf_lte_rrc_nonCriticalExtension_293 = -1; /* T_nonCriticalExtension_93 */ +static int hf_lte_rrc_criticalExtensions_73 = -1; /* T_criticalExtensions_73 */ static int hf_lte_rrc_rrcConnectionSetupComplete_r13_01 = -1; /* RRCConnectionSetupComplete_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_70 = -1; /* T_criticalExtensionsFuture_70 */ +static int hf_lte_rrc_criticalExtensionsFuture_72 = -1; /* T_criticalExtensionsFuture_72 */ static int hf_lte_rrc_registeredMME_r13 = -1; /* RegisteredMME */ static int hf_lte_rrc_attachWithoutPDN_Connectivity_r13_02 = -1; /* T_attachWithoutPDN_Connectivity_r13_02 */ static int hf_lte_rrc_up_CIoT_EPS_Optimisation_r13_02 = -1; /* T_up_CIoT_EPS_Optimisation_r13_02 */ -static int hf_lte_rrc_nonCriticalExtension_265 = -1; /* RRCConnectionSetupComplete_NB_v1430_IEs */ +static int hf_lte_rrc_nonCriticalExtension_294 = -1; /* RRCConnectionSetupComplete_NB_v1430_IEs */ static int hf_lte_rrc_gummei_Type_r14 = -1; /* T_gummei_Type_r14 */ -static int hf_lte_rrc_nonCriticalExtension_266 = -1; /* RRCConnectionSetupComplete_NB_v1470_IEs */ -static int hf_lte_rrc_nonCriticalExtension_267 = -1; /* T_nonCriticalExtension_87 */ +static int hf_lte_rrc_nonCriticalExtension_295 = -1; /* RRCConnectionSetupComplete_NB_v1470_IEs */ +static int hf_lte_rrc_nonCriticalExtension_296 = -1; /* T_nonCriticalExtension_94 */ +static int hf_lte_rrc_criticalExtensions_74 = -1; /* T_criticalExtensions_74 */ +static int hf_lte_rrc_rrcEarlyDataComplete_r15_03 = -1; /* RRCEarlyDataComplete_NB_r15_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_73 = -1; /* T_criticalExtensionsFuture_73 */ +static int hf_lte_rrc_redirectedCarrierInfo_r15_01 = -1; /* RedirectedCarrierInfo_NB_r13 */ +static int hf_lte_rrc_redirectedCarrierInfoExt_r15 = -1; /* RedirectedCarrierInfo_NB_v1430 */ +static int hf_lte_rrc_nonCriticalExtension_297 = -1; /* T_nonCriticalExtension_95 */ +static int hf_lte_rrc_criticalExtensions_75 = -1; /* T_criticalExtensions_75 */ +static int hf_lte_rrc_rrcEarlyDataRequest_r15_03 = -1; /* RRCEarlyDataRequest_NB_r15_IEs */ +static int hf_lte_rrc_criticalExtensionsFuture_74 = -1; /* T_criticalExtensionsFuture_74 */ +static int hf_lte_rrc_establishmentCause_r15_01 = -1; /* T_establishmentCause_r15_01 */ +static int hf_lte_rrc_cqi_NPDCCH_r15 = -1; /* CQI_NPDCCH_NB_r14 */ +static int hf_lte_rrc_nonCriticalExtension_298 = -1; /* T_nonCriticalExtension_96 */ static int hf_lte_rrc_sc_mtch_InfoList_r14_01 = -1; /* SC_MTCH_InfoList_NB_r14 */ static int hf_lte_rrc_scptm_NeighbourCellList_r14_01 = -1; /* SCPTM_NeighbourCellList_NB_r14 */ -static int hf_lte_rrc_nonCriticalExtension_268 = -1; /* T_nonCriticalExtension_88 */ -static int hf_lte_rrc_criticalExtensions_71 = -1; /* T_criticalExtensions_71 */ +static int hf_lte_rrc_nonCriticalExtension_299 = -1; /* T_nonCriticalExtension_97 */ +static int hf_lte_rrc_criticalExtensions_76 = -1; /* T_criticalExtensions_76 */ static int hf_lte_rrc_systemInformation_r13_01 = -1; /* SystemInformation_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_71 = -1; /* T_criticalExtensionsFuture_71 */ +static int hf_lte_rrc_criticalExtensionsFuture_75 = -1; /* T_criticalExtensionsFuture_75 */ static int hf_lte_rrc_sib_TypeAndInfo_r13 = -1; /* T_sib_TypeAndInfo_r13 */ static int hf_lte_rrc_sib_TypeAndInfo_r13_item = -1; /* T_sib_TypeAndInfo_r13_item */ static int hf_lte_rrc_sib2_r13 = -1; /* SystemInformationBlockType2_NB_r13 */ @@ -5714,7 +6904,8 @@ static int hf_lte_rrc_sib16_r13 = -1; /* SystemInformationBlockType1 static int hf_lte_rrc_sib15_v1430 = -1; /* SystemInformationBlockType15_NB_r14 */ static int hf_lte_rrc_sib20_v1430 = -1; /* SystemInformationBlockType20_NB_r14 */ static int hf_lte_rrc_sib22_v1430 = -1; /* SystemInformationBlockType22_NB_r14 */ -static int hf_lte_rrc_nonCriticalExtension_269 = -1; /* T_nonCriticalExtension_89 */ +static int hf_lte_rrc_sib23_v1530 = -1; /* SystemInformationBlockType23_NB_r15 */ +static int hf_lte_rrc_nonCriticalExtension_300 = -1; /* T_nonCriticalExtension_98 */ static int hf_lte_rrc_hyperSFN_MSB_r13 = -1; /* BIT_STRING_SIZE_8 */ static int hf_lte_rrc_cellAccessRelatedInfo_r13 = -1; /* T_cellAccessRelatedInfo_r13 */ static int hf_lte_rrc_plmn_IdentityList_r13_01 = -1; /* PLMN_IdentityList_NB_r13 */ @@ -5734,44 +6925,53 @@ static int hf_lte_rrc_schedulingInfoList_r13 = -1; /* SchedulingInfoList_NB_r13 static int hf_lte_rrc_si_WindowLength_r13 = -1; /* T_si_WindowLength_r13 */ static int hf_lte_rrc_si_RadioFrameOffset_r13 = -1; /* INTEGER_1_15 */ static int hf_lte_rrc_systemInfoValueTagList_r13_01 = -1; /* SystemInfoValueTagList_NB_r13 */ -static int hf_lte_rrc_nonCriticalExtension_270 = -1; /* SystemInformationBlockType1_NB_v1350 */ +static int hf_lte_rrc_nonCriticalExtension_301 = -1; /* SystemInformationBlockType1_NB_v1350 */ static int hf_lte_rrc_cellSelectionInfo_v1350 = -1; /* CellSelectionInfo_NB_v1350 */ -static int hf_lte_rrc_nonCriticalExtension_271 = -1; /* SystemInformationBlockType1_NB_v1430 */ +static int hf_lte_rrc_nonCriticalExtension_302 = -1; /* SystemInformationBlockType1_NB_v1430 */ static int hf_lte_rrc_cellSelectionInfo_v1430 = -1; /* CellSelectionInfo_NB_v1430 */ -static int hf_lte_rrc_nonCriticalExtension_272 = -1; /* SystemInformationBlockType1_NB_v1450 */ +static int hf_lte_rrc_nonCriticalExtension_303 = -1; /* SystemInformationBlockType1_NB_v1450 */ static int hf_lte_rrc_nrs_CRS_PowerOffset_v1450 = -1; /* T_nrs_CRS_PowerOffset_v1450 */ -static int hf_lte_rrc_nonCriticalExtension_273 = -1; /* T_nonCriticalExtension_90 */ +static int hf_lte_rrc_nonCriticalExtension_304 = -1; /* SystemInformationBlockType1_NB_v1530 */ +static int hf_lte_rrc_tdd_Parameters_r15 = -1; /* T_tdd_Parameters_r15 */ +static int hf_lte_rrc_tdd_Config_r15 = -1; /* TDD_Config_NB_r15 */ +static int hf_lte_rrc_tdd_SI_CarrierInfo_r15 = -1; /* T_tdd_SI_CarrierInfo_r15 */ +static int hf_lte_rrc_tdd_SI_SubframesBitmap_r15 = -1; /* DL_Bitmap_NB_r13 */ +static int hf_lte_rrc_schedulingInfoList_v1530 = -1; /* SchedulingInfoList_NB_v1530 */ +static int hf_lte_rrc_nonCriticalExtension_305 = -1; /* T_nonCriticalExtension_99 */ static int hf_lte_rrc_PLMN_IdentityList_NB_r13_item = -1; /* PLMN_IdentityInfo_NB_r13 */ static int hf_lte_rrc_plmn_Identity_r13 = -1; /* PLMN_Identity */ static int hf_lte_rrc_cellReservedForOperatorUse_r13 = -1; /* T_cellReservedForOperatorUse_r13 */ static int hf_lte_rrc_attachWithoutPDN_Connectivity_r13_03 = -1; /* T_attachWithoutPDN_Connectivity_r13_03 */ static int hf_lte_rrc_SchedulingInfoList_NB_r13_item = -1; /* SchedulingInfo_NB_r13 */ +static int hf_lte_rrc_SchedulingInfoList_NB_v1530_item = -1; /* SchedulingInfo_NB_v1530 */ static int hf_lte_rrc_si_Periodicity_r13 = -1; /* T_si_Periodicity_r13 */ static int hf_lte_rrc_si_RepetitionPattern_r13_01 = -1; /* T_si_RepetitionPattern_r13_01 */ static int hf_lte_rrc_sib_MappingInfo_r13 = -1; /* SIB_MappingInfo_NB_r13 */ static int hf_lte_rrc_si_TB_r13 = -1; /* T_si_TB_r13 */ +static int hf_lte_rrc_sib_MappingInfo_v1530 = -1; /* SIB_MappingInfo_NB_v1530 */ static int hf_lte_rrc_SystemInfoValueTagList_NB_r13_item = -1; /* SystemInfoValueTagSI_r13 */ static int hf_lte_rrc_SIB_MappingInfo_NB_r13_item = -1; /* SIB_Type_NB_r13 */ +static int hf_lte_rrc_SIB_MappingInfo_NB_v1530_item = -1; /* SIB_Type_NB_v1530 */ static int hf_lte_rrc_delta_RxLevMin_v1350 = -1; /* INTEGER_M8_M1 */ static int hf_lte_rrc_powerClass14dBm_Offset_r14 = -1; /* T_powerClass14dBm_Offset_r14 */ static int hf_lte_rrc_ce_authorisationOffset_r14 = -1; /* T_ce_authorisationOffset_r14 */ -static int hf_lte_rrc_criticalExtensions_72 = -1; /* T_criticalExtensions_72 */ +static int hf_lte_rrc_criticalExtensions_77 = -1; /* T_criticalExtensions_77 */ static int hf_lte_rrc_c1_68 = -1; /* T_c1_68 */ static int hf_lte_rrc_ueCapabilityEnquiry_r13_01 = -1; /* UECapabilityEnquiry_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_72 = -1; /* T_criticalExtensionsFuture_72 */ -static int hf_lte_rrc_nonCriticalExtension_274 = -1; /* T_nonCriticalExtension_91 */ -static int hf_lte_rrc_criticalExtensions_73 = -1; /* T_criticalExtensions_73 */ +static int hf_lte_rrc_criticalExtensionsFuture_76 = -1; /* T_criticalExtensionsFuture_76 */ +static int hf_lte_rrc_nonCriticalExtension_306 = -1; /* T_nonCriticalExtension_100 */ +static int hf_lte_rrc_criticalExtensions_78 = -1; /* T_criticalExtensions_78 */ static int hf_lte_rrc_ueCapabilityInformation_r13_01 = -1; /* UECapabilityInformation_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_73 = -1; /* T_criticalExtensionsFuture_73 */ +static int hf_lte_rrc_criticalExtensionsFuture_77 = -1; /* T_criticalExtensionsFuture_77 */ static int hf_lte_rrc_ue_Capability_r13 = -1; /* UE_Capability_NB_r13 */ static int hf_lte_rrc_ue_RadioPagingInfo_r13_01 = -1; /* UE_RadioPagingInfo_NB_r13 */ -static int hf_lte_rrc_nonCriticalExtension_275 = -1; /* UECapabilityInformation_NB_Ext_r14_IEs */ +static int hf_lte_rrc_nonCriticalExtension_307 = -1; /* UECapabilityInformation_NB_Ext_r14_IEs */ static int hf_lte_rrc_ue_Capability_ContainerExt_r14 = -1; /* T_ue_Capability_ContainerExt_r14 */ -static int hf_lte_rrc_nonCriticalExtension_276 = -1; /* T_nonCriticalExtension_92 */ -static int hf_lte_rrc_criticalExtensions_74 = -1; /* T_criticalExtensions_74 */ +static int hf_lte_rrc_nonCriticalExtension_308 = -1; /* T_nonCriticalExtension_101 */ +static int hf_lte_rrc_criticalExtensions_79 = -1; /* T_criticalExtensions_79 */ static int hf_lte_rrc_ulInformationTransfer_r13_01 = -1; /* ULInformationTransfer_NB_r13_IEs */ -static int hf_lte_rrc_criticalExtensionsFuture_74 = -1; /* T_criticalExtensionsFuture_74 */ -static int hf_lte_rrc_nonCriticalExtension_277 = -1; /* T_nonCriticalExtension_93 */ +static int hf_lte_rrc_criticalExtensionsFuture_78 = -1; /* T_criticalExtensionsFuture_78 */ +static int hf_lte_rrc_nonCriticalExtension_309 = -1; /* T_nonCriticalExtension_102 */ static int hf_lte_rrc_radioResourceConfigCommon_r13 = -1; /* RadioResourceConfigCommonSIB_NB_r13 */ static int hf_lte_rrc_ue_TimersAndConstants_r13 = -1; /* UE_TimersAndConstants_NB_r13 */ static int hf_lte_rrc_freqInfo_r13_01 = -1; /* T_freqInfo_r13_01 */ @@ -5780,8 +6980,13 @@ static int hf_lte_rrc_timeAlignmentTimerCommon_r13 = -1; /* TimeAlignmentTimer static int hf_lte_rrc_multiBandInfoList_r13_02 = -1; /* AdditionalSpectrumEmission_r13 */ static int hf_lte_rrc_multiBandInfoList_r13_item = -1; /* AdditionalSpectrumEmission */ static int hf_lte_rrc_cp_Reestablishment_r14 = -1; /* T_cp_Reestablishment_r14 */ -static int hf_lte_rrc_cqi_Reporting_r14 = -1; /* T_cqi_Reporting_r14 */ static int hf_lte_rrc_servingCellMeasInfo_r14 = -1; /* T_servingCellMeasInfo_r14 */ +static int hf_lte_rrc_cqi_Reporting_r14 = -1; /* T_cqi_Reporting_r14 */ +static int hf_lte_rrc_enhancedPHR_r15 = -1; /* T_enhancedPHR_r15 */ +static int hf_lte_rrc_freqInfo_v1530 = -1; /* T_freqInfo_v1530 */ +static int hf_lte_rrc_tdd_UL_DL_AlignmentOffset_r15 = -1; /* TDD_UL_DL_AlignmentOffset_NB_r15 */ +static int hf_lte_rrc_cp_EDT_r15_01 = -1; /* T_cp_EDT_r15_01 */ +static int hf_lte_rrc_up_EDT_r15_01 = -1; /* T_up_EDT_r15_01 */ static int hf_lte_rrc_cellReselectionInfoCommon_r13 = -1; /* T_cellReselectionInfoCommon_r13 */ static int hf_lte_rrc_q_Hyst_r13_02 = -1; /* T_q_Hyst_r13_02 */ static int hf_lte_rrc_cellReselectionServingFreqInfo_r13 = -1; /* T_cellReselectionServingFreqInfo_r13 */ @@ -5795,12 +7000,16 @@ static int hf_lte_rrc_intraFreqCellReselectionInfo_v1350 = -1; /* IntraFreqCell static int hf_lte_rrc_intraFreqCellReselectionInfo_v1360 = -1; /* IntraFreqCellReselectionInfo_NB_v1360 */ static int hf_lte_rrc_intraFreqCellReselectionInfo_v1430 = -1; /* IntraFreqCellReselectionInfo_NB_v1430 */ static int hf_lte_rrc_cellReselectionInfoCommon_v1450 = -1; /* CellReselectionInfoCommon_NB_v1450 */ +static int hf_lte_rrc_nsss_RRM_Config_r15 = -1; /* NSSS_RRM_Config_NB_r15 */ +static int hf_lte_rrc_npbch_RRM_Config_r15 = -1; /* T_npbch_RRM_Config_r15 */ static int hf_lte_rrc_s_IntraSearchP_v1360 = -1; /* ReselectionThreshold_NB_v1360 */ static int hf_lte_rrc_powerClass14dBm_Offset_r14_01 = -1; /* T_powerClass14dBm_Offset_r14_01 */ static int hf_lte_rrc_ce_AuthorisationOffset_r14 = -1; /* T_ce_AuthorisationOffset_r14 */ static int hf_lte_rrc_s_SearchDeltaP_r14_01 = -1; /* T_s_SearchDeltaP_r14_01 */ static int hf_lte_rrc_intraFreqNeighCellList_r13 = -1; /* IntraFreqNeighCellList */ static int hf_lte_rrc_intraFreqBlackCellList_r13 = -1; /* IntraFreqBlackCellList */ +static int hf_lte_rrc_intraFreqNeighCellList_v1530 = -1; /* IntraFreqNeighCellList_NB_v1530 */ +static int hf_lte_rrc_IntraFreqNeighCellList_NB_v1530_item = -1; /* IntraFreqNeighCellInfo_NB_v1530 */ static int hf_lte_rrc_interFreqCarrierFreqList_r13 = -1; /* InterFreqCarrierFreqList_NB_r13 */ static int hf_lte_rrc_InterFreqCarrierFreqList_NB_r13_item = -1; /* InterFreqCarrierFreqInfo_NB_r13 */ static int hf_lte_rrc_dl_CarrierFreq_r13_01 = -1; /* CarrierFreq_NB_r13 */ @@ -5809,12 +7018,15 @@ static int hf_lte_rrc_interFreqNeighCellList_r13 = -1; /* InterFreqNeighCellLis static int hf_lte_rrc_interFreqBlackCellList_r13 = -1; /* InterFreqBlackCellList_NB_r13 */ static int hf_lte_rrc_powerClass14dBm_Offset_r14_02 = -1; /* T_powerClass14dBm_Offset_r14_02 */ static int hf_lte_rrc_ce_AuthorisationOffset_r14_01 = -1; /* T_ce_AuthorisationOffset_r14_01 */ +static int hf_lte_rrc_interFreqNeighCellList_v1530 = -1; /* InterFreqNeighCellList_NB_v1530 */ static int hf_lte_rrc_InterFreqNeighCellList_NB_r13_item = -1; /* PhysCellId */ +static int hf_lte_rrc_InterFreqNeighCellList_NB_v1530_item = -1; /* InterFreqNeighCellInfo_NB_v1530 */ static int hf_lte_rrc_InterFreqBlackCellList_NB_r13_item = -1; /* PhysCellId */ static int hf_lte_rrc_ab_Param_r13 = -1; /* T_ab_Param_r13 */ static int hf_lte_rrc_ab_Common_r13 = -1; /* AB_Config_NB_r13 */ static int hf_lte_rrc_ab_PerPLMN_List_r13 = -1; /* SEQUENCE_SIZE_1_maxPLMN_r11_OF_AB_ConfigPLMN_NB_r13 */ static int hf_lte_rrc_ab_PerPLMN_List_r13_item = -1; /* AB_ConfigPLMN_NB_r13 */ +static int hf_lte_rrc_ab_PerNRSRP_r15 = -1; /* T_ab_PerNRSRP_r15 */ static int hf_lte_rrc_ab_Config_r13 = -1; /* AB_Config_NB_r13 */ static int hf_lte_rrc_ab_Category_r13 = -1; /* T_ab_Category_r13 */ static int hf_lte_rrc_ab_BarringBitmap_r13 = -1; /* BIT_STRING_SIZE_10 */ @@ -5844,13 +7056,23 @@ static int hf_lte_rrc_dl_ConfigList_r14 = -1; /* DL_ConfigCommonList_NB_r14 static int hf_lte_rrc_ul_ConfigList_r14 = -1; /* UL_ConfigCommonList_NB_r14 */ static int hf_lte_rrc_pagingWeightAnchor_r14 = -1; /* PagingWeight_NB_r14 */ static int hf_lte_rrc_nprach_ProbabilityAnchorList_r14 = -1; /* NPRACH_ProbabilityAnchorList_NB_r14 */ +static int hf_lte_rrc_mixedOperationModeConfig_r15 = -1; /* T_mixedOperationModeConfig_r15 */ +static int hf_lte_rrc_dl_ConfigListMixed_r15 = -1; /* DL_ConfigCommonList_NB_r14 */ +static int hf_lte_rrc_ul_ConfigListMixed_r15 = -1; /* UL_ConfigCommonList_NB_r14 */ +static int hf_lte_rrc_pagingDistribution_r15 = -1; /* T_pagingDistribution_r15 */ +static int hf_lte_rrc_nprach_Distribution_r15 = -1; /* T_nprach_Distribution_r15 */ +static int hf_lte_rrc_ul_ConfigList_r15 = -1; /* UL_ConfigCommonListTDD_NB_r15 */ static int hf_lte_rrc_DL_ConfigCommonList_NB_r14_item = -1; /* DL_ConfigCommon_NB_r14 */ static int hf_lte_rrc_UL_ConfigCommonList_NB_r14_item = -1; /* UL_ConfigCommon_NB_r14 */ +static int hf_lte_rrc_UL_ConfigCommonListTDD_NB_r15_item = -1; /* UL_ConfigCommonTDD_NB_r15 */ static int hf_lte_rrc_pcch_Config_r14 = -1; /* PCCH_Config_NB_r14 */ +static int hf_lte_rrc_wus_Config_r15_01 = -1; /* WUS_ConfigPerCarrier_NB_r15 */ static int hf_lte_rrc_npdcch_NumRepetitionPaging_r14 = -1; /* T_npdcch_NumRepetitionPaging_r14 */ static int hf_lte_rrc_pagingWeight_r14 = -1; /* PagingWeight_NB_r14 */ static int hf_lte_rrc_ul_CarrierFreq_r14_01 = -1; /* CarrierFreq_NB_r13 */ static int hf_lte_rrc_nprach_ParametersList_r14 = -1; /* NPRACH_ParametersList_NB_r14 */ +static int hf_lte_rrc_nprach_ParametersListEDT_r15 = -1; /* NPRACH_ParametersList_NB_r14 */ +static int hf_lte_rrc_nprach_ParametersListTDD_r15 = -1; /* NPRACH_ParametersListTDD_NB_r15 */ static int hf_lte_rrc_NPRACH_ParametersList_NB_r14_item = -1; /* NPRACH_Parameters_NB_r14 */ static int hf_lte_rrc_nprach_Parameters_r14 = -1; /* T_nprach_Parameters_r14 */ static int hf_lte_rrc_nprach_Periodicity_r14 = -1; /* T_nprach_Periodicity_r14 */ @@ -5865,6 +7087,11 @@ static int hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r14 = -1; /* T_nprach_Num static int hf_lte_rrc_npdcch_CarrierIndex_r14 = -1; /* INTEGER_1_maxNonAnchorCarriers_NB_r14 */ static int hf_lte_rrc_NPRACH_ProbabilityAnchorList_NB_r14_item = -1; /* NPRACH_ProbabilityAnchor_NB_r14 */ static int hf_lte_rrc_nprach_ProbabilityAnchor_r14 = -1; /* T_nprach_ProbabilityAnchor_r14 */ +static int hf_lte_rrc_ul_ConfigList_v1530 = -1; /* UL_ConfigCommonList_NB_v1530 */ +static int hf_lte_rrc_ul_ConfigListMixed_v1530 = -1; /* UL_ConfigCommonList_NB_v1530 */ +static int hf_lte_rrc_UL_ConfigCommonList_NB_v1530_item = -1; /* UL_ConfigCommon_NB_v1530 */ +static int hf_lte_rrc_nprach_ParametersListFmt2_r15 = -1; /* NPRACH_ParametersListFmt2_NB_r15 */ +static int hf_lte_rrc_nprach_ParametersListFmt2EDT_r15 = -1; /* NPRACH_ParametersListFmt2_NB_r15 */ static int hf_lte_rrc_dl_CarrierConfig_r13 = -1; /* DL_CarrierConfigDedicated_NB_r13 */ static int hf_lte_rrc_ul_CarrierConfig_r13 = -1; /* UL_CarrierConfigDedicated_NB_r13 */ static int hf_lte_rrc_downlinkBitmapNonAnchor_r13 = -1; /* T_downlinkBitmapNonAnchor_r13 */ @@ -5883,6 +7110,7 @@ static int hf_lte_rrc_differentPCI_r13 = -1; /* T_differentPCI_r13 */ static int hf_lte_rrc_eutra_NumCRS_Ports_r13_01 = -1; /* T_eutra_NumCRS_Ports_r13_01 */ static int hf_lte_rrc_eutraControlRegionSize_r13_01 = -1; /* T_eutraControlRegionSize_r13_01 */ static int hf_lte_rrc_nrs_PowerOffsetNonAnchor_v1330 = -1; /* T_nrs_PowerOffsetNonAnchor_v1330 */ +static int hf_lte_rrc_dl_GapNonAnchor_v1530 = -1; /* DL_GapConfig_NB_v1530 */ static int hf_lte_rrc_carrierFreqOffset_r13 = -1; /* T_carrierFreqOffset_r13 */ static int hf_lte_rrc_downlinkBitmapNonAnchor_r14 = -1; /* T_downlinkBitmapNonAnchor_r14 */ static int hf_lte_rrc_useNoBitmap_r14 = -1; /* NULL */ @@ -5903,6 +7131,7 @@ static int hf_lte_rrc_nrs_PowerOffsetNonAnchor_r14 = -1; /* T_nrs_PowerOffsetNo static int hf_lte_rrc_dl_GapThreshold_r13 = -1; /* T_dl_GapThreshold_r13 */ static int hf_lte_rrc_dl_GapPeriodicity_r13 = -1; /* T_dl_GapPeriodicity_r13 */ static int hf_lte_rrc_dl_GapDurationCoeff_r13 = -1; /* T_dl_GapDurationCoeff_r13 */ +static int hf_lte_rrc_dl_GapPeriodicity_v1530 = -1; /* T_dl_GapPeriodicity_v1530 */ static int hf_lte_rrc_priority_r13 = -1; /* T_priority_r13 */ static int hf_lte_rrc_logicalChannelSR_Prohibit_r13 = -1; /* BOOLEAN */ static int hf_lte_rrc_ul_SCH_Config_r13 = -1; /* T_ul_SCH_Config_r13 */ @@ -5911,14 +7140,14 @@ static int hf_lte_rrc_retxBSR_Timer_r13 = -1; /* RetxBSR_Timer_NB_r13 */ static int hf_lte_rrc_drx_Config_r13_01 = -1; /* DRX_Config_NB_r13 */ static int hf_lte_rrc_timeAlignmentTimerDedicated_r13 = -1; /* TimeAlignmentTimer */ static int hf_lte_rrc_logicalChannelSR_Config_r13 = -1; /* T_logicalChannelSR_Config_r13 */ -static int hf_lte_rrc_setup_147 = -1; /* T_setup_129 */ +static int hf_lte_rrc_setup_194 = -1; /* T_setup_169 */ static int hf_lte_rrc_logicalChannelSR_ProhibitTimer_r13 = -1; /* T_logicalChannelSR_ProhibitTimer_r13 */ static int hf_lte_rrc_rai_Activation_r14_01 = -1; /* T_rai_Activation_r14_01 */ static int hf_lte_rrc_dataInactivityTimerConfig_r14_01 = -1; /* T_dataInactivityTimerConfig_r14_01 */ -static int hf_lte_rrc_setup_148 = -1; /* T_setup_130 */ +static int hf_lte_rrc_setup_195 = -1; /* T_setup_170 */ static int hf_lte_rrc_drx_Cycle_v1430 = -1; /* T_drx_Cycle_v1430 */ static int hf_lte_rrc_ra_CFRA_Config_r14 = -1; /* T_ra_CFRA_Config_r14 */ -static int hf_lte_rrc_setup_149 = -1; /* T_setup_131 */ +static int hf_lte_rrc_setup_196 = -1; /* T_setup_171 */ static int hf_lte_rrc_onDurationTimer_r13 = -1; /* T_onDurationTimer_r13 */ static int hf_lte_rrc_drx_InactivityTimer_r13 = -1; /* T_drx_InactivityTimer_r13 */ static int hf_lte_rrc_drx_RetransmissionTimer_r13 = -1; /* T_drx_RetransmissionTimer_r13 */ @@ -5928,12 +7157,20 @@ static int hf_lte_rrc_drx_ULRetransmissionTimer_r13_01 = -1; /* T_drx_ULRetrans static int hf_lte_rrc_npdcch_NumRepetitions_r13 = -1; /* T_npdcch_NumRepetitions_r13 */ static int hf_lte_rrc_npdcch_StartSF_USS_r13 = -1; /* T_npdcch_StartSF_USS_r13 */ static int hf_lte_rrc_npdcch_Offset_USS_r13 = -1; /* T_npdcch_Offset_USS_r13 */ +static int hf_lte_rrc_npdcch_StartSF_USS_v1530 = -1; /* T_npdcch_StartSF_USS_v1530 */ static int hf_lte_rrc_nrs_Power_r13 = -1; /* INTEGER_M60_50 */ static int hf_lte_rrc_nprach_CP_Length_r13 = -1; /* T_nprach_CP_Length_r13 */ static int hf_lte_rrc_rsrp_ThresholdsPrachInfoList_r13_01 = -1; /* RSRP_ThresholdsNPRACH_InfoList_NB_r13 */ static int hf_lte_rrc_nprach_ParametersList_r13 = -1; /* NPRACH_ParametersList_NB_r13 */ static int hf_lte_rrc_nprach_ParametersList_v1330 = -1; /* NPRACH_ParametersList_NB_v1330 */ static int hf_lte_rrc_maxNumPreambleAttemptCE_r14 = -1; /* T_maxNumPreambleAttemptCE_r14 */ +static int hf_lte_rrc_tdd_Parameters_r15_01 = -1; /* T_tdd_Parameters_r15_01 */ +static int hf_lte_rrc_nprach_PreambleFormat_r15 = -1; /* T_nprach_PreambleFormat_r15 */ +static int hf_lte_rrc_numRepetitionsPerPreambleAttempt_r15 = -1; /* T_numRepetitionsPerPreambleAttempt_r15 */ +static int hf_lte_rrc_fmt2_Parameters_r15 = -1; /* T_fmt2_Parameters_r15 */ +static int hf_lte_rrc_edt_Parameters_r15_01 = -1; /* T_edt_Parameters_r15_01 */ +static int hf_lte_rrc_edt_SmallTBS_Subset_r15_01 = -1; /* T_edt_SmallTBS_Subset_r15_01 */ +static int hf_lte_rrc_edt_TBS_InfoList_r15 = -1; /* EDT_TBS_InfoList_NB_r15 */ static int hf_lte_rrc_NPRACH_ParametersList_NB_r13_item = -1; /* NPRACH_Parameters_NB_r13 */ static int hf_lte_rrc_NPRACH_ParametersList_NB_v1330_item = -1; /* NPRACH_Parameters_NB_v1330 */ static int hf_lte_rrc_nprach_Periodicity_r13 = -1; /* T_nprach_Periodicity_r13 */ @@ -5947,7 +7184,32 @@ static int hf_lte_rrc_npdcch_NumRepetitions_RA_r13 = -1; /* T_npdcch_NumRepetit static int hf_lte_rrc_npdcch_StartSF_CSS_RA_r13 = -1; /* T_npdcch_StartSF_CSS_RA_r13 */ static int hf_lte_rrc_npdcch_Offset_RA_r13 = -1; /* T_npdcch_Offset_RA_r13 */ static int hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r13 = -1; /* T_nprach_NumCBRA_StartSubcarriers_r13 */ +static int hf_lte_rrc_NPRACH_ParametersListTDD_NB_r15_item = -1; /* NPRACH_ParametersTDD_NB_r15 */ +static int hf_lte_rrc_nprach_Parameters_r15 = -1; /* T_nprach_Parameters_r15 */ +static int hf_lte_rrc_nprach_Periodicity_r15 = -1; /* T_nprach_Periodicity_r15 */ +static int hf_lte_rrc_nprach_StartTime_r15 = -1; /* T_nprach_StartTime_r15 */ +static int hf_lte_rrc_nprach_SubcarrierOffset_r15 = -1; /* T_nprach_SubcarrierOffset_r15 */ +static int hf_lte_rrc_nprach_NumSubcarriers_r15 = -1; /* T_nprach_NumSubcarriers_r15 */ +static int hf_lte_rrc_nprach_SubcarrierMSG3_RangeStart_r15 = -1; /* T_nprach_SubcarrierMSG3_RangeStart_r15 */ +static int hf_lte_rrc_npdcch_NumRepetitions_RA_r15 = -1; /* T_npdcch_NumRepetitions_RA_r15 */ +static int hf_lte_rrc_npdcch_StartSF_CSS_RA_r15 = -1; /* T_npdcch_StartSF_CSS_RA_r15 */ +static int hf_lte_rrc_npdcch_Offset_RA_r15 = -1; /* T_npdcch_Offset_RA_r15 */ +static int hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r15 = -1; /* T_nprach_NumCBRA_StartSubcarriers_r15 */ +static int hf_lte_rrc_NPRACH_ParametersListFmt2_NB_r15_item = -1; /* NPRACH_ParametersFmt2_NB_r15 */ +static int hf_lte_rrc_nprach_Parameters_r15_01 = -1; /* T_nprach_Parameters_r15_01 */ +static int hf_lte_rrc_nprach_Periodicity_r15_01 = -1; /* T_nprach_Periodicity_r15_01 */ +static int hf_lte_rrc_nprach_StartTime_r15_01 = -1; /* T_nprach_StartTime_r15_01 */ +static int hf_lte_rrc_nprach_SubcarrierOffset_r15_01 = -1; /* T_nprach_SubcarrierOffset_r15_01 */ +static int hf_lte_rrc_nprach_NumSubcarriers_r15_01 = -1; /* T_nprach_NumSubcarriers_r15_01 */ +static int hf_lte_rrc_nprach_SubcarrierMSG3_RangeStart_r15_01 = -1; /* T_nprach_SubcarrierMSG3_RangeStart_r15_01 */ +static int hf_lte_rrc_npdcch_NumRepetitions_RA_r15_01 = -1; /* T_npdcch_NumRepetitions_RA_r15_01 */ +static int hf_lte_rrc_npdcch_StartSF_CSS_RA_r15_01 = -1; /* T_npdcch_StartSF_CSS_RA_r15_01 */ +static int hf_lte_rrc_npdcch_Offset_RA_r15_01 = -1; /* T_npdcch_Offset_RA_r15_01 */ +static int hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r15_01 = -1; /* T_nprach_NumCBRA_StartSubcarriers_r15_01 */ +static int hf_lte_rrc_npdcch_CarrierIndex_r15 = -1; /* INTEGER_1_maxNonAnchorCarriers_NB_r14 */ static int hf_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13_item = -1; /* RSRP_Range */ +static int hf_lte_rrc_EDT_TBS_InfoList_NB_r15_item = -1; /* EDT_TBS_NB_r15 */ +static int hf_lte_rrc_edt_TBS_r15_01 = -1; /* T_edt_TBS_r15_01 */ static int hf_lte_rrc_ack_NACK_NumRepetitions_Msg4_r13 = -1; /* SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13 */ static int hf_lte_rrc_ack_NACK_NumRepetitions_Msg4_r13_item = -1; /* ACK_NACK_NumRepetitions_NB_r13 */ static int hf_lte_rrc_srs_SubframeConfig_r13 = -1; /* T_srs_SubframeConfig_r13 */ @@ -5974,13 +7236,17 @@ static int hf_lte_rrc_npusch_ConfigDedicated_r13 = -1; /* NPUSCH_ConfigDedicate static int hf_lte_rrc_uplinkPowerControlDedicated_r13_01 = -1; /* UplinkPowerControlDedicated_NB_r13 */ static int hf_lte_rrc_twoHARQ_ProcessesConfig_r14 = -1; /* T_twoHARQ_ProcessesConfig_r14 */ static int hf_lte_rrc_interferenceRandomisationConfig_r14 = -1; /* T_interferenceRandomisationConfig_r14 */ +static int hf_lte_rrc_npdcch_ConfigDedicated_v1530 = -1; /* NPDCCH_ConfigDedicated_NB_v1530 */ static int hf_lte_rrc_powerRampingParameters_r13 = -1; /* PowerRampingParameters */ static int hf_lte_rrc_rach_InfoList_r13 = -1; /* RACH_InfoList_NB_r13 */ static int hf_lte_rrc_connEstFailOffset_r13 = -1; /* INTEGER_0_15 */ static int hf_lte_rrc_powerRampingParameters_v1450 = -1; /* PowerRampingParameters_NB_v1450 */ +static int hf_lte_rrc_rach_InfoList_v1530 = -1; /* RACH_InfoList_NB_v1530 */ static int hf_lte_rrc_RACH_InfoList_NB_r13_item = -1; /* RACH_Info_NB_r13 */ +static int hf_lte_rrc_RACH_InfoList_NB_v1530_item = -1; /* RACH_Info_NB_v1530 */ static int hf_lte_rrc_ra_ResponseWindowSize_r13_01 = -1; /* T_ra_ResponseWindowSize_r13_01 */ static int hf_lte_rrc_mac_ContentionResolutionTimer_r13_01 = -1; /* T_mac_ContentionResolutionTimer_r13_01 */ +static int hf_lte_rrc_mac_ContentionResolutionTimer_r15_01 = -1; /* T_mac_ContentionResolutionTimer_r15_01 */ static int hf_lte_rrc_preambleInitialReceivedTargetPower_v1450 = -1; /* T_preambleInitialReceivedTargetPower_v1450 */ static int hf_lte_rrc_powerRampingParametersCE1_r14 = -1; /* T_powerRampingParametersCE1_r14 */ static int hf_lte_rrc_powerRampingStepCE1_r14 = -1; /* T_powerRampingStepCE1_r14 */ @@ -5995,6 +7261,9 @@ static int hf_lte_rrc_dl_Gap_r13 = -1; /* DL_GapConfig_NB_r13 */ static int hf_lte_rrc_uplinkPowerControlCommon_r13 = -1; /* UplinkPowerControlCommon_NB_r13 */ static int hf_lte_rrc_nprach_Config_v1330 = -1; /* NPRACH_ConfigSIB_NB_v1330 */ static int hf_lte_rrc_nprach_Config_v1450 = -1; /* NPRACH_ConfigSIB_NB_v1450 */ +static int hf_lte_rrc_nprach_Config_v1530 = -1; /* NPRACH_ConfigSIB_NB_v1530 */ +static int hf_lte_rrc_dl_Gap_v1530 = -1; /* DL_GapConfig_NB_v1530 */ +static int hf_lte_rrc_wus_Config_r15_02 = -1; /* WUS_Config_NB_r15 */ static int hf_lte_rrc_modificationPeriodCoeff_r13 = -1; /* T_modificationPeriodCoeff_r13 */ static int hf_lte_rrc_defaultPagingCycle_r13 = -1; /* T_defaultPagingCycle_r13 */ static int hf_lte_rrc_nB_r13 = -1; /* T_nB_r13 */ @@ -6007,6 +7276,7 @@ static int hf_lte_rrc_explicitValue_r13 = -1; /* MAC_MainConfig_NB_r13 */ static int hf_lte_rrc_defaultValue_r13 = -1; /* NULL */ static int hf_lte_rrc_physicalConfigDedicated_r13 = -1; /* PhysicalConfigDedicated_NB_r13 */ static int hf_lte_rrc_rlf_TimersAndConstants_r13_01 = -1; /* RLF_TimersAndConstants_NB_r13 */ +static int hf_lte_rrc_schedulingRequestConfig_r15 = -1; /* SchedulingRequestConfig_NB_r15 */ static int hf_lte_rrc_SRB_ToAddModList_NB_r13_item = -1; /* SRB_ToAddMod_NB_r13 */ static int hf_lte_rrc_rlc_Config_r13 = -1; /* T_rlc_Config_r13 */ static int hf_lte_rrc_explicitValue_07 = -1; /* RLC_Config_NB_r13 */ @@ -6024,50 +7294,98 @@ static int hf_lte_rrc_DRB_ToReleaseList_NB_r13_item = -1; /* DRB_Identity */ static int hf_lte_rrc_am_01 = -1; /* T_am_01 */ static int hf_lte_rrc_ul_AM_RLC_r13 = -1; /* UL_AM_RLC_NB_r13 */ static int hf_lte_rrc_dl_AM_RLC_r13 = -1; /* DL_AM_RLC_NB_r13 */ +static int hf_lte_rrc_um_Bi_Directional_r15_01 = -1; /* NULL */ +static int hf_lte_rrc_um_Uni_Directional_UL_r15_01 = -1; /* NULL */ +static int hf_lte_rrc_um_Uni_Directional_DL_r15_01 = -1; /* NULL */ static int hf_lte_rrc_t_Reordering_r14 = -1; /* T_Reordering */ static int hf_lte_rrc_t_PollRetransmit_r13 = -1; /* T_PollRetransmit_NB_r13 */ static int hf_lte_rrc_maxRetxThreshold_r13 = -1; /* T_maxRetxThreshold_r13 */ static int hf_lte_rrc_enableStatusReportSN_Gap_r13 = -1; /* T_enableStatusReportSN_Gap_r13 */ -static int hf_lte_rrc_setup_150 = -1; /* T_setup_132 */ +static int hf_lte_rrc_setup_197 = -1; /* T_setup_172 */ static int hf_lte_rrc_t301_r13 = -1; /* T_t301_r13 */ static int hf_lte_rrc_t310_r13 = -1; /* T_t310_r13 */ static int hf_lte_rrc_n310_r13 = -1; /* T_n310_r13 */ static int hf_lte_rrc_t311_r13 = -1; /* T_t311_r13 */ static int hf_lte_rrc_n311_r13 = -1; /* T_n311_r13 */ static int hf_lte_rrc_t311_v1350 = -1; /* T_t311_v1350 */ +static int hf_lte_rrc_t301_v1530 = -1; /* T_t301_v1530 */ +static int hf_lte_rrc_t311_v1530 = -1; /* T_t311_v1530 */ +static int hf_lte_rrc_sr_WithHARQ_ACK_Config_r15 = -1; /* T_sr_WithHARQ_ACK_Config_r15 */ +static int hf_lte_rrc_sr_WithoutHARQ_ACK_Config_r15 = -1; /* SR_WithoutHARQ_ACK_Config_NB_r15 */ +static int hf_lte_rrc_sr_SPS_BSR_Config_r15 = -1; /* SR_SPS_BSR_Config_NB_r15 */ +static int hf_lte_rrc_setup_198 = -1; /* T_setup_173 */ +static int hf_lte_rrc_sr_ProhibitTimer_r15 = -1; /* INTEGER_0_7 */ +static int hf_lte_rrc_sr_NPRACH_Resource_r15 = -1; /* SR_NPRACH_Resource_NB_r15 */ +static int hf_lte_rrc_nprach_CarrierIndex_r15 = -1; /* INTEGER_0_maxNonAnchorCarriers_NB_r14 */ +static int hf_lte_rrc_nprach_ResourceIndex_r15 = -1; /* INTEGER_1_maxNPRACH_Resources_NB_r13 */ +static int hf_lte_rrc_nprach_SubCarrierIndex_r15 = -1; /* T_nprach_SubCarrierIndex_r15 */ +static int hf_lte_rrc_nprach_Fmt0Fmt1_r15 = -1; /* INTEGER_0_47 */ +static int hf_lte_rrc_nprach_Fmt2_r15 = -1; /* INTEGER_0_143 */ +static int hf_lte_rrc_p0_SR_r15 = -1; /* INTEGER_M126_24 */ +static int hf_lte_rrc_alpha_r15 = -1; /* T_alpha_r15 */ +static int hf_lte_rrc_setup_199 = -1; /* T_setup_174 */ +static int hf_lte_rrc_semiPersistSchedIntervalUL_r15 = -1; /* T_semiPersistSchedIntervalUL_r15 */ +static int hf_lte_rrc_subframeAssignment_r15_01 = -1; /* T_subframeAssignment_r15 */ +static int hf_lte_rrc_specialSubframePatterns_r15 = -1; /* T_specialSubframePatterns_r15 */ static int hf_lte_rrc_p0_NominalNPUSCH_r13 = -1; /* INTEGER_M126_24 */ static int hf_lte_rrc_alpha_r13 = -1; /* T_alpha_r13 */ static int hf_lte_rrc_deltaPreambleMsg3_r13 = -1; /* INTEGER_M1_6 */ static int hf_lte_rrc_p0_UE_NPUSCH_r13 = -1; /* INTEGER_M8_7 */ +static int hf_lte_rrc_maxDurationFactor_r15_01 = -1; /* WUS_MaxDurationFactor_NB_r15 */ +static int hf_lte_rrc_numPOs_r15_01 = -1; /* T_numPOs_r15_01 */ +static int hf_lte_rrc_numDRX_CyclesRelaxed_r15 = -1; /* T_numDRX_CyclesRelaxed_r15 */ +static int hf_lte_rrc_timeOffsetDRX_r15_01 = -1; /* T_timeOffsetDRX_r15_01 */ +static int hf_lte_rrc_timeOffset_eDRX_Short_r15_01 = -1; /* T_timeOffset_eDRX_Short_r15_01 */ +static int hf_lte_rrc_timeOffset_eDRX_Long_r15_01 = -1; /* T_timeOffset_eDRX_Long_r15_01 */ static int hf_lte_rrc_AdditionalBandInfoList_NB_r14_item = -1; /* FreqBandIndicator_NB_r13 */ static int hf_lte_rrc_MultiBandInfoList_NB_r13_item = -1; /* MultiBandInfo_NB_r13 */ static int hf_lte_rrc_NS_PmaxList_NB_r13_item = -1; /* NS_PmaxValue_NB_r13 */ static int hf_lte_rrc_additionalPmax_r13 = -1; /* P_Max */ static int hf_lte_rrc_nrsrpResult_r14 = -1; /* NRSRP_Range_NB_r14 */ static int hf_lte_rrc_nrsrqResult_r14 = -1; /* NRSRQ_Range_NB_r14 */ +static int hf_lte_rrc_nsss_RRM_PowerOffset_r15 = -1; /* T_nsss_RRM_PowerOffset_r15 */ +static int hf_lte_rrc_nsss_NumOccDiffPrecoders_r15 = -1; /* T_nsss_NumOccDiffPrecoders_r15 */ static int hf_lte_rrc_accessStratumRelease_r13 = -1; /* AccessStratumRelease_NB_r13 */ static int hf_lte_rrc_ue_Category_NB_r13 = -1; /* T_ue_Category_NB_r13 */ static int hf_lte_rrc_multipleDRB_r13 = -1; /* T_multipleDRB_r13 */ static int hf_lte_rrc_pdcp_Parameters_r13 = -1; /* PDCP_Parameters_NB_r13 */ static int hf_lte_rrc_phyLayerParameters_r13 = -1; /* PhyLayerParameters_NB_r13 */ static int hf_lte_rrc_rf_Parameters_r13 = -1; /* RF_Parameters_NB_r13 */ -static int hf_lte_rrc_dummy_04 = -1; /* T_dummy_03 */ +static int hf_lte_rrc_dummy_05 = -1; /* T_dummy_03 */ static int hf_lte_rrc_ue_Category_NB_r14 = -1; /* T_ue_Category_NB_r14 */ static int hf_lte_rrc_mac_Parameters_r14 = -1; /* MAC_Parameters_NB_r14 */ static int hf_lte_rrc_phyLayerParameters_v1430_01 = -1; /* PhyLayerParameters_NB_v1430 */ static int hf_lte_rrc_rf_Parameters_v1430_01 = -1; /* RF_Parameters_NB_v1430 */ -static int hf_lte_rrc_nonCriticalExtension_278 = -1; /* UE_Capability_NB_v1440_IEs */ +static int hf_lte_rrc_nonCriticalExtension_310 = -1; /* UE_Capability_NB_v1440_IEs */ static int hf_lte_rrc_phyLayerParameters_v1440 = -1; /* PhyLayerParameters_NB_v1440 */ -static int hf_lte_rrc_nonCriticalExtension_279 = -1; /* T_nonCriticalExtension_94 */ +static int hf_lte_rrc_nonCriticalExtension_311 = -1; /* UE_Capability_NB_v14x0_IEs */ +static int hf_lte_rrc_nonCriticalExtension_312 = -1; /* UE_Capability_NB_v1530_IEs */ +static int hf_lte_rrc_earlyData_UP_r15_01 = -1; /* T_earlyData_UP_r15_01 */ +static int hf_lte_rrc_rlc_Parameters_r15 = -1; /* RLC_Parameters_NB_r15 */ +static int hf_lte_rrc_mac_Parameters_v1530_01 = -1; /* MAC_Parameters_NB_v1530 */ +static int hf_lte_rrc_phyLayerParameters_v1530_01 = -1; /* PhyLayerParameters_NB_v1530 */ +static int hf_lte_rrc_tdd_UE_Capability_r15 = -1; /* TDD_UE_Capability_NB_r15 */ +static int hf_lte_rrc_nonCriticalExtension_313 = -1; /* T_nonCriticalExtension_103 */ +static int hf_lte_rrc_ue_Category_NB_r15 = -1; /* T_ue_Category_NB_r15 */ +static int hf_lte_rrc_phyLayerParametersRel13_r15 = -1; /* PhyLayerParameters_NB_r13 */ +static int hf_lte_rrc_phyLayerParametersRel14_r15 = -1; /* PhyLayerParameters_NB_v1430 */ static int hf_lte_rrc_supportedROHC_Profiles_r13 = -1; /* T_supportedROHC_Profiles_r13 */ static int hf_lte_rrc_maxNumberROHC_ContextSessions_r13 = -1; /* T_maxNumberROHC_ContextSessions_r13 */ +static int hf_lte_rrc_rlc_UM_r15 = -1; /* T_rlc_UM_r15 */ static int hf_lte_rrc_dataInactMon_r14_01 = -1; /* T_dataInactMon_r14_01 */ static int hf_lte_rrc_rai_Support_r14_01 = -1; /* T_rai_Support_r14_01 */ +static int hf_lte_rrc_sr_SPS_BSR_r15 = -1; /* T_sr_SPS_BSR_r15 */ static int hf_lte_rrc_multiTone_r13 = -1; /* T_multiTone_r13 */ static int hf_lte_rrc_multiCarrier_r13 = -1; /* T_multiCarrier_r13 */ static int hf_lte_rrc_multiCarrier_NPRACH_r14 = -1; /* T_multiCarrier_NPRACH_r14 */ static int hf_lte_rrc_twoHARQ_Processes_r14 = -1; /* T_twoHARQ_Processes_r14 */ static int hf_lte_rrc_interferenceRandomisation_r14 = -1; /* T_interferenceRandomisation_r14 */ +static int hf_lte_rrc_mixedOperationMode_r15 = -1; /* T_mixedOperationMode_r15 */ +static int hf_lte_rrc_sr_WithHARQ_ACK_r15 = -1; /* T_sr_WithHARQ_ACK_r15 */ +static int hf_lte_rrc_sr_WithoutHARQ_ACK_r15 = -1; /* T_sr_WithoutHARQ_ACK_r15 */ +static int hf_lte_rrc_nprach_Format2_r15 = -1; /* T_nprach_Format2_r15 */ +static int hf_lte_rrc_additionalTransmissionSIB1_r15_01 = -1; /* T_additionalTransmissionSIB1_r15 */ +static int hf_lte_rrc_npusch_3dot75kHz_SCS_TDD_r15 = -1; /* T_npusch_3dot75kHz_SCS_TDD_r15 */ static int hf_lte_rrc_supportedBandList_r13 = -1; /* SupportedBandList_NB_r13 */ static int hf_lte_rrc_multiNS_Pmax_r13 = -1; /* T_multiNS_Pmax_r13 */ static int hf_lte_rrc_powerClassNB_14dBm_r14 = -1; /* T_powerClassNB_14dBm_r14 */ @@ -6076,6 +7394,10 @@ static int hf_lte_rrc_band_r13 = -1; /* FreqBandIndicator_NB_r13 */ static int hf_lte_rrc_powerClassNB_20dBm_r13 = -1; /* T_powerClassNB_20dBm_r13 */ static int hf_lte_rrc_ue_Category_NB_r13_01 = -1; /* T_ue_Category_NB_r13_01 */ static int hf_lte_rrc_multiCarrierPaging_r14 = -1; /* T_multiCarrierPaging_r14 */ +static int hf_lte_rrc_mixedOperationMode_r15_01 = -1; /* T_mixedOperationMode_r15_01 */ +static int hf_lte_rrc_wakeUpSignal_r15_01 = -1; /* T_wakeUpSignal_r15_01 */ +static int hf_lte_rrc_wakeUpSignalMinGap_eDRX_r15_01 = -1; /* T_wakeUpSignalMinGap_eDRX_r15_01 */ +static int hf_lte_rrc_multiCarrierPagingTDD_r15 = -1; /* T_multiCarrierPagingTDD_r15 */ static int hf_lte_rrc_t300_r13 = -1; /* T_t300_r13 */ static int hf_lte_rrc_t301_r13_01 = -1; /* T_t301_r13_01 */ static int hf_lte_rrc_t310_r13_01 = -1; /* T_t310_r13_01 */ @@ -6083,6 +7405,10 @@ static int hf_lte_rrc_n310_r13_01 = -1; /* T_n310_r13_01 */ static int hf_lte_rrc_t311_r13_01 = -1; /* T_t311_r13_01 */ static int hf_lte_rrc_n311_r13_01 = -1; /* T_n311_r13_01 */ static int hf_lte_rrc_t311_v1350_01 = -1; /* T_t311_v1350_01 */ +static int hf_lte_rrc_t300_v1530 = -1; /* T_t300_v1530 */ +static int hf_lte_rrc_t301_v1530_01 = -1; /* T_t301_v1530_01 */ +static int hf_lte_rrc_t311_v1530_01 = -1; /* T_t311_v1530_01 */ +static int hf_lte_rrc_t300_r15_01 = -1; /* T_t300_r15_01 */ static int hf_lte_rrc_SC_MTCH_InfoList_NB_r14_item = -1; /* SC_MTCH_Info_NB_r14 */ static int hf_lte_rrc_sc_mtch_CarrierConfig_r14 = -1; /* T_sc_mtch_CarrierConfig_r14 */ static int hf_lte_rrc_sc_mtch_SchedulingInfo_r14 = -1; /* SC_MTCH_SchedulingInfo_NB_r14 */ @@ -6100,7 +7426,7 @@ static int hf_lte_rrc_carrierFreq_r14 = -1; /* CarrierFreq_NB_r13 */ static int dummy_hf_lte_rrc_eag_field = -1; /* never registered */ /*--- End of included file: packet-lte-rrc-hf.c ---*/ -#line 76 "./asn1/lte-rrc/packet-lte-rrc-template.c" +#line 78 "./asn1/lte-rrc/packet-lte-rrc-template.c" static int hf_lte_rrc_eutra_cap_feat_group_ind_1 = -1; static int hf_lte_rrc_eutra_cap_feat_group_ind_2 = -1; @@ -6333,8 +7659,10 @@ static gint ett_lte_rrc_SCG_ConfigInfo_r12_IEs = -1; static gint ett_lte_rrc_SCG_ConfigInfo_v1310_IEs = -1; static gint ett_lte_rrc_SCG_ConfigInfo_v1330_IEs = -1; static gint ett_lte_rrc_SCG_ConfigInfo_v1430_IEs = -1; +static gint ett_lte_rrc_SCG_ConfigInfo_v1530_IEs = -1; static gint ett_lte_rrc_T_nonCriticalExtension_04 = -1; static gint ett_lte_rrc_DRB_InfoListSCG_r12 = -1; +static gint ett_lte_rrc_DRB_InfoListSCG_r15 = -1; static gint ett_lte_rrc_DRB_InfoSCG_r12 = -1; static gint ett_lte_rrc_SCellToAddModListSCG_r12 = -1; static gint ett_lte_rrc_SCellToAddModListSCG_Ext_r13 = -1; @@ -6414,6 +7742,8 @@ static gint ett_lte_rrc_DL_CCCH_Message = -1; static gint ett_lte_rrc_DL_CCCH_MessageType = -1; static gint ett_lte_rrc_T_c1_12 = -1; static gint ett_lte_rrc_T_messageClassExtension_05 = -1; +static gint ett_lte_rrc_T_c2_01 = -1; +static gint ett_lte_rrc_T_messageClassExtensionFuture_r15 = -1; static gint ett_lte_rrc_DL_DCCH_Message = -1; static gint ett_lte_rrc_DL_DCCH_MessageType = -1; static gint ett_lte_rrc_T_c1_13 = -1; @@ -6422,19 +7752,21 @@ static gint ett_lte_rrc_UL_CCCH_Message = -1; static gint ett_lte_rrc_UL_CCCH_MessageType = -1; static gint ett_lte_rrc_T_c1_14 = -1; static gint ett_lte_rrc_T_messageClassExtension_07 = -1; -static gint ett_lte_rrc_T_c2_01 = -1; +static gint ett_lte_rrc_T_c2_02 = -1; static gint ett_lte_rrc_T_messageClassExtensionFuture_r13 = -1; +static gint ett_lte_rrc_T_c3 = -1; +static gint ett_lte_rrc_T_messageClassExtensionFuture_r15_01 = -1; static gint ett_lte_rrc_UL_DCCH_Message = -1; static gint ett_lte_rrc_UL_DCCH_MessageType = -1; static gint ett_lte_rrc_T_c1_15 = -1; static gint ett_lte_rrc_T_messageClassExtension_08 = -1; -static gint ett_lte_rrc_T_c2_02 = -1; +static gint ett_lte_rrc_T_c2_03 = -1; static gint ett_lte_rrc_T_messageClassExtensionFuture_r11 = -1; static gint ett_lte_rrc_SC_MCCH_Message_r13 = -1; static gint ett_lte_rrc_SC_MCCH_MessageType_r13 = -1; static gint ett_lte_rrc_T_c1_16 = -1; static gint ett_lte_rrc_T_messageClassExtension_09 = -1; -static gint ett_lte_rrc_T_c2_03 = -1; +static gint ett_lte_rrc_T_c2_04 = -1; static gint ett_lte_rrc_T_messageClassExtensionFuture_r14 = -1; static gint ett_lte_rrc_CounterCheck = -1; static gint ett_lte_rrc_T_criticalExtensions_07 = -1; @@ -6442,16 +7774,20 @@ static gint ett_lte_rrc_T_c1_17 = -1; static gint ett_lte_rrc_T_criticalExtensionsFuture_07 = -1; static gint ett_lte_rrc_CounterCheck_r8_IEs = -1; static gint ett_lte_rrc_CounterCheck_v8a0_IEs = -1; +static gint ett_lte_rrc_CounterCheck_v1530_IEs = -1; static gint ett_lte_rrc_T_nonCriticalExtension_08 = -1; static gint ett_lte_rrc_DRB_CountMSB_InfoList = -1; +static gint ett_lte_rrc_DRB_CountMSB_InfoListExt_r15 = -1; static gint ett_lte_rrc_DRB_CountMSB_Info = -1; static gint ett_lte_rrc_CounterCheckResponse = -1; static gint ett_lte_rrc_T_criticalExtensions_08 = -1; static gint ett_lte_rrc_T_criticalExtensionsFuture_08 = -1; static gint ett_lte_rrc_CounterCheckResponse_r8_IEs = -1; static gint ett_lte_rrc_CounterCheckResponse_v8a0_IEs = -1; +static gint ett_lte_rrc_CounterCheckResponse_v1530_IEs = -1; static gint ett_lte_rrc_T_nonCriticalExtension_09 = -1; static gint ett_lte_rrc_DRB_CountInfoList = -1; +static gint ett_lte_rrc_DRB_CountInfoListExt_r15 = -1; static gint ett_lte_rrc_DRB_CountInfo = -1; static gint ett_lte_rrc_CSFBParametersRequestCDMA2000 = -1; static gint ett_lte_rrc_T_criticalExtensions_09 = -1; @@ -6473,6 +7809,12 @@ static gint ett_lte_rrc_DLInformationTransfer_r8_IEs = -1; static gint ett_lte_rrc_T_dedicatedInfoType = -1; static gint ett_lte_rrc_DLInformationTransfer_v8a0_IEs = -1; static gint ett_lte_rrc_T_nonCriticalExtension_12 = -1; +static gint ett_lte_rrc_DLInformationTransfer_r15_IEs = -1; +static gint ett_lte_rrc_T_dedicatedInfoType_r15 = -1; +static gint ett_lte_rrc_FailureInformation_r15 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_13 = -1; +static gint ett_lte_rrc_FailedLogicalChannelInfo_r15 = -1; +static gint ett_lte_rrc_T_failedLogicalChannelIdentity_r15 = -1; static gint ett_lte_rrc_HandoverFromEUTRAPreparationRequest = -1; static gint ett_lte_rrc_T_criticalExtensions_12 = -1; static gint ett_lte_rrc_T_c1_19 = -1; @@ -6481,7 +7823,7 @@ static gint ett_lte_rrc_HandoverFromEUTRAPreparationRequest_r8_IEs = -1; static gint ett_lte_rrc_HandoverFromEUTRAPreparationRequest_v890_IEs = -1; static gint ett_lte_rrc_HandoverFromEUTRAPreparationRequest_v920_IEs = -1; static gint ett_lte_rrc_HandoverFromEUTRAPreparationRequest_v1020_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_13 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_14 = -1; static gint ett_lte_rrc_InDeviceCoexIndication_r11 = -1; static gint ett_lte_rrc_T_criticalExtensions_13 = -1; static gint ett_lte_rrc_T_c1_20 = -1; @@ -6491,7 +7833,8 @@ static gint ett_lte_rrc_InDeviceCoexIndication_v11d0_IEs = -1; static gint ett_lte_rrc_T_ul_CA_AssistanceInfo_r11 = -1; static gint ett_lte_rrc_InDeviceCoexIndication_v1310_IEs = -1; static gint ett_lte_rrc_InDeviceCoexIndication_v1360_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_14 = -1; +static gint ett_lte_rrc_InDeviceCoexIndication_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_15 = -1; static gint ett_lte_rrc_AffectedCarrierFreqList_r11 = -1; static gint ett_lte_rrc_AffectedCarrierFreqList_v1310 = -1; static gint ett_lte_rrc_AffectedCarrierFreq_r11 = -1; @@ -6506,6 +7849,12 @@ static gint ett_lte_rrc_IDC_SubframePatternList_r11 = -1; static gint ett_lte_rrc_IDC_SubframePattern_r11 = -1; static gint ett_lte_rrc_T_subframePatternTDD_r11 = -1; static gint ett_lte_rrc_VictimSystemType_r11 = -1; +static gint ett_lte_rrc_MRDC_AssistanceInfo_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxCombIDC_r11_OF_AffectedCarrierFreqCombInfoMRDC_r15 = -1; +static gint ett_lte_rrc_AffectedCarrierFreqCombInfoMRDC_r15 = -1; +static gint ett_lte_rrc_T_affectedCarrierFreqCombMRDC_r15 = -1; +static gint ett_lte_rrc_AffectedCarrierFreqComb_r15 = -1; +static gint ett_lte_rrc_AffectedCarrierFreqCombNR_r15 = -1; static gint ett_lte_rrc_InterFreqRSTDMeasurementIndication_r10 = -1; static gint ett_lte_rrc_T_criticalExtensions_14 = -1; static gint ett_lte_rrc_T_c1_21 = -1; @@ -6513,9 +7862,10 @@ static gint ett_lte_rrc_T_criticalExtensionsFuture_14 = -1; static gint ett_lte_rrc_InterFreqRSTDMeasurementIndication_r10_IEs = -1; static gint ett_lte_rrc_T_rstd_InterFreqIndication_r10 = -1; static gint ett_lte_rrc_T_start = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_15 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_16 = -1; static gint ett_lte_rrc_RSTD_InterFreqInfoList_r10 = -1; static gint ett_lte_rrc_RSTD_InterFreqInfo_r10 = -1; +static gint ett_lte_rrc_T_measPRS_Offset_r15 = -1; static gint ett_lte_rrc_LoggedMeasurementConfiguration_r10 = -1; static gint ett_lte_rrc_T_criticalExtensions_15 = -1; static gint ett_lte_rrc_T_c1_22 = -1; @@ -6524,13 +7874,14 @@ static gint ett_lte_rrc_LoggedMeasurementConfiguration_r10_IEs = -1; static gint ett_lte_rrc_LoggedMeasurementConfiguration_v1080_IEs = -1; static gint ett_lte_rrc_LoggedMeasurementConfiguration_v1130_IEs = -1; static gint ett_lte_rrc_LoggedMeasurementConfiguration_v1250_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_16 = -1; +static gint ett_lte_rrc_LoggedMeasurementConfiguration_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_17 = -1; static gint ett_lte_rrc_TargetMBSFN_AreaList_r12 = -1; static gint ett_lte_rrc_TargetMBSFN_Area_r12 = -1; static gint ett_lte_rrc_MasterInformationBlock = -1; static gint ett_lte_rrc_MasterInformationBlock_MBMS_r14 = -1; static gint ett_lte_rrc_MBMSCountingRequest_r10 = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_17 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_18 = -1; static gint ett_lte_rrc_CountingRequestList_r10 = -1; static gint ett_lte_rrc_CountingRequestInfo_r10 = -1; static gint ett_lte_rrc_MBMSCountingResponse_r10 = -1; @@ -6538,7 +7889,7 @@ static gint ett_lte_rrc_T_criticalExtensions_16 = -1; static gint ett_lte_rrc_T_c1_23 = -1; static gint ett_lte_rrc_T_criticalExtensionsFuture_16 = -1; static gint ett_lte_rrc_MBMSCountingResponse_r10_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_18 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_19 = -1; static gint ett_lte_rrc_CountingResponseList_r10 = -1; static gint ett_lte_rrc_CountingResponseInfo_r10 = -1; static gint ett_lte_rrc_MBMSInterestIndication_r11 = -1; @@ -6547,35 +7898,41 @@ static gint ett_lte_rrc_T_c1_24 = -1; static gint ett_lte_rrc_T_criticalExtensionsFuture_17 = -1; static gint ett_lte_rrc_MBMSInterestIndication_r11_IEs = -1; static gint ett_lte_rrc_MBMSInterestIndication_v1310_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_19 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_20 = -1; static gint ett_lte_rrc_MBSFNAreaConfiguration_r9 = -1; static gint ett_lte_rrc_MBSFNAreaConfiguration_v930_IEs = -1; static gint ett_lte_rrc_MBSFNAreaConfiguration_v1250_IEs = -1; static gint ett_lte_rrc_MBSFNAreaConfiguration_v1430_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_20 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_21 = -1; static gint ett_lte_rrc_CommonSF_AllocPatternList_r9 = -1; static gint ett_lte_rrc_CommonSF_AllocPatternList_r14 = -1; -static gint ett_lte_rrc_MeasurementReport = -1; +static gint ett_lte_rrc_MeasReportAppLayer_r15 = -1; static gint ett_lte_rrc_T_criticalExtensions_18 = -1; -static gint ett_lte_rrc_T_c1_25 = -1; static gint ett_lte_rrc_T_criticalExtensionsFuture_18 = -1; +static gint ett_lte_rrc_MeasReportAppLayer_r15_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_22 = -1; +static gint ett_lte_rrc_MeasurementReport = -1; +static gint ett_lte_rrc_T_criticalExtensions_19 = -1; +static gint ett_lte_rrc_T_c1_25 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_19 = -1; static gint ett_lte_rrc_MeasurementReport_r8_IEs = -1; static gint ett_lte_rrc_MeasurementReport_v8a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_21 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_23 = -1; static gint ett_lte_rrc_MobilityFromEUTRACommand = -1; -static gint ett_lte_rrc_T_criticalExtensions_19 = -1; +static gint ett_lte_rrc_T_criticalExtensions_20 = -1; static gint ett_lte_rrc_T_c1_26 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_19 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_20 = -1; static gint ett_lte_rrc_MobilityFromEUTRACommand_r8_IEs = -1; static gint ett_lte_rrc_T_purpose = -1; static gint ett_lte_rrc_MobilityFromEUTRACommand_v8a0_IEs = -1; static gint ett_lte_rrc_MobilityFromEUTRACommand_v8d0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_22 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_24 = -1; static gint ett_lte_rrc_MobilityFromEUTRACommand_r9_IEs = -1; static gint ett_lte_rrc_T_purpose_01 = -1; static gint ett_lte_rrc_MobilityFromEUTRACommand_v930_IEs = -1; static gint ett_lte_rrc_MobilityFromEUTRACommand_v960_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_23 = -1; +static gint ett_lte_rrc_MobilityFromEUTRACommand_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_25 = -1; static gint ett_lte_rrc_Handover = -1; static gint ett_lte_rrc_CellChangeOrder = -1; static gint ett_lte_rrc_T_targetRAT_Type_01 = -1; @@ -6587,36 +7944,37 @@ static gint ett_lte_rrc_Paging_v890_IEs = -1; static gint ett_lte_rrc_Paging_v920_IEs = -1; static gint ett_lte_rrc_Paging_v1130_IEs = -1; static gint ett_lte_rrc_Paging_v1310_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_24 = -1; +static gint ett_lte_rrc_Paging_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_26 = -1; static gint ett_lte_rrc_PagingRecordList = -1; static gint ett_lte_rrc_PagingRecord = -1; static gint ett_lte_rrc_PagingUE_Identity = -1; static gint ett_lte_rrc_IMSI = -1; static gint ett_lte_rrc_ProximityIndication_r9 = -1; -static gint ett_lte_rrc_T_criticalExtensions_20 = -1; +static gint ett_lte_rrc_T_criticalExtensions_21 = -1; static gint ett_lte_rrc_T_c1_27 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_20 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_21 = -1; static gint ett_lte_rrc_ProximityIndication_r9_IEs = -1; static gint ett_lte_rrc_T_carrierFreq_r9 = -1; static gint ett_lte_rrc_ProximityIndication_v930_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_25 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_27 = -1; static gint ett_lte_rrc_RNReconfiguration_r10 = -1; -static gint ett_lte_rrc_T_criticalExtensions_21 = -1; +static gint ett_lte_rrc_T_criticalExtensions_22 = -1; static gint ett_lte_rrc_T_c1_28 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_21 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_22 = -1; static gint ett_lte_rrc_RNReconfiguration_r10_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_26 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_28 = -1; static gint ett_lte_rrc_RN_SystemInfo_r10 = -1; static gint ett_lte_rrc_RNReconfigurationComplete_r10 = -1; -static gint ett_lte_rrc_T_criticalExtensions_22 = -1; +static gint ett_lte_rrc_T_criticalExtensions_23 = -1; static gint ett_lte_rrc_T_c1_29 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_22 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_23 = -1; static gint ett_lte_rrc_RNReconfigurationComplete_r10_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_27 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_29 = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration = -1; -static gint ett_lte_rrc_T_criticalExtensions_23 = -1; +static gint ett_lte_rrc_T_criticalExtensions_24 = -1; static gint ett_lte_rrc_T_c1_30 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_23 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_24 = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration_r8_IEs = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration_v890_IEs = -1; @@ -6625,7 +7983,7 @@ static gint ett_lte_rrc_RRCConnectionReconfiguration_v10i0_IEs = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration_v10l0_IEs = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration_v12f0_IEs = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration_v1370_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_28 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_30 = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration_v920_IEs = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration_v1020_IEs = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration_v1130_IEs = -1; @@ -6639,7 +7997,9 @@ static gint ett_lte_rrc_T_nr_Config_r15 = -1; static gint ett_lte_rrc_T_setup_01 = -1; static gint ett_lte_rrc_T_tdm_PatternConfig_r15 = -1; static gint ett_lte_rrc_T_setup_02 = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_29 = -1; +static gint ett_lte_rrc_RRCConnectionReconfiguration_v1530_IEs = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxDRB_r15_OF_DedicatedInfoNAS = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_31 = -1; static gint ett_lte_rrc_SL_SyncTxControl_r12 = -1; static gint ett_lte_rrc_PSCellToAddMod_r12 = -1; static gint ett_lte_rrc_T_cellIdentification_r12_01 = -1; @@ -6651,6 +8011,7 @@ static gint ett_lte_rrc_SCellToAddModList_v10l0 = -1; static gint ett_lte_rrc_SCellToAddModListExt_r13 = -1; static gint ett_lte_rrc_SCellToAddModListExt_v1370 = -1; static gint ett_lte_rrc_SCellToAddModListExt_v1430 = -1; +static gint ett_lte_rrc_SCellGroupToAddModList_r15 = -1; static gint ett_lte_rrc_SCellToAddMod_r10 = -1; static gint ett_lte_rrc_T_cellIdentification_r10 = -1; static gint ett_lte_rrc_SCellToAddMod_v10l0 = -1; @@ -6658,8 +8019,11 @@ static gint ett_lte_rrc_SCellToAddModExt_r13 = -1; static gint ett_lte_rrc_T_cellIdentification_r13 = -1; static gint ett_lte_rrc_SCellToAddModExt_v1370 = -1; static gint ett_lte_rrc_SCellToAddModExt_v1430 = -1; +static gint ett_lte_rrc_SCellGroupToAddMod_r15 = -1; static gint ett_lte_rrc_SCellToReleaseList_r10 = -1; static gint ett_lte_rrc_SCellToReleaseListExt_r13 = -1; +static gint ett_lte_rrc_SCellGroupToReleaseList_r15 = -1; +static gint ett_lte_rrc_SCellConfigCommon_r15 = -1; static gint ett_lte_rrc_SCG_Configuration_r12 = -1; static gint ett_lte_rrc_T_setup_03 = -1; static gint ett_lte_rrc_T_scg_ConfigPartMCG_r12 = -1; @@ -6671,9 +8035,14 @@ static gint ett_lte_rrc_SecurityConfigHO = -1; static gint ett_lte_rrc_T_handoverType = -1; static gint ett_lte_rrc_T_intraLTE = -1; static gint ett_lte_rrc_T_interRAT = -1; +static gint ett_lte_rrc_SecurityConfigHO_v1530 = -1; +static gint ett_lte_rrc_T_handoverType_v1530 = -1; +static gint ett_lte_rrc_T_intra5GC_r15 = -1; +static gint ett_lte_rrc_T_ngc_ToEPC_r15 = -1; +static gint ett_lte_rrc_T_epc_ToNGC_r15 = -1; static gint ett_lte_rrc_RRCConnectionReconfigurationComplete = -1; -static gint ett_lte_rrc_T_criticalExtensions_24 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_24 = -1; +static gint ett_lte_rrc_T_criticalExtensions_25 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_25 = -1; static gint ett_lte_rrc_RRCConnectionReconfigurationComplete_r8_IEs = -1; static gint ett_lte_rrc_RRCConnectionReconfigurationComplete_v8a0_IEs = -1; static gint ett_lte_rrc_RRCConnectionReconfigurationComplete_v1020_IEs = -1; @@ -6681,61 +8050,75 @@ static gint ett_lte_rrc_RRCConnectionReconfigurationComplete_v1130_IEs = -1; static gint ett_lte_rrc_RRCConnectionReconfigurationComplete_v1250_IEs = -1; static gint ett_lte_rrc_RRCConnectionReconfigurationComplete_v1430_IEs = -1; static gint ett_lte_rrc_RRCConnectionReconfigurationComplete_v1510_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_30 = -1; +static gint ett_lte_rrc_RRCConnectionReconfigurationComplete_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_32 = -1; static gint ett_lte_rrc_RRCConnectionReestablishment = -1; -static gint ett_lte_rrc_T_criticalExtensions_25 = -1; +static gint ett_lte_rrc_T_criticalExtensions_26 = -1; static gint ett_lte_rrc_T_c1_31 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_25 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_26 = -1; static gint ett_lte_rrc_RRCConnectionReestablishment_r8_IEs = -1; static gint ett_lte_rrc_RRCConnectionReestablishment_v8a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_31 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_33 = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentComplete = -1; -static gint ett_lte_rrc_T_criticalExtensions_26 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_26 = -1; +static gint ett_lte_rrc_T_criticalExtensions_27 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_27 = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentComplete_r8_IEs = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentComplete_v920_IEs = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentComplete_v8a0_IEs = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentComplete_v1020_IEs = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentComplete_v1130_IEs = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentComplete_v1250_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_32 = -1; +static gint ett_lte_rrc_RRCConnectionReestablishmentComplete_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_34 = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentReject = -1; -static gint ett_lte_rrc_T_criticalExtensions_27 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_27 = -1; +static gint ett_lte_rrc_T_criticalExtensions_28 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_28 = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentReject_r8_IEs = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentReject_v8a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_33 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_35 = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentRequest = -1; -static gint ett_lte_rrc_T_criticalExtensions_28 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_28 = -1; +static gint ett_lte_rrc_T_criticalExtensions_29 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_29 = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentRequest_r8_IEs = -1; static gint ett_lte_rrc_ReestabUE_Identity = -1; static gint ett_lte_rrc_RRCConnectionReject = -1; -static gint ett_lte_rrc_T_criticalExtensions_29 = -1; +static gint ett_lte_rrc_T_criticalExtensions_30 = -1; static gint ett_lte_rrc_T_c1_32 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_29 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_30 = -1; static gint ett_lte_rrc_RRCConnectionReject_r8_IEs = -1; static gint ett_lte_rrc_RRCConnectionReject_v8a0_IEs = -1; static gint ett_lte_rrc_RRCConnectionReject_v1020_IEs = -1; static gint ett_lte_rrc_RRCConnectionReject_v1130_IEs = -1; static gint ett_lte_rrc_T_deprioritisationReq_r11 = -1; static gint ett_lte_rrc_RRCConnectionReject_v1320_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_34 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_36 = -1; static gint ett_lte_rrc_RRCConnectionRelease = -1; -static gint ett_lte_rrc_T_criticalExtensions_30 = -1; +static gint ett_lte_rrc_T_criticalExtensions_31 = -1; static gint ett_lte_rrc_T_c1_33 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_30 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_31 = -1; static gint ett_lte_rrc_RRCConnectionRelease_r8_IEs = -1; static gint ett_lte_rrc_RRCConnectionRelease_v890_IEs = -1; static gint ett_lte_rrc_RRCConnectionRelease_v9e0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_35 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_37 = -1; static gint ett_lte_rrc_RRCConnectionRelease_v920_IEs = -1; static gint ett_lte_rrc_T_cellInfoList_r9 = -1; static gint ett_lte_rrc_RRCConnectionRelease_v1020_IEs = -1; static gint ett_lte_rrc_RRCConnectionRelease_v1320_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_36 = -1; +static gint ett_lte_rrc_RRCConnectionRelease_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_38 = -1; static gint ett_lte_rrc_RedirectedCarrierInfo = -1; static gint ett_lte_rrc_RedirectedCarrierInfo_v9e0 = -1; +static gint ett_lte_rrc_RRC_InactiveConfig_r15 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_39 = -1; +static gint ett_lte_rrc_RAN_NotificationAreaInfo_r15 = -1; +static gint ett_lte_rrc_PLMN_RAN_AreaCellList_r15 = -1; +static gint ett_lte_rrc_PLMN_RAN_AreaCell_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_32_OF_CellIdentity = -1; +static gint ett_lte_rrc_PLMN_RAN_AreaConfigList_r15 = -1; +static gint ett_lte_rrc_PLMN_RAN_AreaConfig_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_r15 = -1; +static gint ett_lte_rrc_RAN_AreaConfig_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_r15 = -1; static gint ett_lte_rrc_CarrierFreqListUTRA_TDD_r10 = -1; static gint ett_lte_rrc_IdleModeMobilityControlInfo = -1; static gint ett_lte_rrc_IdleModeMobilityControlInfo_v9e0 = -1; @@ -6748,6 +8131,8 @@ static gint ett_lte_rrc_FreqPriorityEUTRA = -1; static gint ett_lte_rrc_FreqPriorityEUTRA_v9e0 = -1; static gint ett_lte_rrc_FreqPriorityEUTRA_r12 = -1; static gint ett_lte_rrc_FreqPriorityEUTRA_v1310 = -1; +static gint ett_lte_rrc_FreqPriorityListNR_r15 = -1; +static gint ett_lte_rrc_FreqPriorityNR_r15 = -1; static gint ett_lte_rrc_FreqsPriorityListGERAN = -1; static gint ett_lte_rrc_FreqsPriorityGERAN = -1; static gint ett_lte_rrc_FreqPriorityListUTRA_FDD = -1; @@ -6760,6 +8145,7 @@ static gint ett_lte_rrc_BandClassPriorityList1XRTT = -1; static gint ett_lte_rrc_BandClassPriority1XRTT = -1; static gint ett_lte_rrc_CellInfoListGERAN_r9 = -1; static gint ett_lte_rrc_CellInfoGERAN_r9 = -1; +static gint ett_lte_rrc_CarrierInfoNR_r15 = -1; static gint ett_lte_rrc_CellInfoListUTRA_FDD_r9 = -1; static gint ett_lte_rrc_CellInfoUTRA_FDD_r9 = -1; static gint ett_lte_rrc_CellInfoListUTRA_TDD_r9 = -1; @@ -6767,37 +8153,40 @@ static gint ett_lte_rrc_CellInfoUTRA_TDD_r9 = -1; static gint ett_lte_rrc_CellInfoListUTRA_TDD_r10 = -1; static gint ett_lte_rrc_CellInfoUTRA_TDD_r10 = -1; static gint ett_lte_rrc_RRCConnectionRequest = -1; -static gint ett_lte_rrc_T_criticalExtensions_31 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_31 = -1; +static gint ett_lte_rrc_T_criticalExtensions_32 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_32 = -1; static gint ett_lte_rrc_RRCConnectionRequest_r8_IEs = -1; static gint ett_lte_rrc_InitialUE_Identity = -1; static gint ett_lte_rrc_RRCConnectionResume_r13 = -1; -static gint ett_lte_rrc_T_criticalExtensions_32 = -1; +static gint ett_lte_rrc_T_criticalExtensions_33 = -1; static gint ett_lte_rrc_T_c1_34 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_32 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_33 = -1; static gint ett_lte_rrc_RRCConnectionResume_r13_IEs = -1; static gint ett_lte_rrc_RRCConnectionResume_v1430_IEs = -1; static gint ett_lte_rrc_RRCConnectionResume_v1510_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_37 = -1; +static gint ett_lte_rrc_RRCConnectionResume_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_40 = -1; static gint ett_lte_rrc_RRCConnectionResumeComplete_r13 = -1; -static gint ett_lte_rrc_T_criticalExtensions_33 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_33 = -1; -static gint ett_lte_rrc_RRCConnectionResumeComplete_r13_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_38 = -1; -static gint ett_lte_rrc_RRCConnectionResumeRequest_r13 = -1; static gint ett_lte_rrc_T_criticalExtensions_34 = -1; static gint ett_lte_rrc_T_criticalExtensionsFuture_34 = -1; +static gint ett_lte_rrc_RRCConnectionResumeComplete_r13_IEs = -1; +static gint ett_lte_rrc_RRCConnectionResumeComplete_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_41 = -1; +static gint ett_lte_rrc_RRCConnectionResumeRequest_r13 = -1; +static gint ett_lte_rrc_T_criticalExtensions_35 = -1; static gint ett_lte_rrc_RRCConnectionResumeRequest_r13_IEs = -1; static gint ett_lte_rrc_T_resumeIdentity_r13 = -1; +static gint ett_lte_rrc_RRCConnectionResumeRequest_5GC_r15_IEs = -1; +static gint ett_lte_rrc_T_resumeIdentity_r15 = -1; static gint ett_lte_rrc_RRCConnectionSetup = -1; -static gint ett_lte_rrc_T_criticalExtensions_35 = -1; +static gint ett_lte_rrc_T_criticalExtensions_36 = -1; static gint ett_lte_rrc_T_c1_35 = -1; static gint ett_lte_rrc_T_criticalExtensionsFuture_35 = -1; static gint ett_lte_rrc_RRCConnectionSetup_r8_IEs = -1; static gint ett_lte_rrc_RRCConnectionSetup_v8a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_39 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_42 = -1; static gint ett_lte_rrc_RRCConnectionSetupComplete = -1; -static gint ett_lte_rrc_T_criticalExtensions_36 = -1; +static gint ett_lte_rrc_T_criticalExtensions_37 = -1; static gint ett_lte_rrc_T_c1_36 = -1; static gint ett_lte_rrc_T_criticalExtensionsFuture_36 = -1; static gint ett_lte_rrc_RRCConnectionSetupComplete_r8_IEs = -1; @@ -6808,63 +8197,79 @@ static gint ett_lte_rrc_RRCConnectionSetupComplete_v1250_IEs = -1; static gint ett_lte_rrc_RRCConnectionSetupComplete_v1320_IEs = -1; static gint ett_lte_rrc_RRCConnectionSetupComplete_v1330_IEs = -1; static gint ett_lte_rrc_RRCConnectionSetupComplete_v1430_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_40 = -1; +static gint ett_lte_rrc_RRCConnectionSetupComplete_v1530_IEs = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_r15_OF_S_NSSAI_r15 = -1; +static gint ett_lte_rrc_T_ng_5G_S_TMSI_Bits_r15 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_43 = -1; static gint ett_lte_rrc_RegisteredMME = -1; +static gint ett_lte_rrc_RegisteredAMF_r15 = -1; +static gint ett_lte_rrc_RRCEarlyDataComplete_r15 = -1; +static gint ett_lte_rrc_T_criticalExtensions_38 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_37 = -1; +static gint ett_lte_rrc_RRCEarlyDataComplete_r15_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_44 = -1; +static gint ett_lte_rrc_RedirectedCarrierInfo_r15_IEs = -1; +static gint ett_lte_rrc_RRCEarlyDataRequest_r15 = -1; +static gint ett_lte_rrc_T_criticalExtensions_39 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_38 = -1; +static gint ett_lte_rrc_RRCEarlyDataRequest_r15_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_45 = -1; static gint ett_lte_rrc_SCGFailureInformation_r12 = -1; -static gint ett_lte_rrc_T_criticalExtensions_37 = -1; +static gint ett_lte_rrc_T_criticalExtensions_40 = -1; static gint ett_lte_rrc_T_c1_37 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_37 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_39 = -1; static gint ett_lte_rrc_SCGFailureInformation_r12_IEs = -1; static gint ett_lte_rrc_SCGFailureInformation_v1310_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_41 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_46 = -1; static gint ett_lte_rrc_SCGFailureInformation_v12d0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_42 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_47 = -1; static gint ett_lte_rrc_FailureReportSCG_r12 = -1; static gint ett_lte_rrc_FailureReportSCG_v12d0 = -1; static gint ett_lte_rrc_SCGFailureInformationNR_r15 = -1; -static gint ett_lte_rrc_T_criticalExtensions_38 = -1; +static gint ett_lte_rrc_T_criticalExtensions_41 = -1; static gint ett_lte_rrc_T_c1_38 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_38 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_40 = -1; static gint ett_lte_rrc_SCGFailureInformationNR_r15_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_43 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_48 = -1; static gint ett_lte_rrc_FailureReportSCG_NR_r15 = -1; static gint ett_lte_rrc_MeasResultFreqListFailNR_r15 = -1; static gint ett_lte_rrc_MeasResultFreqFailNR_r15 = -1; static gint ett_lte_rrc_SCPTMConfiguration_r13 = -1; static gint ett_lte_rrc_SCPTMConfiguration_v1340 = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_44 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_49 = -1; static gint ett_lte_rrc_SCPTMConfiguration_BR_r14 = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_45 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_50 = -1; static gint ett_lte_rrc_SecurityModeCommand = -1; -static gint ett_lte_rrc_T_criticalExtensions_39 = -1; +static gint ett_lte_rrc_T_criticalExtensions_42 = -1; static gint ett_lte_rrc_T_c1_39 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_39 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_41 = -1; static gint ett_lte_rrc_SecurityModeCommand_r8_IEs = -1; static gint ett_lte_rrc_SecurityModeCommand_v8a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_46 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_51 = -1; static gint ett_lte_rrc_SecurityConfigSMC = -1; static gint ett_lte_rrc_SecurityModeComplete = -1; -static gint ett_lte_rrc_T_criticalExtensions_40 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_40 = -1; +static gint ett_lte_rrc_T_criticalExtensions_43 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_42 = -1; static gint ett_lte_rrc_SecurityModeComplete_r8_IEs = -1; static gint ett_lte_rrc_SecurityModeComplete_v8a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_47 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_52 = -1; static gint ett_lte_rrc_SecurityModeFailure = -1; -static gint ett_lte_rrc_T_criticalExtensions_41 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_41 = -1; +static gint ett_lte_rrc_T_criticalExtensions_44 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_43 = -1; static gint ett_lte_rrc_SecurityModeFailure_r8_IEs = -1; static gint ett_lte_rrc_SecurityModeFailure_v8a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_48 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_53 = -1; static gint ett_lte_rrc_SidelinkUEInformation_r12 = -1; -static gint ett_lte_rrc_T_criticalExtensions_42 = -1; +static gint ett_lte_rrc_T_criticalExtensions_45 = -1; static gint ett_lte_rrc_T_c1_40 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_42 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_44 = -1; static gint ett_lte_rrc_SidelinkUEInformation_r12_IEs = -1; static gint ett_lte_rrc_SidelinkUEInformation_v1310_IEs = -1; static gint ett_lte_rrc_T_commTxResourceInfoReqRelay_r13 = -1; static gint ett_lte_rrc_T_discTxResourceReq_v1310 = -1; static gint ett_lte_rrc_SidelinkUEInformation_v1430_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_49 = -1; +static gint ett_lte_rrc_SidelinkUEInformation_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_54 = -1; static gint ett_lte_rrc_SL_CommTxResourceReq_r12 = -1; static gint ett_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13 = -1; static gint ett_lte_rrc_SL_DiscTxResourceReq_r13 = -1; @@ -6874,13 +8279,18 @@ static gint ett_lte_rrc_SL_V2X_CommFreqList_r14 = -1; static gint ett_lte_rrc_SL_V2X_CommTxFreqList_r14 = -1; static gint ett_lte_rrc_SL_V2X_CommTxResourceReq_r14 = -1; static gint ett_lte_rrc_SystemInformation = -1; -static gint ett_lte_rrc_T_criticalExtensions_43 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_43 = -1; +static gint ett_lte_rrc_T_criticalExtensions_46 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_r15 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_45 = -1; static gint ett_lte_rrc_SystemInformation_r8_IEs = -1; static gint ett_lte_rrc_T_sib_TypeAndInfo = -1; static gint ett_lte_rrc_T_sib_TypeAndInfo_item = -1; static gint ett_lte_rrc_SystemInformation_v8a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_50 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_55 = -1; +static gint ett_lte_rrc_PosSystemInformation_r15_IEs = -1; +static gint ett_lte_rrc_T_posSIB_TypeAndInfo_r15 = -1; +static gint ett_lte_rrc_T_posSIB_TypeAndInfo_r15_item = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_56 = -1; static gint ett_lte_rrc_SystemInformationBlockType1 = -1; static gint ett_lte_rrc_T_cellAccessRelatedInfo = -1; static gint ett_lte_rrc_T_cellSelectionInfo = -1; @@ -6889,7 +8299,7 @@ static gint ett_lte_rrc_SystemInformationBlockType1_v8h0_IEs = -1; static gint ett_lte_rrc_SystemInformationBlockType1_v9e0_IEs = -1; static gint ett_lte_rrc_SystemInformationBlockType1_v10j0_IEs = -1; static gint ett_lte_rrc_SystemInformationBlockType1_v10l0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_51 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_57 = -1; static gint ett_lte_rrc_SystemInformationBlockType1_v920_IEs = -1; static gint ett_lte_rrc_SystemInformationBlockType1_v1130_IEs = -1; static gint ett_lte_rrc_SystemInformationBlockType1_v1250_IEs = -1; @@ -6906,9 +8316,18 @@ static gint ett_lte_rrc_SystemInformationBlockType1_v1360_IEs = -1; static gint ett_lte_rrc_SystemInformationBlockType1_v1430_IEs = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14 = -1; static gint ett_lte_rrc_SystemInformationBlockType1_v1450_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_52 = -1; +static gint ett_lte_rrc_SystemInformationBlockType1_v1530_IEs = -1; +static gint ett_lte_rrc_T_crs_IntfMitigConfig_r15 = -1; +static gint ett_lte_rrc_T_cellAccessRelatedInfo_5GC_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_58 = -1; static gint ett_lte_rrc_PLMN_IdentityList = -1; static gint ett_lte_rrc_PLMN_IdentityInfo = -1; +static gint ett_lte_rrc_PLMN_IdentityList_v1530 = -1; +static gint ett_lte_rrc_PLMN_IdentityInfo_v1530 = -1; +static gint ett_lte_rrc_PLMN_IdentityList_r15 = -1; +static gint ett_lte_rrc_PLMN_IdentityInfo_r15 = -1; +static gint ett_lte_rrc_T_plmn_Identity_5GC_r15 = -1; static gint ett_lte_rrc_SchedulingInfoList = -1; static gint ett_lte_rrc_SchedulingInfo = -1; static gint ett_lte_rrc_SchedulingInfoList_BR_r13 = -1; @@ -6919,35 +8338,45 @@ static gint ett_lte_rrc_CellSelectionInfo_v920 = -1; static gint ett_lte_rrc_CellSelectionInfo_v1130 = -1; static gint ett_lte_rrc_CellSelectionInfo_v1250 = -1; static gint ett_lte_rrc_CellAccessRelatedInfo_r14 = -1; +static gint ett_lte_rrc_CellAccessRelatedInfo_5GC_r15 = -1; +static gint ett_lte_rrc_CellIdentity_5GC_r15 = -1; +static gint ett_lte_rrc_PosSchedulingInfoList_r15 = -1; +static gint ett_lte_rrc_PosSchedulingInfo_r15 = -1; +static gint ett_lte_rrc_PosSIB_MappingInfo_r15 = -1; +static gint ett_lte_rrc_PosSIB_Type_r15 = -1; static gint ett_lte_rrc_SystemInformationBlockType1_MBMS_r14 = -1; static gint ett_lte_rrc_T_cellAccessRelatedInfo_r14 = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_53 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_59 = -1; static gint ett_lte_rrc_PLMN_IdentityList_MBMS_r14 = -1; static gint ett_lte_rrc_SchedulingInfoList_MBMS_r14 = -1; static gint ett_lte_rrc_SchedulingInfo_MBMS_r14 = -1; static gint ett_lte_rrc_SIB_MappingInfo_MBMS_r14 = -1; static gint ett_lte_rrc_NonMBSFN_SubframeConfig_r14 = -1; static gint ett_lte_rrc_UEAssistanceInformation_r11 = -1; -static gint ett_lte_rrc_T_criticalExtensions_44 = -1; +static gint ett_lte_rrc_T_criticalExtensions_47 = -1; static gint ett_lte_rrc_T_c1_41 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_44 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_46 = -1; static gint ett_lte_rrc_UEAssistanceInformation_r11_IEs = -1; static gint ett_lte_rrc_UEAssistanceInformation_v1430_IEs = -1; static gint ett_lte_rrc_T_sps_AssistanceInformation_r14 = -1; static gint ett_lte_rrc_T_rlm_Report_r14 = -1; static gint ett_lte_rrc_UEAssistanceInformation_v1450_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_54 = -1; +static gint ett_lte_rrc_UEAssistanceInformation_v1530_IEs = -1; +static gint ett_lte_rrc_T_sps_AssistanceInformation_v1530 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_60 = -1; static gint ett_lte_rrc_BW_Preference_r14 = -1; static gint ett_lte_rrc_TrafficPatternInfoList_r14 = -1; static gint ett_lte_rrc_TrafficPatternInfo_r14 = -1; +static gint ett_lte_rrc_TrafficPatternInfoList_v1530 = -1; +static gint ett_lte_rrc_TrafficPatternInfo_v1530 = -1; static gint ett_lte_rrc_DelayBudgetReport_r14 = -1; static gint ett_lte_rrc_OverheatingAssistance_r14 = -1; static gint ett_lte_rrc_T_reducedUE_Category = -1; static gint ett_lte_rrc_T_reducedMaxCCs = -1; static gint ett_lte_rrc_UECapabilityEnquiry = -1; -static gint ett_lte_rrc_T_criticalExtensions_45 = -1; +static gint ett_lte_rrc_T_criticalExtensions_48 = -1; static gint ett_lte_rrc_T_c1_42 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_45 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_47 = -1; static gint ett_lte_rrc_UECapabilityEnquiry_r8_IEs = -1; static gint ett_lte_rrc_UECapabilityEnquiry_v8a0_IEs = -1; static gint ett_lte_rrc_UECapabilityEnquiry_v1180_IEs = -1; @@ -6955,39 +8384,42 @@ static gint ett_lte_rrc_SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11 = -1; static gint ett_lte_rrc_UECapabilityEnquiry_v1310_IEs = -1; static gint ett_lte_rrc_UECapabilityEnquiry_v1430_IEs = -1; static gint ett_lte_rrc_UECapabilityEnquiry_v1510_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_55 = -1; +static gint ett_lte_rrc_UECapabilityEnquiry_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_61 = -1; static gint ett_lte_rrc_UE_CapabilityRequest = -1; static gint ett_lte_rrc_UECapabilityInformation = -1; -static gint ett_lte_rrc_T_criticalExtensions_46 = -1; +static gint ett_lte_rrc_T_criticalExtensions_49 = -1; static gint ett_lte_rrc_T_c1_43 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_46 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_48 = -1; static gint ett_lte_rrc_UECapabilityInformation_r8_IEs = -1; static gint ett_lte_rrc_UECapabilityInformation_v8a0_IEs = -1; static gint ett_lte_rrc_UECapabilityInformation_v1250_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_56 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_62 = -1; static gint ett_lte_rrc_UEInformationRequest_r9 = -1; -static gint ett_lte_rrc_T_criticalExtensions_47 = -1; +static gint ett_lte_rrc_T_criticalExtensions_50 = -1; static gint ett_lte_rrc_T_c1_44 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_47 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_49 = -1; static gint ett_lte_rrc_UEInformationRequest_r9_IEs = -1; static gint ett_lte_rrc_UEInformationRequest_v930_IEs = -1; static gint ett_lte_rrc_UEInformationRequest_v1020_IEs = -1; static gint ett_lte_rrc_UEInformationRequest_v1130_IEs = -1; static gint ett_lte_rrc_UEInformationRequest_v1250_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_57 = -1; +static gint ett_lte_rrc_UEInformationRequest_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_63 = -1; static gint ett_lte_rrc_UEInformationResponse_r9 = -1; -static gint ett_lte_rrc_T_criticalExtensions_48 = -1; +static gint ett_lte_rrc_T_criticalExtensions_51 = -1; static gint ett_lte_rrc_T_c1_45 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_48 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_50 = -1; static gint ett_lte_rrc_UEInformationResponse_r9_IEs = -1; static gint ett_lte_rrc_T_rach_Report_r9 = -1; static gint ett_lte_rrc_UEInformationResponse_v9e0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_58 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_64 = -1; static gint ett_lte_rrc_UEInformationResponse_v930_IEs = -1; static gint ett_lte_rrc_UEInformationResponse_v1020_IEs = -1; static gint ett_lte_rrc_UEInformationResponse_v1130_IEs = -1; static gint ett_lte_rrc_UEInformationResponse_v1250_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_59 = -1; +static gint ett_lte_rrc_UEInformationResponse_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_65 = -1; static gint ett_lte_rrc_RLF_Report_r9 = -1; static gint ett_lte_rrc_T_measResultLastServCell_r9 = -1; static gint ett_lte_rrc_T_measResultNeighCells_r9 = -1; @@ -7027,34 +8459,39 @@ static gint ett_lte_rrc_MeasResultList2GERAN_r10 = -1; static gint ett_lte_rrc_ConnEstFailReport_r11 = -1; static gint ett_lte_rrc_T_measResultFailedCell_r11 = -1; static gint ett_lte_rrc_T_measResultNeighCells_r11 = -1; +static gint ett_lte_rrc_FlightPathInfoReport_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxWayPoint_r15_OF_WayPointLocation_r15 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_66 = -1; +static gint ett_lte_rrc_WayPointLocation_r15 = -1; static gint ett_lte_rrc_ULHandoverPreparationTransfer = -1; -static gint ett_lte_rrc_T_criticalExtensions_49 = -1; +static gint ett_lte_rrc_T_criticalExtensions_52 = -1; static gint ett_lte_rrc_T_c1_46 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_49 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_51 = -1; static gint ett_lte_rrc_ULHandoverPreparationTransfer_r8_IEs = -1; static gint ett_lte_rrc_ULHandoverPreparationTransfer_v8a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_60 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_67 = -1; static gint ett_lte_rrc_ULInformationTransfer = -1; -static gint ett_lte_rrc_T_criticalExtensions_50 = -1; +static gint ett_lte_rrc_T_criticalExtensions_53 = -1; static gint ett_lte_rrc_T_c1_47 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_50 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_52 = -1; static gint ett_lte_rrc_ULInformationTransfer_r8_IEs = -1; static gint ett_lte_rrc_T_dedicatedInfoType_01 = -1; static gint ett_lte_rrc_ULInformationTransfer_v8a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_61 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_68 = -1; static gint ett_lte_rrc_ULInformationTransferMRDC_r15 = -1; -static gint ett_lte_rrc_T_criticalExtensions_51 = -1; +static gint ett_lte_rrc_T_criticalExtensions_54 = -1; static gint ett_lte_rrc_T_c1_48 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_51 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_53 = -1; static gint ett_lte_rrc_ULInformationTransferMRDC_r15_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_62 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_69 = -1; static gint ett_lte_rrc_WLANConnectionStatusReport_r13 = -1; -static gint ett_lte_rrc_T_criticalExtensions_52 = -1; +static gint ett_lte_rrc_T_criticalExtensions_55 = -1; static gint ett_lte_rrc_T_c1_49 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_52 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_54 = -1; static gint ett_lte_rrc_WLANConnectionStatusReport_r13_IEs = -1; static gint ett_lte_rrc_WLANConnectionStatusReport_v1430_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_63 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_70 = -1; +static gint ett_lte_rrc_SystemInformationBlockPos_r15 = -1; static gint ett_lte_rrc_SystemInformationBlockType2 = -1; static gint ett_lte_rrc_T_ac_BarringInfo = -1; static gint ett_lte_rrc_T_freqInfo = -1; @@ -7066,7 +8503,7 @@ static gint ett_lte_rrc_T_dummy = -1; static gint ett_lte_rrc_SystemInformationBlockType2_v10m0_IEs = -1; static gint ett_lte_rrc_T_freqInfo_v10l0 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0 = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_65 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_72 = -1; static gint ett_lte_rrc_AC_BarringConfig = -1; static gint ett_lte_rrc_MBSFN_SubframeConfigList = -1; static gint ett_lte_rrc_MBSFN_SubframeConfigList_v1430 = -1; @@ -7098,10 +8535,12 @@ static gint ett_lte_rrc_RedistributionServingInfo_r13 = -1; static gint ett_lte_rrc_CellReselectionServingFreqInfo_v1310 = -1; static gint ett_lte_rrc_SystemInformationBlockType3_v10j0_IEs = -1; static gint ett_lte_rrc_SystemInformationBlockType3_v10l0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_66 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_73 = -1; static gint ett_lte_rrc_CellReselectionInfoCommon_v1460 = -1; +static gint ett_lte_rrc_CellReselectionInfoHSDN_r15 = -1; static gint ett_lte_rrc_SystemInformationBlockType4 = -1; static gint ett_lte_rrc_IntraFreqNeighCellList = -1; +static gint ett_lte_rrc_IntraFreqNeighHSDN_CellList_r15 = -1; static gint ett_lte_rrc_IntraFreqNeighCellInfo = -1; static gint ett_lte_rrc_IntraFreqBlackCellList = -1; static gint ett_lte_rrc_SystemInformationBlockType5 = -1; @@ -7114,17 +8553,19 @@ static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j static gint ett_lte_rrc_SystemInformationBlockType5_v10l0_IEs = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0 = -1; static gint ett_lte_rrc_SystemInformationBlockType5_v13a0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_67 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_74 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqList = -1; static gint ett_lte_rrc_InterFreqCarrierFreqList_v1250 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqList_v1310 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqList_v1350 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqList_v13a0 = -1; +static gint ett_lte_rrc_InterFreqCarrierFreqList_v1530 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqListExt_r12 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqListExt_v1280 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqListExt_v1310 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqListExt_v1350 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqListExt_v1360 = -1; +static gint ett_lte_rrc_InterFreqCarrierFreqListExt_v1530 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqInfo = -1; static gint ett_lte_rrc_T_threshX_Q_r9 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqInfo_v8h0 = -1; @@ -7137,7 +8578,9 @@ static gint ett_lte_rrc_T_threshX_Q_r12 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqInfo_v1310 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqInfo_v1350 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqInfo_v1360 = -1; +static gint ett_lte_rrc_InterFreqCarrierFreqInfo_v1530 = -1; static gint ett_lte_rrc_InterFreqNeighCellList = -1; +static gint ett_lte_rrc_InterFreqNeighHSDN_CellList_r15 = -1; static gint ett_lte_rrc_InterFreqNeighCellInfo = -1; static gint ett_lte_rrc_InterFreqBlackCellList = -1; static gint ett_lte_rrc_RedistributionInterFreqInfo_r13 = -1; @@ -7148,7 +8591,7 @@ static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUT static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250 = -1; static gint ett_lte_rrc_SystemInformationBlockType6_v8h0_IEs = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0 = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_68 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_75 = -1; static gint ett_lte_rrc_CarrierFreqInfoUTRA_v1250 = -1; static gint ett_lte_rrc_CarrierFreqListUTRA_FDD = -1; static gint ett_lte_rrc_CarrierFreqUTRA_FDD = -1; @@ -7249,6 +8692,22 @@ static gint ett_lte_rrc_SC_MCCH_SchedulingInfo_r14 = -1; static gint ett_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14 = -1; static gint ett_lte_rrc_SystemInformationBlockType21_r14 = -1; static gint ett_lte_rrc_SL_V2X_ConfigCommon_r14 = -1; +static gint ett_lte_rrc_SystemInformationBlockType24_r15 = -1; +static gint ett_lte_rrc_CarrierFreqListNR_r15 = -1; +static gint ett_lte_rrc_CarrierFreqNR_r15 = -1; +static gint ett_lte_rrc_T_threshX_Q_r15 = -1; +static gint ett_lte_rrc_SystemInformationBlockType25_r15 = -1; +static gint ett_lte_rrc_T_uac_AC1_SelectAssistInfo_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_2_maxPLMN_r11_OF_UAC_AC1_SelectAssistInfo_r15 = -1; +static gint ett_lte_rrc_UAC_BarringPerPLMN_List_r15 = -1; +static gint ett_lte_rrc_UAC_BarringPerPLMN_r15 = -1; +static gint ett_lte_rrc_T_uac_AC_BarringListType_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_maxAccessCat_1_r15_OF_UAC_BarringInfoSetIndex_r15 = -1; +static gint ett_lte_rrc_UAC_BarringPerCatList_r15 = -1; +static gint ett_lte_rrc_UAC_BarringPerCat_r15 = -1; +static gint ett_lte_rrc_UAC_BarringInfoSetList_r15 = -1; +static gint ett_lte_rrc_UAC_BarringInfoSet_r15 = -1; +static gint ett_lte_rrc_SystemInformationBlockType26_r15 = -1; static gint ett_lte_rrc_AntennaInfoCommon = -1; static gint ett_lte_rrc_AntennaInfoDedicated = -1; static gint ett_lte_rrc_T_codebookSubsetRestriction = -1; @@ -7260,18 +8719,26 @@ static gint ett_lte_rrc_T_ue_TransmitAntennaSelection_01 = -1; static gint ett_lte_rrc_AntennaInfoDedicated_v10i0 = -1; static gint ett_lte_rrc_AntennaInfoDedicated_v1250 = -1; static gint ett_lte_rrc_AntennaInfoDedicated_v1430 = -1; +static gint ett_lte_rrc_AntennaInfoDedicatedSTTI_r15 = -1; +static gint ett_lte_rrc_T_setup_07 = -1; +static gint ett_lte_rrc_T_codebookSubsetRestriction_01 = -1; +static gint ett_lte_rrc_AntennaInfoDedicated_v1530 = -1; +static gint ett_lte_rrc_T_setup_08 = -1; static gint ett_lte_rrc_AntennaInfoUL_r10 = -1; +static gint ett_lte_rrc_AntennaInfoUL_STTI_r15 = -1; +static gint ett_lte_rrc_AUL_Config_r15 = -1; +static gint ett_lte_rrc_T_setup_09 = -1; static gint ett_lte_rrc_CQI_ReportAperiodic_r10 = -1; -static gint ett_lte_rrc_T_setup_07 = -1; +static gint ett_lte_rrc_T_setup_10 = -1; static gint ett_lte_rrc_T_aperiodicCSI_Trigger_r10 = -1; static gint ett_lte_rrc_CQI_ReportAperiodic_v1250 = -1; -static gint ett_lte_rrc_T_setup_08 = -1; +static gint ett_lte_rrc_T_setup_11 = -1; static gint ett_lte_rrc_T_aperiodicCSI_Trigger_v1250 = -1; static gint ett_lte_rrc_CQI_ReportAperiodic_v1310 = -1; -static gint ett_lte_rrc_T_setup_09 = -1; +static gint ett_lte_rrc_T_setup_12 = -1; static gint ett_lte_rrc_T_aperiodicCSI_Trigger_v1310 = -1; static gint ett_lte_rrc_T_aperiodicCSI_Trigger2_r13 = -1; -static gint ett_lte_rrc_T_setup_10 = -1; +static gint ett_lte_rrc_T_setup_13 = -1; static gint ett_lte_rrc_CQI_ReportAperiodicProc_r11 = -1; static gint ett_lte_rrc_CQI_ReportAperiodicProc_v1310 = -1; static gint ett_lte_rrc_CQI_ReportAperiodicHybrid_r14 = -1; @@ -7293,29 +8760,40 @@ static gint ett_lte_rrc_CQI_ReportConfig = -1; static gint ett_lte_rrc_CQI_ReportConfig_v920 = -1; static gint ett_lte_rrc_CQI_ReportConfig_r10 = -1; static gint ett_lte_rrc_T_csi_SubframePatternConfig_r10 = -1; -static gint ett_lte_rrc_T_setup_11 = -1; +static gint ett_lte_rrc_T_setup_14 = -1; static gint ett_lte_rrc_CQI_ReportConfig_v1130 = -1; static gint ett_lte_rrc_CQI_ReportConfig_v1250 = -1; static gint ett_lte_rrc_T_csi_SubframePatternConfig_r12 = -1; -static gint ett_lte_rrc_T_setup_12 = -1; +static gint ett_lte_rrc_T_setup_15 = -1; static gint ett_lte_rrc_CQI_ReportConfig_v1310 = -1; static gint ett_lte_rrc_CQI_ReportConfig_v1320 = -1; static gint ett_lte_rrc_CQI_ReportConfig_v1430 = -1; +static gint ett_lte_rrc_CQI_ReportConfig_v1530 = -1; +static gint ett_lte_rrc_CQI_ReportConfig_r15 = -1; +static gint ett_lte_rrc_T_setup_16 = -1; static gint ett_lte_rrc_CQI_ReportConfigSCell_r10 = -1; +static gint ett_lte_rrc_CQI_ReportConfigSCell_r15 = -1; static gint ett_lte_rrc_CQI_ReportPeriodic = -1; -static gint ett_lte_rrc_T_setup_13 = -1; +static gint ett_lte_rrc_T_setup_17 = -1; static gint ett_lte_rrc_T_cqi_FormatIndicatorPeriodic = -1; static gint ett_lte_rrc_T_subbandCQI = -1; static gint ett_lte_rrc_CQI_ReportPeriodic_r10 = -1; -static gint ett_lte_rrc_T_setup_14 = -1; +static gint ett_lte_rrc_T_setup_18 = -1; static gint ett_lte_rrc_T_cqi_FormatIndicatorPeriodic_r10 = -1; static gint ett_lte_rrc_T_widebandCQI_r10 = -1; static gint ett_lte_rrc_T_subbandCQI_r10 = -1; static gint ett_lte_rrc_T_csi_ConfigIndex_r10 = -1; -static gint ett_lte_rrc_T_setup_15 = -1; +static gint ett_lte_rrc_T_setup_19 = -1; static gint ett_lte_rrc_CQI_ReportPeriodic_v1130 = -1; static gint ett_lte_rrc_CQI_ReportPeriodic_v1310 = -1; static gint ett_lte_rrc_CQI_ReportPeriodic_v1320 = -1; +static gint ett_lte_rrc_CQI_ReportPeriodicSCell_r15 = -1; +static gint ett_lte_rrc_T_setup_20 = -1; +static gint ett_lte_rrc_T_csi_SubframePatternDormant_r15 = -1; +static gint ett_lte_rrc_T_setup_21 = -1; +static gint ett_lte_rrc_T_cqi_FormatIndicatorDormant_r15 = -1; +static gint ett_lte_rrc_T_widebandCQI_r15 = -1; +static gint ett_lte_rrc_T_subbandCQI_r15 = -1; static gint ett_lte_rrc_CQI_ReportPeriodicProcExtToAddModList_r11 = -1; static gint ett_lte_rrc_CQI_ReportPeriodicProcExtToReleaseList_r11 = -1; static gint ett_lte_rrc_CQI_ReportPeriodicProcExt_r11 = -1; @@ -7323,9 +8801,14 @@ static gint ett_lte_rrc_T_cqi_FormatIndicatorPeriodic_r11 = -1; static gint ett_lte_rrc_T_widebandCQI_r11 = -1; static gint ett_lte_rrc_T_subbandCQI_r11 = -1; static gint ett_lte_rrc_T_csi_ConfigIndex_r11 = -1; -static gint ett_lte_rrc_T_setup_16 = -1; +static gint ett_lte_rrc_T_setup_22 = -1; +static gint ett_lte_rrc_CQI_ShortConfigSCell_r15 = -1; +static gint ett_lte_rrc_T_setup_23 = -1; +static gint ett_lte_rrc_T_cqi_FormatIndicatorShort_r15 = -1; +static gint ett_lte_rrc_T_widebandCQI_Short_r15 = -1; +static gint ett_lte_rrc_T_subbandCQI_Short_r15 = -1; static gint ett_lte_rrc_CRI_ReportConfig_r13 = -1; -static gint ett_lte_rrc_T_setup_17 = -1; +static gint ett_lte_rrc_T_setup_24 = -1; static gint ett_lte_rrc_CrossCarrierSchedulingConfig_r10 = -1; static gint ett_lte_rrc_T_schedulingCellInfo_r10 = -1; static gint ett_lte_rrc_T_own_r10 = -1; @@ -7345,13 +8828,17 @@ static gint ett_lte_rrc_T_cqi_ReportAperiodicProc_v1310 = -1; static gint ett_lte_rrc_T_cqi_ReportAperiodicProc2_v1310 = -1; static gint ett_lte_rrc_CSI_RS_Config_r10 = -1; static gint ett_lte_rrc_T_csi_RS_r10 = -1; -static gint ett_lte_rrc_T_setup_18 = -1; +static gint ett_lte_rrc_T_setup_25 = -1; static gint ett_lte_rrc_CSI_RS_Config_v1250 = -1; static gint ett_lte_rrc_T_ds_ZeroTxPowerCSI_RS_r12 = -1; -static gint ett_lte_rrc_T_setup_19 = -1; +static gint ett_lte_rrc_T_setup_26 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxDS_ZTP_CSI_RS_r12_OF_ZeroTxPowerCSI_RS_r12 = -1; static gint ett_lte_rrc_CSI_RS_Config_v1310 = -1; static gint ett_lte_rrc_CSI_RS_Config_v1430 = -1; +static gint ett_lte_rrc_CSI_RS_Config_v1480 = -1; +static gint ett_lte_rrc_CSI_RS_Config_v1530 = -1; +static gint ett_lte_rrc_CSI_RS_Config_r15 = -1; +static gint ett_lte_rrc_T_setup_27 = -1; static gint ett_lte_rrc_ZeroTxPowerCSI_RS_Conf_r12 = -1; static gint ett_lte_rrc_ZeroTxPowerCSI_RS_r12 = -1; static gint ett_lte_rrc_CSI_RS_ConfigBeamformed_r13 = -1; @@ -7366,23 +8853,29 @@ static gint ett_lte_rrc_CSI_RS_ConfigBeamformed_v1430 = -1; static gint ett_lte_rrc_CSI_RS_Config_NZP_v1430 = -1; static gint ett_lte_rrc_CSI_RS_ConfigNZP_Activation_r14 = -1; static gint ett_lte_rrc_CSI_RS_ConfigEMIMO_r13 = -1; -static gint ett_lte_rrc_T_setup_20 = -1; +static gint ett_lte_rrc_T_setup_28 = -1; static gint ett_lte_rrc_CSI_RS_ConfigEMIMO_v1430 = -1; -static gint ett_lte_rrc_T_setup_21 = -1; +static gint ett_lte_rrc_T_setup_29 = -1; +static gint ett_lte_rrc_CSI_RS_ConfigEMIMO_v1480 = -1; +static gint ett_lte_rrc_T_setup_30 = -1; +static gint ett_lte_rrc_CSI_RS_ConfigEMIMO_v1530 = -1; +static gint ett_lte_rrc_T_setup_31 = -1; static gint ett_lte_rrc_CSI_RS_ConfigEMIMO2_r14 = -1; static gint ett_lte_rrc_CSI_RS_ConfigEMIMO_Hybrid_r14 = -1; -static gint ett_lte_rrc_T_setup_22 = -1; +static gint ett_lte_rrc_T_setup_32 = -1; static gint ett_lte_rrc_CSI_RS_ConfigNonPrecoded_r13 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_CSI_IM_ConfigId_r13 = -1; static gint ett_lte_rrc_CSI_RS_ConfigNonPrecoded_v1430 = -1; +static gint ett_lte_rrc_CSI_RS_ConfigNonPrecoded_v1480 = -1; +static gint ett_lte_rrc_CSI_RS_ConfigNonPrecoded_v1530 = -1; static gint ett_lte_rrc_CSI_RS_ConfigNZP_r11 = -1; static gint ett_lte_rrc_T_qcl_CRS_Info_r11 = -1; static gint ett_lte_rrc_T_mbsfn_SubframeConfigList_r11 = -1; -static gint ett_lte_rrc_T_setup_23 = -1; +static gint ett_lte_rrc_T_setup_33 = -1; static gint ett_lte_rrc_T_mbsfn_SubframeConfigList_v1430 = -1; -static gint ett_lte_rrc_T_setup_24 = -1; +static gint ett_lte_rrc_T_setup_34 = -1; static gint ett_lte_rrc_CSI_RS_ConfigNZP_EMIMO_r13 = -1; -static gint ett_lte_rrc_T_setup_25 = -1; +static gint ett_lte_rrc_T_setup_35 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_NZP_ResourceConfig_r13 = -1; static gint ett_lte_rrc_CSI_RS_ConfigNZP_EMIMO_v1430 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_0_4_OF_NZP_ResourceConfig_r13 = -1; @@ -7391,13 +8884,13 @@ static gint ett_lte_rrc_CSI_RS_ConfigZP_r11 = -1; static gint ett_lte_rrc_CSI_RS_ConfigZP_ApList_r14 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxCSI_RS_ZP_r11_OF_CSI_RS_ConfigZP_r11 = -1; static gint ett_lte_rrc_DMRS_Config_r11 = -1; -static gint ett_lte_rrc_T_setup_26 = -1; +static gint ett_lte_rrc_T_setup_36 = -1; static gint ett_lte_rrc_DMRS_Config_v1310 = -1; static gint ett_lte_rrc_EPDCCH_Config_r11 = -1; static gint ett_lte_rrc_T_config_r11 = -1; -static gint ett_lte_rrc_T_setup_27 = -1; +static gint ett_lte_rrc_T_setup_37 = -1; static gint ett_lte_rrc_T_subframePatternConfig_r11 = -1; -static gint ett_lte_rrc_T_setup_28 = -1; +static gint ett_lte_rrc_T_setup_38 = -1; static gint ett_lte_rrc_EPDCCH_SetConfigToAddModList_r11 = -1; static gint ett_lte_rrc_EPDCCH_SetConfigToReleaseList_r11 = -1; static gint ett_lte_rrc_EPDCCH_SetConfig_r11 = -1; @@ -7405,41 +8898,49 @@ static gint ett_lte_rrc_T_resourceBlockAssignment_r11 = -1; static gint ett_lte_rrc_T_csi_RS_ConfigZPId2_r12 = -1; static gint ett_lte_rrc_T_numberPRB_Pairs_v1310 = -1; static gint ett_lte_rrc_T_mpdcch_config_r13 = -1; -static gint ett_lte_rrc_T_setup_30 = -1; +static gint ett_lte_rrc_T_setup_40 = -1; static gint ett_lte_rrc_T_mpdcch_StartSF_UESS_r13 = -1; static gint ett_lte_rrc_EIMTA_MainConfig_r12 = -1; -static gint ett_lte_rrc_T_setup_31 = -1; +static gint ett_lte_rrc_T_setup_41 = -1; static gint ett_lte_rrc_EIMTA_MainConfigServCell_r12 = -1; -static gint ett_lte_rrc_T_setup_32 = -1; +static gint ett_lte_rrc_T_setup_42 = -1; static gint ett_lte_rrc_T_mbsfn_SubframeConfigList_v1250 = -1; -static gint ett_lte_rrc_T_setup_33 = -1; +static gint ett_lte_rrc_T_setup_43 = -1; static gint ett_lte_rrc_LogicalChannelConfig = -1; static gint ett_lte_rrc_T_ul_SpecificParameters = -1; +static gint ett_lte_rrc_T_allowedTTI_Lengths_r15 = -1; +static gint ett_lte_rrc_T_setup_44 = -1; +static gint ett_lte_rrc_T_logicalChannelSR_Restriction_r15 = -1; +static gint ett_lte_rrc_T_channellAccessPriority_r15 = -1; static gint ett_lte_rrc_LWA_Configuration_r13 = -1; -static gint ett_lte_rrc_T_setup_34 = -1; +static gint ett_lte_rrc_T_setup_46 = -1; static gint ett_lte_rrc_LWA_Config_r13 = -1; static gint ett_lte_rrc_LWIP_Configuration_r13 = -1; -static gint ett_lte_rrc_T_setup_35 = -1; +static gint ett_lte_rrc_T_setup_47 = -1; static gint ett_lte_rrc_LWIP_Config_r13 = -1; static gint ett_lte_rrc_MAC_MainConfig = -1; static gint ett_lte_rrc_T_ul_SCH_Config = -1; static gint ett_lte_rrc_T_phr_Config = -1; -static gint ett_lte_rrc_T_setup_36 = -1; +static gint ett_lte_rrc_T_setup_48 = -1; static gint ett_lte_rrc_T_mac_MainConfig_v1020 = -1; static gint ett_lte_rrc_T_dualConnectivityPHR = -1; -static gint ett_lte_rrc_T_setup_37 = -1; +static gint ett_lte_rrc_T_setup_49 = -1; static gint ett_lte_rrc_T_logicalChannelSR_Config_r12 = -1; -static gint ett_lte_rrc_T_setup_38 = -1; +static gint ett_lte_rrc_T_setup_50 = -1; static gint ett_lte_rrc_T_eDRX_Config_CycleStartOffset_r13 = -1; -static gint ett_lte_rrc_T_setup_39 = -1; +static gint ett_lte_rrc_T_setup_51 = -1; static gint ett_lte_rrc_T_drx_Config_r13 = -1; static gint ett_lte_rrc_T_skipUplinkTx_r14 = -1; -static gint ett_lte_rrc_T_setup_40 = -1; +static gint ett_lte_rrc_T_setup_52 = -1; static gint ett_lte_rrc_T_dataInactivityTimerConfig_r14 = -1; -static gint ett_lte_rrc_T_setup_41 = -1; +static gint ett_lte_rrc_T_setup_53 = -1; +static gint ett_lte_rrc_T_shortTTI_AndSPT_r15 = -1; +static gint ett_lte_rrc_T_setup_54 = -1; +static gint ett_lte_rrc_T_dormantStateTimers_r15 = -1; +static gint ett_lte_rrc_T_setup_55 = -1; static gint ett_lte_rrc_MAC_MainConfigSCell_r11 = -1; static gint ett_lte_rrc_DRX_Config = -1; -static gint ett_lte_rrc_T_setup_42 = -1; +static gint ett_lte_rrc_T_setup_56 = -1; static gint ett_lte_rrc_T_longDRX_CycleStartOffset = -1; static gint ett_lte_rrc_T_shortDRX = -1; static gint ett_lte_rrc_DRX_Config_v1130 = -1; @@ -7447,6 +8948,7 @@ static gint ett_lte_rrc_T_longDRX_CycleStartOffset_v1130 = -1; static gint ett_lte_rrc_DRX_Config_v1310 = -1; static gint ett_lte_rrc_T_longDRX_CycleStartOffset_v1310 = -1; static gint ett_lte_rrc_DRX_Config_r13 = -1; +static gint ett_lte_rrc_DRX_Config_r15 = -1; static gint ett_lte_rrc_STAG_ToReleaseList_r11 = -1; static gint ett_lte_rrc_STAG_ToAddModList_r11 = -1; static gint ett_lte_rrc_STAG_ToAddMod_r11 = -1; @@ -7456,14 +8958,16 @@ static gint ett_lte_rrc_T_cbsr_Selection_r13 = -1; static gint ett_lte_rrc_T_nonPrecoded_r13 = -1; static gint ett_lte_rrc_T_beamformedK1a_r13 = -1; static gint ett_lte_rrc_T_beamformedKN_r13 = -1; +static gint ett_lte_rrc_P_C_AndCBSR_r15 = -1; static gint ett_lte_rrc_P_C_AndCBSR_Pair_r13a = -1; static gint ett_lte_rrc_P_C_AndCBSR_Pair_r13 = -1; +static gint ett_lte_rrc_P_C_AndCBSR_Pair_r15 = -1; static gint ett_lte_rrc_PDCCH_ConfigSCell_r13 = -1; static gint ett_lte_rrc_PDCCH_ConfigLAA_r14 = -1; static gint ett_lte_rrc_PDCCH_CandidateReductions_r13 = -1; -static gint ett_lte_rrc_T_setup_43 = -1; +static gint ett_lte_rrc_T_setup_57 = -1; static gint ett_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14 = -1; -static gint ett_lte_rrc_T_setup_44 = -1; +static gint ett_lte_rrc_T_setup_58 = -1; static gint ett_lte_rrc_PDCP_Config = -1; static gint ett_lte_rrc_T_rlc_AM = -1; static gint ett_lte_rrc_T_rlc_UM = -1; @@ -7472,12 +8976,15 @@ static gint ett_lte_rrc_T_rohc = -1; static gint ett_lte_rrc_T_profiles = -1; static gint ett_lte_rrc_T_ul_DataSplitThreshold_r13 = -1; static gint ett_lte_rrc_T_statusFeedback_r13 = -1; -static gint ett_lte_rrc_T_setup_46 = -1; +static gint ett_lte_rrc_T_setup_60 = -1; static gint ett_lte_rrc_T_ul_LWA_Config_r14 = -1; -static gint ett_lte_rrc_T_setup_47 = -1; +static gint ett_lte_rrc_T_setup_61 = -1; static gint ett_lte_rrc_T_uplinkOnlyHeaderCompression_r14 = -1; static gint ett_lte_rrc_T_rohc_r14 = -1; static gint ett_lte_rrc_T_profiles_r14 = -1; +static gint ett_lte_rrc_T_uplinkDataCompression_r15 = -1; +static gint ett_lte_rrc_T_pdcp_DuplicationConfig_r15 = -1; +static gint ett_lte_rrc_T_setup_62 = -1; static gint ett_lte_rrc_PDSCH_ConfigCommon = -1; static gint ett_lte_rrc_PDSCH_ConfigCommon_v1310 = -1; static gint ett_lte_rrc_PDSCH_ConfigDedicated = -1; @@ -7485,15 +8992,18 @@ static gint ett_lte_rrc_PDSCH_ConfigDedicated_v1130 = -1; static gint ett_lte_rrc_PDSCH_ConfigDedicated_v1280 = -1; static gint ett_lte_rrc_PDSCH_ConfigDedicated_v1310 = -1; static gint ett_lte_rrc_PDSCH_ConfigDedicated_v1430 = -1; +static gint ett_lte_rrc_PDSCH_ConfigDedicated_v1530 = -1; static gint ett_lte_rrc_PDSCH_ConfigDedicatedSCell_v1430 = -1; static gint ett_lte_rrc_RE_MappingQCLConfigToAddModList_r11 = -1; static gint ett_lte_rrc_RE_MappingQCLConfigToReleaseList_r11 = -1; static gint ett_lte_rrc_PDSCH_RE_MappingQCL_Config_r11 = -1; static gint ett_lte_rrc_T_optionalSetOfFields_r11 = -1; static gint ett_lte_rrc_T_mbsfn_SubframeConfigList_r11_01 = -1; -static gint ett_lte_rrc_T_setup_48 = -1; +static gint ett_lte_rrc_T_setup_63 = -1; static gint ett_lte_rrc_T_mbsfn_SubframeConfigList_v1430_01 = -1; -static gint ett_lte_rrc_T_setup_49 = -1; +static gint ett_lte_rrc_T_setup_64 = -1; +static gint ett_lte_rrc_T_codewordOneConfig_v1530 = -1; +static gint ett_lte_rrc_T_setup_65 = -1; static gint ett_lte_rrc_PerCC_GapIndicationList_r14 = -1; static gint ett_lte_rrc_PerCC_GapIndication_r14 = -1; static gint ett_lte_rrc_PHICH_Config = -1; @@ -7501,46 +9011,67 @@ static gint ett_lte_rrc_PhysicalConfigDedicated = -1; static gint ett_lte_rrc_T_antennaInfo = -1; static gint ett_lte_rrc_T_antennaInfo_r10 = -1; static gint ett_lte_rrc_T_additionalSpectrumEmissionCA_r10 = -1; -static gint ett_lte_rrc_T_setup_50 = -1; +static gint ett_lte_rrc_T_setup_66 = -1; static gint ett_lte_rrc_T_ce_Mode_r13 = -1; static gint ett_lte_rrc_T_typeA_SRS_TPC_PDCCH_Group_r14 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config_r14 = -1; static gint ett_lte_rrc_T_must_Config_r14 = -1; -static gint ett_lte_rrc_T_setup_52 = -1; +static gint ett_lte_rrc_T_setup_68 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_UL_ConfigDedicated = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_UL_ConfigDedicatedUpPTsExt_r13 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_UL_ConfigDedicatedAperiodic_r10 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 = -1; +static gint ett_lte_rrc_T_semiStaticCFI_Config_r15 = -1; +static gint ett_lte_rrc_T_setup_69 = -1; +static gint ett_lte_rrc_T_blindPDSCH_Repetition_Config_r15 = -1; +static gint ett_lte_rrc_T_setup_70 = -1; static gint ett_lte_rrc_PhysicalConfigDedicated_v1370 = -1; static gint ett_lte_rrc_PhysicalConfigDedicatedSCell_r10 = -1; static gint ett_lte_rrc_T_nonUL_Configuration_r10 = -1; static gint ett_lte_rrc_T_ul_Configuration_r10 = -1; static gint ett_lte_rrc_T_pucch_SCell = -1; -static gint ett_lte_rrc_T_setup_53 = -1; +static gint ett_lte_rrc_T_setup_71 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14 = -1; static gint ett_lte_rrc_T_must_Config_r14_01 = -1; -static gint ett_lte_rrc_T_setup_54 = -1; +static gint ett_lte_rrc_T_setup_72 = -1; +static gint ett_lte_rrc_T_semiStaticCFI_Config_r15_01 = -1; +static gint ett_lte_rrc_T_setup_73 = -1; +static gint ett_lte_rrc_T_blindPDSCH_Repetition_Config_r15_01 = -1; +static gint ett_lte_rrc_T_setup_74 = -1; static gint ett_lte_rrc_PhysicalConfigDedicatedSCell_v1370 = -1; static gint ett_lte_rrc_T_pucch_SCell_v1370 = -1; -static gint ett_lte_rrc_T_setup_55 = -1; +static gint ett_lte_rrc_T_setup_75 = -1; +static gint ett_lte_rrc_CFI_Config_r15 = -1; +static gint ett_lte_rrc_CFI_PatternConfig_r15 = -1; +static gint ett_lte_rrc_T_cfi_PatternSubframe_r15 = -1; +static gint ett_lte_rrc_T_cfi_PatternSlotSubslot_r15 = -1; static gint ett_lte_rrc_LAA_SCellConfiguration_r13 = -1; static gint ett_lte_rrc_LAA_SCellConfiguration_v1430 = -1; static gint ett_lte_rrc_T_crossCarrierSchedulingConfig_UL_r14 = -1; -static gint ett_lte_rrc_T_setup_56 = -1; +static gint ett_lte_rrc_T_setup_76 = -1; +static gint ett_lte_rrc_LAA_SCellConfiguration_v1530 = -1; +static gint ett_lte_rrc_PUSCH_ModeConfigLAA_r15 = -1; static gint ett_lte_rrc_LBT_Config_r14 = -1; static gint ett_lte_rrc_CSI_RS_ConfigNZPToAddModList_r11 = -1; static gint ett_lte_rrc_CSI_RS_ConfigNZPToAddModListExt_r13 = -1; +static gint ett_lte_rrc_CSI_RS_ConfigNZPToAddModList_r15 = -1; static gint ett_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r11 = -1; static gint ett_lte_rrc_CSI_RS_ConfigNZPToReleaseListExt_r13 = -1; +static gint ett_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r15 = -1; static gint ett_lte_rrc_CSI_RS_ConfigZPToAddModList_r11 = -1; static gint ett_lte_rrc_CSI_RS_ConfigZPToReleaseList_r11 = -1; +static gint ett_lte_rrc_PhysicalConfigDedicatedSTTI_r15 = -1; +static gint ett_lte_rrc_T_setup_77 = -1; static gint ett_lte_rrc_SoundingRS_AperiodicSet_r14 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex_r14 = -1; static gint ett_lte_rrc_SoundingRS_AperiodicSetUpPTsExt_r14 = -1; +static gint ett_lte_rrc_ShortTTI_r15 = -1; static gint ett_lte_rrc_PRACH_ConfigSIB = -1; static gint ett_lte_rrc_PRACH_ConfigSIB_v1310 = -1; static gint ett_lte_rrc_T_mpdcch_startSF_CSS_RA_r13 = -1; +static gint ett_lte_rrc_PRACH_ConfigSIB_v1530 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxCE_Level_r13_OF_EDT_PRACH_ParametersCE_r15 = -1; static gint ett_lte_rrc_PRACH_Config = -1; static gint ett_lte_rrc_PRACH_Config_v1310 = -1; static gint ett_lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01 = -1; @@ -7550,40 +9081,43 @@ static gint ett_lte_rrc_PRACH_ConfigInfo = -1; static gint ett_lte_rrc_PRACH_ParametersListCE_r13 = -1; static gint ett_lte_rrc_PRACH_ParametersCE_r13 = -1; static gint ett_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r13 = -1; +static gint ett_lte_rrc_EDT_PRACH_ParametersCE_r15 = -1; +static gint ett_lte_rrc_T_edt_PRACH_ParametersCE_r15 = -1; +static gint ett_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r15 = -1; static gint ett_lte_rrc_RSRP_ThresholdsPrachInfoList_r13 = -1; static gint ett_lte_rrc_PUCCH_ConfigCommon = -1; static gint ett_lte_rrc_PUCCH_ConfigCommon_v1310 = -1; static gint ett_lte_rrc_PUCCH_ConfigCommon_v1430 = -1; static gint ett_lte_rrc_PUCCH_ConfigDedicated = -1; static gint ett_lte_rrc_T_ackNackRepetition = -1; -static gint ett_lte_rrc_T_setup_57 = -1; +static gint ett_lte_rrc_T_setup_78 = -1; static gint ett_lte_rrc_PUCCH_ConfigDedicated_v1020 = -1; static gint ett_lte_rrc_T_pucch_Format_r10 = -1; static gint ett_lte_rrc_T_channelSelection_r10 = -1; static gint ett_lte_rrc_T_n1PUCCH_AN_CS_r10 = -1; -static gint ett_lte_rrc_T_setup_58 = -1; +static gint ett_lte_rrc_T_setup_79 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_N1PUCCH_AN_CS_r10 = -1; static gint ett_lte_rrc_PUCCH_ConfigDedicated_v1130 = -1; static gint ett_lte_rrc_T_n1PUCCH_AN_CS_v1130 = -1; -static gint ett_lte_rrc_T_setup_59 = -1; +static gint ett_lte_rrc_T_setup_80 = -1; static gint ett_lte_rrc_T_n1PUCCH_AN_CS_ListP1_r11 = -1; static gint ett_lte_rrc_T_nPUCCH_Param_r11 = -1; -static gint ett_lte_rrc_T_setup_60 = -1; +static gint ett_lte_rrc_T_setup_81 = -1; static gint ett_lte_rrc_PUCCH_ConfigDedicated_v1250 = -1; static gint ett_lte_rrc_T_nkaPUCCH_Param_r12 = -1; -static gint ett_lte_rrc_T_setup_61 = -1; +static gint ett_lte_rrc_T_setup_82 = -1; static gint ett_lte_rrc_PUCCH_ConfigDedicated_r13 = -1; static gint ett_lte_rrc_T_ackNackRepetition_r13 = -1; -static gint ett_lte_rrc_T_setup_62 = -1; +static gint ett_lte_rrc_T_setup_83 = -1; static gint ett_lte_rrc_T_pucch_Format_r13 = -1; static gint ett_lte_rrc_T_format3_r13 = -1; static gint ett_lte_rrc_T_n3PUCCH_AN_List_r13 = -1; static gint ett_lte_rrc_T_twoAntennaPortActivatedPUCCH_Format3_r13 = -1; -static gint ett_lte_rrc_T_setup_63 = -1; +static gint ett_lte_rrc_T_setup_84 = -1; static gint ett_lte_rrc_T_n3PUCCH_AN_ListP1_r13 = -1; static gint ett_lte_rrc_T_channelSelection_r13 = -1; static gint ett_lte_rrc_T_n1PUCCH_AN_CS_r13 = -1; -static gint ett_lte_rrc_T_setup_64 = -1; +static gint ett_lte_rrc_T_setup_85 = -1; static gint ett_lte_rrc_N1PUCCH_AN_CS_List_r13 = -1; static gint ett_lte_rrc_T_n1PUCCH_AN_CS_ListP1_r13 = -1; static gint ett_lte_rrc_T_format4_r13 = -1; @@ -7592,11 +9126,11 @@ static gint ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_Format4_resource_r13 = -1; static gint ett_lte_rrc_T_format5_r13 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_4_OF_Format5_resource_r13 = -1; static gint ett_lte_rrc_T_nPUCCH_Param_r13 = -1; -static gint ett_lte_rrc_T_setup_65 = -1; +static gint ett_lte_rrc_T_setup_86 = -1; static gint ett_lte_rrc_T_nkaPUCCH_Param_r13 = -1; -static gint ett_lte_rrc_T_setup_66 = -1; +static gint ett_lte_rrc_T_setup_87 = -1; static gint ett_lte_rrc_T_pucch_NumRepetitionCE_r13 = -1; -static gint ett_lte_rrc_T_setup_67 = -1; +static gint ett_lte_rrc_T_setup_88 = -1; static gint ett_lte_rrc_T_modeA = -1; static gint ett_lte_rrc_T_modeB = -1; static gint ett_lte_rrc_PUCCH_ConfigDedicated_v1370 = -1; @@ -7604,9 +9138,10 @@ static gint ett_lte_rrc_T_pucch_Format_v1370 = -1; static gint ett_lte_rrc_PUCCH_Format3_Conf_r13 = -1; static gint ett_lte_rrc_T_n3PUCCH_AN_List_r13_01 = -1; static gint ett_lte_rrc_T_twoAntennaPortActivatedPUCCH_Format3_r13_01 = -1; -static gint ett_lte_rrc_T_setup_68 = -1; +static gint ett_lte_rrc_T_setup_89 = -1; static gint ett_lte_rrc_T_n3PUCCH_AN_ListP1_r13_01 = -1; static gint ett_lte_rrc_PUCCH_ConfigDedicated_v1430 = -1; +static gint ett_lte_rrc_PUCCH_ConfigDedicated_v1530 = -1; static gint ett_lte_rrc_Format4_resource_r13 = -1; static gint ett_lte_rrc_Format5_resource_r13 = -1; static gint ett_lte_rrc_N1PUCCH_AN_CS_r10 = -1; @@ -7620,29 +9155,37 @@ static gint ett_lte_rrc_PUSCH_ConfigDedicated_v1020 = -1; static gint ett_lte_rrc_T_betaOffsetMC_r10 = -1; static gint ett_lte_rrc_PUSCH_ConfigDedicated_v1130 = -1; static gint ett_lte_rrc_T_pusch_DMRS_r11 = -1; -static gint ett_lte_rrc_T_setup_69 = -1; +static gint ett_lte_rrc_T_setup_90 = -1; static gint ett_lte_rrc_PUSCH_ConfigDedicated_v1250 = -1; static gint ett_lte_rrc_T_uciOnPUSCH = -1; -static gint ett_lte_rrc_T_setup_70 = -1; +static gint ett_lte_rrc_T_setup_91 = -1; static gint ett_lte_rrc_T_betaOffsetMC_r12 = -1; static gint ett_lte_rrc_PUSCH_ConfigDedicated_r13 = -1; static gint ett_lte_rrc_T_betaOffsetMC_r13 = -1; static gint ett_lte_rrc_T_pusch_DMRS_r11_01 = -1; -static gint ett_lte_rrc_T_setup_71 = -1; +static gint ett_lte_rrc_T_setup_92 = -1; static gint ett_lte_rrc_T_uciOnPUSCH_01 = -1; -static gint ett_lte_rrc_T_setup_72 = -1; +static gint ett_lte_rrc_T_setup_93 = -1; static gint ett_lte_rrc_T_betaOffsetMC_r12_01 = -1; static gint ett_lte_rrc_PUSCH_ConfigDedicated_v1430 = -1; +static gint ett_lte_rrc_PUSCH_ConfigDedicated_v1530 = -1; +static gint ett_lte_rrc_T_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15 = -1; +static gint ett_lte_rrc_T_setup_94 = -1; +static gint ett_lte_rrc_T_ce_PUSCH_SubPRB_Config_r15 = -1; +static gint ett_lte_rrc_T_setup_95 = -1; static gint ett_lte_rrc_PUSCH_ConfigDedicatedSCell_r10 = -1; static gint ett_lte_rrc_PUSCH_ConfigDedicatedSCell_v1430 = -1; +static gint ett_lte_rrc_PUSCH_ConfigDedicatedScell_v1530 = -1; +static gint ett_lte_rrc_T_uci_OnPUSCH_r15 = -1; +static gint ett_lte_rrc_T_setup_96 = -1; static gint ett_lte_rrc_TDD_PUSCH_UpPTS_r14 = -1; -static gint ett_lte_rrc_T_setup_73 = -1; +static gint ett_lte_rrc_T_setup_97 = -1; static gint ett_lte_rrc_Enable256QAM_r14 = -1; -static gint ett_lte_rrc_T_setup_74 = -1; +static gint ett_lte_rrc_T_setup_98 = -1; static gint ett_lte_rrc_T_tpc_SubframeSet_Configured_r14 = -1; static gint ett_lte_rrc_T_tpc_SubframeSet_NotConfigured_r14 = -1; static gint ett_lte_rrc_PUSCH_EnhancementsConfig_r14 = -1; -static gint ett_lte_rrc_T_setup_75 = -1; +static gint ett_lte_rrc_T_setup_99 = -1; static gint ett_lte_rrc_T_interval_ULHoppingPUSCH_Enh_r14 = -1; static gint ett_lte_rrc_UL_ReferenceSignalsPUSCH = -1; static gint ett_lte_rrc_RACH_ConfigCommon = -1; @@ -7656,6 +9199,7 @@ static gint ett_lte_rrc_T_ra_SupervisionInfo_r11 = -1; static gint ett_lte_rrc_RACH_CE_LevelInfoList_r13 = -1; static gint ett_lte_rrc_RACH_CE_LevelInfo_r13 = -1; static gint ett_lte_rrc_T_preambleMappingInfo_r13 = -1; +static gint ett_lte_rrc_T_edt_Parameters_r15 = -1; static gint ett_lte_rrc_PowerRampingParameters = -1; static gint ett_lte_rrc_RACH_ConfigDedicated = -1; static gint ett_lte_rrc_RadioResourceConfigCommonSIB = -1; @@ -7684,25 +9228,33 @@ static gint ett_lte_rrc_T_interval_ULHoppingConfigCommonModeB_r13 = -1; static gint ett_lte_rrc_PCCH_Config = -1; static gint ett_lte_rrc_PCCH_Config_v1310 = -1; static gint ett_lte_rrc_HighSpeedConfig_r14 = -1; +static gint ett_lte_rrc_HighSpeedConfig_v1530 = -1; static gint ett_lte_rrc_HighSpeedConfigSCell_r14 = -1; static gint ett_lte_rrc_RadioResourceConfigDedicated = -1; static gint ett_lte_rrc_T_mac_MainConfig = -1; +static gint ett_lte_rrc_T_crs_IntfMitigConfig_r15_01 = -1; +static gint ett_lte_rrc_T_setup_100 = -1; static gint ett_lte_rrc_RadioResourceConfigDedicated_v1370 = -1; static gint ett_lte_rrc_RadioResourceConfigDedicatedPSCell_r12 = -1; static gint ett_lte_rrc_RadioResourceConfigDedicatedPSCell_v1370 = -1; static gint ett_lte_rrc_RadioResourceConfigDedicatedSCG_r12 = -1; static gint ett_lte_rrc_RadioResourceConfigDedicatedSCell_r10 = -1; static gint ett_lte_rrc_SRB_ToAddModList = -1; +static gint ett_lte_rrc_SRB_ToAddModExtList_r15 = -1; static gint ett_lte_rrc_SRB_ToAddMod = -1; static gint ett_lte_rrc_T_rlc_Config = -1; static gint ett_lte_rrc_T_logicalChannelConfig = -1; +static gint ett_lte_rrc_SRB_ToReleaseListDupl_r15 = -1; static gint ett_lte_rrc_DRB_ToAddModList = -1; +static gint ett_lte_rrc_DRB_ToAddModList_r15 = -1; static gint ett_lte_rrc_DRB_ToAddModListSCG_r12 = -1; +static gint ett_lte_rrc_DRB_ToAddModListSCG_r15 = -1; static gint ett_lte_rrc_DRB_ToAddMod = -1; static gint ett_lte_rrc_DRB_ToAddModSCG_r12 = -1; static gint ett_lte_rrc_T_drb_Type_r12_01 = -1; static gint ett_lte_rrc_T_scg_r12 = -1; static gint ett_lte_rrc_DRB_ToReleaseList = -1; +static gint ett_lte_rrc_DRB_ToReleaseList_r15 = -1; static gint ett_lte_rrc_MeasSubframePatternPCell_r10 = -1; static gint ett_lte_rrc_NeighCellsCRS_Info_r11 = -1; static gint ett_lte_rrc_CRS_AssistanceInfoList_r11 = -1; @@ -7710,14 +9262,20 @@ static gint ett_lte_rrc_CRS_AssistanceInfo_r11 = -1; static gint ett_lte_rrc_NeighCellsCRS_Info_r13 = -1; static gint ett_lte_rrc_CRS_AssistanceInfoList_r13 = -1; static gint ett_lte_rrc_CRS_AssistanceInfo_r13 = -1; +static gint ett_lte_rrc_NeighCellsCRS_Info_r15 = -1; +static gint ett_lte_rrc_CRS_AssistanceInfoList_r15 = -1; +static gint ett_lte_rrc_CRS_AssistanceInfo_r15 = -1; static gint ett_lte_rrc_NAICS_AssistanceInfo_r12 = -1; -static gint ett_lte_rrc_T_setup_76 = -1; +static gint ett_lte_rrc_T_setup_101 = -1; static gint ett_lte_rrc_NeighCellsToReleaseList_r12 = -1; static gint ett_lte_rrc_NeighCellsToAddModList_r12 = -1; static gint ett_lte_rrc_NeighCellsInfo_r12 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a = -1; +static gint ett_lte_rrc_RLC_BearerConfig_r15 = -1; +static gint ett_lte_rrc_T_setup_102 = -1; +static gint ett_lte_rrc_T_logicalChannelIdentityConfig_r15 = -1; static gint ett_lte_rrc_RCLWI_Configuration_r13 = -1; -static gint ett_lte_rrc_T_setup_77 = -1; +static gint ett_lte_rrc_T_setup_103 = -1; static gint ett_lte_rrc_RCLWI_Config_r13 = -1; static gint ett_lte_rrc_T_command = -1; static gint ett_lte_rrc_T_steerToWLAN_r13 = -1; @@ -7729,18 +9287,29 @@ static gint ett_lte_rrc_T_um_Uni_Directional_DL = -1; static gint ett_lte_rrc_RLC_Config_v1250 = -1; static gint ett_lte_rrc_RLC_Config_v1310 = -1; static gint ett_lte_rrc_RLC_Config_v1430 = -1; -static gint ett_lte_rrc_T_setup_78 = -1; +static gint ett_lte_rrc_T_setup_104 = -1; static gint ett_lte_rrc_RLC_Config_v1510 = -1; +static gint ett_lte_rrc_RLC_Config_v1530 = -1; +static gint ett_lte_rrc_T_setup_105 = -1; +static gint ett_lte_rrc_RLC_Config_r15 = -1; +static gint ett_lte_rrc_T_mode_r15 = -1; +static gint ett_lte_rrc_T_am_r15 = -1; +static gint ett_lte_rrc_T_um_Bi_Directional_r15 = -1; +static gint ett_lte_rrc_T_um_Uni_Directional_UL_r15 = -1; +static gint ett_lte_rrc_T_um_Uni_Directional_DL_r15 = -1; static gint ett_lte_rrc_UL_AM_RLC = -1; +static gint ett_lte_rrc_UL_AM_RLC_r15 = -1; static gint ett_lte_rrc_DL_AM_RLC = -1; +static gint ett_lte_rrc_DL_AM_RLC_r15 = -1; static gint ett_lte_rrc_UL_UM_RLC = -1; static gint ett_lte_rrc_DL_UM_RLC = -1; +static gint ett_lte_rrc_DL_UM_RLC_r15 = -1; static gint ett_lte_rrc_RLF_TimersAndConstants_r9 = -1; -static gint ett_lte_rrc_T_setup_79 = -1; +static gint ett_lte_rrc_T_setup_106 = -1; static gint ett_lte_rrc_RLF_TimersAndConstants_r13 = -1; -static gint ett_lte_rrc_T_setup_80 = -1; +static gint ett_lte_rrc_T_setup_107 = -1; static gint ett_lte_rrc_RLF_TimersAndConstantsSCG_r12 = -1; -static gint ett_lte_rrc_T_setup_81 = -1; +static gint ett_lte_rrc_T_setup_108 = -1; static gint ett_lte_rrc_RN_SubframeConfig_r10 = -1; static gint ett_lte_rrc_T_subframeConfigPattern_r10 = -1; static gint ett_lte_rrc_T_rpdcch_Config_r10 = -1; @@ -7754,69 +9323,112 @@ static gint ett_lte_rrc_T_channelSelectionMultiplexingBundling = -1; static gint ett_lte_rrc_T_n1PUCCH_AN_List_r10 = -1; static gint ett_lte_rrc_T_fallbackForFormat3 = -1; static gint ett_lte_rrc_T_fdd = -1; +static gint ett_lte_rrc_RSS_Config_r15 = -1; static gint ett_lte_rrc_SchedulingRequestConfig = -1; -static gint ett_lte_rrc_T_setup_82 = -1; +static gint ett_lte_rrc_T_setup_109 = -1; static gint ett_lte_rrc_SchedulingRequestConfig_v1020 = -1; static gint ett_lte_rrc_SchedulingRequestConfigSCell_r13 = -1; -static gint ett_lte_rrc_T_setup_83 = -1; +static gint ett_lte_rrc_T_setup_110 = -1; +static gint ett_lte_rrc_SchedulingRequestConfig_v1530 = -1; +static gint ett_lte_rrc_T_setup_111 = -1; +static gint ett_lte_rrc_SR_SubslotSPUCCH_ResourceList_r15 = -1; +static gint ett_lte_rrc_SlotOrSubslotPDSCH_Config_r15 = -1; +static gint ett_lte_rrc_T_setup_112 = -1; +static gint ett_lte_rrc_SlotOrSubslotPUSCH_Config_r15 = -1; +static gint ett_lte_rrc_T_setup_113 = -1; +static gint ett_lte_rrc_T_betaOffsetSubslot_ACK_Index_r15 = -1; +static gint ett_lte_rrc_T_betaOffset2Subslot_ACK_Index_r15 = -1; +static gint ett_lte_rrc_T_betaOffsetSubslot_RI_Index_r15 = -1; static gint ett_lte_rrc_SoundingRS_UL_ConfigCommon = -1; -static gint ett_lte_rrc_T_setup_84 = -1; +static gint ett_lte_rrc_T_setup_114 = -1; static gint ett_lte_rrc_SoundingRS_UL_ConfigDedicated = -1; -static gint ett_lte_rrc_T_setup_85 = -1; +static gint ett_lte_rrc_T_setup_115 = -1; static gint ett_lte_rrc_SoundingRS_UL_ConfigDedicated_v1020 = -1; static gint ett_lte_rrc_SoundingRS_UL_ConfigDedicated_v1310 = -1; -static gint ett_lte_rrc_T_setup_86 = -1; +static gint ett_lte_rrc_T_setup_116 = -1; static gint ett_lte_rrc_SoundingRS_UL_ConfigDedicatedUpPTsExt_r13 = -1; -static gint ett_lte_rrc_T_setup_87 = -1; +static gint ett_lte_rrc_T_setup_117 = -1; static gint ett_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_r10 = -1; -static gint ett_lte_rrc_T_setup_88 = -1; +static gint ett_lte_rrc_T_setup_118 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_r10 = -1; static gint ett_lte_rrc_T_srs_ActivateAp_r10 = -1; -static gint ett_lte_rrc_T_setup_89 = -1; +static gint ett_lte_rrc_T_setup_119 = -1; static gint ett_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1310 = -1; -static gint ett_lte_rrc_T_setup_90 = -1; +static gint ett_lte_rrc_T_setup_120 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_v1310 = -1; static gint ett_lte_rrc_T_srs_ActivateAp_v1310 = -1; -static gint ett_lte_rrc_T_setup_91 = -1; +static gint ett_lte_rrc_T_setup_121 = -1; static gint ett_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 = -1; -static gint ett_lte_rrc_T_setup_92 = -1; +static gint ett_lte_rrc_T_setup_122 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_r13 = -1; static gint ett_lte_rrc_T_srs_ActivateAp_r13 = -1; -static gint ett_lte_rrc_T_setup_93 = -1; +static gint ett_lte_rrc_T_setup_123 = -1; static gint ett_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430 = -1; -static gint ett_lte_rrc_T_setup_94 = -1; +static gint ett_lte_rrc_T_setup_124 = -1; static gint ett_lte_rrc_SRS_ConfigAp_r10 = -1; static gint ett_lte_rrc_SRS_ConfigAp_v1310 = -1; static gint ett_lte_rrc_SRS_ConfigAp_r13 = -1; +static gint ett_lte_rrc_SPDCCH_Config_r15 = -1; +static gint ett_lte_rrc_T_setup_125 = -1; +static gint ett_lte_rrc_SPDCCH_Set_r15 = -1; +static gint ett_lte_rrc_SPDCCH_Elements_r15 = -1; +static gint ett_lte_rrc_T_setup_126 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_4_OF_DCI7_Candidates_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_DCI7_CandidatesPerAL_SPDCCH_r15 = -1; +static gint ett_lte_rrc_T_resourceBlockAssignment_r15 = -1; +static gint ett_lte_rrc_T_al_StartingPointSPDCCH_r15 = -1; +static gint ett_lte_rrc_DCI7_CandidatesPerAL_SPDCCH_r15 = -1; static gint ett_lte_rrc_SPS_Config = -1; static gint ett_lte_rrc_SPS_Config_v1430 = -1; static gint ett_lte_rrc_SPS_ConfigUL_ToAddModList_r14 = -1; static gint ett_lte_rrc_SPS_ConfigUL_ToReleaseList_r14 = -1; static gint ett_lte_rrc_SPS_ConfigSL_ToAddModList_r14 = -1; static gint ett_lte_rrc_SPS_ConfigSL_ToReleaseList_r14 = -1; +static gint ett_lte_rrc_SPS_Config_v1530 = -1; +static gint ett_lte_rrc_SPS_ConfigUL_STTI_ToAddModList_r15 = -1; +static gint ett_lte_rrc_SPS_ConfigUL_STTI_ToReleaseList_r15 = -1; +static gint ett_lte_rrc_SPS_ConfigUL_ToAddModList_r15 = -1; +static gint ett_lte_rrc_SPS_ConfigUL_ToReleaseList_r15 = -1; static gint ett_lte_rrc_SPS_ConfigDL = -1; -static gint ett_lte_rrc_T_setup_95 = -1; +static gint ett_lte_rrc_T_setup_127 = -1; static gint ett_lte_rrc_T_twoAntennaPortActivated_r10 = -1; -static gint ett_lte_rrc_T_setup_96 = -1; +static gint ett_lte_rrc_T_setup_128 = -1; static gint ett_lte_rrc_SPS_ConfigUL = -1; -static gint ett_lte_rrc_T_setup_97 = -1; +static gint ett_lte_rrc_T_setup_129 = -1; static gint ett_lte_rrc_T_p0_Persistent = -1; static gint ett_lte_rrc_T_p0_PersistentSubframeSet2_r12 = -1; -static gint ett_lte_rrc_T_setup_98 = -1; +static gint ett_lte_rrc_T_setup_130 = -1; static gint ett_lte_rrc_SPS_ConfigSL_r14 = -1; static gint ett_lte_rrc_N1PUCCH_AN_PersistentList = -1; +static gint ett_lte_rrc_SPS_ConfigUL_STTI_r15 = -1; +static gint ett_lte_rrc_T_setup_131 = -1; +static gint ett_lte_rrc_T_p0_Persistent_r15 = -1; +static gint ett_lte_rrc_T_p0_PersistentSubframeSet2_r15 = -1; +static gint ett_lte_rrc_T_setup_132 = -1; +static gint ett_lte_rrc_SPUCCH_Config_r15 = -1; +static gint ett_lte_rrc_T_setup_133 = -1; +static gint ett_lte_rrc_T_twoAntennaPortActivatedSPUCCH_Format3_r15 = -1; +static gint ett_lte_rrc_T_n3SPUCCH_AN_List_r15 = -1; +static gint ett_lte_rrc_SPUCCH_Set_r15 = -1; +static gint ett_lte_rrc_SPUCCH_Elements_r15 = -1; +static gint ett_lte_rrc_T_setup_134 = -1; +static gint ett_lte_rrc_T_n1SubslotSPUCCH_AN_List_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15 = -1; +static gint ett_lte_rrc_N4SPUCCH_Resource_r15 = -1; static gint ett_lte_rrc_SRS_TPC_PDCCH_Config_r14 = -1; -static gint ett_lte_rrc_T_setup_99 = -1; +static gint ett_lte_rrc_T_setup_135 = -1; static gint ett_lte_rrc_SRS_CC_SetIndex_r14 = -1; static gint ett_lte_rrc_TDD_Config = -1; static gint ett_lte_rrc_TDD_Config_v1130 = -1; static gint ett_lte_rrc_TDD_Config_v1430 = -1; static gint ett_lte_rrc_TDD_Config_v1450 = -1; static gint ett_lte_rrc_TDD_ConfigSL_r12 = -1; +static gint ett_lte_rrc_TimeReferenceInfo_r15 = -1; +static gint ett_lte_rrc_ReferenceTime_r15 = -1; static gint ett_lte_rrc_TPC_PDCCH_Config = -1; -static gint ett_lte_rrc_T_setup_100 = -1; +static gint ett_lte_rrc_T_setup_136 = -1; static gint ett_lte_rrc_TPC_PDCCH_ConfigSCell_r13 = -1; -static gint ett_lte_rrc_T_setup_101 = -1; +static gint ett_lte_rrc_T_setup_137 = -1; static gint ett_lte_rrc_TPC_Index = -1; static gint ett_lte_rrc_TunnelConfigLWIP_r13 = -1; static gint ett_lte_rrc_IKE_Identity_r13 = -1; @@ -7824,6 +9436,7 @@ static gint ett_lte_rrc_IP_Address_r13 = -1; static gint ett_lte_rrc_UplinkPowerControlCommon = -1; static gint ett_lte_rrc_UplinkPowerControlCommon_v1020 = -1; static gint ett_lte_rrc_UplinkPowerControlCommon_v1310 = -1; +static gint ett_lte_rrc_UplinkPowerControlCommon_v1530 = -1; static gint ett_lte_rrc_UplinkPowerControlCommonPSCell_r12 = -1; static gint ett_lte_rrc_UplinkPowerControlCommonSCell_r10 = -1; static gint ett_lte_rrc_UplinkPowerControlCommonSCell_v1130 = -1; @@ -7834,15 +9447,21 @@ static gint ett_lte_rrc_UplinkPowerControlDedicated_v1020 = -1; static gint ett_lte_rrc_UplinkPowerControlDedicated_v1130 = -1; static gint ett_lte_rrc_UplinkPowerControlDedicated_v1250 = -1; static gint ett_lte_rrc_T_set2PowerControlParameter = -1; -static gint ett_lte_rrc_T_setup_102 = -1; +static gint ett_lte_rrc_T_setup_138 = -1; +static gint ett_lte_rrc_UplinkPowerControlDedicated_v1530 = -1; +static gint ett_lte_rrc_UplinkPowerControlDedicatedSTTI_r15 = -1; static gint ett_lte_rrc_UplinkPUSCH_LessPowerControlDedicated_v1430 = -1; static gint ett_lte_rrc_UplinkPowerControlDedicatedSCell_r10 = -1; static gint ett_lte_rrc_UplinkPowerControlDedicatedSCell_v1310 = -1; static gint ett_lte_rrc_DeltaFList_PUCCH = -1; +static gint ett_lte_rrc_DeltaFList_SPUCCH_r15 = -1; +static gint ett_lte_rrc_T_setup_139 = -1; static gint ett_lte_rrc_DeltaTxD_OffsetListPUCCH_r10 = -1; static gint ett_lte_rrc_DeltaTxD_OffsetListPUCCH_v1130 = -1; +static gint ett_lte_rrc_DeltaTxD_OffsetListSPUCCH_r15 = -1; static gint ett_lte_rrc_WLAN_Id_List_r13 = -1; static gint ett_lte_rrc_WLAN_MobilityConfig_r13 = -1; +static gint ett_lte_rrc_WUS_Config_r15 = -1; static gint ett_lte_rrc_SecurityAlgorithmConfig = -1; static gint ett_lte_rrc_CarrierFreqCDMA2000 = -1; static gint ett_lte_rrc_CarrierFreqGERAN = -1; @@ -7853,6 +9472,7 @@ static gint ett_lte_rrc_ExplicitListOfARFCNs = -1; static gint ett_lte_rrc_CarrierFreqListMBMS_r11 = -1; static gint ett_lte_rrc_CellIndexList = -1; static gint ett_lte_rrc_CellSelectionInfoCE_r13 = -1; +static gint ett_lte_rrc_CellSelectionInfoCE_v1530 = -1; static gint ett_lte_rrc_CellSelectionInfoCE1_r13 = -1; static gint ett_lte_rrc_CellSelectionInfoCE1_v1360 = -1; static gint ett_lte_rrc_CSFB_RegistrationParam1XRTT = -1; @@ -7879,10 +9499,13 @@ static gint ett_lte_rrc_MultiBandInfoList_v10j0 = -1; static gint ett_lte_rrc_MultiBandInfoList_v10l0 = -1; static gint ett_lte_rrc_MultiBandInfoList_r11 = -1; static gint ett_lte_rrc_MultiBandInfo_v9e0 = -1; +static gint ett_lte_rrc_MultiFrequencyBandListNR_r15 = -1; static gint ett_lte_rrc_NS_PmaxList_r10 = -1; static gint ett_lte_rrc_NS_PmaxList_v10l0 = -1; static gint ett_lte_rrc_NS_PmaxValue_r10 = -1; static gint ett_lte_rrc_NS_PmaxValue_v10l0 = -1; +static gint ett_lte_rrc_NS_PmaxListNR_r15 = -1; +static gint ett_lte_rrc_NS_PmaxValueNR_r15 = -1; static gint ett_lte_rrc_PhysCellIdRange = -1; static gint ett_lte_rrc_PhysCellIdRangeUTRA_FDDList_r9 = -1; static gint ett_lte_rrc_PhysCellIdRangeUTRA_FDD_r9 = -1; @@ -7899,34 +9522,51 @@ static gint ett_lte_rrc_SystemTimeInfoCDMA2000 = -1; static gint ett_lte_rrc_T_cdma_SystemTime = -1; static gint ett_lte_rrc_ThresholdNR_r15 = -1; static gint ett_lte_rrc_ThresholdListNR_r15 = -1; +static gint ett_lte_rrc_BT_NameListConfig_r15 = -1; +static gint ett_lte_rrc_BT_NameList_r15 = -1; static gint ett_lte_rrc_LocationInfo_r10 = -1; static gint ett_lte_rrc_T_locationCoordinates_r10 = -1; +static gint ett_lte_rrc_T_verticalVelocityInfo_r15 = -1; +static gint ett_lte_rrc_LogMeasResultListBT_r15 = -1; +static gint ett_lte_rrc_LogMeasResultBT_r15 = -1; +static gint ett_lte_rrc_LogMeasResultListWLAN_r15 = -1; +static gint ett_lte_rrc_LogMeasResultWLAN_r15 = -1; static gint ett_lte_rrc_MeasConfig = -1; static gint ett_lte_rrc_T_speedStatePars = -1; -static gint ett_lte_rrc_T_setup_103 = -1; +static gint ett_lte_rrc_T_setup_140 = -1; static gint ett_lte_rrc_T_measScaleFactor_r12 = -1; +static gint ett_lte_rrc_T_heightThreshRef_r15 = -1; static gint ett_lte_rrc_MeasIdToRemoveList = -1; static gint ett_lte_rrc_MeasIdToRemoveListExt_r12 = -1; static gint ett_lte_rrc_MeasObjectToRemoveList = -1; static gint ett_lte_rrc_MeasObjectToRemoveListExt_r13 = -1; static gint ett_lte_rrc_ReportConfigToRemoveList = -1; static gint ett_lte_rrc_MeasDS_Config_r12 = -1; -static gint ett_lte_rrc_T_setup_104 = -1; +static gint ett_lte_rrc_T_setup_141 = -1; static gint ett_lte_rrc_T_dmtc_PeriodOffset_r12 = -1; static gint ett_lte_rrc_T_ds_OccasionDuration_r12 = -1; static gint ett_lte_rrc_MeasCSI_RS_ToRemoveList_r12 = -1; static gint ett_lte_rrc_MeasCSI_RS_ToAddModList_r12 = -1; static gint ett_lte_rrc_MeasCSI_RS_Config_r12 = -1; static gint ett_lte_rrc_MeasGapConfig = -1; -static gint ett_lte_rrc_T_setup_105 = -1; +static gint ett_lte_rrc_T_setup_142 = -1; static gint ett_lte_rrc_T_gapOffset = -1; +static gint ett_lte_rrc_MeasGapConfigDensePRS_r15 = -1; +static gint ett_lte_rrc_T_setup_143 = -1; +static gint ett_lte_rrc_T_gapOffsetDensePRS_r15 = -1; static gint ett_lte_rrc_MeasGapConfigPerCC_List_r14 = -1; -static gint ett_lte_rrc_T_setup_106 = -1; +static gint ett_lte_rrc_T_setup_144 = -1; static gint ett_lte_rrc_MeasGapConfigToRemoveList_r14 = -1; static gint ett_lte_rrc_MeasGapConfigToAddModList_r14 = -1; static gint ett_lte_rrc_MeasGapConfigPerCC_r14 = -1; static gint ett_lte_rrc_MeasGapSharingConfig_r14 = -1; -static gint ett_lte_rrc_T_setup_107 = -1; +static gint ett_lte_rrc_T_setup_145 = -1; +static gint ett_lte_rrc_MeasIdleConfigSIB_r15 = -1; +static gint ett_lte_rrc_MeasIdleConfigDedicated_r15 = -1; +static gint ett_lte_rrc_EUTRA_CarrierList_r15 = -1; +static gint ett_lte_rrc_MeasIdleCarrierEUTRA_r15 = -1; +static gint ett_lte_rrc_T_qualityThreshold_r15 = -1; +static gint ett_lte_rrc_CellList_r15 = -1; static gint ett_lte_rrc_MeasIdToAddModList = -1; static gint ett_lte_rrc_MeasIdToAddModList_v1310 = -1; static gint ett_lte_rrc_MeasIdToAddModListExt_r12 = -1; @@ -7945,23 +9585,22 @@ static gint ett_lte_rrc_CellsToAddMod = -1; static gint ett_lte_rrc_BlackCellsToAddModList = -1; static gint ett_lte_rrc_BlackCellsToAddMod = -1; static gint ett_lte_rrc_MeasSubframePatternConfigNeigh_r10 = -1; -static gint ett_lte_rrc_T_setup_109 = -1; +static gint ett_lte_rrc_T_setup_147 = -1; static gint ett_lte_rrc_MeasSubframeCellList_r10 = -1; static gint ett_lte_rrc_AltTTT_CellsToAddModList_r12 = -1; static gint ett_lte_rrc_AltTTT_CellsToAddMod_r12 = -1; static gint ett_lte_rrc_WhiteCellsToAddModList_r13 = -1; static gint ett_lte_rrc_WhiteCellsToAddMod_r13 = -1; static gint ett_lte_rrc_RMTC_Config_r13 = -1; -static gint ett_lte_rrc_T_setup_110 = -1; +static gint ett_lte_rrc_T_setup_148 = -1; static gint ett_lte_rrc_Tx_ResourcePoolMeasList_r14 = -1; static gint ett_lte_rrc_MeasObjectGERAN = -1; static gint ett_lte_rrc_MeasObjectNR_r15 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxCellSFTD_OF_PhysCellIdNR_r15 = -1; +static gint ett_lte_rrc_T_bandNR_r15 = -1; static gint ett_lte_rrc_RS_ConfigSSB_NR_r15 = -1; static gint ett_lte_rrc_CellsToAddModListNR_r15 = -1; static gint ett_lte_rrc_CellsToAddModNR_r15 = -1; -static gint ett_lte_rrc_MTC_SSB_NR_r15 = -1; -static gint ett_lte_rrc_T_periodicityAndOffset_r15 = -1; static gint ett_lte_rrc_MeasObjectToAddModList = -1; static gint ett_lte_rrc_MeasObjectToAddModListExt_r13 = -1; static gint ett_lte_rrc_MeasObjectToAddModList_v9e0 = -1; @@ -7991,6 +9630,13 @@ static gint ett_lte_rrc_MeasResultEUTRA = -1; static gint ett_lte_rrc_T_cgi_Info = -1; static gint ett_lte_rrc_T_measResult = -1; static gint ett_lte_rrc_T_cgi_Info_v1310 = -1; +static gint ett_lte_rrc_MeasResultListIdle_r15 = -1; +static gint ett_lte_rrc_MeasResultIdle_r15 = -1; +static gint ett_lte_rrc_T_measResultServingCell_r15 = -1; +static gint ett_lte_rrc_T_measResultNeighCells_r15 = -1; +static gint ett_lte_rrc_MeasResultIdleListEUTRA_r15 = -1; +static gint ett_lte_rrc_MeasResultIdleEUTRA_r15 = -1; +static gint ett_lte_rrc_T_measResult_r15 = -1; static gint ett_lte_rrc_MeasResultServFreqListNR_r15 = -1; static gint ett_lte_rrc_MeasResultServFreqNR_r15 = -1; static gint ett_lte_rrc_MeasResultCellListNR_r15 = -1; @@ -8029,15 +9675,26 @@ static gint ett_lte_rrc_MeasResultListWLAN_r14 = -1; static gint ett_lte_rrc_MeasResultWLAN_r13 = -1; static gint ett_lte_rrc_MeasResultListCBR_r14 = -1; static gint ett_lte_rrc_MeasResultCBR_r14 = -1; +static gint ett_lte_rrc_MeasResultSensing_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_0_400_OF_SensingResult_r15 = -1; +static gint ett_lte_rrc_SensingResult_r15 = -1; static gint ett_lte_rrc_MeasResultForECID_r9 = -1; static gint ett_lte_rrc_PLMN_IdentityList2 = -1; static gint ett_lte_rrc_AdditionalSI_Info_r9 = -1; static gint ett_lte_rrc_MeasResultForRSSI_r13 = -1; static gint ett_lte_rrc_UL_PDCP_DelayResultList_r13 = -1; static gint ett_lte_rrc_UL_PDCP_DelayResult_r13 = -1; +static gint ett_lte_rrc_CGI_InfoNR_r15 = -1; +static gint ett_lte_rrc_T_noSIB1_r15 = -1; +static gint ett_lte_rrc_PLMN_IdentityListNR_r15 = -1; +static gint ett_lte_rrc_PLMN_IdentityInfoListNR_r15 = -1; +static gint ett_lte_rrc_PLMN_IdentityInfoNR_r15 = -1; static gint ett_lte_rrc_MeasResultCellListSFTD_r15 = -1; static gint ett_lte_rrc_MeasResultCellSFTD_r15 = -1; static gint ett_lte_rrc_MeasResultSSTD_r13 = -1; +static gint ett_lte_rrc_MeasSensing_Config_r15 = -1; +static gint ett_lte_rrc_MTC_SSB_NR_r15 = -1; +static gint ett_lte_rrc_T_periodicityAndOffset_r15 = -1; static gint ett_lte_rrc_QuantityConfig = -1; static gint ett_lte_rrc_QuantityConfigEUTRA = -1; static gint ett_lte_rrc_QuantityConfigEUTRA_v1250 = -1; @@ -8064,10 +9721,12 @@ static gint ett_lte_rrc_T_eventC1_r12 = -1; static gint ett_lte_rrc_T_eventC2_r12 = -1; static gint ett_lte_rrc_T_eventV1_r14 = -1; static gint ett_lte_rrc_T_eventV2_r14 = -1; +static gint ett_lte_rrc_T_eventH1_r15 = -1; +static gint ett_lte_rrc_T_eventH2_r15 = -1; static gint ett_lte_rrc_T_periodical = -1; static gint ett_lte_rrc_T_alternativeTimeToTrigger_r12 = -1; static gint ett_lte_rrc_T_rs_sinr_Config_r13 = -1; -static gint ett_lte_rrc_T_setup_111 = -1; +static gint ett_lte_rrc_T_setup_149 = -1; static gint ett_lte_rrc_RSRQ_RangeConfig_r12 = -1; static gint ett_lte_rrc_ThresholdEUTRA = -1; static gint ett_lte_rrc_MeasRSSI_ReportConfig_r13 = -1; @@ -8093,10 +9752,14 @@ static gint ett_lte_rrc_ReportConfigToAddModList = -1; static gint ett_lte_rrc_ReportConfigToAddMod = -1; static gint ett_lte_rrc_T_reportConfig = -1; static gint ett_lte_rrc_RSRQ_Type_r12 = -1; +static gint ett_lte_rrc_SS_RSSI_Measurement_r15 = -1; static gint ett_lte_rrc_UL_DelayConfig_r13 = -1; -static gint ett_lte_rrc_T_setup_112 = -1; +static gint ett_lte_rrc_T_setup_150 = -1; static gint ett_lte_rrc_WLAN_CarrierInfo_r13 = -1; static gint ett_lte_rrc_WLAN_ChannelList_r13 = -1; +static gint ett_lte_rrc_WLAN_NameListConfig_r15 = -1; +static gint ett_lte_rrc_WLAN_NameList_r15 = -1; +static gint ett_lte_rrc_WLAN_RTT_r15 = -1; static gint ett_lte_rrc_WLAN_SuspendConfig_r14 = -1; static gint ett_lte_rrc_AreaConfiguration_r10 = -1; static gint ett_lte_rrc_AreaConfiguration_v1130 = -1; @@ -8107,21 +9770,29 @@ static gint ett_lte_rrc_SEQUENCE_SIZE_1_8_OF_PLMN_Identity = -1; static gint ett_lte_rrc_BandCombinationList_r14 = -1; static gint ett_lte_rrc_BandCombination_r14 = -1; static gint ett_lte_rrc_BandIndication_r14 = -1; +static gint ett_lte_rrc_FlightPathInfoReportConfig_r15 = -1; +static gint ett_lte_rrc_GNSS_ID_r15 = -1; static gint ett_lte_rrc_MeasSubframePattern_r10 = -1; static gint ett_lte_rrc_T_subframePatternTDD_r10 = -1; static gint ett_lte_rrc_OtherConfig_r9 = -1; static gint ett_lte_rrc_T_delayBudgetReportingConfig_r14 = -1; -static gint ett_lte_rrc_T_setup_113 = -1; +static gint ett_lte_rrc_T_setup_151 = -1; static gint ett_lte_rrc_T_rlm_ReportConfig_r14 = -1; -static gint ett_lte_rrc_T_setup_114 = -1; +static gint ett_lte_rrc_T_setup_152 = -1; static gint ett_lte_rrc_T_overheatingAssistanceConfig_r14 = -1; -static gint ett_lte_rrc_T_setup_115 = -1; +static gint ett_lte_rrc_T_setup_153 = -1; +static gint ett_lte_rrc_T_measConfigAppLayer_r15 = -1; +static gint ett_lte_rrc_T_setup_154 = -1; static gint ett_lte_rrc_IDC_Config_r11 = -1; static gint ett_lte_rrc_T_autonomousDenialParameters_r11 = -1; +static gint ett_lte_rrc_T_idc_Indication_MRDC_r15 = -1; static gint ett_lte_rrc_ObtainLocationConfig_r11 = -1; static gint ett_lte_rrc_PowerPrefIndicationConfig_r11 = -1; -static gint ett_lte_rrc_T_setup_116 = -1; +static gint ett_lte_rrc_T_setup_155 = -1; static gint ett_lte_rrc_ReportProximityConfig_r9 = -1; +static gint ett_lte_rrc_CandidateServingFreqListNR_r15 = -1; +static gint ett_lte_rrc_SBAS_ID_r15 = -1; +static gint ett_lte_rrc_S_NSSAI_r15 = -1; static gint ett_lte_rrc_S_TMSI = -1; static gint ett_lte_rrc_TraceReference_r10 = -1; static gint ett_lte_rrc_UE_CapabilityRAT_ContainerList = -1; @@ -8137,7 +9808,7 @@ static gint ett_lte_rrc_UE_EUTRA_Capability_v10c0_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v10f0_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v10i0_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v10j0_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_69 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_76 = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v11d0_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v11x0_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v12b0_IEs = -1; @@ -8147,7 +9818,7 @@ static gint ett_lte_rrc_UE_EUTRA_Capability_v1380_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v1390_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v13x0_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v1470_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_70 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_77 = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v920_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v940_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v1020_IEs = -1; @@ -8173,7 +9844,8 @@ static gint ett_lte_rrc_UE_EUTRA_Capability_v1450_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v1460_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v1510_IEs = -1; static gint ett_lte_rrc_UE_EUTRA_Capability_v1520_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_71 = -1; +static gint ett_lte_rrc_UE_EUTRA_Capability_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_78 = -1; static gint ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_r9 = -1; static gint ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060 = -1; static gint ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1130 = -1; @@ -8185,6 +9857,7 @@ static gint ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1370 = -1; static gint ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1380 = -1; static gint ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1430 = -1; static gint ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1510 = -1; +static gint ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1530 = -1; static gint ett_lte_rrc_FeatureSetsEUTRA_r15 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15 = -1; @@ -8197,14 +9870,20 @@ static gint ett_lte_rrc_MAC_Parameters_r12 = -1; static gint ett_lte_rrc_MAC_Parameters_v1310 = -1; static gint ett_lte_rrc_MAC_Parameters_v1430 = -1; static gint ett_lte_rrc_MAC_Parameters_v1440 = -1; +static gint ett_lte_rrc_MAC_Parameters_v1530 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_3_OF_ProcessingTimelineSet_r15 = -1; static gint ett_lte_rrc_RLC_Parameters_r12 = -1; static gint ett_lte_rrc_RLC_Parameters_v1310 = -1; static gint ett_lte_rrc_RLC_Parameters_v1430 = -1; +static gint ett_lte_rrc_RLC_Parameters_v1530 = -1; static gint ett_lte_rrc_PDCP_Parameters = -1; static gint ett_lte_rrc_PDCP_Parameters_v1130 = -1; static gint ett_lte_rrc_PDCP_Parameters_v1310 = -1; static gint ett_lte_rrc_PDCP_Parameters_v1430 = -1; static gint ett_lte_rrc_T_supportedUplinkOnlyROHC_Profiles_r14 = -1; +static gint ett_lte_rrc_PDCP_Parameters_v1530 = -1; +static gint ett_lte_rrc_SupportedUDC_r15 = -1; +static gint ett_lte_rrc_SupportedOperatorDic_r15 = -1; static gint ett_lte_rrc_PhyLayerParameters = -1; static gint ett_lte_rrc_PhyLayerParameters_v920 = -1; static gint ett_lte_rrc_PhyLayerParameters_v9d0 = -1; @@ -8220,6 +9899,10 @@ static gint ett_lte_rrc_PhyLayerParameters_v1330 = -1; static gint ett_lte_rrc_PhyLayerParameters_v1430 = -1; static gint ett_lte_rrc_PhyLayerParameters_v1450 = -1; static gint ett_lte_rrc_PhyLayerParameters_v1470 = -1; +static gint ett_lte_rrc_PhyLayerParameters_v1530 = -1; +static gint ett_lte_rrc_T_stti_SPT_Capabilities_r15 = -1; +static gint ett_lte_rrc_T_ce_Capabilities_r15 = -1; +static gint ett_lte_rrc_T_urllc_Capabilities_r15 = -1; static gint ett_lte_rrc_MIMO_UE_Parameters_r13 = -1; static gint ett_lte_rrc_MIMO_UE_Parameters_v1430 = -1; static gint ett_lte_rrc_MIMO_UE_Parameters_v1470 = -1; @@ -8265,6 +9948,13 @@ static gint ett_lte_rrc_RF_Parameters_v1430 = -1; static gint ett_lte_rrc_T_eNB_RequestedParameters_v1430 = -1; static gint ett_lte_rrc_RF_Parameters_v1450 = -1; static gint ett_lte_rrc_RF_Parameters_v1470 = -1; +static gint ett_lte_rrc_RF_Parameters_v1530 = -1; +static gint ett_lte_rrc_SkipSubframeProcessing_r15 = -1; +static gint ett_lte_rrc_SPT_Parameters_r15 = -1; +static gint ett_lte_rrc_STTI_SPT_BandParameters_r15 = -1; +static gint ett_lte_rrc_STTI_SupportedCombinations_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15 = -1; +static gint ett_lte_rrc_DL_UL_CCs_r15 = -1; static gint ett_lte_rrc_SupportedBandCombination_r10 = -1; static gint ett_lte_rrc_SupportedBandCombinationExt_r10 = -1; static gint ett_lte_rrc_SupportedBandCombination_v1090 = -1; @@ -8278,6 +9968,7 @@ static gint ett_lte_rrc_SupportedBandCombination_v1390 = -1; static gint ett_lte_rrc_SupportedBandCombination_v1430 = -1; static gint ett_lte_rrc_SupportedBandCombination_v1450 = -1; static gint ett_lte_rrc_SupportedBandCombination_v1470 = -1; +static gint ett_lte_rrc_SupportedBandCombination_v1530 = -1; static gint ett_lte_rrc_SupportedBandCombinationAdd_r11 = -1; static gint ett_lte_rrc_SupportedBandCombinationAdd_v11d0 = -1; static gint ett_lte_rrc_SupportedBandCombinationAdd_v1250 = -1; @@ -8288,6 +9979,7 @@ static gint ett_lte_rrc_SupportedBandCombinationAdd_v1390 = -1; static gint ett_lte_rrc_SupportedBandCombinationAdd_v1430 = -1; static gint ett_lte_rrc_SupportedBandCombinationAdd_v1450 = -1; static gint ett_lte_rrc_SupportedBandCombinationAdd_v1470 = -1; +static gint ett_lte_rrc_SupportedBandCombinationAdd_v1530 = -1; static gint ett_lte_rrc_SupportedBandCombinationReduced_r13 = -1; static gint ett_lte_rrc_SupportedBandCombinationReduced_v1320 = -1; static gint ett_lte_rrc_SupportedBandCombinationReduced_v1380 = -1; @@ -8295,6 +9987,7 @@ static gint ett_lte_rrc_SupportedBandCombinationReduced_v1390 = -1; static gint ett_lte_rrc_SupportedBandCombinationReduced_v1430 = -1; static gint ett_lte_rrc_SupportedBandCombinationReduced_v1450 = -1; static gint ett_lte_rrc_SupportedBandCombinationReduced_v1470 = -1; +static gint ett_lte_rrc_SupportedBandCombinationReduced_v1530 = -1; static gint ett_lte_rrc_BandCombinationParameters_r10 = -1; static gint ett_lte_rrc_BandCombinationParametersExt_r10 = -1; static gint ett_lte_rrc_BandCombinationParameters_v1090 = -1; @@ -8324,6 +10017,8 @@ static gint ett_lte_rrc_BandCombinationParameters_v1450 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450 = -1; static gint ett_lte_rrc_BandCombinationParameters_v1470 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470 = -1; +static gint ett_lte_rrc_BandCombinationParameters_v1530 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1530 = -1; static gint ett_lte_rrc_BandParameters_r10 = -1; static gint ett_lte_rrc_BandParameters_v1090 = -1; static gint ett_lte_rrc_BandParameters_v10i0 = -1; @@ -8340,7 +10035,9 @@ static gint ett_lte_rrc_SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_ static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14 = -1; static gint ett_lte_rrc_BandParameters_v1450 = -1; static gint ett_lte_rrc_BandParameters_v1470 = -1; +static gint ett_lte_rrc_BandParameters_v1530 = -1; static gint ett_lte_rrc_V2X_BandParameters_r14 = -1; +static gint ett_lte_rrc_V2X_BandParameters_v1530 = -1; static gint ett_lte_rrc_BandParametersTxSL_r14 = -1; static gint ett_lte_rrc_BandParametersRxSL_r14 = -1; static gint ett_lte_rrc_V2X_BandwidthClassSL_r14 = -1; @@ -8353,6 +10050,7 @@ static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id static gint ett_lte_rrc_FeatureSetUL_PerCC_r15 = -1; static gint ett_lte_rrc_BandParametersUL_r10 = -1; static gint ett_lte_rrc_CA_MIMO_ParametersUL_r10 = -1; +static gint ett_lte_rrc_CA_MIMO_ParametersUL_r15 = -1; static gint ett_lte_rrc_BandParametersDL_r10 = -1; static gint ett_lte_rrc_CA_MIMO_ParametersDL_r10 = -1; static gint ett_lte_rrc_CA_MIMO_ParametersDL_v10i0 = -1; @@ -8360,6 +10058,7 @@ static gint ett_lte_rrc_CA_MIMO_ParametersDL_v1270 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12 = -1; static gint ett_lte_rrc_CA_MIMO_ParametersDL_r13 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12 = -1; +static gint ett_lte_rrc_CA_MIMO_ParametersDL_r15 = -1; static gint ett_lte_rrc_IntraBandContiguousCC_Info_r12 = -1; static gint ett_lte_rrc_MUST_Parameters_r14 = -1; static gint ett_lte_rrc_SupportedBandListEUTRA = -1; @@ -8380,6 +10079,7 @@ static gint ett_lte_rrc_MeasParameters_v1250 = -1; static gint ett_lte_rrc_MeasParameters_v1310 = -1; static gint ett_lte_rrc_MeasParameters_v1430 = -1; static gint ett_lte_rrc_MeasParameters_v1520 = -1; +static gint ett_lte_rrc_MeasParameters_v1530 = -1; static gint ett_lte_rrc_BandListEUTRA = -1; static gint ett_lte_rrc_BandCombinationListEUTRA_r10 = -1; static gint ett_lte_rrc_BandInfoEUTRA = -1; @@ -8419,10 +10119,12 @@ static gint ett_lte_rrc_IRAT_ParametersWLAN_r13 = -1; static gint ett_lte_rrc_SupportedBandListWLAN_r13 = -1; static gint ett_lte_rrc_CSG_ProximityIndicationParameters_r9 = -1; static gint ett_lte_rrc_NeighCellSI_AcquisitionParameters_r9 = -1; +static gint ett_lte_rrc_NeighCellSI_AcquisitionParameters_v1530 = -1; static gint ett_lte_rrc_SON_Parameters_r9 = -1; static gint ett_lte_rrc_UE_BasedNetwPerfMeasParameters_r10 = -1; static gint ett_lte_rrc_UE_BasedNetwPerfMeasParameters_v1250 = -1; static gint ett_lte_rrc_UE_BasedNetwPerfMeasParameters_v1430 = -1; +static gint ett_lte_rrc_UE_BasedNetwPerfMeasParameters_v1530 = -1; static gint ett_lte_rrc_OTDOA_PositioningCapabilities_r10 = -1; static gint ett_lte_rrc_Other_Parameters_r11 = -1; static gint ett_lte_rrc_Other_Parameters_v11d0 = -1; @@ -8430,6 +10132,7 @@ static gint ett_lte_rrc_Other_Parameters_v1360 = -1; static gint ett_lte_rrc_Other_Parameters_v1430 = -1; static gint ett_lte_rrc_OtherParameters_v1450 = -1; static gint ett_lte_rrc_Other_Parameters_v1460 = -1; +static gint ett_lte_rrc_Other_Parameters_v1530 = -1; static gint ett_lte_rrc_MBMS_Parameters_r11 = -1; static gint ett_lte_rrc_MBMS_Parameters_v1250 = -1; static gint ett_lte_rrc_MBMS_Parameters_v1430 = -1; @@ -8445,6 +10148,7 @@ static gint ett_lte_rrc_CE_Parameters_v1380 = -1; static gint ett_lte_rrc_CE_Parameters_v1430 = -1; static gint ett_lte_rrc_LAA_Parameters_r13 = -1; static gint ett_lte_rrc_LAA_Parameters_v1430 = -1; +static gint ett_lte_rrc_LAA_Parameters_v1530 = -1; static gint ett_lte_rrc_WLAN_IW_Parameters_r12 = -1; static gint ett_lte_rrc_LWA_Parameters_r13 = -1; static gint ett_lte_rrc_LWA_Parameters_v1430 = -1; @@ -8457,8 +10161,12 @@ static gint ett_lte_rrc_NAICS_Capability_Entry_r12 = -1; static gint ett_lte_rrc_SL_Parameters_r12 = -1; static gint ett_lte_rrc_SL_Parameters_v1310 = -1; static gint ett_lte_rrc_SL_Parameters_v1430 = -1; +static gint ett_lte_rrc_SL_Parameters_v1530 = -1; +static gint ett_lte_rrc_UE_CategorySL_r15 = -1; static gint ett_lte_rrc_V2X_SupportedBandCombination_r14 = -1; +static gint ett_lte_rrc_V2X_SupportedBandCombination_v1530 = -1; static gint ett_lte_rrc_V2X_BandCombinationParameters_r14 = -1; +static gint ett_lte_rrc_V2X_BandCombinationParameters_v1530 = -1; static gint ett_lte_rrc_SupportedBandInfoList_r12 = -1; static gint ett_lte_rrc_SupportedBandInfo_r12 = -1; static gint ett_lte_rrc_FreqBandIndicatorListEUTRA_r12 = -1; @@ -8525,14 +10233,20 @@ static gint ett_lte_rrc_SL_CBR_PSSCH_TxConfig_r14 = -1; static gint ett_lte_rrc_SL_CBR_PPPP_TxConfigList_r14 = -1; static gint ett_lte_rrc_SL_PPPP_TxConfigIndex_r14 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14 = -1; +static gint ett_lte_rrc_SL_CBR_PPPP_TxConfigList_v1530 = -1; +static gint ett_lte_rrc_SL_PPPP_TxConfigIndex_v1530 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_MCS_PSSCH_Range_r15 = -1; +static gint ett_lte_rrc_MCS_PSSCH_Range_r15 = -1; +static gint ett_lte_rrc_SL_CBR_PPPP_TxConfigList_r15 = -1; +static gint ett_lte_rrc_SL_PPPP_TxConfigIndex_r15 = -1; static gint ett_lte_rrc_SL_CommConfig_r12 = -1; static gint ett_lte_rrc_T_commTxResources_r12 = -1; -static gint ett_lte_rrc_T_setup_117 = -1; +static gint ett_lte_rrc_T_setup_156 = -1; static gint ett_lte_rrc_T_scheduled_r12 = -1; static gint ett_lte_rrc_T_ue_Selected_r12 = -1; static gint ett_lte_rrc_T_commTxPoolNormalDedicated_r12 = -1; static gint ett_lte_rrc_T_commTxResources_v1310 = -1; -static gint ett_lte_rrc_T_setup_118 = -1; +static gint ett_lte_rrc_T_setup_157 = -1; static gint ett_lte_rrc_T_scheduled_v1310 = -1; static gint ett_lte_rrc_T_ue_Selected_v1310 = -1; static gint ett_lte_rrc_T_commTxPoolNormalDedicatedExt_r13 = -1; @@ -8553,21 +10267,23 @@ static gint ett_lte_rrc_T_rxParametersNCell_r12 = -1; static gint ett_lte_rrc_T_txParameters_r12 = -1; static gint ett_lte_rrc_SL_CommResourcePoolV2X_r14 = -1; static gint ett_lte_rrc_T_rxParametersNCell_r14 = -1; +static gint ett_lte_rrc_SL_MinT2ValueList_r15 = -1; +static gint ett_lte_rrc_SL_MinT2Value_r15 = -1; static gint ett_lte_rrc_SL_CommTxPoolSensingConfig_r14 = -1; static gint ett_lte_rrc_T_p2x_SensingConfig_r14 = -1; static gint ett_lte_rrc_SL_DiscConfig_r12 = -1; static gint ett_lte_rrc_T_discTxResources_r12 = -1; -static gint ett_lte_rrc_T_setup_119 = -1; +static gint ett_lte_rrc_T_setup_158 = -1; static gint ett_lte_rrc_T_scheduled_r12_01 = -1; static gint ett_lte_rrc_T_ue_Selected_r12_01 = -1; static gint ett_lte_rrc_T_discTxPoolDedicated_r12 = -1; static gint ett_lte_rrc_T_discTF_IndexList_v1260 = -1; -static gint ett_lte_rrc_T_setup_120 = -1; +static gint ett_lte_rrc_T_setup_159 = -1; static gint ett_lte_rrc_T_discTxResourcesPS_r13 = -1; -static gint ett_lte_rrc_T_setup_121 = -1; +static gint ett_lte_rrc_T_setup_160 = -1; static gint ett_lte_rrc_T_ue_Selected_r13 = -1; static gint ett_lte_rrc_T_discTxInterFreqInfo_r13 = -1; -static gint ett_lte_rrc_T_setup_122 = -1; +static gint ett_lte_rrc_T_setup_161 = -1; static gint ett_lte_rrc_T_discRxGapConfig_r13 = -1; static gint ett_lte_rrc_T_discTxGapConfig_r13 = -1; static gint ett_lte_rrc_T_discSysInfoToReportConfig_r13 = -1; @@ -8577,7 +10293,7 @@ static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_ static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9 = -1; static gint ett_lte_rrc_SL_DiscTxResourceInfoPerFreq_r13 = -1; static gint ett_lte_rrc_SL_DiscTxResource_r13 = -1; -static gint ett_lte_rrc_T_setup_123 = -1; +static gint ett_lte_rrc_T_setup_162 = -1; static gint ett_lte_rrc_SL_DiscTxPoolToAddModList_r12 = -1; static gint ett_lte_rrc_SL_DiscTxPoolToAddMod_r12 = -1; static gint ett_lte_rrc_SL_DiscTxConfigScheduled_r13 = -1; @@ -8596,12 +10312,12 @@ static gint ett_lte_rrc_T_poolSelection_r12 = -1; static gint ett_lte_rrc_T_rxParameters_r12 = -1; static gint ett_lte_rrc_T_discPeriod_v1310 = -1; static gint ett_lte_rrc_T_rxParamsAddNeighFreq_r13 = -1; -static gint ett_lte_rrc_T_setup_125 = -1; +static gint ett_lte_rrc_T_setup_164 = -1; static gint ett_lte_rrc_T_txParamsAddNeighFreq_r13 = -1; -static gint ett_lte_rrc_T_setup_126 = -1; +static gint ett_lte_rrc_T_setup_165 = -1; static gint ett_lte_rrc_T_freqInfo_01 = -1; static gint ett_lte_rrc_T_txParamsAddNeighFreq_v1370 = -1; -static gint ett_lte_rrc_T_setup_127 = -1; +static gint ett_lte_rrc_T_setup_166 = -1; static gint ett_lte_rrc_T_freqInfo_v1370 = -1; static gint ett_lte_rrc_PhysCellIdList_r13 = -1; static gint ett_lte_rrc_SL_PoolSelectionConfig_r12 = -1; @@ -8630,6 +10346,8 @@ static gint ett_lte_rrc_SL_PriorityList_r13 = -1; static gint ett_lte_rrc_SL_PSSCH_TxConfigList_r14 = -1; static gint ett_lte_rrc_SL_PSSCH_TxConfig_r14 = -1; static gint ett_lte_rrc_SL_PSSCH_TxParameters_r14 = -1; +static gint ett_lte_rrc_SL_PSSCH_TxParameters_v1530 = -1; +static gint ett_lte_rrc_SL_ReliabilityList_r15 = -1; static gint ett_lte_rrc_SL_RestrictResourceReservationPeriodList_r14 = -1; static gint ett_lte_rrc_SL_SyncAllowed_r14 = -1; static gint ett_lte_rrc_SL_SyncConfigList_r12 = -1; @@ -8653,51 +10371,65 @@ static gint ett_lte_rrc_SL_TxPoolToReleaseList_r12 = -1; static gint ett_lte_rrc_SL_TxPoolToReleaseListExt_r13 = -1; static gint ett_lte_rrc_SL_V2X_ConfigDedicated_r14 = -1; static gint ett_lte_rrc_T_commTxResources_r14 = -1; -static gint ett_lte_rrc_T_setup_128 = -1; +static gint ett_lte_rrc_T_setup_167 = -1; static gint ett_lte_rrc_T_scheduled_r14 = -1; static gint ett_lte_rrc_T_ue_Selected_r14 = -1; static gint ett_lte_rrc_T_v2x_CommTxPoolNormalDedicated_r14 = -1; +static gint ett_lte_rrc_T_commTxResources_v1530 = -1; +static gint ett_lte_rrc_T_setup_168 = -1; +static gint ett_lte_rrc_T_scheduled_v1530 = -1; +static gint ett_lte_rrc_T_ue_Selected_v1530 = -1; +static gint ett_lte_rrc_LogicalChGroupInfoList_v1530 = -1; static gint ett_lte_rrc_SL_TxPoolToAddModListV2X_r14 = -1; static gint ett_lte_rrc_SL_TxPoolToAddMod_r14 = -1; static gint ett_lte_rrc_SL_TxPoolToReleaseListV2X_r14 = -1; +static gint ett_lte_rrc_SL_V2X_FreqSelectionConfigList_r15 = -1; +static gint ett_lte_rrc_SL_V2X_FreqSelectionConfig_r15 = -1; +static gint ett_lte_rrc_SL_V2X_PacketDuplicationConfig_r15 = -1; +static gint ett_lte_rrc_SL_PPPR_Dest_CarrierFreqList_r15 = -1; +static gint ett_lte_rrc_SL_PPPR_Dest_CarrierFreq = -1; +static gint ett_lte_rrc_SL_AllowedCarrierFreqList_r15 = -1; +static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9 = -1; +static gint ett_lte_rrc_SL_V2X_SyncFreqList_r15 = -1; static gint ett_lte_rrc_SL_ZoneConfig_r14 = -1; static gint ett_lte_rrc_SBCCH_SL_BCH_Message = -1; static gint ett_lte_rrc_SBCCH_SL_BCH_Message_V2X_r14 = -1; static gint ett_lte_rrc_MasterInformationBlock_SL = -1; static gint ett_lte_rrc_MasterInformationBlock_SL_V2X_r14 = -1; static gint ett_lte_rrc_HandoverPreparationInformation_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_53 = -1; +static gint ett_lte_rrc_T_criticalExtensions_56 = -1; static gint ett_lte_rrc_T_c1_50 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_53 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_55 = -1; static gint ett_lte_rrc_HandoverPreparationInformation_NB_IEs = -1; static gint ett_lte_rrc_HandoverPreparationInformation_NB_v1380_IEs = -1; static gint ett_lte_rrc_HandoverPreparationInformation_NB_Ext_r14_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_72 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_79 = -1; static gint ett_lte_rrc_UEPagingCoverageInformation_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_54 = -1; +static gint ett_lte_rrc_T_criticalExtensions_57 = -1; static gint ett_lte_rrc_T_c1_51 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_54 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_56 = -1; static gint ett_lte_rrc_UEPagingCoverageInformation_NB_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_73 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_80 = -1; static gint ett_lte_rrc_UERadioAccessCapabilityInformation_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_55 = -1; +static gint ett_lte_rrc_T_criticalExtensions_58 = -1; static gint ett_lte_rrc_T_c1_52 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_55 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_57 = -1; static gint ett_lte_rrc_UERadioAccessCapabilityInformation_NB_IEs = -1; static gint ett_lte_rrc_UERadioAccessCapabilityInformation_NB_v1380_IEs = -1; static gint ett_lte_rrc_UERadioAccessCapabilityInformation_NB_r14_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_74 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_81 = -1; static gint ett_lte_rrc_UERadioPagingInformation_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_56 = -1; +static gint ett_lte_rrc_T_criticalExtensions_59 = -1; static gint ett_lte_rrc_T_c1_53 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_56 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_58 = -1; static gint ett_lte_rrc_UERadioPagingInformation_NB_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_75 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_82 = -1; static gint ett_lte_rrc_AS_Config_NB = -1; static gint ett_lte_rrc_AS_Context_NB = -1; static gint ett_lte_rrc_ReestablishmentInfo_NB = -1; static gint ett_lte_rrc_RRM_Config_NB = -1; static gint ett_lte_rrc_BCCH_BCH_Message_NB = -1; +static gint ett_lte_rrc_BCCH_BCH_Message_TDD_NB = -1; static gint ett_lte_rrc_BCCH_DL_SCH_Message_NB = -1; static gint ett_lte_rrc_BCCH_DL_SCH_MessageType_NB = -1; static gint ett_lte_rrc_T_c1_54 = -1; @@ -8727,144 +10459,172 @@ static gint ett_lte_rrc_UL_DCCH_MessageType_NB = -1; static gint ett_lte_rrc_T_c1_60 = -1; static gint ett_lte_rrc_T_messageClassExtension_16 = -1; static gint ett_lte_rrc_DLInformationTransfer_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_57 = -1; +static gint ett_lte_rrc_T_criticalExtensions_60 = -1; static gint ett_lte_rrc_T_c1_61 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_57 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_59 = -1; static gint ett_lte_rrc_DLInformationTransfer_NB_r13_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_76 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_83 = -1; static gint ett_lte_rrc_MasterInformationBlock_NB = -1; static gint ett_lte_rrc_T_operationModeInfo_r13 = -1; static gint ett_lte_rrc_Guardband_NB_r13 = -1; static gint ett_lte_rrc_Inband_SamePCI_NB_r13 = -1; static gint ett_lte_rrc_Inband_DifferentPCI_NB_r13 = -1; static gint ett_lte_rrc_Standalone_NB_r13 = -1; +static gint ett_lte_rrc_MasterInformationBlock_TDD_NB_r15 = -1; +static gint ett_lte_rrc_T_operationModeInfo_r15 = -1; +static gint ett_lte_rrc_GuardbandTDD_NB_r15 = -1; +static gint ett_lte_rrc_T_sib_GuardbandInfo_r15 = -1; +static gint ett_lte_rrc_Inband_SamePCI_TDD_NB_r15 = -1; +static gint ett_lte_rrc_Inband_DifferentPCI_TDD_NB_r15 = -1; +static gint ett_lte_rrc_StandaloneTDD_NB_r15 = -1; +static gint ett_lte_rrc_SIB_GuardbandAnchorTDD_NB_r15 = -1; +static gint ett_lte_rrc_SIB_GuardbandGuardbandTDD_NB_r15 = -1; +static gint ett_lte_rrc_SIB_GuardbandInbandSamePCI_TDD_NB_r15 = -1; +static gint ett_lte_rrc_SIB_GuardbandInbandDiffPCI_TDD_NB_r15 = -1; static gint ett_lte_rrc_Paging_NB = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_77 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_84 = -1; static gint ett_lte_rrc_PagingRecordList_NB_r13 = -1; static gint ett_lte_rrc_PagingRecord_NB_r13 = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_58 = -1; +static gint ett_lte_rrc_T_criticalExtensions_61 = -1; static gint ett_lte_rrc_T_c1_62 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_58 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_60 = -1; static gint ett_lte_rrc_RRCConnectionReconfiguration_NB_r13_IEs = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxDRB_NB_r13_OF_DedicatedInfoNAS = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_78 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_85 = -1; static gint ett_lte_rrc_RRCConnectionReconfigurationComplete_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_59 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_59 = -1; +static gint ett_lte_rrc_T_criticalExtensions_62 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_61 = -1; static gint ett_lte_rrc_RRCConnectionReconfigurationComplete_NB_r13_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_79 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_86 = -1; static gint ett_lte_rrc_RRCConnectionReestablishment_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_60 = -1; +static gint ett_lte_rrc_T_criticalExtensions_63 = -1; static gint ett_lte_rrc_T_c1_63 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_60 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_62 = -1; static gint ett_lte_rrc_RRCConnectionReestablishment_NB_r13_IEs = -1; static gint ett_lte_rrc_RRCConnectionReestablishment_NB_v1430_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_80 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_87 = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentComplete_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_61 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_61 = -1; +static gint ett_lte_rrc_T_criticalExtensions_64 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_63 = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentComplete_NB_r13_IEs = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentComplete_NB_v1470_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_81 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_88 = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentRequest_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_62 = -1; +static gint ett_lte_rrc_T_criticalExtensions_65 = -1; static gint ett_lte_rrc_T_later_01 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_62 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_64 = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentRequest_NB_r13_IEs = -1; static gint ett_lte_rrc_RRCConnectionReestablishmentRequest_NB_r14_IEs = -1; static gint ett_lte_rrc_ReestabUE_Identity_CP_NB_r14 = -1; static gint ett_lte_rrc_RRCConnectionReject_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_63 = -1; +static gint ett_lte_rrc_T_criticalExtensions_66 = -1; static gint ett_lte_rrc_T_c1_64 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_63 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_65 = -1; static gint ett_lte_rrc_RRCConnectionReject_NB_r13_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_82 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_89 = -1; static gint ett_lte_rrc_RRCConnectionRelease_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_64 = -1; +static gint ett_lte_rrc_T_criticalExtensions_67 = -1; static gint ett_lte_rrc_T_c1_65 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_64 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_66 = -1; static gint ett_lte_rrc_RRCConnectionRelease_NB_r13_IEs = -1; static gint ett_lte_rrc_RRCConnectionRelease_NB_v1430_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_83 = -1; +static gint ett_lte_rrc_RRCConnectionRelease_NB_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_90 = -1; static gint ett_lte_rrc_RedirectedCarrierInfo_NB_v1430 = -1; static gint ett_lte_rrc_RRCConnectionRequest_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_65 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_65 = -1; +static gint ett_lte_rrc_T_criticalExtensions_68 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_67 = -1; static gint ett_lte_rrc_RRCConnectionRequest_NB_r13_IEs = -1; static gint ett_lte_rrc_RRCConnectionResume_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_66 = -1; +static gint ett_lte_rrc_T_criticalExtensions_69 = -1; static gint ett_lte_rrc_T_c1_66 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_66 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_68 = -1; static gint ett_lte_rrc_RRCConnectionResume_NB_r13_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_84 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_91 = -1; static gint ett_lte_rrc_RRCConnectionResumeComplete_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_67 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_67 = -1; +static gint ett_lte_rrc_T_criticalExtensions_70 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_69 = -1; static gint ett_lte_rrc_RRCConnectionResumeComplete_NB_r13_IEs = -1; static gint ett_lte_rrc_RRCConnectionResumeComplete_NB_v1470_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_85 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_92 = -1; static gint ett_lte_rrc_RRCConnectionResumeRequest_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_68 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_68 = -1; +static gint ett_lte_rrc_T_criticalExtensions_71 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_70 = -1; static gint ett_lte_rrc_RRCConnectionResumeRequest_NB_r13_IEs = -1; static gint ett_lte_rrc_RRCConnectionSetup_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_69 = -1; +static gint ett_lte_rrc_T_criticalExtensions_72 = -1; static gint ett_lte_rrc_T_c1_67 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_69 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_71 = -1; static gint ett_lte_rrc_RRCConnectionSetup_NB_r13_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_86 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_93 = -1; static gint ett_lte_rrc_RRCConnectionSetupComplete_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_70 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_70 = -1; +static gint ett_lte_rrc_T_criticalExtensions_73 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_72 = -1; static gint ett_lte_rrc_RRCConnectionSetupComplete_NB_r13_IEs = -1; static gint ett_lte_rrc_RRCConnectionSetupComplete_NB_v1430_IEs = -1; static gint ett_lte_rrc_RRCConnectionSetupComplete_NB_v1470_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_87 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_94 = -1; +static gint ett_lte_rrc_RRCEarlyDataComplete_NB_r15 = -1; +static gint ett_lte_rrc_T_criticalExtensions_74 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_73 = -1; +static gint ett_lte_rrc_RRCEarlyDataComplete_NB_r15_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_95 = -1; +static gint ett_lte_rrc_RRCEarlyDataRequest_NB_r15 = -1; +static gint ett_lte_rrc_T_criticalExtensions_75 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_74 = -1; +static gint ett_lte_rrc_RRCEarlyDataRequest_NB_r15_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_96 = -1; static gint ett_lte_rrc_SCPTMConfiguration_NB_r14 = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_88 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_97 = -1; static gint ett_lte_rrc_SystemInformation_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_71 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_71 = -1; +static gint ett_lte_rrc_T_criticalExtensions_76 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_75 = -1; static gint ett_lte_rrc_SystemInformation_NB_r13_IEs = -1; static gint ett_lte_rrc_T_sib_TypeAndInfo_r13 = -1; static gint ett_lte_rrc_T_sib_TypeAndInfo_r13_item = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_89 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_98 = -1; static gint ett_lte_rrc_SystemInformationBlockType1_NB = -1; static gint ett_lte_rrc_T_cellAccessRelatedInfo_r13 = -1; static gint ett_lte_rrc_T_cellSelectionInfo_r13 = -1; static gint ett_lte_rrc_SystemInformationBlockType1_NB_v1350 = -1; static gint ett_lte_rrc_SystemInformationBlockType1_NB_v1430 = -1; static gint ett_lte_rrc_SystemInformationBlockType1_NB_v1450 = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_90 = -1; +static gint ett_lte_rrc_SystemInformationBlockType1_NB_v1530 = -1; +static gint ett_lte_rrc_T_tdd_Parameters_r15 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_99 = -1; static gint ett_lte_rrc_PLMN_IdentityList_NB_r13 = -1; static gint ett_lte_rrc_PLMN_IdentityInfo_NB_r13 = -1; static gint ett_lte_rrc_SchedulingInfoList_NB_r13 = -1; +static gint ett_lte_rrc_SchedulingInfoList_NB_v1530 = -1; static gint ett_lte_rrc_SchedulingInfo_NB_r13 = -1; +static gint ett_lte_rrc_SchedulingInfo_NB_v1530 = -1; static gint ett_lte_rrc_SystemInfoValueTagList_NB_r13 = -1; static gint ett_lte_rrc_SIB_MappingInfo_NB_r13 = -1; +static gint ett_lte_rrc_SIB_MappingInfo_NB_v1530 = -1; static gint ett_lte_rrc_CellSelectionInfo_NB_v1350 = -1; static gint ett_lte_rrc_CellSelectionInfo_NB_v1430 = -1; static gint ett_lte_rrc_UECapabilityEnquiry_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_72 = -1; +static gint ett_lte_rrc_T_criticalExtensions_77 = -1; static gint ett_lte_rrc_T_c1_68 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_72 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_76 = -1; static gint ett_lte_rrc_UECapabilityEnquiry_NB_r13_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_91 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_100 = -1; static gint ett_lte_rrc_UECapabilityInformation_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_73 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_73 = -1; +static gint ett_lte_rrc_T_criticalExtensions_78 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_77 = -1; static gint ett_lte_rrc_UECapabilityInformation_NB_r13_IEs = -1; static gint ett_lte_rrc_UECapabilityInformation_NB_Ext_r14_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_92 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_101 = -1; static gint ett_lte_rrc_ULInformationTransfer_NB = -1; -static gint ett_lte_rrc_T_criticalExtensions_74 = -1; -static gint ett_lte_rrc_T_criticalExtensionsFuture_74 = -1; +static gint ett_lte_rrc_T_criticalExtensions_79 = -1; +static gint ett_lte_rrc_T_criticalExtensionsFuture_78 = -1; static gint ett_lte_rrc_ULInformationTransfer_NB_r13_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_93 = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_102 = -1; static gint ett_lte_rrc_SystemInformationBlockType2_NB_r13 = -1; static gint ett_lte_rrc_T_freqInfo_r13_01 = -1; static gint ett_lte_rrc_AdditionalSpectrumEmission_r13 = -1; +static gint ett_lte_rrc_T_freqInfo_v1530 = -1; static gint ett_lte_rrc_SystemInformationBlockType3_NB_r13 = -1; static gint ett_lte_rrc_T_cellReselectionInfoCommon_r13 = -1; static gint ett_lte_rrc_T_cellReselectionServingFreqInfo_r13 = -1; @@ -8875,10 +10635,14 @@ static gint ett_lte_rrc_IntraFreqCellReselectionInfo_NB_v1360 = -1; static gint ett_lte_rrc_IntraFreqCellReselectionInfo_NB_v1430 = -1; static gint ett_lte_rrc_CellReselectionInfoCommon_NB_v1450 = -1; static gint ett_lte_rrc_SystemInformationBlockType4_NB_r13 = -1; +static gint ett_lte_rrc_IntraFreqNeighCellList_NB_v1530 = -1; +static gint ett_lte_rrc_IntraFreqNeighCellInfo_NB_v1530 = -1; static gint ett_lte_rrc_SystemInformationBlockType5_NB_r13 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqList_NB_r13 = -1; static gint ett_lte_rrc_InterFreqCarrierFreqInfo_NB_r13 = -1; static gint ett_lte_rrc_InterFreqNeighCellList_NB_r13 = -1; +static gint ett_lte_rrc_InterFreqNeighCellList_NB_v1530 = -1; +static gint ett_lte_rrc_InterFreqNeighCellInfo_NB_v1530 = -1; static gint ett_lte_rrc_InterFreqBlackCellList_NB_r13 = -1; static gint ett_lte_rrc_SystemInformationBlockType14_NB_r13 = -1; static gint ett_lte_rrc_T_ab_Param_r13 = -1; @@ -8894,16 +10658,22 @@ static gint ett_lte_rrc_NPDCCH_SC_MCCH_Config_NB_r14 = -1; static gint ett_lte_rrc_SC_MCCH_SchedulingInfo_NB_r14 = -1; static gint ett_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_02 = -1; static gint ett_lte_rrc_SystemInformationBlockType22_NB_r14 = -1; +static gint ett_lte_rrc_T_mixedOperationModeConfig_r15 = -1; static gint ett_lte_rrc_DL_ConfigCommonList_NB_r14 = -1; static gint ett_lte_rrc_UL_ConfigCommonList_NB_r14 = -1; +static gint ett_lte_rrc_UL_ConfigCommonListTDD_NB_r15 = -1; static gint ett_lte_rrc_DL_ConfigCommon_NB_r14 = -1; static gint ett_lte_rrc_PCCH_Config_NB_r14 = -1; static gint ett_lte_rrc_UL_ConfigCommon_NB_r14 = -1; +static gint ett_lte_rrc_UL_ConfigCommonTDD_NB_r15 = -1; static gint ett_lte_rrc_NPRACH_ParametersList_NB_r14 = -1; static gint ett_lte_rrc_NPRACH_Parameters_NB_r14 = -1; static gint ett_lte_rrc_T_nprach_Parameters_r14 = -1; static gint ett_lte_rrc_NPRACH_ProbabilityAnchorList_NB_r14 = -1; static gint ett_lte_rrc_NPRACH_ProbabilityAnchor_NB_r14 = -1; +static gint ett_lte_rrc_SystemInformationBlockType23_NB_r15 = -1; +static gint ett_lte_rrc_UL_ConfigCommonList_NB_v1530 = -1; +static gint ett_lte_rrc_UL_ConfigCommon_NB_v1530 = -1; static gint ett_lte_rrc_CarrierConfigDedicated_NB_r13 = -1; static gint ett_lte_rrc_DL_CarrierConfigDedicated_NB_r13 = -1; static gint ett_lte_rrc_T_downlinkBitmapNonAnchor_r13 = -1; @@ -8923,25 +10693,39 @@ static gint ett_lte_rrc_T_samePCI_Indicator_r14 = -1; static gint ett_lte_rrc_T_samePCI_r14 = -1; static gint ett_lte_rrc_T_differentPCI_r14 = -1; static gint ett_lte_rrc_DL_GapConfig_NB_r13 = -1; +static gint ett_lte_rrc_DL_GapConfig_NB_v1530 = -1; static gint ett_lte_rrc_LogicalChannelConfig_NB_r13 = -1; static gint ett_lte_rrc_MAC_MainConfig_NB_r13 = -1; static gint ett_lte_rrc_T_ul_SCH_Config_r13 = -1; static gint ett_lte_rrc_T_logicalChannelSR_Config_r13 = -1; -static gint ett_lte_rrc_T_setup_129 = -1; +static gint ett_lte_rrc_T_setup_169 = -1; static gint ett_lte_rrc_T_dataInactivityTimerConfig_r14_01 = -1; -static gint ett_lte_rrc_T_setup_130 = -1; +static gint ett_lte_rrc_T_setup_170 = -1; static gint ett_lte_rrc_DRX_Config_NB_r13 = -1; -static gint ett_lte_rrc_T_setup_131 = -1; +static gint ett_lte_rrc_T_setup_171 = -1; static gint ett_lte_rrc_NPDCCH_ConfigDedicated_NB_r13 = -1; +static gint ett_lte_rrc_NPDCCH_ConfigDedicated_NB_v1530 = -1; static gint ett_lte_rrc_NPDSCH_ConfigCommon_NB_r13 = -1; static gint ett_lte_rrc_NPRACH_ConfigSIB_NB_r13 = -1; static gint ett_lte_rrc_NPRACH_ConfigSIB_NB_v1330 = -1; static gint ett_lte_rrc_NPRACH_ConfigSIB_NB_v1450 = -1; +static gint ett_lte_rrc_NPRACH_ConfigSIB_NB_v1530 = -1; +static gint ett_lte_rrc_T_tdd_Parameters_r15_01 = -1; +static gint ett_lte_rrc_T_fmt2_Parameters_r15 = -1; +static gint ett_lte_rrc_T_edt_Parameters_r15_01 = -1; static gint ett_lte_rrc_NPRACH_ParametersList_NB_r13 = -1; static gint ett_lte_rrc_NPRACH_ParametersList_NB_v1330 = -1; static gint ett_lte_rrc_NPRACH_Parameters_NB_r13 = -1; static gint ett_lte_rrc_NPRACH_Parameters_NB_v1330 = -1; +static gint ett_lte_rrc_NPRACH_ParametersListTDD_NB_r15 = -1; +static gint ett_lte_rrc_NPRACH_ParametersTDD_NB_r15 = -1; +static gint ett_lte_rrc_T_nprach_Parameters_r15 = -1; +static gint ett_lte_rrc_NPRACH_ParametersListFmt2_NB_r15 = -1; +static gint ett_lte_rrc_NPRACH_ParametersFmt2_NB_r15 = -1; +static gint ett_lte_rrc_T_nprach_Parameters_r15_01 = -1; static gint ett_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13 = -1; +static gint ett_lte_rrc_EDT_TBS_InfoList_NB_r15 = -1; +static gint ett_lte_rrc_EDT_TBS_NB_r15 = -1; static gint ett_lte_rrc_NPUSCH_ConfigCommon_NB_r13 = -1; static gint ett_lte_rrc_SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13 = -1; static gint ett_lte_rrc_T_dmrs_Config_r13 = -1; @@ -8954,7 +10738,9 @@ static gint ett_lte_rrc_T_profiles_r13 = -1; static gint ett_lte_rrc_PhysicalConfigDedicated_NB_r13 = -1; static gint ett_lte_rrc_RACH_ConfigCommon_NB_r13 = -1; static gint ett_lte_rrc_RACH_InfoList_NB_r13 = -1; +static gint ett_lte_rrc_RACH_InfoList_NB_v1530 = -1; static gint ett_lte_rrc_RACH_Info_NB_r13 = -1; +static gint ett_lte_rrc_RACH_Info_NB_v1530 = -1; static gint ett_lte_rrc_PowerRampingParameters_NB_v1450 = -1; static gint ett_lte_rrc_T_powerRampingParametersCE1_r14 = -1; static gint ett_lte_rrc_RadioResourceConfigCommonSIB_NB_r13 = -1; @@ -8975,26 +10761,43 @@ static gint ett_lte_rrc_RLC_Config_NB_v1430 = -1; static gint ett_lte_rrc_UL_AM_RLC_NB_r13 = -1; static gint ett_lte_rrc_DL_AM_RLC_NB_r13 = -1; static gint ett_lte_rrc_RLF_TimersAndConstants_NB_r13 = -1; -static gint ett_lte_rrc_T_setup_132 = -1; +static gint ett_lte_rrc_T_setup_172 = -1; +static gint ett_lte_rrc_SchedulingRequestConfig_NB_r15 = -1; +static gint ett_lte_rrc_SR_WithoutHARQ_ACK_Config_NB_r15 = -1; +static gint ett_lte_rrc_T_setup_173 = -1; +static gint ett_lte_rrc_SR_NPRACH_Resource_NB_r15 = -1; +static gint ett_lte_rrc_T_nprach_SubCarrierIndex_r15 = -1; +static gint ett_lte_rrc_SR_SPS_BSR_Config_NB_r15 = -1; +static gint ett_lte_rrc_T_setup_174 = -1; +static gint ett_lte_rrc_TDD_Config_NB_r15 = -1; static gint ett_lte_rrc_UplinkPowerControlCommon_NB_r13 = -1; static gint ett_lte_rrc_UplinkPowerControlDedicated_NB_r13 = -1; +static gint ett_lte_rrc_WUS_Config_NB_r15 = -1; +static gint ett_lte_rrc_WUS_ConfigPerCarrier_NB_r15 = -1; static gint ett_lte_rrc_AdditionalBandInfoList_NB_r14 = -1; static gint ett_lte_rrc_MultiBandInfoList_NB_r13 = -1; static gint ett_lte_rrc_MultiBandInfo_NB_r13 = -1; static gint ett_lte_rrc_NS_PmaxList_NB_r13 = -1; static gint ett_lte_rrc_NS_PmaxValue_NB_r13 = -1; static gint ett_lte_rrc_MeasResultServCell_NB_r14 = -1; +static gint ett_lte_rrc_NSSS_RRM_Config_NB_r15 = -1; static gint ett_lte_rrc_UE_Capability_NB_r13 = -1; static gint ett_lte_rrc_T_dummy_03 = -1; static gint ett_lte_rrc_UE_Capability_NB_Ext_r14_IEs = -1; static gint ett_lte_rrc_UE_Capability_NB_v1440_IEs = -1; -static gint ett_lte_rrc_T_nonCriticalExtension_94 = -1; +static gint ett_lte_rrc_UE_Capability_NB_v14x0_IEs = -1; +static gint ett_lte_rrc_UE_Capability_NB_v1530_IEs = -1; +static gint ett_lte_rrc_T_nonCriticalExtension_103 = -1; +static gint ett_lte_rrc_TDD_UE_Capability_NB_r15 = -1; static gint ett_lte_rrc_PDCP_Parameters_NB_r13 = -1; static gint ett_lte_rrc_T_supportedROHC_Profiles_r13 = -1; +static gint ett_lte_rrc_RLC_Parameters_NB_r15 = -1; static gint ett_lte_rrc_MAC_Parameters_NB_r14 = -1; +static gint ett_lte_rrc_MAC_Parameters_NB_v1530 = -1; static gint ett_lte_rrc_PhyLayerParameters_NB_r13 = -1; static gint ett_lte_rrc_PhyLayerParameters_NB_v1430 = -1; static gint ett_lte_rrc_PhyLayerParameters_NB_v1440 = -1; +static gint ett_lte_rrc_PhyLayerParameters_NB_v1530 = -1; static gint ett_lte_rrc_RF_Parameters_NB_r13 = -1; static gint ett_lte_rrc_RF_Parameters_NB_v1430 = -1; static gint ett_lte_rrc_SupportedBandList_NB_r13 = -1; @@ -9010,7 +10813,7 @@ static gint ett_lte_rrc_SCPTM_NeighbourCellList_NB_r14 = -1; static gint ett_lte_rrc_PCI_ARFCN_NB_r14 = -1; /*--- End of included file: packet-lte-rrc-ett.c ---*/ -#line 270 "./asn1/lte-rrc/packet-lte-rrc-template.c" +#line 272 "./asn1/lte-rrc/packet-lte-rrc-template.c" static gint ett_lte_rrc_featureGroupIndicators = -1; static gint ett_lte_rrc_featureGroupIndRel9Add = -1; @@ -9045,7 +10848,7 @@ static gint ett_lte_rrc_ul_DCCH_MessageNR_r15 = -1; static gint ett_lte_rrc_sourceRB_ConfigNR_r15 = -1; static gint ett_lte_rrc_sourceRB_ConfigSN_NR_r15 = -1; static gint ett_lte_rrc_sourceOtherConfigSN_NR_r15 = -1; -static gint ett_lte_rrc_sourceContextENDC_r15 = -1; +static gint ett_lte_rrc_sourceContextEN_DC_r15 = -1; static gint ett_lte_rrc_requestedFreqBandsNR_MRDC_r15 = -1; static gint ett_lte_rrc_measGapPatterns_v1520 = -1; @@ -12567,16 +14370,16 @@ dissect_lte_rrc_MeasSubframeCellList_r10(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const per_sequence_t T_setup_109_sequence[] = { +static const per_sequence_t T_setup_147_sequence[] = { { &hf_lte_rrc_measSubframePatternNeigh_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasSubframePattern_r10 }, { &hf_lte_rrc_measSubframeCellList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasSubframeCellList_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_109(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_147(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_lte_rrc_T_setup_109, T_setup_109_sequence); + ett_lte_rrc_T_setup_147, T_setup_147_sequence); return offset; } @@ -12590,7 +14393,7 @@ static const value_string lte_rrc_MeasSubframePatternConfigNeigh_r10_vals[] = { static const per_choice_t MeasSubframePatternConfigNeigh_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_123 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_109 }, + { 1, &hf_lte_rrc_setup_165 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_147 }, { 0, NULL, 0, NULL } }; @@ -12669,7 +14472,7 @@ dissect_lte_rrc_AltTTT_CellsToAddModList_r12(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_setup_108_vals[] = { +static const value_string lte_rrc_T_setup_146_vals[] = { { 0, "ms0" }, { 1, "ms50" }, { 2, "ms100" }, @@ -12683,7 +14486,7 @@ static const value_string lte_rrc_T_setup_108_vals[] = { static int -dissect_lte_rrc_T_setup_108(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_146(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, 8, NULL, FALSE, 0, NULL); @@ -12699,7 +14502,7 @@ static const value_string lte_rrc_T_t312_r12_vals[] = { static const per_choice_t T_t312_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_122 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_108 }, + { 1, &hf_lte_rrc_setup_164 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_146 }, { 0, NULL, 0, NULL } }; @@ -12896,7 +14699,7 @@ dissect_lte_rrc_MeasCSI_RS_ToAddModList_r12(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t T_setup_104_sequence[] = { +static const per_sequence_t T_setup_141_sequence[] = { { &hf_lte_rrc_dmtc_PeriodOffset_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dmtc_PeriodOffset_r12 }, { &hf_lte_rrc_ds_OccasionDuration_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ds_OccasionDuration_r12 }, { &hf_lte_rrc_measCSI_RS_ToRemoveList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasCSI_RS_ToRemoveList_r12 }, @@ -12905,9 +14708,9 @@ static const per_sequence_t T_setup_104_sequence[] = { }; static int -dissect_lte_rrc_T_setup_104(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_141(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_lte_rrc_T_setup_104, T_setup_104_sequence); + ett_lte_rrc_T_setup_141, T_setup_141_sequence); return offset; } @@ -12921,7 +14724,7 @@ static const value_string lte_rrc_MeasDS_Config_r12_vals[] = { static const per_choice_t MeasDS_Config_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_118 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_104 }, + { 1, &hf_lte_rrc_setup_159 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_141 }, { 0, NULL, 0, NULL } }; @@ -13029,7 +14832,7 @@ dissect_lte_rrc_T_measDuration_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t T_setup_110_sequence[] = { +static const per_sequence_t T_setup_148_sequence[] = { { &hf_lte_rrc_rmtc_Period_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rmtc_Period_r13 }, { &hf_lte_rrc_rmtc_SubframeOffset_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_639 }, { &hf_lte_rrc_measDuration_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measDuration_r13 }, @@ -13037,9 +14840,9 @@ static const per_sequence_t T_setup_110_sequence[] = { }; static int -dissect_lte_rrc_T_setup_110(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_148(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_lte_rrc_T_setup_110, T_setup_110_sequence); + ett_lte_rrc_T_setup_148, T_setup_148_sequence); return offset; } @@ -13053,7 +14856,7 @@ static const value_string lte_rrc_RMTC_Config_r13_vals[] = { static const per_choice_t RMTC_Config_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_124 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_110 }, + { 1, &hf_lte_rrc_setup_166 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_148 }, { 0, NULL, 0, NULL } }; @@ -13132,6 +14935,92 @@ dissect_lte_rrc_MeasObjectEUTRA_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } + +static int +dissect_lte_rrc_INTEGER_1_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 20U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_sensingPeriodicity_r15_vals[] = { + { 0, "ms20" }, + { 1, "ms50" }, + { 2, "ms100" }, + { 3, "ms200" }, + { 4, "ms300" }, + { 5, "ms400" }, + { 6, "ms500" }, + { 7, "ms600" }, + { 8, "ms700" }, + { 9, "ms800" }, + { 10, "ms900" }, + { 11, "ms1000" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_sensingPeriodicity_r15(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, + 12, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_5_75(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 5U, 75U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_1_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 8U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t MeasSensing_Config_r15_sequence[] = { + { &hf_lte_rrc_sensingSubchannelNumber_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_20 }, + { &hf_lte_rrc_sensingPeriodicity_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sensingPeriodicity_r15 }, + { &hf_lte_rrc_sensingReselectionCounter_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_5_75 }, + { &hf_lte_rrc_sensingPriority_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_8 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasSensing_Config_r15(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_lte_rrc_MeasSensing_Config_r15, MeasSensing_Config_r15_sequence); + + return offset; +} + + +static const per_sequence_t MeasObjectEUTRA_eag_6_sequence[] = { + { &hf_lte_rrc_measSensing_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasSensing_Config_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasObjectEUTRA_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasObjectEUTRA_eag_6_sequence); + + return offset; +} + + static const per_sequence_t MeasObjectEUTRA_sequence[] = { { &hf_lte_rrc_carrierFreq_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, { &hf_lte_rrc_allowedMeasBandwidth, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AllowedMeasBandwidth }, @@ -13148,6 +15037,7 @@ static const per_sequence_t MeasObjectEUTRA_sequence[] = { { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectEUTRA_eag_3 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectEUTRA_eag_4 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectEUTRA_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectEUTRA_eag_6 }, { NULL, 0, 0, NULL } }; @@ -13441,16 +15331,6 @@ dissect_lte_rrc_ExplicitListOfARFCNs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } - -static int -dissect_lte_rrc_INTEGER_1_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 8U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t T_equallySpacedARFCNs_sequence[] = { { &hf_lte_rrc_arfcn_Spacing, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_8 }, { &hf_lte_rrc_numberOfFollowingARFCNs, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, @@ -14031,7 +15911,7 @@ dissect_lte_rrc_MTC_SSB_NR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } -static const value_string lte_rrc_T_subcarrierSpacingSSB_r15_vals[] = { +static const value_string lte_rrc_T_subcarrierSpacingSSB_r15_02_vals[] = { { 0, "kHz15" }, { 1, "kHz30" }, { 2, "kHz120" }, @@ -14041,7 +15921,7 @@ static const value_string lte_rrc_T_subcarrierSpacingSSB_r15_vals[] = { static int -dissect_lte_rrc_T_subcarrierSpacingSSB_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_subcarrierSpacingSSB_r15_02(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); @@ -14051,7 +15931,7 @@ dissect_lte_rrc_T_subcarrierSpacingSSB_r15(tvbuff_t *tvb _U_, int offset _U_, as static const per_sequence_t RS_ConfigSSB_NR_r15_sequence[] = { { &hf_lte_rrc_measTimingConfig_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MTC_SSB_NR_r15 }, - { &hf_lte_rrc_subcarrierSpacingSSB_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subcarrierSpacingSSB_r15 }, + { &hf_lte_rrc_subcarrierSpacingSSB_r15_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subcarrierSpacingSSB_r15_02 }, { NULL, 0, 0, NULL } }; @@ -14112,7 +15992,7 @@ dissect_lte_rrc_ThresholdListNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int -dissect_lte_rrc_INTEGER_1_maxRS_IndexCellQual_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MaxRS_IndexCellQualNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, 1U, maxRS_IndexCellQual_r15, NULL, FALSE); @@ -14132,7 +16012,7 @@ dissect_lte_rrc_PhysCellIdNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static const per_sequence_t CellsToAddModNR_r15_sequence[] = { { &hf_lte_rrc_cellIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxCellMeas }, - { &hf_lte_rrc_physCellId_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdNR_r15 }, + { &hf_lte_rrc_physCellId_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdNR_r15 }, { NULL, 0, 0, NULL } }; @@ -14183,16 +16063,100 @@ dissect_lte_rrc_SEQUENCE_SIZE_1_maxCellSFTD_OF_PhysCellIdNR_r15(tvbuff_t *tvb _U } + +static int +dissect_lte_rrc_BIT_STRING_SIZE_1_80(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, + 1, 80, FALSE, NULL, NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SS_RSSI_Measurement_r15_sequence[] = { + { &hf_lte_rrc_measurementSlots_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_1_80 }, + { &hf_lte_rrc_endSymbol_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SS_RSSI_Measurement_r15(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_lte_rrc_SS_RSSI_Measurement_r15, SS_RSSI_Measurement_r15_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_FreqBandIndicatorNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxFBI_NR_r15, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_bandNR_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_bandNR_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_167 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_FreqBandIndicatorNR_r15 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_bandNR_r15(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_lte_rrc_T_bandNR_r15, T_bandNR_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MeasObjectNR_r15_eag_1_sequence[] = { + { &hf_lte_rrc_cellForWhichToReportCGI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhysCellIdNR_r15 }, + { &hf_lte_rrc_deriveSSB_IndexFromCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_ss_RSSI_Measurement_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SS_RSSI_Measurement_r15 }, + { &hf_lte_rrc_bandNR_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bandNR_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasObjectNR_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasObjectNR_r15_eag_1_sequence); + + return offset; +} + + static const per_sequence_t MeasObjectNR_r15_sequence[] = { { &hf_lte_rrc_carrierFreq_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueNR_r15 }, { &hf_lte_rrc_rs_ConfigSSB_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_ConfigSSB_NR_r15 }, { &hf_lte_rrc_threshRS_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_ThresholdListNR_r15 }, - { &hf_lte_rrc_maxRS_IndexCellQual_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxRS_IndexCellQual_r15 }, + { &hf_lte_rrc_maxRS_IndexCellQual_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MaxRS_IndexCellQualNR_r15 }, { &hf_lte_rrc_offsetFreq_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_OffsetRangeInterRAT }, { &hf_lte_rrc_blackCellsToRemoveList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellIndexList }, { &hf_lte_rrc_blackCellsToAddModList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellsToAddModListNR_r15 }, { &hf_lte_rrc_quantityConfigSet_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxQuantSetsNR_r15 }, { &hf_lte_rrc_cellsForWhichToReportSFTD_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxCellSFTD_OF_PhysCellIdNR_r15 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectNR_r15_eag_1 }, { NULL, 0, 0, NULL } }; @@ -14533,6 +16497,56 @@ dissect_lte_rrc_T_eventV2_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } + +static int +dissect_lte_rrc_INTEGER_0_300(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 300U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_1_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 16U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_eventH1_r15_sequence[] = { + { &hf_lte_rrc_h1_ThresholdOffset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_300 }, + { &hf_lte_rrc_h1_Hysteresis_15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_eventH1_r15(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_lte_rrc_T_eventH1_r15, T_eventH1_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_eventH2_r15_sequence[] = { + { &hf_lte_rrc_h2_ThresholdOffset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_300 }, + { &hf_lte_rrc_h2_Hysteresis_15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_eventH2_r15(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_lte_rrc_T_eventH2_r15, T_eventH2_r15_sequence); + + return offset; +} + + static const value_string lte_rrc_T_eventId_vals[] = { { 0, "eventA1" }, { 1, "eventA2" }, @@ -14544,6 +16558,8 @@ static const value_string lte_rrc_T_eventId_vals[] = { { 7, "eventC2-r12" }, { 8, "eventV1-r14" }, { 9, "eventV2-r14" }, + { 10, "eventH1-r15" }, + { 11, "eventH2-r15" }, { 0, NULL } }; @@ -14558,6 +16574,8 @@ static const per_choice_t T_eventId_choice[] = { { 7, &hf_lte_rrc_eventC2_r12 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_eventC2_r12 }, { 8, &hf_lte_rrc_eventV1_r14 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_eventV1_r14 }, { 9, &hf_lte_rrc_eventV2_r14 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_eventV2_r14 }, + { 10, &hf_lte_rrc_eventH1_r15 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_eventH1_r15 }, + { 11, &hf_lte_rrc_eventH2_r15 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_eventH2_r15 }, { 0, NULL, 0, NULL } }; @@ -14869,7 +16887,7 @@ static const value_string lte_rrc_T_alternativeTimeToTrigger_r12_vals[] = { static const per_choice_t T_alternativeTimeToTrigger_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_125 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_TimeToTrigger }, + { 1, &hf_lte_rrc_setup_168 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_TimeToTrigger }, { 0, NULL, 0, NULL } }; @@ -14901,7 +16919,7 @@ static const value_string lte_rrc_RSRQ_RangeConfig_r12_vals[] = { static const per_choice_t RSRQ_RangeConfig_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_127 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_RSRQ_Range_v1250 }, + { 1, &hf_lte_rrc_setup_170 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_RSRQ_Range_v1250 }, { 0, NULL, 0, NULL } }; @@ -14977,7 +16995,7 @@ dissect_lte_rrc_T_reportQuantity_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t T_setup_111_sequence[] = { +static const per_sequence_t T_setup_149_sequence[] = { { &hf_lte_rrc_triggerQuantity_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_triggerQuantity_v1310 }, { &hf_lte_rrc_aN_Threshold1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_Range_r13 }, { &hf_lte_rrc_a5_Threshold2_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_Range_r13 }, @@ -14986,9 +17004,9 @@ static const per_sequence_t T_setup_111_sequence[] = { }; static int -dissect_lte_rrc_T_setup_111(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_149(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_lte_rrc_T_setup_111, T_setup_111_sequence); + ett_lte_rrc_T_setup_149, T_setup_149_sequence); return offset; } @@ -15002,7 +17020,7 @@ static const value_string lte_rrc_T_rs_sinr_Config_r13_vals[] = { static const per_choice_t T_rs_sinr_Config_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_126 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_111 }, + { 1, &hf_lte_rrc_setup_169 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_149 }, { 0, NULL, 0, NULL } }; @@ -15085,15 +17103,15 @@ dissect_lte_rrc_T_delayThreshold_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } -static const per_sequence_t T_setup_112_sequence[] = { +static const per_sequence_t T_setup_150_sequence[] = { { &hf_lte_rrc_delayThreshold_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_delayThreshold_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_112(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_150(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_lte_rrc_T_setup_112, T_setup_112_sequence); + ett_lte_rrc_T_setup_150, T_setup_150_sequence); return offset; } @@ -15107,7 +17125,7 @@ static const value_string lte_rrc_UL_DelayConfig_r13_vals[] = { static const per_choice_t UL_DelayConfig_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_128 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_112 }, + { 1, &hf_lte_rrc_setup_171 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_150 }, { 0, NULL, 0, NULL } }; @@ -15206,6 +17224,140 @@ dissect_lte_rrc_ReportConfigEUTRA_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ } + +static int +dissect_lte_rrc_BT_Name_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 248, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t BT_NameList_r15_sequence_of[1] = { + { &hf_lte_rrc_BT_NameList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BT_Name_r15 }, +}; + +static int +dissect_lte_rrc_BT_NameList_r15(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_lte_rrc_BT_NameList_r15, BT_NameList_r15_sequence_of, + 1, maxBT_Name_r15, FALSE); + + return offset; +} + + +static const value_string lte_rrc_BT_NameListConfig_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t BT_NameListConfig_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_155 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BT_NameList_r15 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_BT_NameListConfig_r15(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_lte_rrc_BT_NameListConfig_r15, BT_NameListConfig_r15_choice, + NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_WLAN_Name_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 32, FALSE, NULL); + + return offset; +} + + +static const per_sequence_t WLAN_NameList_r15_sequence_of[1] = { + { &hf_lte_rrc_WLAN_NameList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Name_r15 }, +}; + +static int +dissect_lte_rrc_WLAN_NameList_r15(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_lte_rrc_WLAN_NameList_r15, WLAN_NameList_r15_sequence_of, + 1, maxWLAN_Name_r15, FALSE); + + return offset; +} + + +static const value_string lte_rrc_WLAN_NameListConfig_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t WLAN_NameListConfig_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_172 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_WLAN_NameList_r15 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_WLAN_NameListConfig_r15(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_lte_rrc_WLAN_NameListConfig_r15, WLAN_NameListConfig_r15_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_purpose_r15_vals[] = { + { 0, "sensing" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_purpose_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_2_maxCellReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 2U, maxCellReport, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t ReportConfigEUTRA_eag_8_sequence[] = { + { &hf_lte_rrc_includeBT_Meas_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BT_NameListConfig_r15 }, + { &hf_lte_rrc_includeWLAN_Meas_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_NameListConfig_r15 }, + { &hf_lte_rrc_purpose_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_purpose_r15 }, + { &hf_lte_rrc_numberOfTriggeringCells_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_maxCellReport }, + { &hf_lte_rrc_a4_a5_ReportOnLeave_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ReportConfigEUTRA_eag_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, ReportConfigEUTRA_eag_8_sequence); + + return offset; +} + + static const per_sequence_t ReportConfigEUTRA_sequence[] = { { &hf_lte_rrc_triggerType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_triggerType }, { &hf_lte_rrc_triggerQuantity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_triggerQuantity }, @@ -15220,6 +17372,7 @@ static const per_sequence_t ReportConfigEUTRA_sequence[] = { { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReportConfigEUTRA_eag_5 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReportConfigEUTRA_eag_6 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReportConfigEUTRA_eag_7 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReportConfigEUTRA_eag_8 }, { NULL, 0, 0, NULL } }; @@ -15679,7 +17832,7 @@ static const value_string lte_rrc_T_b2_Threshold1_v1250_vals[] = { static const per_choice_t T_b2_Threshold1_v1250_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_127 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_RSRQ_Range_v1250 }, + { 1, &hf_lte_rrc_setup_170 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_RSRQ_Range_v1250 }, { 0, NULL, 0, NULL } }; @@ -16476,15 +18629,15 @@ dissect_lte_rrc_T_gapOffset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const per_sequence_t T_setup_105_sequence[] = { +static const per_sequence_t T_setup_142_sequence[] = { { &hf_lte_rrc_gapOffset , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_gapOffset }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_105(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_142(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_lte_rrc_T_setup_105, T_setup_105_sequence); + ett_lte_rrc_T_setup_142, T_setup_142_sequence); return offset; } @@ -16498,7 +18651,7 @@ static const value_string lte_rrc_MeasGapConfig_vals[] = { static const per_choice_t MeasGapConfig_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_119 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_105 }, + { 1, &hf_lte_rrc_setup_160 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_142 }, { 0, NULL, 0, NULL } }; @@ -16605,16 +18758,6 @@ dissect_lte_rrc_T_t_HystNormal(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } - -static int -dissect_lte_rrc_INTEGER_1_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 16U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t MobilityStateParameters_sequence[] = { { &hf_lte_rrc_t_Evaluation, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t_Evaluation }, { &hf_lte_rrc_t_HystNormal, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t_HystNormal }, @@ -16683,16 +18826,16 @@ dissect_lte_rrc_SpeedStateScaleFactors(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t T_setup_103_sequence[] = { +static const per_sequence_t T_setup_140_sequence[] = { { &hf_lte_rrc_mobilityStateParameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityStateParameters }, { &hf_lte_rrc_timeToTrigger_SF, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SpeedStateScaleFactors }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_103(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_140(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_lte_rrc_T_setup_103, T_setup_103_sequence); + ett_lte_rrc_T_setup_140, T_setup_140_sequence); return offset; } @@ -16706,7 +18849,7 @@ static const value_string lte_rrc_T_speedStatePars_vals[] = { static const per_choice_t T_speedStatePars_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_116 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_103 }, + { 1, &hf_lte_rrc_setup_156 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_140 }, { 0, NULL, 0, NULL } }; @@ -16812,7 +18955,7 @@ static const value_string lte_rrc_T_measScaleFactor_r12_vals[] = { static const per_choice_t T_measScaleFactor_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_117 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_MeasScaleFactor_r12 }, + { 1, &hf_lte_rrc_setup_157 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_MeasScaleFactor_r12 }, { 0, NULL, 0, NULL } }; @@ -17090,16 +19233,16 @@ dissect_lte_rrc_MeasGapConfigToAddModList_r14(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t T_setup_106_sequence[] = { +static const per_sequence_t T_setup_144_sequence[] = { { &hf_lte_rrc_measGapConfigToRemoveList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasGapConfigToRemoveList_r14 }, { &hf_lte_rrc_measGapConfigToAddModList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasGapConfigToAddModList_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_106(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_144(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_lte_rrc_T_setup_106, T_setup_106_sequence); + ett_lte_rrc_T_setup_144, T_setup_144_sequence); return offset; } @@ -17113,7 +19256,7 @@ static const value_string lte_rrc_MeasGapConfigPerCC_List_r14_vals[] = { static const per_choice_t MeasGapConfigPerCC_List_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_120 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_106 }, + { 1, &hf_lte_rrc_setup_162 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_144 }, { 0, NULL, 0, NULL } }; @@ -17145,15 +19288,15 @@ dissect_lte_rrc_T_measGapSharingScheme_r14(tvbuff_t *tvb _U_, int offset _U_, as } -static const per_sequence_t T_setup_107_sequence[] = { +static const per_sequence_t T_setup_145_sequence[] = { { &hf_lte_rrc_measGapSharingScheme_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measGapSharingScheme_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_107(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_145(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_lte_rrc_T_setup_107, T_setup_107_sequence); + ett_lte_rrc_T_setup_145, T_setup_145_sequence); return offset; } @@ -17167,7 +19310,7 @@ static const value_string lte_rrc_MeasGapSharingConfig_r14_vals[] = { static const per_choice_t MeasGapSharingConfig_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_121 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_107 }, + { 1, &hf_lte_rrc_setup_163 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_145 }, { 0, NULL, 0, NULL } }; @@ -17209,6 +19352,148 @@ dissect_lte_rrc_MeasConfig_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } + +static int +dissect_lte_rrc_INTEGER_0_319(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 319U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_gapOffsetDensePRS_r15_vals[] = { + { 0, "rstd0-r15" }, + { 1, "rstd1-r15" }, + { 2, "rstd2-r15" }, + { 3, "rstd3-r15" }, + { 4, "rstd4-r15" }, + { 5, "rstd5-r15" }, + { 6, "rstd6-r15" }, + { 7, "rstd7-r15" }, + { 8, "rstd8-r15" }, + { 9, "rstd9-r15" }, + { 10, "rstd10-r15" }, + { 11, "rstd11-r15" }, + { 12, "rstd12-r15" }, + { 13, "rstd13-r15" }, + { 14, "rstd14-r15" }, + { 15, "rstd15-r15" }, + { 16, "rstd16-r15" }, + { 17, "rstd17-r15" }, + { 18, "rstd18-r15" }, + { 19, "rstd19-r15" }, + { 20, "rstd20-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_gapOffsetDensePRS_r15_choice[] = { + { 0, &hf_lte_rrc_rstd0_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_79 }, + { 1, &hf_lte_rrc_rstd1_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_159 }, + { 2, &hf_lte_rrc_rstd2_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_319 }, + { 3, &hf_lte_rrc_rstd3_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_639 }, + { 4, &hf_lte_rrc_rstd4_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_1279 }, + { 5, &hf_lte_rrc_rstd5_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_159 }, + { 6, &hf_lte_rrc_rstd6_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_319 }, + { 7, &hf_lte_rrc_rstd7_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_639 }, + { 8, &hf_lte_rrc_rstd8_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_1279 }, + { 9, &hf_lte_rrc_rstd9_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_319 }, + { 10, &hf_lte_rrc_rstd10_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_639 }, + { 11, &hf_lte_rrc_rstd11_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_1279 }, + { 12, &hf_lte_rrc_rstd12_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_319 }, + { 13, &hf_lte_rrc_rstd13_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_639 }, + { 14, &hf_lte_rrc_rstd14_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_1279 }, + { 15, &hf_lte_rrc_rstd15_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_639 }, + { 16, &hf_lte_rrc_rstd16_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_1279 }, + { 17, &hf_lte_rrc_rstd17_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_639 }, + { 18, &hf_lte_rrc_rstd18_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_1279 }, + { 19, &hf_lte_rrc_rstd19_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_639 }, + { 20, &hf_lte_rrc_rstd20_r15 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_INTEGER_0_1279 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_gapOffsetDensePRS_r15(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_lte_rrc_T_gapOffsetDensePRS_r15, T_gapOffsetDensePRS_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_setup_143_sequence[] = { + { &hf_lte_rrc_gapOffsetDensePRS_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_gapOffsetDensePRS_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_143(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_lte_rrc_T_setup_143, T_setup_143_sequence); + + return offset; +} + + +static const value_string lte_rrc_MeasGapConfigDensePRS_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t MeasGapConfigDensePRS_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_161 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_143 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasGapConfigDensePRS_r15(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_lte_rrc_MeasGapConfigDensePRS_r15, MeasGapConfigDensePRS_r15_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_heightThreshRef_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_heightThreshRef_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_158 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_31 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_heightThreshRef_r15(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_lte_rrc_T_heightThreshRef_r15, T_heightThreshRef_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MeasConfig_eag_7_sequence[] = { + { &hf_lte_rrc_measGapConfigDensePRS_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasGapConfigDensePRS_r15 }, + { &hf_lte_rrc_heightThreshRef_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_heightThreshRef_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasConfig_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasConfig_eag_7_sequence); + + return offset; +} + + static const per_sequence_t MeasConfig_sequence[] = { { &hf_lte_rrc_measObjectToRemoveList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasObjectToRemoveList }, { &hf_lte_rrc_measObjectToAddModList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasObjectToAddModList }, @@ -17227,6 +19512,7 @@ static const per_sequence_t MeasConfig_sequence[] = { { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasConfig_eag_4 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasConfig_eag_5 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasConfig_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasConfig_eag_7 }, { NULL, 0, 0, NULL } }; @@ -17805,16 +20091,6 @@ dissect_lte_rrc_T_bucketSizeDuration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } - -static int -dissect_lte_rrc_INTEGER_0_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 3U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t T_ul_SpecificParameters_sequence[] = { { &hf_lte_rrc_priority , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_priority }, { &hf_lte_rrc_prioritisedBitRate, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_prioritisedBitRate }, @@ -17909,11 +20185,145 @@ dissect_lte_rrc_LogicalChannelConfig_eag_3(tvbuff_t *tvb _U_, int offset _U_, as } +static const per_sequence_t T_setup_44_sequence[] = { + { &hf_lte_rrc_shortTTI_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_subframeTTI_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_44(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_lte_rrc_T_setup_44, T_setup_44_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_allowedTTI_Lengths_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_allowedTTI_Lengths_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_51 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_44 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_allowedTTI_Lengths_r15(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_lte_rrc_T_allowedTTI_Lengths_r15, T_allowedTTI_Lengths_r15_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_setup_45_vals[] = { + { 0, "spucch" }, + { 1, "pucch" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_setup_45(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logicalChannelSR_Restriction_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_logicalChannelSR_Restriction_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_52 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_45 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_logicalChannelSR_Restriction_r15(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_lte_rrc_T_logicalChannelSR_Restriction_r15, T_logicalChannelSR_Restriction_r15_choice, + NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_1_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 4U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_channellAccessPriority_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_channellAccessPriority_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_53 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_4 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_channellAccessPriority_r15(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_lte_rrc_T_channellAccessPriority_r15, T_channellAccessPriority_r15_choice, + NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_BIT_STRING_SIZE_maxServCell_r13(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, + maxServCell_r13, maxServCell_r13, FALSE, NULL, NULL); + + return offset; +} + + +static const per_sequence_t LogicalChannelConfig_eag_4_sequence[] = { + { &hf_lte_rrc_allowedTTI_Lengths_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_allowedTTI_Lengths_r15 }, + { &hf_lte_rrc_logicalChannelSR_Restriction_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logicalChannelSR_Restriction_r15 }, + { &hf_lte_rrc_channellAccessPriority_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_channellAccessPriority_r15 }, + { &hf_lte_rrc_lch_CellRestriction_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_maxServCell_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogicalChannelConfig_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogicalChannelConfig_eag_4_sequence); + + return offset; +} + + static const per_sequence_t LogicalChannelConfig_sequence[] = { { &hf_lte_rrc_ul_SpecificParameters, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_SpecificParameters }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogicalChannelConfig_eag_1 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogicalChannelConfig_eag_2 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogicalChannelConfig_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogicalChannelConfig_eag_4 }, { NULL, 0, 0, NULL } }; @@ -17963,8 +20373,448 @@ dissect_lte_rrc_T_pdcp_verChange_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const value_string lte_rrc_T_rlc_OutOfOrderDelivery_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rlc_OutOfOrderDelivery_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_setup_105_sequence[] = { + { &hf_lte_rrc_rlc_OutOfOrderDelivery_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rlc_OutOfOrderDelivery_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_105(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_lte_rrc_T_setup_105, T_setup_105_sequence); + + return offset; +} + + +static const value_string lte_rrc_RLC_Config_v1530_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t RLC_Config_v1530_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_120 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_105 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_RLC_Config_v1530(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_lte_rrc_RLC_Config_v1530, RLC_Config_v1530_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_PollPDU_r15_vals[] = { + { 0, "p4" }, + { 1, "p8" }, + { 2, "p16" }, + { 3, "p32" }, + { 4, "p64" }, + { 5, "p128" }, + { 6, "p256" }, + { 7, "p512" }, + { 8, "p1024" }, + { 9, "p2048-r15" }, + { 10, "p4096-r15" }, + { 11, "p6144-r15" }, + { 12, "p8192-r15" }, + { 13, "p12288-r15" }, + { 14, "p16384-r15" }, + { 15, "pInfinity" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_PollPDU_r15(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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_PollByte_r14_vals[] = { + { 0, "kB1" }, + { 1, "kB2" }, + { 2, "kB5" }, + { 3, "kB8" }, + { 4, "kB10" }, + { 5, "kB15" }, + { 6, "kB3500" }, + { 7, "kB4000" }, + { 8, "kB4500" }, + { 9, "kB5000" }, + { 10, "kB5500" }, + { 11, "kB6000" }, + { 12, "kB6500" }, + { 13, "kB7000" }, + { 14, "kB7500" }, + { 15, "kB8000" }, + { 16, "kB9000" }, + { 17, "kB10000" }, + { 18, "kB11000" }, + { 19, "kB12000" }, + { 20, "kB13000" }, + { 21, "kB14000" }, + { 22, "kB15000" }, + { 23, "kB16000" }, + { 24, "kB17000" }, + { 25, "kB18000" }, + { 26, "kB19000" }, + { 27, "kB20000" }, + { 28, "kB25000" }, + { 29, "kB30000" }, + { 30, "kB35000" }, + { 31, "kB40000" }, + { 0, NULL } +}; + +static value_string_ext lte_rrc_PollByte_r14_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_PollByte_r14_vals); + + +static int +dissect_lte_rrc_PollByte_r14(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, + 32, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_maxRetxThreshold_r15_vals[] = { + { 0, "t1" }, + { 1, "t2" }, + { 2, "t3" }, + { 3, "t4" }, + { 4, "t6" }, + { 5, "t8" }, + { 6, "t16" }, + { 7, "t32" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_maxRetxThreshold_r15(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t UL_AM_RLC_r15_sequence[] = { + { &hf_lte_rrc_t_PollRetransmit_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_PollRetransmit }, + { &hf_lte_rrc_pollPDU_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PollPDU_r15 }, + { &hf_lte_rrc_pollByte_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PollByte_r14 }, + { &hf_lte_rrc_maxRetxThreshold_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_maxRetxThreshold_r15 }, + { &hf_lte_rrc_extended_RLC_LI_Field_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UL_AM_RLC_r15(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_lte_rrc_UL_AM_RLC_r15, UL_AM_RLC_r15_sequence); + + return offset; +} + + +static const per_sequence_t DL_AM_RLC_r15_sequence[] = { + { &hf_lte_rrc_t_Reordering_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reordering }, + { &hf_lte_rrc_t_StatusProhibit_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_StatusProhibit }, + { &hf_lte_rrc_extended_RLC_LI_Field_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_DL_AM_RLC_r15(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_lte_rrc_DL_AM_RLC_r15, DL_AM_RLC_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_am_r15_sequence[] = { + { &hf_lte_rrc_ul_AM_RLC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_AM_RLC_r15 }, + { &hf_lte_rrc_dl_AM_RLC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_AM_RLC_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_am_r15(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_lte_rrc_T_am_r15, T_am_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_SN_FieldLength_r15_vals[] = { + { 0, "size5" }, + { 1, "size10" }, + { 2, "size16-r15" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_SN_FieldLength_r15(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t DL_UM_RLC_r15_sequence[] = { + { &hf_lte_rrc_sn_FieldLength_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SN_FieldLength_r15 }, + { &hf_lte_rrc_t_Reordering_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reordering }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_DL_UM_RLC_r15(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_lte_rrc_DL_UM_RLC_r15, DL_UM_RLC_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_um_Bi_Directional_r15_sequence[] = { + { &hf_lte_rrc_ul_UM_RLC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_UM_RLC }, + { &hf_lte_rrc_dl_UM_RLC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_UM_RLC_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_um_Bi_Directional_r15(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_lte_rrc_T_um_Bi_Directional_r15, T_um_Bi_Directional_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_um_Uni_Directional_UL_r15_sequence[] = { + { &hf_lte_rrc_ul_UM_RLC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_UM_RLC }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_um_Uni_Directional_UL_r15(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_lte_rrc_T_um_Uni_Directional_UL_r15, T_um_Uni_Directional_UL_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_um_Uni_Directional_DL_r15_sequence[] = { + { &hf_lte_rrc_dl_UM_RLC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_UM_RLC_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_um_Uni_Directional_DL_r15(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_lte_rrc_T_um_Uni_Directional_DL_r15, T_um_Uni_Directional_DL_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_mode_r15_vals[] = { + { 0, "am-r15" }, + { 1, "um-Bi-Directional-r15" }, + { 2, "um-Uni-Directional-UL-r15" }, + { 3, "um-Uni-Directional-DL-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_mode_r15_choice[] = { + { 0, &hf_lte_rrc_am_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_am_r15 }, + { 1, &hf_lte_rrc_um_Bi_Directional_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_um_Bi_Directional_r15 }, + { 2, &hf_lte_rrc_um_Uni_Directional_UL_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_um_Uni_Directional_UL_r15 }, + { 3, &hf_lte_rrc_um_Uni_Directional_DL_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_um_Uni_Directional_DL_r15 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_mode_r15(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_lte_rrc_T_mode_r15, T_mode_r15_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_reestablishRLC_r15_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_reestablishRLC_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_rlc_OutOfOrderDelivery_r15_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rlc_OutOfOrderDelivery_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t RLC_Config_r15_sequence[] = { + { &hf_lte_rrc_mode_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mode_r15 }, + { &hf_lte_rrc_reestablishRLC_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_reestablishRLC_r15_01 }, + { &hf_lte_rrc_rlc_OutOfOrderDelivery_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rlc_OutOfOrderDelivery_r15_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RLC_Config_r15(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_lte_rrc_RLC_Config_r15, RLC_Config_r15_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_1_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 10U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_32_38(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 32U, 38U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_logicalChannelIdentityConfig_r15_vals[] = { + { 0, "logicalChannelIdentity-r15" }, + { 1, "logicalChannelIdentityExt-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_logicalChannelIdentityConfig_r15_choice[] = { + { 0, &hf_lte_rrc_logicalChannelIdentity_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_10 }, + { 1, &hf_lte_rrc_logicalChannelIdentityExt_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_32_38 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_logicalChannelIdentityConfig_r15(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_lte_rrc_T_logicalChannelIdentityConfig_r15, T_logicalChannelIdentityConfig_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_setup_102_sequence[] = { + { &hf_lte_rrc_rlc_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_r15 }, + { &hf_lte_rrc_logicalChannelIdentityConfig_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_logicalChannelIdentityConfig_r15 }, + { &hf_lte_rrc_logicalChannelConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogicalChannelConfig }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_102(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_lte_rrc_T_setup_102, T_setup_102_sequence); + + return offset; +} + + +static const value_string lte_rrc_RLC_BearerConfig_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t RLC_BearerConfig_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_117 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_102 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_RLC_BearerConfig_r15(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_lte_rrc_RLC_BearerConfig_r15, RLC_BearerConfig_r15_choice, + NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 4U, 4U, NULL, FALSE); + + return offset; +} + + static const per_sequence_t SRB_ToAddMod_eag_1_sequence[] = { { &hf_lte_rrc_pdcp_verChange_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcp_verChange_r15 }, + { &hf_lte_rrc_rlc_Config_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_v1530 }, + { &hf_lte_rrc_rlc_BearerConfigDupl_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_BearerConfig_r15 }, + { &hf_lte_rrc_srb_Identity_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_4 }, { NULL, 0, 0, NULL } }; @@ -18292,7 +21142,7 @@ dissect_lte_rrc_PDCP_Config_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const value_string lte_rrc_T_setup_45_vals[] = { +static const value_string lte_rrc_T_setup_59_vals[] = { { 0, "b0" }, { 1, "b100" }, { 2, "b200" }, @@ -18314,7 +21164,7 @@ static const value_string lte_rrc_T_setup_45_vals[] = { static int -dissect_lte_rrc_T_setup_45(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_59(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, 16, NULL, FALSE, 0, NULL); @@ -18330,7 +21180,7 @@ static const value_string lte_rrc_T_ul_DataSplitThreshold_r13_vals[] = { static const per_choice_t T_ul_DataSplitThreshold_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_53 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_45 }, + { 1, &hf_lte_rrc_setup_68 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_59 }, { 0, NULL, 0, NULL } }; @@ -18482,7 +21332,7 @@ dissect_lte_rrc_T_statusPDU_Periodicity_Offset_r13(tvbuff_t *tvb _U_, int offset } -static const per_sequence_t T_setup_46_sequence[] = { +static const per_sequence_t T_setup_60_sequence[] = { { &hf_lte_rrc_statusPDU_TypeForPolling_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_statusPDU_TypeForPolling_r13 }, { &hf_lte_rrc_statusPDU_Periodicity_Type1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_statusPDU_Periodicity_Type1_r13 }, { &hf_lte_rrc_statusPDU_Periodicity_Type2_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_statusPDU_Periodicity_Type2_r13 }, @@ -18491,9 +21341,9 @@ static const per_sequence_t T_setup_46_sequence[] = { }; static int -dissect_lte_rrc_T_setup_46(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_60(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_lte_rrc_T_setup_46, T_setup_46_sequence); + ett_lte_rrc_T_setup_60, T_setup_60_sequence); return offset; } @@ -18507,7 +21357,7 @@ static const value_string lte_rrc_T_statusFeedback_r13_vals[] = { static const per_choice_t T_statusFeedback_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_54 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_46 }, + { 1, &hf_lte_rrc_setup_69 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_60 }, { 0, NULL, 0, NULL } }; @@ -18565,16 +21415,16 @@ dissect_lte_rrc_T_ul_LWA_DataSplitThreshold_r14(tvbuff_t *tvb _U_, int offset _U } -static const per_sequence_t T_setup_47_sequence[] = { +static const per_sequence_t T_setup_61_sequence[] = { { &hf_lte_rrc_ul_LWA_DRB_ViaWLAN_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, { &hf_lte_rrc_ul_LWA_DataSplitThreshold_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_LWA_DataSplitThreshold_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_47(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_61(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_lte_rrc_T_setup_47, T_setup_47_sequence); + ett_lte_rrc_T_setup_61, T_setup_61_sequence); return offset; } @@ -18588,7 +21438,7 @@ static const value_string lte_rrc_T_ul_LWA_Config_r14_vals[] = { static const per_choice_t T_ul_LWA_Config_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_55 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_47 }, + { 1, &hf_lte_rrc_setup_70 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_61 }, { 0, NULL, 0, NULL } }; @@ -18667,6 +21517,121 @@ dissect_lte_rrc_PDCP_Config_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const value_string lte_rrc_T_bufferSize_r15_vals[] = { + { 0, "kbyte2" }, + { 1, "kbyte4" }, + { 2, "kbyte8" }, + { 3, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_bufferSize_r15(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 lte_rrc_T_dictionary_r15_vals[] = { + { 0, "sip-SDP" }, + { 1, "operator" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_dictionary_r15(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_uplinkDataCompression_r15_sequence[] = { + { &hf_lte_rrc_bufferSize_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_bufferSize_r15 }, + { &hf_lte_rrc_dictionary_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dictionary_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_uplinkDataCompression_r15(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_lte_rrc_T_uplinkDataCompression_r15, T_uplinkDataCompression_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_pdcp_Duplication_r15_vals[] = { + { 0, "configured" }, + { 1, "activated" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_pdcp_Duplication_r15(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_setup_62_sequence[] = { + { &hf_lte_rrc_pdcp_Duplication_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pdcp_Duplication_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_62(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_lte_rrc_T_setup_62, T_setup_62_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_pdcp_DuplicationConfig_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_pdcp_DuplicationConfig_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_71 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_62 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_pdcp_DuplicationConfig_r15(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_lte_rrc_T_pdcp_DuplicationConfig_r15, T_pdcp_DuplicationConfig_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t PDCP_Config_eag_6_sequence[] = { + { &hf_lte_rrc_uplinkDataCompression_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_uplinkDataCompression_r15 }, + { &hf_lte_rrc_pdcp_DuplicationConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcp_DuplicationConfig_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PDCP_Config_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PDCP_Config_eag_6_sequence); + + return offset; +} + + static const per_sequence_t PDCP_Config_sequence[] = { { &hf_lte_rrc_discardTimer, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_discardTimer }, { &hf_lte_rrc_rlc_AM , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rlc_AM }, @@ -18677,6 +21642,7 @@ static const per_sequence_t PDCP_Config_sequence[] = { { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCP_Config_eag_3 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCP_Config_eag_4 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCP_Config_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCP_Config_eag_6 }, { NULL, 0, 0, NULL } }; @@ -18886,63 +21852,15 @@ dissect_lte_rrc_DRB_ToAddMod_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const value_string lte_rrc_PollByte_r14_vals[] = { - { 0, "kB1" }, - { 1, "kB2" }, - { 2, "kB5" }, - { 3, "kB8" }, - { 4, "kB10" }, - { 5, "kB15" }, - { 6, "kB3500" }, - { 7, "kB4000" }, - { 8, "kB4500" }, - { 9, "kB5000" }, - { 10, "kB5500" }, - { 11, "kB6000" }, - { 12, "kB6500" }, - { 13, "kB7000" }, - { 14, "kB7500" }, - { 15, "kB8000" }, - { 16, "kB9000" }, - { 17, "kB10000" }, - { 18, "kB11000" }, - { 19, "kB12000" }, - { 20, "kB13000" }, - { 21, "kB14000" }, - { 22, "kB15000" }, - { 23, "kB16000" }, - { 24, "kB17000" }, - { 25, "kB18000" }, - { 26, "kB19000" }, - { 27, "kB20000" }, - { 28, "kB25000" }, - { 29, "kB30000" }, - { 30, "kB35000" }, - { 31, "kB40000" }, - { 0, NULL } -}; - -static value_string_ext lte_rrc_PollByte_r14_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_PollByte_r14_vals); - - -static int -dissect_lte_rrc_PollByte_r14(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, - 32, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const per_sequence_t T_setup_78_sequence[] = { +static const per_sequence_t T_setup_104_sequence[] = { { &hf_lte_rrc_pollByte_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PollByte_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_78(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_104(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_lte_rrc_T_setup_78, T_setup_78_sequence); + ett_lte_rrc_T_setup_104, T_setup_104_sequence); return offset; } @@ -18956,7 +21874,7 @@ static const value_string lte_rrc_RLC_Config_v1430_vals[] = { static const per_choice_t RLC_Config_v1430_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_91 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_78 }, + { 1, &hf_lte_rrc_setup_119 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_104 }, { 0, NULL, 0, NULL } }; @@ -19046,6 +21964,21 @@ dissect_lte_rrc_DRB_ToAddMod_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const per_sequence_t DRB_ToAddMod_eag_5_sequence[] = { + { &hf_lte_rrc_rlc_Config_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_v1530 }, + { &hf_lte_rrc_rlc_BearerConfigDupl_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_BearerConfig_r15 }, + { &hf_lte_rrc_logicalChannelIdentity_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_32_38 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_DRB_ToAddMod_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DRB_ToAddMod_eag_5_sequence); + + return offset; +} + + static const per_sequence_t DRB_ToAddMod_sequence[] = { { &hf_lte_rrc_eps_BearerIdentity, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, { &hf_lte_rrc_drb_Identity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, @@ -19057,6 +21990,7 @@ static const per_sequence_t DRB_ToAddMod_sequence[] = { { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddMod_eag_2 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddMod_eag_3 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddMod_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddMod_eag_5 }, { NULL, 0, 0, NULL } }; @@ -19728,7 +22662,7 @@ dissect_lte_rrc_T_shortDRX(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } -static const per_sequence_t T_setup_42_sequence[] = { +static const per_sequence_t T_setup_56_sequence[] = { { &hf_lte_rrc_onDurationTimer, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_onDurationTimer }, { &hf_lte_rrc_drx_InactivityTimer, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_InactivityTimer }, { &hf_lte_rrc_drx_RetransmissionTimer, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_RetransmissionTimer }, @@ -19738,9 +22672,9 @@ static const per_sequence_t T_setup_42_sequence[] = { }; static int -dissect_lte_rrc_T_setup_42(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_56(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_lte_rrc_T_setup_42, T_setup_42_sequence); + ett_lte_rrc_T_setup_56, T_setup_56_sequence); return offset; } @@ -19754,7 +22688,7 @@ static const value_string lte_rrc_DRX_Config_vals[] = { static const per_choice_t DRX_Config_choice[] = { { 0, &hf_lte_rrc_release_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_release }, - { 1, &hf_lte_rrc_setup_50 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_42 }, + { 1, &hf_lte_rrc_setup_65 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_56 }, { 0, NULL, 0, NULL } }; @@ -19852,7 +22786,7 @@ dissect_lte_rrc_T_dl_PathlossChange(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const per_sequence_t T_setup_36_sequence[] = { +static const per_sequence_t T_setup_48_sequence[] = { { &hf_lte_rrc_periodicPHR_Timer, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_periodicPHR_Timer }, { &hf_lte_rrc_prohibitPHR_Timer, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_prohibitPHR_Timer }, { &hf_lte_rrc_dl_PathlossChange, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_PathlossChange }, @@ -19860,9 +22794,9 @@ static const per_sequence_t T_setup_36_sequence[] = { }; static int -dissect_lte_rrc_T_setup_36(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_48(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_lte_rrc_T_setup_36, T_setup_36_sequence); + ett_lte_rrc_T_setup_48, T_setup_48_sequence); return offset; } @@ -19876,7 +22810,7 @@ static const value_string lte_rrc_T_phr_Config_vals[] = { static const per_choice_t T_phr_Config_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_43 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_36 }, + { 1, &hf_lte_rrc_setup_56 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_48 }, { 0, NULL, 0, NULL } }; @@ -20205,15 +23139,15 @@ dissect_lte_rrc_T_phr_ModeOtherCG_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const per_sequence_t T_setup_37_sequence[] = { +static const per_sequence_t T_setup_49_sequence[] = { { &hf_lte_rrc_phr_ModeOtherCG_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_phr_ModeOtherCG_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_37(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_49(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_lte_rrc_T_setup_37, T_setup_37_sequence); + ett_lte_rrc_T_setup_49, T_setup_49_sequence); return offset; } @@ -20227,7 +23161,7 @@ static const value_string lte_rrc_T_dualConnectivityPHR_vals[] = { static const per_choice_t T_dualConnectivityPHR_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_44 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_37 }, + { 1, &hf_lte_rrc_setup_57 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_49 }, { 0, NULL, 0, NULL } }; @@ -20263,15 +23197,15 @@ dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r12(tvbuff_t *tvb _U_, int offs } -static const per_sequence_t T_setup_38_sequence[] = { +static const per_sequence_t T_setup_50_sequence[] = { { &hf_lte_rrc_logicalChannelSR_ProhibitTimer_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_38(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_50(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_lte_rrc_T_setup_38, T_setup_38_sequence); + ett_lte_rrc_T_setup_50, T_setup_50_sequence); return offset; } @@ -20285,7 +23219,7 @@ static const value_string lte_rrc_T_logicalChannelSR_Config_r12_vals[] = { static const per_choice_t T_logicalChannelSR_Config_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_45 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_38 }, + { 1, &hf_lte_rrc_setup_58 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_50 }, { 0, NULL, 0, NULL } }; @@ -20371,22 +23305,22 @@ dissect_lte_rrc_INTEGER_0_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const value_string lte_rrc_T_setup_39_vals[] = { +static const value_string lte_rrc_T_setup_51_vals[] = { { 0, "sf5120" }, { 1, "sf10240" }, { 0, NULL } }; -static const per_choice_t T_setup_39_choice[] = { +static const per_choice_t T_setup_51_choice[] = { { 0, &hf_lte_rrc_sf5120 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1 }, { 1, &hf_lte_rrc_sf10240 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_3 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_setup_39(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_51(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_lte_rrc_T_setup_39, T_setup_39_choice, + ett_lte_rrc_T_setup_51, T_setup_51_choice, NULL); return offset; @@ -20401,7 +23335,7 @@ static const value_string lte_rrc_T_eDRX_Config_CycleStartOffset_r13_vals[] = { static const per_choice_t T_eDRX_Config_CycleStartOffset_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_46 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_39 }, + { 1, &hf_lte_rrc_setup_59 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_51 }, { 0, NULL, 0, NULL } }; @@ -20531,7 +23465,7 @@ static const value_string lte_rrc_T_drx_Config_r13_vals[] = { static const per_choice_t T_drx_Config_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_47 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_DRX_Config_r13 }, + { 1, &hf_lte_rrc_setup_60 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_DRX_Config_r13 }, { 0, NULL, 0, NULL } }; @@ -20588,16 +23522,16 @@ dissect_lte_rrc_T_skipUplinkTxDynamic_r14(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t T_setup_40_sequence[] = { +static const per_sequence_t T_setup_52_sequence[] = { { &hf_lte_rrc_skipUplinkTxSPS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipUplinkTxSPS_r14 }, { &hf_lte_rrc_skipUplinkTxDynamic_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipUplinkTxDynamic_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_52(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_lte_rrc_T_setup_40, T_setup_40_sequence); + ett_lte_rrc_T_setup_52, T_setup_52_sequence); return offset; } @@ -20611,7 +23545,7 @@ static const value_string lte_rrc_T_skipUplinkTx_r14_vals[] = { static const per_choice_t T_skipUplinkTx_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_48 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_40 }, + { 1, &hf_lte_rrc_setup_61 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_52 }, { 0, NULL, 0, NULL } }; @@ -20655,15 +23589,15 @@ dissect_lte_rrc_DataInactivityTimer_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const per_sequence_t T_setup_41_sequence[] = { +static const per_sequence_t T_setup_53_sequence[] = { { &hf_lte_rrc_dataInactivityTimer_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DataInactivityTimer_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_41(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_53(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_lte_rrc_T_setup_41, T_setup_41_sequence); + ett_lte_rrc_T_setup_53, T_setup_53_sequence); return offset; } @@ -20677,7 +23611,7 @@ static const value_string lte_rrc_T_dataInactivityTimerConfig_r14_vals[] = { static const per_choice_t T_dataInactivityTimerConfig_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_49 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_41 }, + { 1, &hf_lte_rrc_setup_62 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_53 }, { 0, NULL, 0, NULL } }; @@ -20733,6 +23667,277 @@ dissect_lte_rrc_MAC_MainConfig_eag_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } +static const value_string lte_rrc_T_drx_RetransmissionTimerShortTTI_r15_vals[] = { + { 0, "tti10" }, + { 1, "tti20" }, + { 2, "tti40" }, + { 3, "tti64" }, + { 4, "tti80" }, + { 5, "tti96" }, + { 6, "tti112" }, + { 7, "tti128" }, + { 8, "tti160" }, + { 9, "tti320" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_drx_RetransmissionTimerShortTTI_r15(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, + 10, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_drx_UL_RetransmissionTimerShortTTI_r15_vals[] = { + { 0, "tti0" }, + { 1, "tti1" }, + { 2, "tti2" }, + { 3, "tti4" }, + { 4, "tti6" }, + { 5, "tti8" }, + { 6, "tti16" }, + { 7, "tti24" }, + { 8, "tti33" }, + { 9, "tti40" }, + { 10, "tti64" }, + { 11, "tti80" }, + { 12, "tti96" }, + { 13, "tti112" }, + { 14, "tti128" }, + { 15, "tti160" }, + { 16, "tti320" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_drx_UL_RetransmissionTimerShortTTI_r15(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, + 17, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t DRX_Config_r15_sequence[] = { + { &hf_lte_rrc_drx_RetransmissionTimerShortTTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drx_RetransmissionTimerShortTTI_r15 }, + { &hf_lte_rrc_drx_UL_RetransmissionTimerShortTTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drx_UL_RetransmissionTimerShortTTI_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_DRX_Config_r15(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_lte_rrc_DRX_Config_r15, DRX_Config_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_periodicBSR_Timer_r15_vals[] = { + { 0, "sf1" }, + { 1, "sf5" }, + { 2, "sf10" }, + { 3, "sf16" }, + { 4, "sf20" }, + { 5, "sf32" }, + { 6, "sf40" }, + { 7, "sf64" }, + { 8, "sf80" }, + { 9, "sf128" }, + { 10, "sf160" }, + { 11, "sf320" }, + { 12, "sf640" }, + { 13, "sf1280" }, + { 14, "sf2560" }, + { 15, "infinity" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_periodicBSR_Timer_r15(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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_proc_Timeline_r15_vals[] = { + { 0, "nplus4set1" }, + { 1, "nplus6set1" }, + { 2, "nplus6set2" }, + { 3, "nplus8set2" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_proc_Timeline_r15(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 int +dissect_lte_rrc_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_setup_54_sequence[] = { + { &hf_lte_rrc_drx_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRX_Config_r15 }, + { &hf_lte_rrc_periodicBSR_Timer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_periodicBSR_Timer_r15 }, + { &hf_lte_rrc_proc_Timeline_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_proc_Timeline_r15 }, + { &hf_lte_rrc_ssr_ProhibitTimer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_7 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_54(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_lte_rrc_T_setup_54, T_setup_54_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_shortTTI_AndSPT_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_shortTTI_AndSPT_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_63 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_54 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_shortTTI_AndSPT_r15(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_lte_rrc_T_shortTTI_AndSPT_r15, T_shortTTI_AndSPT_r15_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_sCellHibernationTimer_r15_vals[] = { + { 0, "rf2" }, + { 1, "rf4" }, + { 2, "rf8" }, + { 3, "rf16" }, + { 4, "rf32" }, + { 5, "rf64" }, + { 6, "rf128" }, + { 7, "spare" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_sCellHibernationTimer_r15(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_dormantSCellDeactivationTimer_r15_vals[] = { + { 0, "rf2" }, + { 1, "rf4" }, + { 2, "rf8" }, + { 3, "rf16" }, + { 4, "rf32" }, + { 5, "rf64" }, + { 6, "rf128" }, + { 7, "rf320" }, + { 8, "rf640" }, + { 9, "rf1280" }, + { 10, "rf2560" }, + { 11, "rf5120" }, + { 12, "rf10240" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_dormantSCellDeactivationTimer_r15(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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_setup_55_sequence[] = { + { &hf_lte_rrc_sCellHibernationTimer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sCellHibernationTimer_r15 }, + { &hf_lte_rrc_dormantSCellDeactivationTimer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dormantSCellDeactivationTimer_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_55(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_lte_rrc_T_setup_55, T_setup_55_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_dormantStateTimers_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_dormantStateTimers_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_64 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_55 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_dormantStateTimers_r15(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_lte_rrc_T_dormantStateTimers_r15, T_dormantStateTimers_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MAC_MainConfig_eag_9_sequence[] = { + { &hf_lte_rrc_shortTTI_AndSPT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_shortTTI_AndSPT_r15 }, + { &hf_lte_rrc_mpdcch_UL_HARQ_ACK_FeedbackConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_dormantStateTimers_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dormantStateTimers_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MAC_MainConfig_eag_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MAC_MainConfig_eag_9_sequence); + + return offset; +} + + static const per_sequence_t MAC_MainConfig_sequence[] = { { &hf_lte_rrc_ul_SCH_Config, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_SCH_Config }, { &hf_lte_rrc_drx_Config , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRX_Config }, @@ -20746,6 +23951,7 @@ static const per_sequence_t MAC_MainConfig_sequence[] = { { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfig_eag_6 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfig_eag_7 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfig_eag_8 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfig_eag_9 }, { NULL, 0, 0, NULL } }; @@ -20867,15 +24073,15 @@ dissect_lte_rrc_N1PUCCH_AN_PersistentList(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t T_setup_96_sequence[] = { +static const per_sequence_t T_setup_128_sequence[] = { { &hf_lte_rrc_n1PUCCH_AN_PersistentListP1_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_N1PUCCH_AN_PersistentList }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_96(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_128(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_lte_rrc_T_setup_96, T_setup_96_sequence); + ett_lte_rrc_T_setup_128, T_setup_128_sequence); return offset; } @@ -20889,7 +24095,7 @@ static const value_string lte_rrc_T_twoAntennaPortActivated_r10_vals[] = { static const per_choice_t T_twoAntennaPortActivated_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_109 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_96 }, + { 1, &hf_lte_rrc_setup_143 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_128 }, { 0, NULL, 0, NULL } }; @@ -20916,7 +24122,7 @@ dissect_lte_rrc_T_eag_1_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } -static const per_sequence_t T_setup_95_sequence[] = { +static const per_sequence_t T_setup_127_sequence[] = { { &hf_lte_rrc_semiPersistSchedIntervalDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_semiPersistSchedIntervalDL }, { &hf_lte_rrc_numberOfConfSPS_Processes, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_8 }, { &hf_lte_rrc_n1PUCCH_AN_PersistentList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_N1PUCCH_AN_PersistentList }, @@ -20925,9 +24131,9 @@ static const per_sequence_t T_setup_95_sequence[] = { }; static int -dissect_lte_rrc_T_setup_95(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_127(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_lte_rrc_T_setup_95, T_setup_95_sequence); + ett_lte_rrc_T_setup_127, T_setup_127_sequence); return offset; } @@ -20941,7 +24147,7 @@ static const value_string lte_rrc_SPS_ConfigDL_vals[] = { static const per_choice_t SPS_ConfigDL_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_108 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_95 }, + { 1, &hf_lte_rrc_setup_142 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_127 }, { 0, NULL, 0, NULL } }; @@ -21053,16 +24259,16 @@ dissect_lte_rrc_T_twoIntervalsConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } -static const per_sequence_t T_setup_98_sequence[] = { +static const per_sequence_t T_setup_130_sequence[] = { { &hf_lte_rrc_p0_NominalPUSCH_PersistentSubframeSet2_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, { &hf_lte_rrc_p0_UE_PUSCH_PersistentSubframeSet2_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_98(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_130(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_lte_rrc_T_setup_98, T_setup_98_sequence); + ett_lte_rrc_T_setup_130, T_setup_130_sequence); return offset; } @@ -21076,7 +24282,7 @@ static const value_string lte_rrc_T_p0_PersistentSubframeSet2_r12_vals[] = { static const per_choice_t T_p0_PersistentSubframeSet2_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_111 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_98 }, + { 1, &hf_lte_rrc_setup_145 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_130 }, { 0, NULL, 0, NULL } }; @@ -21186,7 +24392,181 @@ dissect_lte_rrc_T_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } -static const per_sequence_t T_setup_97_sequence[] = { +static const value_string lte_rrc_T_cyclicShiftSPS_r15_vals[] = { + { 0, "cs0" }, + { 1, "cs1" }, + { 2, "cs2" }, + { 3, "cs3" }, + { 4, "cs4" }, + { 5, "cs5" }, + { 6, "cs6" }, + { 7, "cs7" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_cyclicShiftSPS_r15(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_rv_SPS_UL_Repetitions_r15_vals[] = { + { 0, "ulrvseq1" }, + { 1, "ulrvseq2" }, + { 2, "ulrvseq3" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rv_SPS_UL_Repetitions_r15(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, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_BIT_STRING_SIZE_16(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, + 16, 16, FALSE, NULL, NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_1_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 15U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_1_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 31U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_TPC_Index_vals[] = { + { 0, "indexOfFormat3" }, + { 1, "indexOfFormat3A" }, + { 0, NULL } +}; + +static const per_choice_t TPC_Index_choice[] = { + { 0, &hf_lte_rrc_indexOfFormat3, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_15 }, + { 1, &hf_lte_rrc_indexOfFormat3A, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_31 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_TPC_Index(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_lte_rrc_TPC_Index, TPC_Index_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_setup_136_sequence[] = { + { &hf_lte_rrc_tpc_RNTI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { &hf_lte_rrc_tpc_Index , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TPC_Index }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_136(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_lte_rrc_T_setup_136, T_setup_136_sequence); + + return offset; +} + + +static const value_string lte_rrc_TPC_PDCCH_Config_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t TPC_PDCCH_Config_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_151 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_136 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_TPC_PDCCH_Config(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_lte_rrc_TPC_PDCCH_Config, TPC_PDCCH_Config_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_totalNumberPUSCH_SPS_UL_Repetitions_r15_vals[] = { + { 0, "n2" }, + { 1, "n3" }, + { 2, "n4" }, + { 3, "n6" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_totalNumberPUSCH_SPS_UL_Repetitions_r15(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 int +dissect_lte_rrc_SPS_ConfigIndex_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxConfigSPS_r15, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_eag_4_sequence[] = { + { &hf_lte_rrc_cyclicShiftSPS_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cyclicShiftSPS_r15 }, + { &hf_lte_rrc_harq_ProcID_Offset_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_rv_SPS_UL_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rv_SPS_UL_Repetitions_r15 }, + { &hf_lte_rrc_tpc_PDCCH_ConfigPUSCH_SPS_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TPC_PDCCH_Config }, + { &hf_lte_rrc_totalNumberPUSCH_SPS_UL_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_totalNumberPUSCH_SPS_UL_Repetitions_r15 }, + { &hf_lte_rrc_sps_ConfigIndex_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigIndex_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_4_sequence); + + return offset; +} + + +static const per_sequence_t T_setup_129_sequence[] = { { &hf_lte_rrc_semiPersistSchedIntervalUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_semiPersistSchedIntervalUL }, { &hf_lte_rrc_implicitReleaseAfter, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_implicitReleaseAfter }, { &hf_lte_rrc_p0_Persistent, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_p0_Persistent }, @@ -21194,13 +24574,14 @@ static const per_sequence_t T_setup_97_sequence[] = { { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_1_02 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_2 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_4 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_97(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_129(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_lte_rrc_T_setup_97, T_setup_97_sequence); + ett_lte_rrc_T_setup_129, T_setup_129_sequence); return offset; } @@ -21214,7 +24595,7 @@ static const value_string lte_rrc_SPS_ConfigUL_vals[] = { static const per_choice_t SPS_ConfigUL_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_110 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_97 }, + { 1, &hf_lte_rrc_setup_144 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_129 }, { 0, NULL, 0, NULL } }; @@ -21298,16 +24679,16 @@ dissect_lte_rrc_T_repetitionFactor(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t T_setup_57_sequence[] = { +static const per_sequence_t T_setup_78_sequence[] = { { &hf_lte_rrc_repetitionFactor, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_repetitionFactor }, { &hf_lte_rrc_n1PUCCH_AN_Rep, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_57(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_78(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_lte_rrc_T_setup_57, T_setup_57_sequence); + ett_lte_rrc_T_setup_78, T_setup_78_sequence); return offset; } @@ -21321,7 +24702,7 @@ static const value_string lte_rrc_T_ackNackRepetition_vals[] = { static const per_choice_t T_ackNackRepetition_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_66 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_57 }, + { 1, &hf_lte_rrc_setup_88 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_78 }, { 0, NULL, 0, NULL } }; @@ -21417,95 +24798,6 @@ dissect_lte_rrc_UplinkPowerControlDedicated(tvbuff_t *tvb _U_, int offset _U_, a } - -static int -dissect_lte_rrc_BIT_STRING_SIZE_16(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, - 16, 16, FALSE, NULL, NULL); - - return offset; -} - - - -static int -dissect_lte_rrc_INTEGER_1_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 15U, NULL, FALSE); - - return offset; -} - - - -static int -dissect_lte_rrc_INTEGER_1_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 31U, NULL, FALSE); - - return offset; -} - - -static const value_string lte_rrc_TPC_Index_vals[] = { - { 0, "indexOfFormat3" }, - { 1, "indexOfFormat3A" }, - { 0, NULL } -}; - -static const per_choice_t TPC_Index_choice[] = { - { 0, &hf_lte_rrc_indexOfFormat3, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_15 }, - { 1, &hf_lte_rrc_indexOfFormat3A, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_31 }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_lte_rrc_TPC_Index(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_lte_rrc_TPC_Index, TPC_Index_choice, - NULL); - - return offset; -} - - -static const per_sequence_t T_setup_100_sequence[] = { - { &hf_lte_rrc_tpc_RNTI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { &hf_lte_rrc_tpc_Index , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TPC_Index }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_T_setup_100(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_lte_rrc_T_setup_100, T_setup_100_sequence); - - return offset; -} - - -static const value_string lte_rrc_TPC_PDCCH_Config_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t TPC_PDCCH_Config_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_113 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_100 }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_lte_rrc_TPC_PDCCH_Config(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_lte_rrc_TPC_PDCCH_Config, TPC_PDCCH_Config_choice, - NULL); - - return offset; -} - - static const value_string lte_rrc_CQI_ReportModeAperiodic_vals[] = { { 0, "rm12" }, { 1, "rm20" }, @@ -21558,16 +24850,6 @@ dissect_lte_rrc_INTEGER_0_1023(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } - -static int -dissect_lte_rrc_INTEGER_1_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 4U, NULL, FALSE); - - return offset; -} - - static const per_sequence_t T_subbandCQI_sequence[] = { { &hf_lte_rrc_k , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, { NULL, 0, 0, NULL } @@ -21604,7 +24886,7 @@ dissect_lte_rrc_T_cqi_FormatIndicatorPeriodic(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t T_setup_13_sequence[] = { +static const per_sequence_t T_setup_17_sequence[] = { { &hf_lte_rrc_cqi_PUCCH_ResourceIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1185 }, { &hf_lte_rrc_cqi_pmi_ConfigIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1023 }, { &hf_lte_rrc_cqi_FormatIndicatorPeriodic, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cqi_FormatIndicatorPeriodic }, @@ -21614,9 +24896,9 @@ static const per_sequence_t T_setup_13_sequence[] = { }; static int -dissect_lte_rrc_T_setup_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_17(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_lte_rrc_T_setup_13, T_setup_13_sequence); + ett_lte_rrc_T_setup_17, T_setup_17_sequence); return offset; } @@ -21630,7 +24912,7 @@ static const value_string lte_rrc_CQI_ReportPeriodic_vals[] = { static const per_choice_t CQI_ReportPeriodic_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_13 }, + { 1, &hf_lte_rrc_setup_17 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_17 }, { 0, NULL, 0, NULL } }; @@ -21739,7 +25021,7 @@ dissect_lte_rrc_T_cyclicShift(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } -static const per_sequence_t T_setup_85_sequence[] = { +static const per_sequence_t T_setup_115_sequence[] = { { &hf_lte_rrc_srs_Bandwidth, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_srs_Bandwidth }, { &hf_lte_rrc_srs_HoppingBandwidth, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_srs_HoppingBandwidth }, { &hf_lte_rrc_freqDomainPosition, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_23 }, @@ -21751,9 +25033,9 @@ static const per_sequence_t T_setup_85_sequence[] = { }; static int -dissect_lte_rrc_T_setup_85(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_115(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_lte_rrc_T_setup_85, T_setup_85_sequence); + ett_lte_rrc_T_setup_115, T_setup_115_sequence); return offset; } @@ -21767,7 +25049,7 @@ static const value_string lte_rrc_SoundingRS_UL_ConfigDedicated_vals[] = { static const per_choice_t SoundingRS_UL_ConfigDedicated_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_98 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_85 }, + { 1, &hf_lte_rrc_setup_130 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_115 }, { 0, NULL, 0, NULL } }; @@ -22000,7 +25282,7 @@ dissect_lte_rrc_T_dsr_TransMax(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } -static const per_sequence_t T_setup_82_sequence[] = { +static const per_sequence_t T_setup_109_sequence[] = { { &hf_lte_rrc_sr_PUCCH_ResourceIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, { &hf_lte_rrc_sr_ConfigIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sr_ConfigIndex }, { &hf_lte_rrc_dsr_TransMax, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dsr_TransMax }, @@ -22008,9 +25290,9 @@ static const per_sequence_t T_setup_82_sequence[] = { }; static int -dissect_lte_rrc_T_setup_82(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_109(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_lte_rrc_T_setup_82, T_setup_82_sequence); + ett_lte_rrc_T_setup_109, T_setup_109_sequence); return offset; } @@ -22024,7 +25306,7 @@ static const value_string lte_rrc_SchedulingRequestConfig_vals[] = { static const per_choice_t SchedulingRequestConfig_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_95 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_82 }, + { 1, &hf_lte_rrc_setup_124 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_109 }, { 0, NULL, 0, NULL } }; @@ -22326,16 +25608,16 @@ dissect_lte_rrc_T_aperiodicCSI_Trigger_r10(tvbuff_t *tvb _U_, int offset _U_, as } -static const per_sequence_t T_setup_07_sequence[] = { +static const per_sequence_t T_setup_10_sequence[] = { { &hf_lte_rrc_cqi_ReportModeAperiodic_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CQI_ReportModeAperiodic }, { &hf_lte_rrc_aperiodicCSI_Trigger_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_aperiodicCSI_Trigger_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_10(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_lte_rrc_T_setup_07, T_setup_07_sequence); + ett_lte_rrc_T_setup_10, T_setup_10_sequence); return offset; } @@ -22349,7 +25631,7 @@ static const value_string lte_rrc_CQI_ReportAperiodic_r10_vals[] = { static const per_choice_t CQI_ReportAperiodic_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_07 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_07 }, + { 1, &hf_lte_rrc_setup_10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_10 }, { 0, NULL, 0, NULL } }; @@ -22471,16 +25753,16 @@ dissect_lte_rrc_T_cqi_Mask_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } -static const per_sequence_t T_setup_15_sequence[] = { +static const per_sequence_t T_setup_19_sequence[] = { { &hf_lte_rrc_cqi_pmi_ConfigIndex2_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1023 }, { &hf_lte_rrc_ri_ConfigIndex2_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1023 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_19(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_lte_rrc_T_setup_15, T_setup_15_sequence); + ett_lte_rrc_T_setup_19, T_setup_19_sequence); return offset; } @@ -22494,7 +25776,7 @@ static const value_string lte_rrc_T_csi_ConfigIndex_r10_vals[] = { static const per_choice_t T_csi_ConfigIndex_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_15 }, + { 1, &hf_lte_rrc_setup_19 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_19 }, { 0, NULL, 0, NULL } }; @@ -22508,7 +25790,7 @@ dissect_lte_rrc_T_csi_ConfigIndex_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const per_sequence_t T_setup_14_sequence[] = { +static const per_sequence_t T_setup_18_sequence[] = { { &hf_lte_rrc_cqi_PUCCH_ResourceIndex_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1184 }, { &hf_lte_rrc_cqi_PUCCH_ResourceIndexP1_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1184 }, { &hf_lte_rrc_cqi_pmi_ConfigIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1023 }, @@ -22521,9 +25803,9 @@ static const per_sequence_t T_setup_14_sequence[] = { }; static int -dissect_lte_rrc_T_setup_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_18(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_lte_rrc_T_setup_14, T_setup_14_sequence); + ett_lte_rrc_T_setup_18, T_setup_18_sequence); return offset; } @@ -22537,7 +25819,7 @@ static const value_string lte_rrc_CQI_ReportPeriodic_r10_vals[] = { static const per_choice_t CQI_ReportPeriodic_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_14 }, + { 1, &hf_lte_rrc_setup_18 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_18 }, { 0, NULL, 0, NULL } }; @@ -22566,16 +25848,16 @@ dissect_lte_rrc_T_pmi_RI_Report_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const per_sequence_t T_setup_11_sequence[] = { +static const per_sequence_t T_setup_14_sequence[] = { { &hf_lte_rrc_csi_MeasSubframeSet1_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasSubframePattern_r10 }, { &hf_lte_rrc_csi_MeasSubframeSet2_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasSubframePattern_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_14(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_lte_rrc_T_setup_11, T_setup_11_sequence); + ett_lte_rrc_T_setup_14, T_setup_14_sequence); return offset; } @@ -22589,7 +25871,7 @@ static const value_string lte_rrc_T_csi_SubframePatternConfig_r10_vals[] = { static const per_choice_t T_csi_SubframePatternConfig_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_11 }, + { 1, &hf_lte_rrc_setup_14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_14 }, { 0, NULL, 0, NULL } }; @@ -22659,7 +25941,7 @@ dissect_lte_rrc_INTEGER_M8_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } -static const per_sequence_t T_setup_18_sequence[] = { +static const per_sequence_t T_setup_25_sequence[] = { { &hf_lte_rrc_antennaPortsCount_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_antennaPortsCount_r10 }, { &hf_lte_rrc_resourceConfig_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, { &hf_lte_rrc_subframeConfig_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_154 }, @@ -22668,9 +25950,9 @@ static const per_sequence_t T_setup_18_sequence[] = { }; static int -dissect_lte_rrc_T_setup_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_25(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_lte_rrc_T_setup_18, T_setup_18_sequence); + ett_lte_rrc_T_setup_25, T_setup_25_sequence); return offset; } @@ -22684,7 +25966,7 @@ static const value_string lte_rrc_T_csi_RS_r10_vals[] = { static const per_choice_t T_csi_RS_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_21 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_18 }, + { 1, &hf_lte_rrc_setup_28 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_25 }, { 0, NULL, 0, NULL } }; @@ -22721,7 +26003,7 @@ static const value_string lte_rrc_ZeroTxPowerCSI_RS_Conf_r12_vals[] = { static const per_choice_t ZeroTxPowerCSI_RS_Conf_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_23 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_ZeroTxPowerCSI_RS_r12 }, + { 1, &hf_lte_rrc_setup_31 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_ZeroTxPowerCSI_RS_r12 }, { 0, NULL, 0, NULL } }; @@ -22788,15 +26070,15 @@ dissect_lte_rrc_T_n3PUCCH_AN_ListP1_r13_01(tvbuff_t *tvb _U_, int offset _U_, as } -static const per_sequence_t T_setup_68_sequence[] = { +static const per_sequence_t T_setup_89_sequence[] = { { &hf_lte_rrc_n3PUCCH_AN_ListP1_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n3PUCCH_AN_ListP1_r13_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_68(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_89(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_lte_rrc_T_setup_68, T_setup_68_sequence); + ett_lte_rrc_T_setup_89, T_setup_89_sequence); return offset; } @@ -22810,7 +26092,7 @@ static const value_string lte_rrc_T_twoAntennaPortActivatedPUCCH_Format3_r13_01_ static const per_choice_t T_twoAntennaPortActivatedPUCCH_Format3_r13_01_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_78 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_68 }, + { 1, &hf_lte_rrc_setup_100 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_89 }, { 0, NULL, 0, NULL } }; @@ -22867,15 +26149,15 @@ dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_N1PUCCH_AN_CS_r10(tvbuff_t *tvb _U_, int of } -static const per_sequence_t T_setup_58_sequence[] = { +static const per_sequence_t T_setup_79_sequence[] = { { &hf_lte_rrc_n1PUCCH_AN_CS_List_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_N1PUCCH_AN_CS_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_58(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_79(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_lte_rrc_T_setup_58, T_setup_58_sequence); + ett_lte_rrc_T_setup_79, T_setup_79_sequence); return offset; } @@ -22889,7 +26171,7 @@ static const value_string lte_rrc_T_n1PUCCH_AN_CS_r10_vals[] = { static const per_choice_t T_n1PUCCH_AN_CS_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_67 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_58 }, + { 1, &hf_lte_rrc_setup_89 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_79 }, { 0, NULL, 0, NULL } }; @@ -23176,16 +26458,16 @@ dissect_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_r10(tvbuff_t *tvb _U_, int off } -static const per_sequence_t T_setup_89_sequence[] = { +static const per_sequence_t T_setup_119_sequence[] = { { &hf_lte_rrc_srs_ConfigApDCI_Format0_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SRS_ConfigAp_r10 }, { &hf_lte_rrc_srs_ConfigApDCI_Format1a2b2c_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SRS_ConfigAp_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_89(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_119(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_lte_rrc_T_setup_89, T_setup_89_sequence); + ett_lte_rrc_T_setup_119, T_setup_119_sequence); return offset; } @@ -23199,7 +26481,7 @@ static const value_string lte_rrc_T_srs_ActivateAp_r10_vals[] = { static const per_choice_t T_srs_ActivateAp_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_102 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_89 }, + { 1, &hf_lte_rrc_setup_134 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_119 }, { 0, NULL, 0, NULL } }; @@ -23213,7 +26495,7 @@ dissect_lte_rrc_T_srs_ActivateAp_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } -static const per_sequence_t T_setup_88_sequence[] = { +static const per_sequence_t T_setup_118_sequence[] = { { &hf_lte_rrc_srs_ConfigIndexAp_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, { &hf_lte_rrc_srs_ConfigApDCI_Format4_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_r10 }, { &hf_lte_rrc_srs_ActivateAp_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_ActivateAp_r10 }, @@ -23221,9 +26503,9 @@ static const per_sequence_t T_setup_88_sequence[] = { }; static int -dissect_lte_rrc_T_setup_88(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_118(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_lte_rrc_T_setup_88, T_setup_88_sequence); + ett_lte_rrc_T_setup_118, T_setup_118_sequence); return offset; } @@ -23237,7 +26519,7 @@ static const value_string lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_r10_val static const per_choice_t SoundingRS_UL_ConfigDedicatedAperiodic_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_101 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_88 }, + { 1, &hf_lte_rrc_setup_133 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_118 }, { 0, NULL, 0, NULL } }; @@ -23380,15 +26662,15 @@ dissect_lte_rrc_AdditionalSpectrumEmission(tvbuff_t *tvb _U_, int offset _U_, as } -static const per_sequence_t T_setup_50_sequence[] = { +static const per_sequence_t T_setup_66_sequence[] = { { &hf_lte_rrc_additionalSpectrumEmissionPCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_66(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_lte_rrc_T_setup_50, T_setup_50_sequence); + ett_lte_rrc_T_setup_66, T_setup_66_sequence); return offset; } @@ -23402,7 +26684,7 @@ static const value_string lte_rrc_T_additionalSpectrumEmissionCA_r10_vals[] = { static const per_choice_t T_additionalSpectrumEmissionCA_r10_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_58 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_50 }, + { 1, &hf_lte_rrc_setup_75 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_66 }, { 0, NULL, 0, NULL } }; @@ -23510,16 +26792,6 @@ dissect_lte_rrc_T_radioframeAllocationPeriod(tvbuff_t *tvb _U_, int offset _U_, -static int -dissect_lte_rrc_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 7U, NULL, FALSE); - - return offset; -} - - - static int dissect_lte_rrc_BIT_STRING_SIZE_24(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, @@ -23581,15 +26853,15 @@ dissect_lte_rrc_MBSFN_SubframeConfigList(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const per_sequence_t T_setup_23_sequence[] = { +static const per_sequence_t T_setup_33_sequence[] = { { &hf_lte_rrc_subframeConfigList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfigList }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_33(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_lte_rrc_T_setup_23, T_setup_23_sequence); + ett_lte_rrc_T_setup_33, T_setup_33_sequence); return offset; } @@ -23603,7 +26875,7 @@ static const value_string lte_rrc_T_mbsfn_SubframeConfigList_r11_vals[] = { static const per_choice_t T_mbsfn_SubframeConfigList_r11_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_28 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_23 }, + { 1, &hf_lte_rrc_setup_38 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_33 }, { 0, NULL, 0, NULL } }; @@ -23747,15 +27019,15 @@ dissect_lte_rrc_MBSFN_SubframeConfigList_v1430(tvbuff_t *tvb _U_, int offset _U_ } -static const per_sequence_t T_setup_24_sequence[] = { +static const per_sequence_t T_setup_34_sequence[] = { { &hf_lte_rrc_subframeConfigList_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_34(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_lte_rrc_T_setup_24, T_setup_24_sequence); + ett_lte_rrc_T_setup_34, T_setup_34_sequence); return offset; } @@ -23769,7 +27041,7 @@ static const value_string lte_rrc_T_mbsfn_SubframeConfigList_v1430_vals[] = { static const per_choice_t T_mbsfn_SubframeConfigList_v1430_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_29 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_24 }, + { 1, &hf_lte_rrc_setup_39 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_34 }, { 0, NULL, 0, NULL } }; @@ -23886,15 +27158,15 @@ dissect_lte_rrc_CSI_RS_ConfigZPToAddModList_r11(tvbuff_t *tvb _U_, int offset _U } -static const per_sequence_t T_setup_28_sequence[] = { +static const per_sequence_t T_setup_38_sequence[] = { { &hf_lte_rrc_subframePattern_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasSubframePattern_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_38(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_lte_rrc_T_setup_28, T_setup_28_sequence); + ett_lte_rrc_T_setup_38, T_setup_38_sequence); return offset; } @@ -23908,7 +27180,7 @@ static const value_string lte_rrc_T_subframePatternConfig_r11_vals[] = { static const per_choice_t T_subframePatternConfig_r11_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_34 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_28 }, + { 1, &hf_lte_rrc_setup_44 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_38 }, { 0, NULL, 0, NULL } }; @@ -24022,7 +27294,7 @@ static const value_string lte_rrc_T_csi_RS_ConfigZPId2_r12_vals[] = { static const per_choice_t T_csi_RS_ConfigZPId2_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_35 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigZPId_r11 }, + { 1, &hf_lte_rrc_setup_45 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigZPId_r11 }, { 0, NULL, 0, NULL } }; @@ -24049,14 +27321,14 @@ dissect_lte_rrc_EPDCCH_SetConfig_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, as } -static const value_string lte_rrc_T_setup_29_vals[] = { +static const value_string lte_rrc_T_setup_39_vals[] = { { 0, "n6" }, { 0, NULL } }; static int -dissect_lte_rrc_T_setup_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_39(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, 1, NULL, FALSE, 0, NULL); @@ -24072,7 +27344,7 @@ static const value_string lte_rrc_T_numberPRB_Pairs_v1310_vals[] = { static const per_choice_t T_numberPRB_Pairs_v1310_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_36 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_29 }, + { 1, &hf_lte_rrc_setup_46 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_39 }, { 0, NULL, 0, NULL } }; @@ -24221,7 +27493,7 @@ dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13(tvbuff_t *tvb _U_, int offset } -static const per_sequence_t T_setup_30_sequence[] = { +static const per_sequence_t T_setup_40_sequence[] = { { &hf_lte_rrc_csi_NumRepetitionCE_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_csi_NumRepetitionCE_r13 }, { &hf_lte_rrc_mpdcch_pdsch_HoppingConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_pdsch_HoppingConfig_r13 }, { &hf_lte_rrc_mpdcch_StartSF_UESS_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_StartSF_UESS_r13 }, @@ -24231,9 +27503,9 @@ static const per_sequence_t T_setup_30_sequence[] = { }; static int -dissect_lte_rrc_T_setup_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_40(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_lte_rrc_T_setup_30, T_setup_30_sequence); + ett_lte_rrc_T_setup_40, T_setup_40_sequence); return offset; } @@ -24247,7 +27519,7 @@ static const value_string lte_rrc_T_mpdcch_config_r13_vals[] = { static const per_choice_t T_mpdcch_config_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_37 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_30 }, + { 1, &hf_lte_rrc_setup_47 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_40 }, { 0, NULL, 0, NULL } }; @@ -24310,7 +27582,7 @@ dissect_lte_rrc_EPDCCH_SetConfigToAddModList_r11(tvbuff_t *tvb _U_, int offset _ } -static const per_sequence_t T_setup_27_sequence[] = { +static const per_sequence_t T_setup_37_sequence[] = { { &hf_lte_rrc_subframePatternConfig_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_subframePatternConfig_r11 }, { &hf_lte_rrc_startSymbol_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_4 }, { &hf_lte_rrc_setConfigToReleaseList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_EPDCCH_SetConfigToReleaseList_r11 }, @@ -24319,9 +27591,9 @@ static const per_sequence_t T_setup_27_sequence[] = { }; static int -dissect_lte_rrc_T_setup_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_37(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_lte_rrc_T_setup_27, T_setup_27_sequence); + ett_lte_rrc_T_setup_37, T_setup_37_sequence); return offset; } @@ -24335,7 +27607,7 @@ static const value_string lte_rrc_T_config_r11_vals[] = { static const per_choice_t T_config_r11_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_33 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_27 }, + { 1, &hf_lte_rrc_setup_43 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_37 }, { 0, NULL, 0, NULL } }; @@ -24363,16 +27635,16 @@ dissect_lte_rrc_EPDCCH_Config_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t T_setup_26_sequence[] = { +static const per_sequence_t T_setup_36_sequence[] = { { &hf_lte_rrc_scramblingIdentity_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_503 }, { &hf_lte_rrc_scramblingIdentity2_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_503 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_36(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_lte_rrc_T_setup_26, T_setup_26_sequence); + ett_lte_rrc_T_setup_36, T_setup_36_sequence); return offset; } @@ -24386,7 +27658,7 @@ static const value_string lte_rrc_DMRS_Config_r11_vals[] = { static const per_choice_t DMRS_Config_r11_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_32 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_26 }, + { 1, &hf_lte_rrc_setup_42 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_36 }, { 0, NULL, 0, NULL } }; @@ -24458,15 +27730,15 @@ dissect_lte_rrc_INTEGER_0_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const per_sequence_t T_setup_48_sequence[] = { +static const per_sequence_t T_setup_63_sequence[] = { { &hf_lte_rrc_subframeConfigList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfigList }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_63(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_lte_rrc_T_setup_48, T_setup_48_sequence); + ett_lte_rrc_T_setup_63, T_setup_63_sequence); return offset; } @@ -24480,7 +27752,7 @@ static const value_string lte_rrc_T_mbsfn_SubframeConfigList_r11_01_vals[] = { static const per_choice_t T_mbsfn_SubframeConfigList_r11_01_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_56 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_48 }, + { 1, &hf_lte_rrc_setup_72 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_63 }, { 0, NULL, 0, NULL } }; @@ -24531,15 +27803,15 @@ dissect_lte_rrc_T_optionalSetOfFields_r11(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t T_setup_49_sequence[] = { +static const per_sequence_t T_setup_64_sequence[] = { { &hf_lte_rrc_subframeConfigList_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_49(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_64(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_lte_rrc_T_setup_49, T_setup_49_sequence); + ett_lte_rrc_T_setup_64, T_setup_64_sequence); return offset; } @@ -24553,7 +27825,7 @@ static const value_string lte_rrc_T_mbsfn_SubframeConfigList_v1430_01_vals[] = { static const per_choice_t T_mbsfn_SubframeConfigList_v1430_01_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_57 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_49 }, + { 1, &hf_lte_rrc_setup_73 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_64 }, { 0, NULL, 0, NULL } }; @@ -24580,12 +27852,106 @@ dissect_lte_rrc_PDSCH_RE_MappingQCL_Config_r11_eag_1(tvbuff_t *tvb _U_, int offs } +static const value_string lte_rrc_T_crs_PortsCount_v1530_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_crs_PortsCount_v1530(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 lte_rrc_T_pdsch_Start_v1530_vals[] = { + { 0, "reserved" }, + { 1, "n1" }, + { 2, "n2" }, + { 3, "n3" }, + { 4, "n4" }, + { 5, "assigned" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_pdsch_Start_v1530(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, + 6, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_setup_65_sequence[] = { + { &hf_lte_rrc_crs_PortsCount_v1530, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_crs_PortsCount_v1530 }, + { &hf_lte_rrc_crs_FreqShift_v1530, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_5 }, + { &hf_lte_rrc_mbsfn_SubframeConfigList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList }, + { &hf_lte_rrc_mbsfn_SubframeConfigListExt_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, + { &hf_lte_rrc_pdsch_Start_v1530, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pdsch_Start_v1530 }, + { &hf_lte_rrc_csi_RS_ConfigZPId_v1530, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_RS_ConfigZPId_r11 }, + { &hf_lte_rrc_qcl_CSI_RS_ConfigNZPId_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPId_r11 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_65(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_lte_rrc_T_setup_65, T_setup_65_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_codewordOneConfig_v1530_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_codewordOneConfig_v1530_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_74 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_65 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_codewordOneConfig_v1530(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_lte_rrc_T_codewordOneConfig_v1530, T_codewordOneConfig_v1530_choice, + NULL); + + return offset; +} + + +static const per_sequence_t PDSCH_RE_MappingQCL_Config_r11_eag_2_sequence[] = { + { &hf_lte_rrc_codewordOneConfig_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_codewordOneConfig_v1530 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PDSCH_RE_MappingQCL_Config_r11_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PDSCH_RE_MappingQCL_Config_r11_eag_2_sequence); + + return offset; +} + + static const per_sequence_t PDSCH_RE_MappingQCL_Config_r11_sequence[] = { { &hf_lte_rrc_pdsch_RE_MappingQCL_ConfigId_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDSCH_RE_MappingQCL_ConfigId_r11 }, { &hf_lte_rrc_optionalSetOfFields_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_optionalSetOfFields_r11 }, { &hf_lte_rrc_csi_RS_ConfigZPId_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_RS_ConfigZPId_r11 }, { &hf_lte_rrc_qcl_CSI_RS_ConfigNZPId_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPId_r11 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDSCH_RE_MappingQCL_Config_r11_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDSCH_RE_MappingQCL_Config_r11_eag_2 }, { NULL, 0, 0, NULL } }; @@ -24751,16 +28117,16 @@ dissect_lte_rrc_T_cqi_FormatIndicatorPeriodic_r11(tvbuff_t *tvb _U_, int offset } -static const per_sequence_t T_setup_16_sequence[] = { +static const per_sequence_t T_setup_22_sequence[] = { { &hf_lte_rrc_cqi_pmi_ConfigIndex2_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1023 }, { &hf_lte_rrc_ri_ConfigIndex2_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1023 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_22(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_lte_rrc_T_setup_16, T_setup_16_sequence); + ett_lte_rrc_T_setup_22, T_setup_22_sequence); return offset; } @@ -24774,7 +28140,7 @@ static const value_string lte_rrc_T_csi_ConfigIndex_r11_vals[] = { static const per_choice_t T_csi_ConfigIndex_r11_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_16 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_16 }, + { 1, &hf_lte_rrc_setup_22 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_22 }, { 0, NULL, 0, NULL } }; @@ -24798,16 +28164,16 @@ dissect_lte_rrc_CRI_ConfigIndex_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const per_sequence_t T_setup_17_sequence[] = { +static const per_sequence_t T_setup_24_sequence[] = { { &hf_lte_rrc_cri_ConfigIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CRI_ConfigIndex_r13 }, { &hf_lte_rrc_cri_ConfigIndex2_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CRI_ConfigIndex_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_24(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_lte_rrc_T_setup_17, T_setup_17_sequence); + ett_lte_rrc_T_setup_24, T_setup_24_sequence); return offset; } @@ -24821,7 +28187,7 @@ static const value_string lte_rrc_CRI_ReportConfig_r13_vals[] = { static const per_choice_t CRI_ReportConfig_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_17 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_17 }, + { 1, &hf_lte_rrc_setup_24 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_24 }, { 0, NULL, 0, NULL } }; @@ -25152,7 +28518,7 @@ static const value_string lte_rrc_T_csi_IM_ConfigIdList_r12_vals[] = { static const per_choice_t T_csi_IM_ConfigIdList_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_18 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_CSI_IM_ConfigId_r12 }, + { 1, &hf_lte_rrc_setup_25 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_CSI_IM_ConfigId_r12 }, { 0, NULL, 0, NULL } }; @@ -25174,7 +28540,7 @@ static const value_string lte_rrc_T_cqi_ReportAperiodicProc2_r12_vals[] = { static const per_choice_t T_cqi_ReportAperiodicProc2_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_19 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CQI_ReportAperiodicProc_r11 }, + { 1, &hf_lte_rrc_setup_26 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CQI_ReportAperiodicProc_r11 }, { 0, NULL, 0, NULL } }; @@ -25231,7 +28597,7 @@ static const value_string lte_rrc_T_cqi_ReportAperiodicProc_v1310_vals[] = { static const per_choice_t T_cqi_ReportAperiodicProc_v1310_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CQI_ReportAperiodicProc_v1310 }, + { 1, &hf_lte_rrc_setup_27 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CQI_ReportAperiodicProc_v1310 }, { 0, NULL, 0, NULL } }; @@ -25253,7 +28619,7 @@ static const value_string lte_rrc_T_cqi_ReportAperiodicProc2_v1310_vals[] = { static const per_choice_t T_cqi_ReportAperiodicProc2_v1310_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CQI_ReportAperiodicProc_v1310 }, + { 1, &hf_lte_rrc_setup_27 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CQI_ReportAperiodicProc_v1310 }, { 0, NULL, 0, NULL } }; @@ -25526,16 +28892,16 @@ dissect_lte_rrc_T_cdmType_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } -static const per_sequence_t T_setup_25_sequence[] = { +static const per_sequence_t T_setup_35_sequence[] = { { &hf_lte_rrc_nzp_resourceConfigList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_NZP_ResourceConfig_r13 }, { &hf_lte_rrc_cdmType_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cdmType_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_35(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_lte_rrc_T_setup_25, T_setup_25_sequence); + ett_lte_rrc_T_setup_35, T_setup_35_sequence); return offset; } @@ -25549,7 +28915,7 @@ static const value_string lte_rrc_CSI_RS_ConfigNZP_EMIMO_r13_vals[] = { static const per_choice_t CSI_RS_ConfigNZP_EMIMO_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_30 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_25 }, + { 1, &hf_lte_rrc_setup_40 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_35 }, { 0, NULL, 0, NULL } }; @@ -25699,22 +29065,22 @@ dissect_lte_rrc_CSI_RS_ConfigBeamformed_r13(tvbuff_t *tvb _U_, int offset _U_, a } -static const value_string lte_rrc_T_setup_20_vals[] = { +static const value_string lte_rrc_T_setup_28_vals[] = { { 0, "nonPrecoded-r13" }, { 1, "beamformed-r13" }, { 0, NULL } }; -static const per_choice_t T_setup_20_choice[] = { +static const per_choice_t T_setup_28_choice[] = { { 0, &hf_lte_rrc_nonPrecoded_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigNonPrecoded_r13 }, { 1, &hf_lte_rrc_beamformed_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigBeamformed_r13 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_setup_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_28(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_lte_rrc_T_setup_20, T_setup_20_choice, + ett_lte_rrc_T_setup_28, T_setup_28_choice, NULL); return offset; @@ -25729,7 +29095,7 @@ static const value_string lte_rrc_CSI_RS_ConfigEMIMO_r13_vals[] = { static const per_choice_t CSI_RS_ConfigEMIMO_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_24 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_20 }, + { 1, &hf_lte_rrc_setup_32 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_28 }, { 0, NULL, 0, NULL } }; @@ -25823,7 +29189,7 @@ dissect_lte_rrc_T_codebookConfigN1_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_codebookConfigN2_r1430_vals[] = { +static const value_string lte_rrc_T_codebookConfigN2_v1430_vals[] = { { 0, "n5" }, { 1, "n6" }, { 2, "n7" }, @@ -25832,7 +29198,7 @@ static const value_string lte_rrc_T_codebookConfigN2_r1430_vals[] = { static int -dissect_lte_rrc_T_codebookConfigN2_r1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_codebookConfigN2_v1430(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, FALSE, 0, NULL); @@ -25858,7 +29224,7 @@ dissect_lte_rrc_CSI_RS_Config_NZP_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t CSI_RS_ConfigNonPrecoded_v1430_sequence[] = { { &hf_lte_rrc_csi_RS_ConfigNZP_EMIMO_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZP_EMIMO_v1430 }, { &hf_lte_rrc_codebookConfigN1_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_codebookConfigN1_v1430 }, - { &hf_lte_rrc_codebookConfigN2_r1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_codebookConfigN2_r1430 }, + { &hf_lte_rrc_codebookConfigN2_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_codebookConfigN2_v1430 }, { &hf_lte_rrc_nzp_ResourceConfigTM9_Original_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_RS_Config_NZP_v1430 }, { NULL, 0, 0, NULL } }; @@ -25933,22 +29299,22 @@ dissect_lte_rrc_CSI_RS_ConfigBeamformed_v1430(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_setup_21_vals[] = { +static const value_string lte_rrc_T_setup_29_vals[] = { { 0, "nonPrecoded-v1430" }, { 1, "beamformed-v1430" }, { 0, NULL } }; -static const per_choice_t T_setup_21_choice[] = { +static const per_choice_t T_setup_29_choice[] = { { 0, &hf_lte_rrc_nonPrecoded_v1430, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigNonPrecoded_v1430 }, { 1, &hf_lte_rrc_beamformed_v1430, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigBeamformed_v1430 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_setup_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_29(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_lte_rrc_T_setup_21, T_setup_21_choice, + ett_lte_rrc_T_setup_29, T_setup_29_choice, NULL); return offset; @@ -25963,7 +29329,7 @@ static const value_string lte_rrc_CSI_RS_ConfigEMIMO_v1430_vals[] = { static const per_choice_t CSI_RS_ConfigEMIMO_v1430_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_25 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_21 }, + { 1, &hf_lte_rrc_setup_33 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_29 }, { 0, NULL, 0, NULL } }; @@ -26051,7 +29417,7 @@ static const value_string lte_rrc_CSI_RS_ConfigEMIMO2_r14_vals[] = { static const per_choice_t CSI_RS_ConfigEMIMO2_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_26 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigBeamformed_r14 }, + { 1, &hf_lte_rrc_setup_36 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigBeamformed_r14 }, { 0, NULL, 0, NULL } }; @@ -26065,16 +29431,16 @@ dissect_lte_rrc_CSI_RS_ConfigEMIMO2_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const per_sequence_t T_setup_22_sequence[] = { +static const per_sequence_t T_setup_32_sequence[] = { { &hf_lte_rrc_periodicityOffsetIndex_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1023 }, { &hf_lte_rrc_eMIMO_Type2_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO2_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_32(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_lte_rrc_T_setup_22, T_setup_22_sequence); + ett_lte_rrc_T_setup_32, T_setup_32_sequence); return offset; } @@ -26088,7 +29454,7 @@ static const value_string lte_rrc_CSI_RS_ConfigEMIMO_Hybrid_r14_vals[] = { static const per_choice_t CSI_RS_ConfigEMIMO_Hybrid_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_27 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_22 }, + { 1, &hf_lte_rrc_setup_37 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_32 }, { 0, NULL, 0, NULL } }; @@ -26103,7 +29469,7 @@ dissect_lte_rrc_CSI_RS_ConfigEMIMO_Hybrid_r14(tvbuff_t *tvb _U_, int offset _U_, static const per_sequence_t CSI_Process_r11_eag_3_sequence[] = { - { &hf_lte_rrc_eMIMO_Type_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO_v1430 }, + { &hf_lte_rrc_dummy_03 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO_v1430 }, { &hf_lte_rrc_eMIMO_Hybrid_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO_Hybrid_r14 }, { &hf_lte_rrc_advancedCodebookEnabled_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } @@ -26117,6 +29483,217 @@ dissect_lte_rrc_CSI_Process_r11_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } +static const value_string lte_rrc_T_codebookConfigN1_v1480_vals[] = { + { 0, "n5" }, + { 1, "n6" }, + { 2, "n7" }, + { 3, "n10" }, + { 4, "n12" }, + { 5, "n14" }, + { 6, "n16" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_codebookConfigN1_v1480(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, + 7, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_codebookConfigN2_r1480_vals[] = { + { 0, "n5" }, + { 1, "n6" }, + { 2, "n7" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_codebookConfigN2_r1480(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t CSI_RS_ConfigNonPrecoded_v1480_sequence[] = { + { &hf_lte_rrc_csi_RS_ConfigNZP_EMIMO_v1480, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZP_EMIMO_v1430 }, + { &hf_lte_rrc_codebookConfigN1_v1480, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_codebookConfigN1_v1480 }, + { &hf_lte_rrc_codebookConfigN2_r1480, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_codebookConfigN2_r1480 }, + { &hf_lte_rrc_nzp_ResourceConfigTM9_Original_v1480, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_RS_Config_NZP_v1430 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CSI_RS_ConfigNonPrecoded_v1480(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_lte_rrc_CSI_RS_ConfigNonPrecoded_v1480, CSI_RS_ConfigNonPrecoded_v1480_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_setup_30_vals[] = { + { 0, "nonPrecoded-v1480" }, + { 1, "beamformed-v1480" }, + { 0, NULL } +}; + +static const per_choice_t T_setup_30_choice[] = { + { 0, &hf_lte_rrc_nonPrecoded_v1480, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigNonPrecoded_v1480 }, + { 1, &hf_lte_rrc_beamformed_v1480, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigBeamformed_v1430 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_30(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_lte_rrc_T_setup_30, T_setup_30_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_CSI_RS_ConfigEMIMO_v1480_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t CSI_RS_ConfigEMIMO_v1480_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_34 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_30 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_CSI_RS_ConfigEMIMO_v1480(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_lte_rrc_CSI_RS_ConfigEMIMO_v1480, CSI_RS_ConfigEMIMO_v1480_choice, + NULL); + + return offset; +} + + +static const per_sequence_t CSI_Process_r11_eag_4_sequence[] = { + { &hf_lte_rrc_eMIMO_Type_v1480, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO_v1480 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CSI_Process_r11_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CSI_Process_r11_eag_4_sequence); + + return offset; +} + + +static const per_sequence_t P_C_AndCBSR_r15_sequence[] = { + { &hf_lte_rrc_p_C_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_15 }, + { &hf_lte_rrc_codebookSubsetRestriction4_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_P_C_AndCBSR_r15(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_lte_rrc_P_C_AndCBSR_r15, P_C_AndCBSR_r15_sequence); + + return offset; +} + + +static const per_sequence_t P_C_AndCBSR_Pair_r15_sequence_of[1] = { + { &hf_lte_rrc_P_C_AndCBSR_Pair_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_P_C_AndCBSR_r15 }, +}; + +static int +dissect_lte_rrc_P_C_AndCBSR_Pair_r15(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_lte_rrc_P_C_AndCBSR_Pair_r15, P_C_AndCBSR_Pair_r15_sequence_of, + 1, 2, FALSE); + + return offset; +} + + +static const per_sequence_t CSI_RS_ConfigNonPrecoded_v1530_sequence[] = { + { &hf_lte_rrc_p_C_AndCBSRList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_C_AndCBSR_Pair_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CSI_RS_ConfigNonPrecoded_v1530(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_lte_rrc_CSI_RS_ConfigNonPrecoded_v1530, CSI_RS_ConfigNonPrecoded_v1530_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_setup_31_vals[] = { + { 0, "nonPrecoded-v1530" }, + { 0, NULL } +}; + +static const per_choice_t T_setup_31_choice[] = { + { 0, &hf_lte_rrc_nonPrecoded_v1530, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSI_RS_ConfigNonPrecoded_v1530 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_31(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_lte_rrc_T_setup_31, T_setup_31_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_CSI_RS_ConfigEMIMO_v1530_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t CSI_RS_ConfigEMIMO_v1530_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_35 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_31 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_CSI_RS_ConfigEMIMO_v1530(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_lte_rrc_CSI_RS_ConfigEMIMO_v1530, CSI_RS_ConfigEMIMO_v1530_choice, + NULL); + + return offset; +} + + +static const per_sequence_t CSI_Process_r11_eag_5_sequence[] = { + { &hf_lte_rrc_feCOMP_CSI_Enabled_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_eMIMO_Type_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO_v1530 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CSI_Process_r11_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CSI_Process_r11_eag_5_sequence); + + return offset; +} + + static const per_sequence_t CSI_Process_r11_sequence[] = { { &hf_lte_rrc_csi_ProcessId_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_ProcessId_r11 }, { &hf_lte_rrc_csi_RS_ConfigNZPId_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_RS_ConfigNZPId_r11 }, @@ -26128,6 +29705,8 @@ static const per_sequence_t CSI_Process_r11_sequence[] = { { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_Process_r11_eag_1 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_Process_r11_eag_2 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_Process_r11_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_Process_r11_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_Process_r11_eag_5 }, { NULL, 0, 0, NULL } }; @@ -26200,15 +29779,15 @@ dissect_lte_rrc_T_n1PUCCH_AN_CS_ListP1_r11(tvbuff_t *tvb _U_, int offset _U_, as } -static const per_sequence_t T_setup_59_sequence[] = { +static const per_sequence_t T_setup_80_sequence[] = { { &hf_lte_rrc_n1PUCCH_AN_CS_ListP1_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n1PUCCH_AN_CS_ListP1_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_80(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_lte_rrc_T_setup_59, T_setup_59_sequence); + ett_lte_rrc_T_setup_80, T_setup_80_sequence); return offset; } @@ -26222,7 +29801,7 @@ static const value_string lte_rrc_T_n1PUCCH_AN_CS_v1130_vals[] = { static const per_choice_t T_n1PUCCH_AN_CS_v1130_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_68 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_59 }, + { 1, &hf_lte_rrc_setup_90 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_80 }, { 0, NULL, 0, NULL } }; @@ -26236,16 +29815,16 @@ dissect_lte_rrc_T_n1PUCCH_AN_CS_v1130(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const per_sequence_t T_setup_60_sequence[] = { +static const per_sequence_t T_setup_81_sequence[] = { { &hf_lte_rrc_nPUCCH_Identity_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_503 }, { &hf_lte_rrc_n1PUCCH_AN_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_60(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_81(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_lte_rrc_T_setup_60, T_setup_60_sequence); + ett_lte_rrc_T_setup_81, T_setup_81_sequence); return offset; } @@ -26259,7 +29838,7 @@ static const value_string lte_rrc_T_nPUCCH_Param_r11_vals[] = { static const per_choice_t T_nPUCCH_Param_r11_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_69 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_60 }, + { 1, &hf_lte_rrc_setup_91 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_81 }, { 0, NULL, 0, NULL } }; @@ -26298,16 +29877,16 @@ dissect_lte_rrc_INTEGER_0_509(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } -static const per_sequence_t T_setup_69_sequence[] = { +static const per_sequence_t T_setup_90_sequence[] = { { &hf_lte_rrc_nPUSCH_Identity_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_509 }, { &hf_lte_rrc_nDMRS_CSH_Identity_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_509 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_69(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_90(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_lte_rrc_T_setup_69, T_setup_69_sequence); + ett_lte_rrc_T_setup_90, T_setup_90_sequence); return offset; } @@ -26321,7 +29900,7 @@ static const value_string lte_rrc_T_pusch_DMRS_r11_vals[] = { static const per_choice_t T_pusch_DMRS_r11_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_79 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_69 }, + { 1, &hf_lte_rrc_setup_101 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_90 }, { 0, NULL, 0, NULL } }; @@ -26469,7 +30048,7 @@ dissect_lte_rrc_BIT_STRING_SIZE_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t T_setup_31_sequence[] = { +static const per_sequence_t T_setup_41_sequence[] = { { &hf_lte_rrc_eimta_RNTI_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, { &hf_lte_rrc_eimta_CommandPeriodicity_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eimta_CommandPeriodicity_r12 }, { &hf_lte_rrc_eimta_CommandSubframeSet_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, @@ -26477,9 +30056,9 @@ static const per_sequence_t T_setup_31_sequence[] = { }; static int -dissect_lte_rrc_T_setup_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_41(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_lte_rrc_T_setup_31, T_setup_31_sequence); + ett_lte_rrc_T_setup_41, T_setup_41_sequence); return offset; } @@ -26493,7 +30072,7 @@ static const value_string lte_rrc_EIMTA_MainConfig_r12_vals[] = { static const per_choice_t EIMTA_MainConfig_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_38 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_31 }, + { 1, &hf_lte_rrc_setup_48 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_41 }, { 0, NULL, 0, NULL } }; @@ -26534,15 +30113,15 @@ dissect_lte_rrc_T_eimta_HARQ_ReferenceConfig_r12(tvbuff_t *tvb _U_, int offset _ } -static const per_sequence_t T_setup_33_sequence[] = { +static const per_sequence_t T_setup_43_sequence[] = { { &hf_lte_rrc_subframeConfigList_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfigList }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_43(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_lte_rrc_T_setup_33, T_setup_33_sequence); + ett_lte_rrc_T_setup_43, T_setup_43_sequence); return offset; } @@ -26556,7 +30135,7 @@ static const value_string lte_rrc_T_mbsfn_SubframeConfigList_v1250_vals[] = { static const per_choice_t T_mbsfn_SubframeConfigList_v1250_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_40 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_33 }, + { 1, &hf_lte_rrc_setup_50 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_43 }, { 0, NULL, 0, NULL } }; @@ -26570,7 +30149,7 @@ dissect_lte_rrc_T_mbsfn_SubframeConfigList_v1250(tvbuff_t *tvb _U_, int offset _ } -static const per_sequence_t T_setup_32_sequence[] = { +static const per_sequence_t T_setup_42_sequence[] = { { &hf_lte_rrc_eimta_UL_DL_ConfigIndex_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_5 }, { &hf_lte_rrc_eimta_HARQ_ReferenceConfig_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eimta_HARQ_ReferenceConfig_r12 }, { &hf_lte_rrc_mbsfn_SubframeConfigList_v1250, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mbsfn_SubframeConfigList_v1250 }, @@ -26578,9 +30157,9 @@ static const per_sequence_t T_setup_32_sequence[] = { }; static int -dissect_lte_rrc_T_setup_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_42(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_lte_rrc_T_setup_32, T_setup_32_sequence); + ett_lte_rrc_T_setup_42, T_setup_42_sequence); return offset; } @@ -26594,7 +30173,7 @@ static const value_string lte_rrc_EIMTA_MainConfigServCell_r12_vals[] = { static const per_choice_t EIMTA_MainConfigServCell_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_39 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_32 }, + { 1, &hf_lte_rrc_setup_49 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_42 }, { 0, NULL, 0, NULL } }; @@ -26608,15 +30187,15 @@ dissect_lte_rrc_EIMTA_MainConfigServCell_r12(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t T_setup_61_sequence[] = { +static const per_sequence_t T_setup_82_sequence[] = { { &hf_lte_rrc_nkaPUCCH_AN_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_61(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_82(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_lte_rrc_T_setup_61, T_setup_61_sequence); + ett_lte_rrc_T_setup_82, T_setup_82_sequence); return offset; } @@ -26630,7 +30209,7 @@ static const value_string lte_rrc_T_nkaPUCCH_Param_r12_vals[] = { static const per_choice_t T_nkaPUCCH_Param_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_70 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_61 }, + { 1, &hf_lte_rrc_setup_92 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_82 }, { 0, NULL, 0, NULL } }; @@ -26658,15 +30237,15 @@ dissect_lte_rrc_PUCCH_ConfigDedicated_v1250(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t T_setup_12_sequence[] = { +static const per_sequence_t T_setup_15_sequence[] = { { &hf_lte_rrc_csi_MeasSubframeSets_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_15(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_lte_rrc_T_setup_12, T_setup_12_sequence); + ett_lte_rrc_T_setup_15, T_setup_15_sequence); return offset; } @@ -26680,7 +30259,7 @@ static const value_string lte_rrc_T_csi_SubframePatternConfig_r12_vals[] = { static const per_choice_t T_csi_SubframePatternConfig_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_12 }, + { 1, &hf_lte_rrc_setup_15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_15 }, { 0, NULL, 0, NULL } }; @@ -26792,15 +30371,15 @@ dissect_lte_rrc_T_aperiodicCSI_Trigger_v1250(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t T_setup_08_sequence[] = { +static const per_sequence_t T_setup_11_sequence[] = { { &hf_lte_rrc_aperiodicCSI_Trigger_v1250, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_aperiodicCSI_Trigger_v1250 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_11(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_lte_rrc_T_setup_08, T_setup_08_sequence); + ett_lte_rrc_T_setup_11, T_setup_11_sequence); return offset; } @@ -26814,7 +30393,7 @@ static const value_string lte_rrc_CQI_ReportAperiodic_v1250_vals[] = { static const per_choice_t CQI_ReportAperiodic_v1250_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_08 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_08 }, + { 1, &hf_lte_rrc_setup_11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_11 }, { 0, NULL, 0, NULL } }; @@ -26885,7 +30464,7 @@ dissect_lte_rrc_Alpha_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } -static const per_sequence_t T_setup_102_sequence[] = { +static const per_sequence_t T_setup_138_sequence[] = { { &hf_lte_rrc_tpc_SubframeSet_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, { &hf_lte_rrc_p0_NominalPUSCH_SubframeSet2_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, { &hf_lte_rrc_alpha_SubframeSet2_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Alpha_r12 }, @@ -26894,9 +30473,9 @@ static const per_sequence_t T_setup_102_sequence[] = { }; static int -dissect_lte_rrc_T_setup_102(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_138(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_lte_rrc_T_setup_102, T_setup_102_sequence); + ett_lte_rrc_T_setup_138, T_setup_138_sequence); return offset; } @@ -26910,7 +30489,7 @@ static const value_string lte_rrc_T_set2PowerControlParameter_vals[] = { static const per_choice_t T_set2PowerControlParameter_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_115 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_102 }, + { 1, &hf_lte_rrc_setup_153 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_138 }, { 0, NULL, 0, NULL } }; @@ -26954,7 +30533,7 @@ dissect_lte_rrc_T_betaOffsetMC_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t T_setup_70_sequence[] = { +static const per_sequence_t T_setup_91_sequence[] = { { &hf_lte_rrc_betaOffset_ACK_Index_SubframeSet2_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, { &hf_lte_rrc_betaOffset_RI_Index_SubframeSet2_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, { &hf_lte_rrc_betaOffset_CQI_Index_SubframeSet2_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, @@ -26963,9 +30542,9 @@ static const per_sequence_t T_setup_70_sequence[] = { }; static int -dissect_lte_rrc_T_setup_70(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_91(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_lte_rrc_T_setup_70, T_setup_70_sequence); + ett_lte_rrc_T_setup_91, T_setup_91_sequence); return offset; } @@ -26979,7 +30558,7 @@ static const value_string lte_rrc_T_uciOnPUSCH_vals[] = { static const per_choice_t T_uciOnPUSCH_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_80 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_70 }, + { 1, &hf_lte_rrc_setup_102 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_91 }, { 0, NULL, 0, NULL } }; @@ -27021,15 +30600,15 @@ dissect_lte_rrc_SEQUENCE_SIZE_1_maxDS_ZTP_CSI_RS_r12_OF_ZeroTxPowerCSI_RS_r12(tv } -static const per_sequence_t T_setup_19_sequence[] = { +static const per_sequence_t T_setup_26_sequence[] = { { &hf_lte_rrc_zeroTxPowerCSI_RS_List_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxDS_ZTP_CSI_RS_r12_OF_ZeroTxPowerCSI_RS_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_26(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_lte_rrc_T_setup_19, T_setup_19_sequence); + ett_lte_rrc_T_setup_26, T_setup_26_sequence); return offset; } @@ -27043,7 +30622,7 @@ static const value_string lte_rrc_T_ds_ZeroTxPowerCSI_RS_r12_vals[] = { static const per_choice_t T_ds_ZeroTxPowerCSI_RS_r12_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_22 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_19 }, + { 1, &hf_lte_rrc_setup_29 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_26 }, { 0, NULL, 0, NULL } }; @@ -27196,16 +30775,16 @@ dissect_lte_rrc_T_repetitionFactor_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t T_setup_62_sequence[] = { +static const per_sequence_t T_setup_83_sequence[] = { { &hf_lte_rrc_repetitionFactor_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_repetitionFactor_r13 }, { &hf_lte_rrc_n1PUCCH_AN_Rep_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_62(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_83(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_lte_rrc_T_setup_62, T_setup_62_sequence); + ett_lte_rrc_T_setup_83, T_setup_83_sequence); return offset; } @@ -27219,7 +30798,7 @@ static const value_string lte_rrc_T_ackNackRepetition_r13_vals[] = { static const per_choice_t T_ackNackRepetition_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_71 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_62 }, + { 1, &hf_lte_rrc_setup_93 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_83 }, { 0, NULL, 0, NULL } }; @@ -27277,15 +30856,15 @@ dissect_lte_rrc_T_n3PUCCH_AN_ListP1_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const per_sequence_t T_setup_63_sequence[] = { +static const per_sequence_t T_setup_84_sequence[] = { { &hf_lte_rrc_n3PUCCH_AN_ListP1_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n3PUCCH_AN_ListP1_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_84(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_lte_rrc_T_setup_63, T_setup_63_sequence); + ett_lte_rrc_T_setup_84, T_setup_84_sequence); return offset; } @@ -27299,7 +30878,7 @@ static const value_string lte_rrc_T_twoAntennaPortActivatedPUCCH_Format3_r13_val static const per_choice_t T_twoAntennaPortActivatedPUCCH_Format3_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_72 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_63 }, + { 1, &hf_lte_rrc_setup_94 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_84 }, { 0, NULL, 0, NULL } }; @@ -27356,16 +30935,16 @@ dissect_lte_rrc_T_n1PUCCH_AN_CS_ListP1_r13(tvbuff_t *tvb _U_, int offset _U_, as } -static const per_sequence_t T_setup_64_sequence[] = { +static const per_sequence_t T_setup_85_sequence[] = { { &hf_lte_rrc_n1PUCCH_AN_CS_List_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_N1PUCCH_AN_CS_List_r13 }, { &hf_lte_rrc_n1PUCCH_AN_CS_ListP1_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n1PUCCH_AN_CS_ListP1_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_85(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_lte_rrc_T_setup_64, T_setup_64_sequence); + ett_lte_rrc_T_setup_85, T_setup_85_sequence); return offset; } @@ -27379,7 +30958,7 @@ static const value_string lte_rrc_T_n1PUCCH_AN_CS_r13_vals[] = { static const per_choice_t T_n1PUCCH_AN_CS_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_73 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_64 }, + { 1, &hf_lte_rrc_setup_95 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_85 }, { 0, NULL, 0, NULL } }; @@ -27575,16 +31154,16 @@ dissect_lte_rrc_T_simultaneousPUCCH_PUSCH_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t T_setup_65_sequence[] = { +static const per_sequence_t T_setup_86_sequence[] = { { &hf_lte_rrc_nPUCCH_Identity_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_503 }, { &hf_lte_rrc_n1PUCCH_AN_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_65(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_86(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_lte_rrc_T_setup_65, T_setup_65_sequence); + ett_lte_rrc_T_setup_86, T_setup_86_sequence); return offset; } @@ -27598,7 +31177,7 @@ static const value_string lte_rrc_T_nPUCCH_Param_r13_vals[] = { static const per_choice_t T_nPUCCH_Param_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_74 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_65 }, + { 1, &hf_lte_rrc_setup_96 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_86 }, { 0, NULL, 0, NULL } }; @@ -27612,15 +31191,15 @@ dissect_lte_rrc_T_nPUCCH_Param_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t T_setup_66_sequence[] = { +static const per_sequence_t T_setup_87_sequence[] = { { &hf_lte_rrc_nkaPUCCH_AN_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_66(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_87(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_lte_rrc_T_setup_66, T_setup_66_sequence); + ett_lte_rrc_T_setup_87, T_setup_87_sequence); return offset; } @@ -27634,7 +31213,7 @@ static const value_string lte_rrc_T_nkaPUCCH_Param_r13_vals[] = { static const per_choice_t T_nkaPUCCH_Param_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_75 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_66 }, + { 1, &hf_lte_rrc_setup_97 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_87 }, { 0, NULL, 0, NULL } }; @@ -27766,22 +31345,22 @@ dissect_lte_rrc_T_modeB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } -static const value_string lte_rrc_T_setup_67_vals[] = { +static const value_string lte_rrc_T_setup_88_vals[] = { { 0, "modeA" }, { 1, "modeB" }, { 0, NULL } }; -static const per_choice_t T_setup_67_choice[] = { +static const per_choice_t T_setup_88_choice[] = { { 0, &hf_lte_rrc_modeA , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_modeA }, { 1, &hf_lte_rrc_modeB , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_modeB }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_setup_67(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_88(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_lte_rrc_T_setup_67, T_setup_67_choice, + ett_lte_rrc_T_setup_88, T_setup_88_choice, NULL); return offset; @@ -27796,7 +31375,7 @@ static const value_string lte_rrc_T_pucch_NumRepetitionCE_r13_vals[] = { static const per_choice_t T_pucch_NumRepetitionCE_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_76 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_67 }, + { 1, &hf_lte_rrc_setup_98 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_88 }, { 0, NULL, 0, NULL } }; @@ -27884,16 +31463,16 @@ dissect_lte_rrc_T_dmrs_WithOCC_Activated_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t T_setup_71_sequence[] = { +static const per_sequence_t T_setup_92_sequence[] = { { &hf_lte_rrc_nPUSCH_Identity_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_509 }, { &hf_lte_rrc_nDMRS_CSH_Identity_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_509 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_71(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_92(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_lte_rrc_T_setup_71, T_setup_71_sequence); + ett_lte_rrc_T_setup_92, T_setup_92_sequence); return offset; } @@ -27907,7 +31486,7 @@ static const value_string lte_rrc_T_pusch_DMRS_r11_01_vals[] = { static const per_choice_t T_pusch_DMRS_r11_01_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_81 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_71 }, + { 1, &hf_lte_rrc_setup_103 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_92 }, { 0, NULL, 0, NULL } }; @@ -27938,7 +31517,7 @@ dissect_lte_rrc_T_betaOffsetMC_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const per_sequence_t T_setup_72_sequence[] = { +static const per_sequence_t T_setup_93_sequence[] = { { &hf_lte_rrc_betaOffset_ACK_Index_SubframeSet2_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, { &hf_lte_rrc_betaOffset2_ACK_Index_SubframeSet2_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, { &hf_lte_rrc_betaOffset_RI_Index_SubframeSet2_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, @@ -27948,9 +31527,9 @@ static const per_sequence_t T_setup_72_sequence[] = { }; static int -dissect_lte_rrc_T_setup_72(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_93(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_lte_rrc_T_setup_72, T_setup_72_sequence); + ett_lte_rrc_T_setup_93, T_setup_93_sequence); return offset; } @@ -27964,7 +31543,7 @@ static const value_string lte_rrc_T_uciOnPUSCH_01_vals[] = { static const per_choice_t T_uciOnPUSCH_01_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_82 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_72 }, + { 1, &hf_lte_rrc_setup_104 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_93 }, { 0, NULL, 0, NULL } }; @@ -28034,7 +31613,7 @@ dissect_lte_rrc_PDCCH_CandidateReductionValue_r13(tvbuff_t *tvb _U_, int offset } -static const per_sequence_t T_setup_43_sequence[] = { +static const per_sequence_t T_setup_57_sequence[] = { { &hf_lte_rrc_pdcch_candidateReductionAL1_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r13 }, { &hf_lte_rrc_pdcch_candidateReductionAL2_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r13 }, { &hf_lte_rrc_pdcch_candidateReductionAL3_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r13 }, @@ -28044,9 +31623,9 @@ static const per_sequence_t T_setup_43_sequence[] = { }; static int -dissect_lte_rrc_T_setup_43(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_57(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_lte_rrc_T_setup_43, T_setup_43_sequence); + ett_lte_rrc_T_setup_57, T_setup_57_sequence); return offset; } @@ -28060,7 +31639,7 @@ static const value_string lte_rrc_PDCCH_CandidateReductions_r13_vals[] = { static const per_choice_t PDCCH_CandidateReductions_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_51 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_43 }, + { 1, &hf_lte_rrc_setup_66 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_57 }, { 0, NULL, 0, NULL } }; @@ -28136,7 +31715,7 @@ dissect_lte_rrc_T_aperiodicCSI_Trigger_v1310(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t T_setup_10_sequence[] = { +static const per_sequence_t T_setup_13_sequence[] = { { &hf_lte_rrc_trigger1_SubframeSetIndicator_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_32 }, { &hf_lte_rrc_trigger2_SubframeSetIndicator_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_32 }, { &hf_lte_rrc_trigger3_SubframeSetIndicator_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_32 }, @@ -28147,9 +31726,9 @@ static const per_sequence_t T_setup_10_sequence[] = { }; static int -dissect_lte_rrc_T_setup_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_13(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_lte_rrc_T_setup_10, T_setup_10_sequence); + ett_lte_rrc_T_setup_13, T_setup_13_sequence); return offset; } @@ -28163,7 +31742,7 @@ static const value_string lte_rrc_T_aperiodicCSI_Trigger2_r13_vals[] = { static const per_choice_t T_aperiodicCSI_Trigger2_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_10 }, + { 1, &hf_lte_rrc_setup_13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_13 }, { 0, NULL, 0, NULL } }; @@ -28177,16 +31756,16 @@ dissect_lte_rrc_T_aperiodicCSI_Trigger2_r13(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t T_setup_09_sequence[] = { +static const per_sequence_t T_setup_12_sequence[] = { { &hf_lte_rrc_aperiodicCSI_Trigger_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_aperiodicCSI_Trigger_v1310 }, { &hf_lte_rrc_aperiodicCSI_Trigger2_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_aperiodicCSI_Trigger2_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_12(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_lte_rrc_T_setup_09, T_setup_09_sequence); + ett_lte_rrc_T_setup_12, T_setup_12_sequence); return offset; } @@ -28200,7 +31779,7 @@ static const value_string lte_rrc_CQI_ReportAperiodic_v1310_vals[] = { static const per_choice_t CQI_ReportAperiodic_v1310_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_09 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_09 }, + { 1, &hf_lte_rrc_setup_12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_12 }, { 0, NULL, 0, NULL } }; @@ -28304,7 +31883,7 @@ dissect_lte_rrc_T_transmissionCombNum_r13(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t T_setup_86_sequence[] = { +static const per_sequence_t T_setup_116_sequence[] = { { &hf_lte_rrc_transmissionComb_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_3 }, { &hf_lte_rrc_cyclicShift_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cyclicShift_v1310 }, { &hf_lte_rrc_transmissionCombNum_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_transmissionCombNum_r13 }, @@ -28312,9 +31891,9 @@ static const per_sequence_t T_setup_86_sequence[] = { }; static int -dissect_lte_rrc_T_setup_86(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_116(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_lte_rrc_T_setup_86, T_setup_86_sequence); + ett_lte_rrc_T_setup_116, T_setup_116_sequence); return offset; } @@ -28328,7 +31907,7 @@ static const value_string lte_rrc_SoundingRS_UL_ConfigDedicated_v1310_vals[] = { static const per_choice_t SoundingRS_UL_ConfigDedicated_v1310_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_99 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_86 }, + { 1, &hf_lte_rrc_setup_131 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_116 }, { 0, NULL, 0, NULL } }; @@ -28436,7 +32015,7 @@ dissect_lte_rrc_T_transmissionCombNum_r13_01(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t T_setup_87_sequence[] = { +static const per_sequence_t T_setup_117_sequence[] = { { &hf_lte_rrc_srs_UpPtsAdd_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_srs_UpPtsAdd_r13 }, { &hf_lte_rrc_srs_Bandwidth_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_srs_Bandwidth_r13 }, { &hf_lte_rrc_srs_HoppingBandwidth_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_srs_HoppingBandwidth_r13 }, @@ -28451,9 +32030,9 @@ static const per_sequence_t T_setup_87_sequence[] = { }; static int -dissect_lte_rrc_T_setup_87(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_117(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_lte_rrc_T_setup_87, T_setup_87_sequence); + ett_lte_rrc_T_setup_117, T_setup_117_sequence); return offset; } @@ -28467,7 +32046,7 @@ static const value_string lte_rrc_SoundingRS_UL_ConfigDedicatedUpPTsExt_r13_vals static const per_choice_t SoundingRS_UL_ConfigDedicatedUpPTsExt_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_100 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_87 }, + { 1, &hf_lte_rrc_setup_132 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_117 }, { 0, NULL, 0, NULL } }; @@ -28545,16 +32124,16 @@ dissect_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_v1310(tvbuff_t *tvb _U_, int o } -static const per_sequence_t T_setup_91_sequence[] = { +static const per_sequence_t T_setup_121_sequence[] = { { &hf_lte_rrc_srs_ConfigApDCI_Format0_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SRS_ConfigAp_v1310 }, { &hf_lte_rrc_srs_ConfigApDCI_Format1a2b2c_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SRS_ConfigAp_v1310 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_91(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_121(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_lte_rrc_T_setup_91, T_setup_91_sequence); + ett_lte_rrc_T_setup_121, T_setup_121_sequence); return offset; } @@ -28568,7 +32147,7 @@ static const value_string lte_rrc_T_srs_ActivateAp_v1310_vals[] = { static const per_choice_t T_srs_ActivateAp_v1310_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_104 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_91 }, + { 1, &hf_lte_rrc_setup_136 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_121 }, { 0, NULL, 0, NULL } }; @@ -28582,16 +32161,16 @@ dissect_lte_rrc_T_srs_ActivateAp_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t T_setup_90_sequence[] = { +static const per_sequence_t T_setup_120_sequence[] = { { &hf_lte_rrc_srs_ConfigApDCI_Format4_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_v1310 }, { &hf_lte_rrc_srs_ActivateAp_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_ActivateAp_v1310 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_90(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_120(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_lte_rrc_T_setup_90, T_setup_90_sequence); + ett_lte_rrc_T_setup_120, T_setup_120_sequence); return offset; } @@ -28605,7 +32184,7 @@ static const value_string lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1310_v static const per_choice_t SoundingRS_UL_ConfigDedicatedAperiodic_v1310_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_103 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_90 }, + { 1, &hf_lte_rrc_setup_135 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_120 }, { 0, NULL, 0, NULL } }; @@ -28728,16 +32307,16 @@ dissect_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_r13(tvbuff_t *tvb _U_, int off } -static const per_sequence_t T_setup_93_sequence[] = { +static const per_sequence_t T_setup_123_sequence[] = { { &hf_lte_rrc_srs_ConfigApDCI_Format0_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SRS_ConfigAp_r13 }, { &hf_lte_rrc_srs_ConfigApDCI_Format1a2b2c_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SRS_ConfigAp_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_93(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_123(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_lte_rrc_T_setup_93, T_setup_93_sequence); + ett_lte_rrc_T_setup_123, T_setup_123_sequence); return offset; } @@ -28751,7 +32330,7 @@ static const value_string lte_rrc_T_srs_ActivateAp_r13_vals[] = { static const per_choice_t T_srs_ActivateAp_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_106 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_93 }, + { 1, &hf_lte_rrc_setup_138 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_123 }, { 0, NULL, 0, NULL } }; @@ -28765,7 +32344,7 @@ dissect_lte_rrc_T_srs_ActivateAp_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } -static const per_sequence_t T_setup_92_sequence[] = { +static const per_sequence_t T_setup_122_sequence[] = { { &hf_lte_rrc_srs_UpPtsAdd_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_srs_UpPtsAdd_r13_01 }, { &hf_lte_rrc_srs_ConfigIndexAp_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, { &hf_lte_rrc_srs_ConfigApDCI_Format4_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_r13 }, @@ -28774,9 +32353,9 @@ static const per_sequence_t T_setup_92_sequence[] = { }; static int -dissect_lte_rrc_T_setup_92(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_122(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_lte_rrc_T_setup_92, T_setup_92_sequence); + ett_lte_rrc_T_setup_122, T_setup_122_sequence); return offset; } @@ -28790,7 +32369,7 @@ static const value_string lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt static const per_choice_t SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_105 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_92 }, + { 1, &hf_lte_rrc_setup_137 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_122 }, { 0, NULL, 0, NULL } }; @@ -28818,7 +32397,7 @@ dissect_lte_rrc_CSI_RS_Config_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const value_string lte_rrc_T_setup_51_vals[] = { +static const value_string lte_rrc_T_setup_67_vals[] = { { 0, "ce-ModeA" }, { 1, "ce-ModeB" }, { 0, NULL } @@ -28826,7 +32405,7 @@ static const value_string lte_rrc_T_setup_51_vals[] = { static int -dissect_lte_rrc_T_setup_51(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_67(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, FALSE, 0, NULL); @@ -28842,7 +32421,7 @@ static const value_string lte_rrc_T_ce_Mode_r13_vals[] = { static const per_choice_t T_ce_Mode_r13_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_59 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_51 }, + { 1, &hf_lte_rrc_setup_76 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_67 }, { 0, NULL, 0, NULL } }; @@ -28995,7 +32574,7 @@ dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex_r14(tvbuff_t *tvb _U_, int } -static const per_sequence_t T_setup_99_sequence[] = { +static const per_sequence_t T_setup_135_sequence[] = { { &hf_lte_rrc_srs_TPC_RNTI_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, { &hf_lte_rrc_startingBitOfFormat3B_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, { &hf_lte_rrc_fieldTypeFormat3B_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, @@ -29004,9 +32583,9 @@ static const per_sequence_t T_setup_99_sequence[] = { }; static int -dissect_lte_rrc_T_setup_99(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_135(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_lte_rrc_T_setup_99, T_setup_99_sequence); + ett_lte_rrc_T_setup_135, T_setup_135_sequence); return offset; } @@ -29020,7 +32599,7 @@ static const value_string lte_rrc_SRS_TPC_PDCCH_Config_r14_vals[] = { static const per_choice_t SRS_TPC_PDCCH_Config_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_112 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_99 }, + { 1, &hf_lte_rrc_setup_150 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_135 }, { 0, NULL, 0, NULL } }; @@ -29056,7 +32635,7 @@ static const value_string lte_rrc_T_typeA_SRS_TPC_PDCCH_Group_r14_vals[] = { static const per_choice_t T_typeA_SRS_TPC_PDCCH_Group_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_60 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config_r14 }, + { 1, &hf_lte_rrc_setup_77 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config_r14 }, { 0, NULL, 0, NULL } }; @@ -29108,16 +32687,16 @@ dissect_lte_rrc_T_p_a_must_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } -static const per_sequence_t T_setup_52_sequence[] = { +static const per_sequence_t T_setup_68_sequence[] = { { &hf_lte_rrc_k_max_r14 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_k_max_r14 }, { &hf_lte_rrc_p_a_must_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_p_a_must_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_52(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_68(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_lte_rrc_T_setup_52, T_setup_52_sequence); + ett_lte_rrc_T_setup_68, T_setup_68_sequence); return offset; } @@ -29131,7 +32710,7 @@ static const value_string lte_rrc_T_must_Config_r14_vals[] = { static const per_choice_t T_must_Config_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_61 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_52 }, + { 1, &hf_lte_rrc_setup_78 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_68 }, { 0, NULL, 0, NULL } }; @@ -29213,16 +32792,16 @@ dissect_lte_rrc_T_interval_ULHoppingPUSCH_Enh_r14(tvbuff_t *tvb _U_, int offset } -static const per_sequence_t T_setup_75_sequence[] = { +static const per_sequence_t T_setup_99_sequence[] = { { &hf_lte_rrc_pusch_HoppingOffsetPUSCH_Enh_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_100 }, { &hf_lte_rrc_interval_ULHoppingPUSCH_Enh_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interval_ULHoppingPUSCH_Enh_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_75(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_99(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_lte_rrc_T_setup_75, T_setup_75_sequence); + ett_lte_rrc_T_setup_99, T_setup_99_sequence); return offset; } @@ -29236,7 +32815,7 @@ static const value_string lte_rrc_PUSCH_EnhancementsConfig_r14_vals[] = { static const per_choice_t PUSCH_EnhancementsConfig_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_85 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_75 }, + { 1, &hf_lte_rrc_setup_110 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_99 }, { 0, NULL, 0, NULL } }; @@ -29484,16 +33063,16 @@ dissect_lte_rrc_T_dmrs_LessUpPTS_Config_r14(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t T_setup_73_sequence[] = { +static const per_sequence_t T_setup_97_sequence[] = { { &hf_lte_rrc_symPUSCH_UpPTS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_symPUSCH_UpPTS_r14 }, { &hf_lte_rrc_dmrs_LessUpPTS_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_LessUpPTS_Config_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_73(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_97(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_lte_rrc_T_setup_73, T_setup_73_sequence); + ett_lte_rrc_T_setup_97, T_setup_97_sequence); return offset; } @@ -29507,7 +33086,7 @@ static const value_string lte_rrc_TDD_PUSCH_UpPTS_r14_vals[] = { static const per_choice_t TDD_PUSCH_UpPTS_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_83 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_73 }, + { 1, &hf_lte_rrc_setup_108 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_97 }, { 0, NULL, 0, NULL } }; @@ -29553,22 +33132,22 @@ dissect_lte_rrc_T_tpc_SubframeSet_NotConfigured_r14(tvbuff_t *tvb _U_, int offse } -static const value_string lte_rrc_T_setup_74_vals[] = { +static const value_string lte_rrc_T_setup_98_vals[] = { { 0, "tpc-SubframeSet-Configured-r14" }, { 1, "tpc-SubframeSet-NotConfigured-r14" }, { 0, NULL } }; -static const per_choice_t T_setup_74_choice[] = { +static const per_choice_t T_setup_98_choice[] = { { 0, &hf_lte_rrc_tpc_SubframeSet_Configured_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tpc_SubframeSet_Configured_r14 }, { 1, &hf_lte_rrc_tpc_SubframeSet_NotConfigured_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tpc_SubframeSet_NotConfigured_r14 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_setup_74(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_98(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_lte_rrc_T_setup_74, T_setup_74_choice, + ett_lte_rrc_T_setup_98, T_setup_98_choice, NULL); return offset; @@ -29583,7 +33162,7 @@ static const value_string lte_rrc_Enable256QAM_r14_vals[] = { static const per_choice_t Enable256QAM_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_84 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_74 }, + { 1, &hf_lte_rrc_setup_109 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_98 }, { 0, NULL, 0, NULL } }; @@ -29672,7 +33251,7 @@ dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_UL_ConfigDedicatedAperiodicUpPTs static const per_sequence_t CSI_RS_Config_v1430_sequence[] = { - { &hf_lte_rrc_eMIMO_Type_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO_v1430 }, + { &hf_lte_rrc_dummy_03 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO_v1430 }, { &hf_lte_rrc_eMIMO_Hybrid_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO_Hybrid_r14 }, { &hf_lte_rrc_advancedCodebookEnabled_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } @@ -29709,7 +33288,7 @@ static const value_string lte_rrc_CSI_RS_ConfigZP_ApList_r14_vals[] = { static const per_choice_t CSI_RS_ConfigZP_ApList_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_31 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SEQUENCE_SIZE_1_maxCSI_RS_ZP_r11_OF_CSI_RS_ConfigZP_r11 }, + { 1, &hf_lte_rrc_setup_41 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SEQUENCE_SIZE_1_maxCSI_RS_ZP_r11_OF_CSI_RS_ConfigZP_r11 }, { 0, NULL, 0, NULL } }; @@ -29853,96 +33432,64 @@ dissect_lte_rrc_PhysicalConfigDedicated_eag_9(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t PhysicalConfigDedicated_sequence[] = { - { &hf_lte_rrc_pdsch_ConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated }, - { &hf_lte_rrc_pucch_ConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigDedicated }, - { &hf_lte_rrc_pusch_ConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicated }, - { &hf_lte_rrc_uplinkPowerControlDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicated }, - { &hf_lte_rrc_tpc_PDCCH_ConfigPUCCH, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TPC_PDCCH_Config }, - { &hf_lte_rrc_tpc_PDCCH_ConfigPUSCH, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TPC_PDCCH_Config }, - { &hf_lte_rrc_cqi_ReportConfig, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicated }, - { &hf_lte_rrc_antennaInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_antennaInfo }, - { &hf_lte_rrc_schedulingRequestConfig, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SchedulingRequestConfig }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_5 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_6 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_7 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_8 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_9 }, +static const per_sequence_t CSI_RS_Config_v1480_sequence[] = { + { &hf_lte_rrc_eMIMO_Type_v1480, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO_v1480 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhysicalConfigDedicated(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CSI_RS_Config_v1480(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_lte_rrc_PhysicalConfigDedicated, PhysicalConfigDedicated_sequence); + ett_lte_rrc_CSI_RS_Config_v1480, CSI_RS_Config_v1480_sequence); return offset; } -static const value_string lte_rrc_T_t301_r9_vals[] = { - { 0, "ms100" }, - { 1, "ms200" }, - { 2, "ms300" }, - { 3, "ms400" }, - { 4, "ms600" }, - { 5, "ms1000" }, - { 6, "ms1500" }, - { 7, "ms2000" }, - { 0, NULL } +static const per_sequence_t PhysicalConfigDedicated_eag_10_sequence[] = { + { &hf_lte_rrc_csi_RS_Config_v1480, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1480 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_t301_r9(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PhysicalConfigDedicated_eag_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicated_eag_10_sequence); return offset; } -static const value_string lte_rrc_T_t310_r9_vals[] = { - { 0, "ms0" }, - { 1, "ms50" }, - { 2, "ms100" }, - { 3, "ms200" }, - { 4, "ms500" }, - { 5, "ms1000" }, - { 6, "ms2000" }, +static const value_string lte_rrc_T_transmissionModeDL_MBSFN_r15_vals[] = { + { 0, "tm9" }, + { 1, "tm10" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t310_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_transmissionModeDL_MBSFN_r15(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, - 7, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_n310_r9_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, - { 4, "n6" }, - { 5, "n8" }, - { 6, "n10" }, - { 7, "n20" }, +static const value_string lte_rrc_T_transmissionModeDL_nonMBSFN_r15_vals[] = { + { 0, "tm1" }, + { 1, "tm2" }, + { 2, "tm3" }, + { 3, "tm4" }, + { 4, "tm6" }, + { 5, "tm8" }, + { 6, "tm9" }, + { 7, "tm10" }, { 0, NULL } }; static int -dissect_lte_rrc_T_n310_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_transmissionModeDL_nonMBSFN_r15(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, 8, NULL, FALSE, 0, NULL); @@ -29950,893 +33497,953 @@ dissect_lte_rrc_T_n310_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } -static const value_string lte_rrc_T_t311_r9_vals[] = { - { 0, "ms1000" }, - { 1, "ms3000" }, - { 2, "ms5000" }, - { 3, "ms10000" }, - { 4, "ms15000" }, - { 5, "ms20000" }, - { 6, "ms30000" }, - { 0, NULL } -}; + +static int +dissect_lte_rrc_BIT_STRING_SIZE_96(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, + 96, 96, FALSE, NULL, NULL); + + return offset; +} + static int -dissect_lte_rrc_T_t311_r9(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, - 7, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BIT_STRING_SIZE_109(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, + 109, 109, FALSE, NULL, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_codebookSubsetRestriction_01_vals[] = { + { 0, "n2TxAntenna-tm3-r15" }, + { 1, "n4TxAntenna-tm3-r15" }, + { 2, "n2TxAntenna-tm4-r15" }, + { 3, "n4TxAntenna-tm4-r15" }, + { 4, "n2TxAntenna-tm5-r15" }, + { 5, "n4TxAntenna-tm5-r15" }, + { 6, "n2TxAntenna-tm6-r15" }, + { 7, "n4TxAntenna-tm6-r15" }, + { 8, "n2TxAntenna-tm8-r15" }, + { 9, "n4TxAntenna-tm8-r15" }, + { 10, "n2TxAntenna-tm9and10-r15" }, + { 11, "n4TxAntenna-tm9and10-r15" }, + { 12, "n8TxAntenna-tm9and10-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_codebookSubsetRestriction_01_choice[] = { + { 0, &hf_lte_rrc_n2TxAntenna_tm3_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_2 }, + { 1, &hf_lte_rrc_n4TxAntenna_tm3_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_4 }, + { 2, &hf_lte_rrc_n2TxAntenna_tm4_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_6 }, + { 3, &hf_lte_rrc_n4TxAntenna_tm4_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_64 }, + { 4, &hf_lte_rrc_n2TxAntenna_tm5_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_4 }, + { 5, &hf_lte_rrc_n4TxAntenna_tm5_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { 6, &hf_lte_rrc_n2TxAntenna_tm6_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_4 }, + { 7, &hf_lte_rrc_n4TxAntenna_tm6_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { 8, &hf_lte_rrc_n2TxAntenna_tm8_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_6 }, + { 9, &hf_lte_rrc_n4TxAntenna_tm8_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_64 }, + { 10, &hf_lte_rrc_n2TxAntenna_tm9and10_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_6 }, + { 11, &hf_lte_rrc_n4TxAntenna_tm9and10_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_96 }, + { 12, &hf_lte_rrc_n8TxAntenna_tm9and10_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_109 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_codebookSubsetRestriction_01(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_lte_rrc_T_codebookSubsetRestriction_01, T_codebookSubsetRestriction_01_choice, + NULL); return offset; } -static const value_string lte_rrc_T_n311_r9_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, - { 4, "n5" }, - { 5, "n6" }, - { 6, "n8" }, - { 7, "n10" }, +static const value_string lte_rrc_T_maxLayersMIMO_STTI_r15_vals[] = { + { 0, "twoLayers" }, + { 1, "fourLayers" }, { 0, NULL } }; static int -dissect_lte_rrc_T_n311_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_maxLayersMIMO_STTI_r15(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, - 8, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_79_sequence[] = { - { &hf_lte_rrc_t301_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t301_r9 }, - { &hf_lte_rrc_t310_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t310_r9 }, - { &hf_lte_rrc_n310_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n310_r9 }, - { &hf_lte_rrc_t311_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t311_r9 }, - { &hf_lte_rrc_n311_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n311_r9 }, +static const per_sequence_t T_setup_07_sequence[] = { + { &hf_lte_rrc_transmissionModeDL_MBSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_transmissionModeDL_MBSFN_r15 }, + { &hf_lte_rrc_transmissionModeDL_nonMBSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_transmissionModeDL_nonMBSFN_r15 }, + { &hf_lte_rrc_codebookSubsetRestriction_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_codebookSubsetRestriction_01 }, + { &hf_lte_rrc_maxLayersMIMO_STTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxLayersMIMO_STTI_r15 }, + { &hf_lte_rrc_slotSubslotPDSCH_TxDiv_2Layer_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_slotSubslotPDSCH_TxDiv_4Layer_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_79(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_07(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_lte_rrc_T_setup_79, T_setup_79_sequence); + ett_lte_rrc_T_setup_07, T_setup_07_sequence); return offset; } -static const value_string lte_rrc_RLF_TimersAndConstants_r9_vals[] = { +static const value_string lte_rrc_AntennaInfoDedicatedSTTI_r15_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t RLF_TimersAndConstants_r9_choice[] = { +static const per_choice_t AntennaInfoDedicatedSTTI_r15_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_92 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_79 }, + { 1, &hf_lte_rrc_setup_07 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_07 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_RLF_TimersAndConstants_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AntennaInfoDedicatedSTTI_r15(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_lte_rrc_RLF_TimersAndConstants_r9, RLF_TimersAndConstants_r9_choice, + ett_lte_rrc_AntennaInfoDedicatedSTTI_r15, AntennaInfoDedicatedSTTI_r15_choice, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicated_eag_1_sequence[] = { - { &hf_lte_rrc_rlf_TimersAndConstants_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLF_TimersAndConstants_r9 }, +static const value_string lte_rrc_T_transmissionModeUL_STTI_r15_vals[] = { + { 0, "tm1" }, + { 1, "tm2" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_transmissionModeUL_STTI_r15(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t AntennaInfoUL_STTI_r15_sequence[] = { + { &hf_lte_rrc_transmissionModeUL_STTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_transmissionModeUL_STTI_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigDedicated_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_1_sequence); +dissect_lte_rrc_AntennaInfoUL_STTI_r15(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_lte_rrc_AntennaInfoUL_STTI_r15, AntennaInfoUL_STTI_r15_sequence); return offset; } -static const value_string lte_rrc_MeasSubframePatternPCell_r10_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_codebooksizeDeterminationSTTI_r15_vals[] = { + { 0, "dai" }, + { 1, "cc" }, { 0, NULL } }; -static const per_choice_t MeasSubframePatternPCell_r10_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_86 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_MeasSubframePattern_r10 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_MeasSubframePatternPCell_r10(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_lte_rrc_MeasSubframePatternPCell_r10, MeasSubframePatternPCell_r10_choice, - NULL); +dissect_lte_rrc_T_codebooksizeDeterminationSTTI_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicated_eag_2_sequence[] = { - { &hf_lte_rrc_measSubframePatternPCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasSubframePatternPCell_r10 }, +static const per_sequence_t PUCCH_ConfigDedicated_v1530_sequence[] = { + { &hf_lte_rrc_n1PUCCH_AN_SPT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_2047 }, + { &hf_lte_rrc_codebooksizeDeterminationSTTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_codebooksizeDeterminationSTTI_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigDedicated_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_2_sequence); +dissect_lte_rrc_PUCCH_ConfigDedicated_v1530(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_lte_rrc_PUCCH_ConfigDedicated_v1530, PUCCH_ConfigDedicated_v1530_sequence); return offset; } -static const value_string lte_rrc_T_antennaPortsCount_r11_01_vals[] = { - { 0, "an1" }, - { 1, "an2" }, - { 2, "an4" }, - { 3, "spare1" }, - { 0, NULL } -}; + +static int +dissect_lte_rrc_INTEGER_0_1319(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1319U, NULL, FALSE); + + return offset; +} + static int -dissect_lte_rrc_T_antennaPortsCount_r11_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); +dissect_lte_rrc_INTEGER_0_3959(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3959U, NULL, FALSE); return offset; } -static const per_sequence_t CRS_AssistanceInfo_r11_eag_1_sequence[] = { - { &hf_lte_rrc_mbsfn_SubframeConfigList_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SR_SubslotSPUCCH_ResourceList_r15_sequence_of[1] = { + { &hf_lte_rrc_SR_SubslotSPUCCH_ResourceList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1319 }, }; static int -dissect_lte_rrc_CRS_AssistanceInfo_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CRS_AssistanceInfo_r11_eag_1_sequence); +dissect_lte_rrc_SR_SubslotSPUCCH_ResourceList_r15(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_lte_rrc_SR_SubslotSPUCCH_ResourceList_r15, SR_SubslotSPUCCH_ResourceList_r15_sequence_of, + 1, 4, FALSE); return offset; } -static const per_sequence_t CRS_AssistanceInfo_r11_sequence[] = { - { &hf_lte_rrc_physCellId_r11_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_antennaPortsCount_r11_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_antennaPortsCount_r11_01 }, - { &hf_lte_rrc_mbsfn_SubframeConfigList_r11_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfigList }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CRS_AssistanceInfo_r11_eag_1 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_CRS_AssistanceInfo_r11(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_lte_rrc_CRS_AssistanceInfo_r11, CRS_AssistanceInfo_r11_sequence); +dissect_lte_rrc_INTEGER_0_36(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 36U, NULL, FALSE); return offset; } -static const per_sequence_t CRS_AssistanceInfoList_r11_sequence_of[1] = { - { &hf_lte_rrc_CRS_AssistanceInfoList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CRS_AssistanceInfo_r11 }, -}; static int -dissect_lte_rrc_CRS_AssistanceInfoList_r11(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_lte_rrc_CRS_AssistanceInfoList_r11, CRS_AssistanceInfoList_r11_sequence_of, - 1, maxCellReport, FALSE); +dissect_lte_rrc_INTEGER_0_122(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 122U, NULL, FALSE); return offset; } -static const value_string lte_rrc_NeighCellsCRS_Info_r11_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_dssr_TransMax_r15_vals[] = { + { 0, "n4" }, + { 1, "n8" }, + { 2, "n16" }, + { 3, "n32" }, + { 4, "n64" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; -static const per_choice_t NeighCellsCRS_Info_r11_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_87 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CRS_AssistanceInfoList_r11 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_NeighCellsCRS_Info_r11(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_lte_rrc_NeighCellsCRS_Info_r11, NeighCellsCRS_Info_r11_choice, - NULL); +dissect_lte_rrc_T_dssr_TransMax_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicated_eag_3_sequence[] = { - { &hf_lte_rrc_neighCellsCRS_Info_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r11 }, +static const per_sequence_t T_setup_111_sequence[] = { + { &hf_lte_rrc_sr_SlotSPUCCH_IndexFH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1319 }, + { &hf_lte_rrc_sr_SlotSPUCCH_IndexNoFH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3959 }, + { &hf_lte_rrc_sr_SubslotSPUCCH_ResourceList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SR_SubslotSPUCCH_ResourceList_r15 }, + { &hf_lte_rrc_sr_ConfigIndexSlot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_36 }, + { &hf_lte_rrc_sr_ConfigIndexSubslot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_122 }, + { &hf_lte_rrc_dssr_TransMax_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dssr_TransMax_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigDedicated_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_3_sequence); +dissect_lte_rrc_T_setup_111(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_lte_rrc_T_setup_111, T_setup_111_sequence); return offset; } -static const per_sequence_t NeighCellsToReleaseList_r12_sequence_of[1] = { - { &hf_lte_rrc_NeighCellsToReleaseList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, +static const value_string lte_rrc_SchedulingRequestConfig_v1530_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t SchedulingRequestConfig_v1530_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_126 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_111 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_NeighCellsToReleaseList_r12(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_lte_rrc_NeighCellsToReleaseList_r12, NeighCellsToReleaseList_r12_sequence_of, - 1, maxNeighCell_r12, FALSE); +dissect_lte_rrc_SchedulingRequestConfig_v1530(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_lte_rrc_SchedulingRequestConfig_v1530, SchedulingRequestConfig_v1530_choice, + NULL); return offset; } -static const value_string lte_rrc_T_crs_PortsCount_r12_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n4" }, - { 3, "spare" }, +static const value_string lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1_r15_vals[] = { + { 0, "dB0" }, + { 1, "dB-2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_crs_PortsCount_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1_r15(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); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_P_a_vals[] = { - { 0, "dB-6" }, - { 1, "dB-4dot77" }, - { 2, "dB-3" }, - { 3, "dB-1dot77" }, - { 4, "dB0" }, - { 5, "dB1" }, - { 6, "dB2" }, - { 7, "dB3" }, +static const value_string lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1a_r15_vals[] = { + { 0, "dB0" }, + { 1, "dB-2" }, { 0, NULL } }; static int -dissect_lte_rrc_P_a(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1a_r15(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, - 8, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a_sequence_of[1] = { - { &hf_lte_rrc_p_aList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_P_a }, +static const value_string lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1b_r15_vals[] = { + { 0, "dB0" }, + { 1, "dB-2" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a(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_lte_rrc_SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a, SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a_sequence_of, - 1, maxP_a_PerNeighCell_r12, FALSE); +dissect_lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1b_r15(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, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_deltaTxD_OffsetSPUCCH_Format3_r15_vals[] = { + { 0, "dB0" }, + { 1, "dB-2" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_transmissionModeList_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *tm_list_tvb=NULL; - proto_tree *subtree; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, &tm_list_tvb, NULL); +dissect_lte_rrc_T_deltaTxD_OffsetSPUCCH_Format3_r15(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, FALSE, 0, NULL); + + return offset; +} - if (tm_list_tvb) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_transmissionModeList_r12); - proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm1, tm_list_tvb, 0, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm2, tm_list_tvb, 1, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm3, tm_list_tvb, 2, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm4, tm_list_tvb, 3, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm6, tm_list_tvb, 4, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm8, tm_list_tvb, 5, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm9, tm_list_tvb, 6, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm10, tm_list_tvb, 7, 1, ENC_BIG_ENDIAN); - } +static const per_sequence_t DeltaTxD_OffsetListSPUCCH_r15_sequence[] = { + { &hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format1_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1_r15 }, + { &hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format1a_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1a_r15 }, + { &hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format1b_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1b_r15 }, + { &hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format3_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaTxD_OffsetSPUCCH_Format3_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_DeltaTxD_OffsetListSPUCCH_r15(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_lte_rrc_DeltaTxD_OffsetListSPUCCH_r15, DeltaTxD_OffsetListSPUCCH_r15_sequence); return offset; } -static const per_sequence_t NeighCellsInfo_r12_sequence[] = { - { &hf_lte_rrc_physCellId_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_p_b_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, - { &hf_lte_rrc_crs_PortsCount_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_crs_PortsCount_r12 }, - { &hf_lte_rrc_mbsfn_SubframeConfig_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList }, - { &hf_lte_rrc_p_aList_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a }, - { &hf_lte_rrc_transmissionModeList_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_transmissionModeList_r12 }, - { &hf_lte_rrc_resAllocGranularity_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, +static const per_sequence_t UplinkPowerControlDedicatedSTTI_r15_sequence[] = { + { &hf_lte_rrc_accumulationEnabledSTTI_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_deltaTxD_OffsetListSPUCCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DeltaTxD_OffsetListSPUCCH_r15 }, + { &hf_lte_rrc_uplinkPower_CSIPayload, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NeighCellsInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UplinkPowerControlDedicatedSTTI_r15(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_lte_rrc_NeighCellsInfo_r12, NeighCellsInfo_r12_sequence); + ett_lte_rrc_UplinkPowerControlDedicatedSTTI_r15, UplinkPowerControlDedicatedSTTI_r15_sequence); return offset; } -static const per_sequence_t NeighCellsToAddModList_r12_sequence_of[1] = { - { &hf_lte_rrc_NeighCellsToAddModList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsInfo_r12 }, +static const value_string lte_rrc_T_altCQI_Table_1024QAM_r15_01_vals[] = { + { 0, "allSubframes" }, + { 1, "csi-SubframeSet1" }, + { 2, "csi-SubframeSet2" }, + { 3, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_NeighCellsToAddModList_r12(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_lte_rrc_NeighCellsToAddModList_r12, NeighCellsToAddModList_r12_sequence_of, - 1, maxNeighCell_r12, FALSE); +dissect_lte_rrc_T_altCQI_Table_1024QAM_r15_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 per_sequence_t T_setup_76_sequence[] = { - { &hf_lte_rrc_neighCellsToReleaseList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsToReleaseList_r12 }, - { &hf_lte_rrc_neighCellsToAddModList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsToAddModList_r12 }, - { &hf_lte_rrc_servCellp_a_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_a }, +static const per_sequence_t T_setup_16_sequence[] = { + { &hf_lte_rrc_cqi_ReportConfig_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_r10 }, + { &hf_lte_rrc_cqi_ReportConfig_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1130 }, + { &hf_lte_rrc_cqi_ReportConfigPCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1250 }, + { &hf_lte_rrc_cqi_ReportConfig_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1310 }, + { &hf_lte_rrc_cqi_ReportConfig_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1320 }, + { &hf_lte_rrc_cqi_ReportConfig_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1430 }, + { &hf_lte_rrc_altCQI_Table_1024QAM_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_altCQI_Table_1024QAM_r15_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_76(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_16(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_lte_rrc_T_setup_76, T_setup_76_sequence); + ett_lte_rrc_T_setup_16, T_setup_16_sequence); return offset; } -static const value_string lte_rrc_NAICS_AssistanceInfo_r12_vals[] = { +static const value_string lte_rrc_CQI_ReportConfig_r15_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t NAICS_AssistanceInfo_r12_choice[] = { +static const per_choice_t CQI_ReportConfig_r15_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_89 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_76 }, + { 1, &hf_lte_rrc_setup_16 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_16 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_NAICS_AssistanceInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CQI_ReportConfig_r15(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_lte_rrc_NAICS_AssistanceInfo_r12, NAICS_AssistanceInfo_r12_choice, + ett_lte_rrc_CQI_ReportConfig_r15, CQI_ReportConfig_r15_choice, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicated_eag_4_sequence[] = { - { &hf_lte_rrc_naics_Info_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NAICS_AssistanceInfo_r12 }, +static const per_sequence_t T_setup_27_sequence[] = { + { &hf_lte_rrc_csi_RS_Config_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_r10 }, + { &hf_lte_rrc_csi_RS_Config_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1250 }, + { &hf_lte_rrc_csi_RS_Config_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1310 }, + { &hf_lte_rrc_csi_RS_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigDedicated_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_4_sequence); +dissect_lte_rrc_T_setup_27(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_lte_rrc_T_setup_27, T_setup_27_sequence); return offset; } -static const value_string lte_rrc_T_antennaPortsCount_r13_vals[] = { - { 0, "an1" }, - { 1, "an2" }, - { 2, "an4" }, - { 3, "spare1" }, +static const value_string lte_rrc_CSI_RS_Config_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t CSI_RS_Config_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_30 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_27 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_antennaPortsCount_r13(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); +dissect_lte_rrc_CSI_RS_Config_r15(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_lte_rrc_CSI_RS_Config_r15, CSI_RS_Config_r15_choice, + NULL); return offset; } -static const per_sequence_t CRS_AssistanceInfo_r13_eag_1_sequence[] = { - { &hf_lte_rrc_mbsfn_SubframeConfigList_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, - { NULL, 0, 0, NULL } +static const per_sequence_t CSI_RS_ConfigNZPToReleaseList_r15_sequence_of[1] = { + { &hf_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_RS_ConfigNZPId_r13 }, }; static int -dissect_lte_rrc_CRS_AssistanceInfo_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CRS_AssistanceInfo_r13_eag_1_sequence); +dissect_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r15(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_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r15, CSI_RS_ConfigNZPToReleaseList_r15_sequence_of, + 1, maxCSI_RS_NZP_r13, FALSE); return offset; } -static const per_sequence_t CRS_AssistanceInfo_r13_sequence[] = { - { &hf_lte_rrc_physCellId_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_antennaPortsCount_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_antennaPortsCount_r13 }, - { &hf_lte_rrc_mbsfn_SubframeConfigList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CRS_AssistanceInfo_r13_eag_1 }, - { NULL, 0, 0, NULL } +static const per_sequence_t CSI_RS_ConfigNZPToAddModList_r15_sequence_of[1] = { + { &hf_lte_rrc_CSI_RS_ConfigNZPToAddModList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_RS_ConfigNZP_r11 }, }; static int -dissect_lte_rrc_CRS_AssistanceInfo_r13(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_lte_rrc_CRS_AssistanceInfo_r13, CRS_AssistanceInfo_r13_sequence); +dissect_lte_rrc_CSI_RS_ConfigNZPToAddModList_r15(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_lte_rrc_CSI_RS_ConfigNZPToAddModList_r15, CSI_RS_ConfigNZPToAddModList_r15_sequence_of, + 1, maxCSI_RS_NZP_r13, FALSE); return offset; } -static const per_sequence_t CRS_AssistanceInfoList_r13_sequence_of[1] = { - { &hf_lte_rrc_CRS_AssistanceInfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CRS_AssistanceInfo_r13 }, +static const value_string lte_rrc_T_altCQI_TableSTTI_r15_vals[] = { + { 0, "allSubframes" }, + { 1, "csi-SubframeSet1" }, + { 2, "csi-SubframeSet2" }, + { 3, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CRS_AssistanceInfoList_r13(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_lte_rrc_CRS_AssistanceInfoList_r13, CRS_AssistanceInfoList_r13_sequence_of, - 1, maxCellReport, FALSE); +dissect_lte_rrc_T_altCQI_TableSTTI_r15(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 lte_rrc_NeighCellsCRS_Info_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_altCQI_Table1024QAM_STTI_r15_vals[] = { + { 0, "allSubframes" }, + { 1, "csi-SubframeSet1" }, + { 2, "csi-SubframeSet2" }, + { 3, "spare1" }, { 0, NULL } }; -static const per_choice_t NeighCellsCRS_Info_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_88 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CRS_AssistanceInfoList_r13 }, - { 0, NULL, 0, NULL } + +static int +dissect_lte_rrc_T_altCQI_Table1024QAM_STTI_r15(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 lte_rrc_T_resourceAllocation_r15_vals[] = { + { 0, "resourceAllocationType0" }, + { 1, "resourceAllocationType2" }, + { 0, NULL } }; + static int -dissect_lte_rrc_NeighCellsCRS_Info_r13(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_lte_rrc_NeighCellsCRS_Info_r13, NeighCellsCRS_Info_r13_choice, - NULL); +dissect_lte_rrc_T_resourceAllocation_r15(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_t301_v1310_vals[] = { - { 0, "ms2500" }, - { 1, "ms3000" }, - { 2, "ms3500" }, - { 3, "ms4000" }, - { 4, "ms5000" }, - { 5, "ms6000" }, - { 6, "ms8000" }, - { 7, "ms10000" }, +static const value_string lte_rrc_T_tbsIndexAlt_STTI_r15_vals[] = { + { 0, "a33" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t301_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tbsIndexAlt_STTI_r15(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_t310_v1330_vals[] = { - { 0, "ms4000" }, - { 1, "ms6000" }, +static const value_string lte_rrc_T_tbsIndexAlt2_STTI_r15_vals[] = { + { 0, "b33" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t310_v1330(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tbsIndexAlt2_STTI_r15(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_eag_1_sequence[] = { - { &hf_lte_rrc_t310_v1330 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t310_v1330 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_tbsIndexAlt3_STTI_r15_vals[] = { + { 0, "a37" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_1_sequence); +dissect_lte_rrc_T_tbsIndexAlt3_STTI_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_80_sequence[] = { - { &hf_lte_rrc_t301_v1310 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t301_v1310 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_1 }, +static const per_sequence_t T_setup_112_sequence[] = { + { &hf_lte_rrc_altCQI_TableSTTI_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_altCQI_TableSTTI_r15 }, + { &hf_lte_rrc_altCQI_Table1024QAM_STTI_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_altCQI_Table1024QAM_STTI_r15 }, + { &hf_lte_rrc_resourceAllocation_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_resourceAllocation_r15 }, + { &hf_lte_rrc_tbsIndexAlt_STTI_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_tbsIndexAlt_STTI_r15 }, + { &hf_lte_rrc_tbsIndexAlt2_STTI_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_tbsIndexAlt2_STTI_r15 }, + { &hf_lte_rrc_tbsIndexAlt3_STTI_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_tbsIndexAlt3_STTI_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_80(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_112(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_lte_rrc_T_setup_80, T_setup_80_sequence); + ett_lte_rrc_T_setup_112, T_setup_112_sequence); return offset; } -static const value_string lte_rrc_RLF_TimersAndConstants_r13_vals[] = { +static const value_string lte_rrc_SlotOrSubslotPDSCH_Config_r15_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t RLF_TimersAndConstants_r13_choice[] = { +static const per_choice_t SlotOrSubslotPDSCH_Config_r15_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_93 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_80 }, + { 1, &hf_lte_rrc_setup_127 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_112 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_RLF_TimersAndConstants_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SlotOrSubslotPDSCH_Config_r15(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_lte_rrc_RLF_TimersAndConstants_r13, RLF_TimersAndConstants_r13_choice, + ett_lte_rrc_SlotOrSubslotPDSCH_Config_r15, SlotOrSubslotPDSCH_Config_r15_choice, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicated_eag_5_sequence[] = { - { &hf_lte_rrc_neighCellsCRS_Info_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r13 }, - { &hf_lte_rrc_rlf_TimersAndConstants_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLF_TimersAndConstants_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t T_betaOffsetSubslot_ACK_Index_r15_sequence_of[1] = { + { &hf_lte_rrc_betaOffsetSubslot_ACK_Index_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, }; static int -dissect_lte_rrc_RadioResourceConfigDedicated_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_5_sequence); +dissect_lte_rrc_T_betaOffsetSubslot_ACK_Index_r15(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_lte_rrc_T_betaOffsetSubslot_ACK_Index_r15, T_betaOffsetSubslot_ACK_Index_r15_sequence_of, + 1, 2, FALSE); return offset; } -static const per_sequence_t SPS_ConfigUL_ToAddModList_r14_sequence_of[1] = { - { &hf_lte_rrc_SPS_ConfigUL_ToAddModList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigUL }, +static const per_sequence_t T_betaOffset2Subslot_ACK_Index_r15_sequence_of[1] = { + { &hf_lte_rrc_betaOffset2Subslot_ACK_Index_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, }; static int -dissect_lte_rrc_SPS_ConfigUL_ToAddModList_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_betaOffset2Subslot_ACK_Index_r15(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_lte_rrc_SPS_ConfigUL_ToAddModList_r14, SPS_ConfigUL_ToAddModList_r14_sequence_of, - 1, maxConfigSPS_r14, FALSE); + ett_lte_rrc_T_betaOffset2Subslot_ACK_Index_r15, T_betaOffset2Subslot_ACK_Index_r15_sequence_of, + 1, 2, FALSE); return offset; } -static const per_sequence_t SPS_ConfigUL_ToReleaseList_r14_sequence_of[1] = { - { &hf_lte_rrc_SPS_ConfigUL_ToReleaseList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigIndex_r14 }, +static const per_sequence_t T_betaOffsetSubslot_RI_Index_r15_sequence_of[1] = { + { &hf_lte_rrc_betaOffsetSubslot_RI_Index_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, }; static int -dissect_lte_rrc_SPS_ConfigUL_ToReleaseList_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_betaOffsetSubslot_RI_Index_r15(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_lte_rrc_SPS_ConfigUL_ToReleaseList_r14, SPS_ConfigUL_ToReleaseList_r14_sequence_of, - 1, maxConfigSPS_r14, FALSE); + ett_lte_rrc_T_betaOffsetSubslot_RI_Index_r15, T_betaOffsetSubslot_RI_Index_r15_sequence_of, + 1, 2, FALSE); return offset; } -static const value_string lte_rrc_T_semiPersistSchedIntervalSL_r14_vals[] = { - { 0, "sf20" }, - { 1, "sf50" }, - { 2, "sf100" }, - { 3, "sf200" }, - { 4, "sf300" }, - { 5, "sf400" }, - { 6, "sf500" }, - { 7, "sf600" }, - { 8, "sf700" }, - { 9, "sf800" }, - { 10, "sf900" }, - { 11, "sf1000" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } +static const per_sequence_t T_setup_113_sequence[] = { + { &hf_lte_rrc_betaOffsetSlot_ACK_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_betaOffset2Slot_ACK_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_betaOffsetSubslot_ACK_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_betaOffsetSubslot_ACK_Index_r15 }, + { &hf_lte_rrc_betaOffset2Subslot_ACK_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_betaOffset2Subslot_ACK_Index_r15 }, + { &hf_lte_rrc_betaOffsetSlot_RI_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_betaOffsetSubslot_RI_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_betaOffsetSubslot_RI_Index_r15 }, + { &hf_lte_rrc_betaOffsetSlot_CQI_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_betaOffsetSubslot_CQI_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_enable256QAM_SlotOrSubslot_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Enable256QAM_r14 }, + { &hf_lte_rrc_resourceAllocationOffset_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_2 }, + { &hf_lte_rrc_ul_DMRS_IFDMA_SlotOrSubslot_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_semiPersistSchedIntervalSL_r14(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_setup_113(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_lte_rrc_T_setup_113, T_setup_113_sequence); return offset; } -static const per_sequence_t SPS_ConfigSL_r14_sequence[] = { - { &hf_lte_rrc_sps_ConfigIndex_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigIndex_r14 }, - { &hf_lte_rrc_semiPersistSchedIntervalSL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_semiPersistSchedIntervalSL_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_SlotOrSubslotPUSCH_Config_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t SlotOrSubslotPUSCH_Config_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_128 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_113 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SPS_ConfigSL_r14(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_lte_rrc_SPS_ConfigSL_r14, SPS_ConfigSL_r14_sequence); +dissect_lte_rrc_SlotOrSubslotPUSCH_Config_r15(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_lte_rrc_SlotOrSubslotPUSCH_Config_r15, SlotOrSubslotPUSCH_Config_r15_choice, + NULL); return offset; } -static const per_sequence_t SPS_ConfigSL_ToAddModList_r14_sequence_of[1] = { - { &hf_lte_rrc_SPS_ConfigSL_ToAddModList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigSL_r14 }, +static const value_string lte_rrc_T_spdcch_L1_ReuseIndication_r15_vals[] = { + { 0, "n0" }, + { 1, "n1" }, + { 2, "n2" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SPS_ConfigSL_ToAddModList_r14(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_lte_rrc_SPS_ConfigSL_ToAddModList_r14, SPS_ConfigSL_ToAddModList_r14_sequence_of, - 1, maxConfigSPS_r14, FALSE); +dissect_lte_rrc_T_spdcch_L1_ReuseIndication_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SPS_ConfigSL_ToReleaseList_r14_sequence_of[1] = { - { &hf_lte_rrc_SPS_ConfigSL_ToReleaseList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigIndex_r14 }, +static const value_string lte_rrc_T_spdcch_SetReferenceSig_r15_vals[] = { + { 0, "crs" }, + { 1, "dmrs" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SPS_ConfigSL_ToReleaseList_r14(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_lte_rrc_SPS_ConfigSL_ToReleaseList_r14, SPS_ConfigSL_ToReleaseList_r14_sequence_of, - 1, maxConfigSPS_r14, FALSE); +dissect_lte_rrc_T_spdcch_SetReferenceSig_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SPS_Config_v1430_sequence[] = { - { &hf_lte_rrc_ul_SPS_V_RNTI_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_C_RNTI }, - { &hf_lte_rrc_sl_SPS_V_RNTI_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_C_RNTI }, - { &hf_lte_rrc_sps_ConfigUL_ToAddModList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigUL_ToAddModList_r14 }, - { &hf_lte_rrc_sps_ConfigUL_ToReleaseList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigUL_ToReleaseList_r14 }, - { &hf_lte_rrc_sps_ConfigSL_ToAddModList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigSL_ToAddModList_r14 }, - { &hf_lte_rrc_sps_ConfigSL_ToReleaseList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigSL_ToReleaseList_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_transmissionType_r15_vals[] = { + { 0, "localised" }, + { 1, "distributed" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SPS_Config_v1430(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_lte_rrc_SPS_Config_v1430, SPS_Config_v1430_sequence); +dissect_lte_rrc_T_transmissionType_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicated_eag_6_sequence[] = { - { &hf_lte_rrc_sps_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config_v1430 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RadioResourceConfigDedicated_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_6_sequence); +dissect_lte_rrc_DCI7_Candidates_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 6U, NULL, FALSE); return offset; } -static const per_sequence_t RadioResourceConfigDedicated_sequence[] = { - { &hf_lte_rrc_srb_ToAddModList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SRB_ToAddModList }, - { &hf_lte_rrc_drb_ToAddModList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToAddModList }, - { &hf_lte_rrc_drb_ToReleaseList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToReleaseList }, - { &hf_lte_rrc_mac_MainConfig, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_mac_MainConfig }, - { &hf_lte_rrc_sps_Config , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config }, - { &hf_lte_rrc_physicalConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicated }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_5 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_6 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_4_OF_DCI7_Candidates_r15_sequence_of[1] = { + { &hf_lte_rrc_dci7_CandidatesPerAL_PDCCH_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DCI7_Candidates_r15 }, }; static int -dissect_lte_rrc_RadioResourceConfigDedicated(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - private_data_set_simult_pucch_pusch_cell_type(actx, SIMULT_PUCCH_PUSCH_PCELL); - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RadioResourceConfigDedicated, RadioResourceConfigDedicated_sequence); - - +dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_DCI7_Candidates_r15(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_lte_rrc_SEQUENCE_SIZE_1_4_OF_DCI7_Candidates_r15, SEQUENCE_SIZE_1_4_OF_DCI7_Candidates_r15_sequence_of, + 1, 4, FALSE); return offset; } -static const value_string lte_rrc_CipheringAlgorithm_r12_vals[] = { - { 0, "eea0" }, - { 1, "eea1" }, - { 2, "eea2" }, - { 3, "eea3-v1130" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t DCI7_CandidatesPerAL_SPDCCH_r15_sequence_of[1] = { + { &hf_lte_rrc_DCI7_CandidatesPerAL_SPDCCH_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DCI7_Candidates_r15 }, }; - static int -dissect_lte_rrc_CipheringAlgorithm_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 value; - pdcp_security_info_t *p_security_algorithms; - offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 8, &value, TRUE, 0, NULL); - - p_security_algorithms = private_data_pdcp_security_algorithms(actx); - p_security_algorithms->ciphering = (enum security_ciphering_algorithm_e)value; - +dissect_lte_rrc_DCI7_CandidatesPerAL_SPDCCH_r15(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_lte_rrc_DCI7_CandidatesPerAL_SPDCCH_r15, DCI7_CandidatesPerAL_SPDCCH_r15_sequence_of, + 1, 4, FALSE); return offset; } -static const value_string lte_rrc_T_integrityProtAlgorithm_vals[] = { - { 0, "eia0-v920" }, - { 1, "eia1" }, - { 2, "eia2" }, - { 3, "eia3-v1130" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_2_OF_DCI7_CandidatesPerAL_SPDCCH_r15_sequence_of[1] = { + { &hf_lte_rrc_dci7_CandidateSetsPerAL_SPDCCH_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DCI7_CandidatesPerAL_SPDCCH_r15 }, }; +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_DCI7_CandidatesPerAL_SPDCCH_r15(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_lte_rrc_SEQUENCE_SIZE_1_2_OF_DCI7_CandidatesPerAL_SPDCCH_r15, SEQUENCE_SIZE_1_2_OF_DCI7_CandidatesPerAL_SPDCCH_r15_sequence_of, + 1, 2, FALSE); + + return offset; +} + + static int -dissect_lte_rrc_T_integrityProtAlgorithm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 value; - pdcp_security_info_t *p_security_algorithms; - offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 8, &value, TRUE, 0, NULL); +dissect_lte_rrc_INTEGER_2_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 2U, 100U, NULL, FALSE); + + return offset; +} - p_security_algorithms = private_data_pdcp_security_algorithms(actx); - p_security_algorithms->integrity = (enum security_integrity_algorithm_e)value; +static int +dissect_lte_rrc_BIT_STRING_SIZE_98(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, + 98, 98, FALSE, NULL, NULL); + return offset; } -static const per_sequence_t SecurityAlgorithmConfig_sequence[] = { - { &hf_lte_rrc_cipheringAlgorithm, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CipheringAlgorithm_r12 }, - { &hf_lte_rrc_integrityProtAlgorithm, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_integrityProtAlgorithm }, +static const per_sequence_t T_resourceBlockAssignment_r15_sequence[] = { + { &hf_lte_rrc_numberRB_InFreq_domain_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_2_100 }, + { &hf_lte_rrc_resourceBlockAssignment_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_98 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SecurityAlgorithmConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - pdcp_lte_info *p_pdcp_lte_info; - pdcp_security_info_t *p_security_algorithms; +dissect_lte_rrc_T_resourceBlockAssignment_r15(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_lte_rrc_SecurityAlgorithmConfig, SecurityAlgorithmConfig_sequence); + ett_lte_rrc_T_resourceBlockAssignment_r15, T_resourceBlockAssignment_r15_sequence); + + return offset; +} - p_security_algorithms = private_data_pdcp_security_algorithms(actx); - p_security_algorithms->configuration_frame = actx->pinfo->num; - p_security_algorithms->previous_configuration_frame = 0; - p_security_algorithms->previous_integrity = eia0; - p_security_algorithms->previous_ciphering = eea0; - /* Look for UE identifier */ - p_pdcp_lte_info = (pdcp_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_pdcp_lte, 0); - if (p_pdcp_lte_info != NULL) { - /* Configure algorithms */ - set_pdcp_lte_security_algorithms(p_pdcp_lte_info->ueid, p_security_algorithms); - } +static int +dissect_lte_rrc_BIT_STRING_SIZE_5(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, + 5, 5, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_dl_Bandwidth_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, - { 0, NULL } -}; +static int +dissect_lte_rrc_INTEGER_0_49(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 49U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_al_StartingPointSPDCCH_r15_sequence_of[1] = { + { &hf_lte_rrc_al_StartingPointSPDCCH_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_49 }, +}; static int -dissect_lte_rrc_T_dl_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, - 6, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_al_StartingPointSPDCCH_r15(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_lte_rrc_T_al_StartingPointSPDCCH_r15, T_al_StartingPointSPDCCH_r15_sequence_of, + 1, 4, FALSE); return offset; } -static const value_string lte_rrc_T_phich_Duration_vals[] = { - { 0, "normal" }, - { 1, "extended" }, +static const value_string lte_rrc_T_subframeType_r15_vals[] = { + { 0, "mbsfn" }, + { 1, "nonmbsfn" }, + { 2, "all" }, { 0, NULL } }; static int -dissect_lte_rrc_T_phich_Duration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_subframeType_r15(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, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_phich_Resource_vals[] = { - { 0, "oneSixth" }, - { 1, "half" }, - { 2, "one" }, - { 3, "two" }, +static const value_string lte_rrc_T_rateMatchingMode_r15_vals[] = { + { 0, "m1" }, + { 1, "m2" }, + { 2, "m3" }, + { 3, "m4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_phich_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rateMatchingMode_r15(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); @@ -30844,472 +34451,482 @@ dissect_lte_rrc_T_phich_Resource(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } -static const per_sequence_t PHICH_Config_sequence[] = { - { &hf_lte_rrc_phich_Duration, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_phich_Duration }, - { &hf_lte_rrc_phich_Resource, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_phich_Resource }, +static const per_sequence_t T_setup_126_sequence[] = { + { &hf_lte_rrc_spdcch_SetConfigId_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_spdcch_SetReferenceSig_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_spdcch_SetReferenceSig_r15 }, + { &hf_lte_rrc_transmissionType_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_transmissionType_r15 }, + { &hf_lte_rrc_spdcch_NoOfSymbols_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_2 }, + { &hf_lte_rrc_dmrs_ScramblingSequenceInt_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_503 }, + { &hf_lte_rrc_dci7_CandidatesPerAL_PDCCH_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_DCI7_Candidates_r15 }, + { &hf_lte_rrc_dci7_CandidateSetsPerAL_SPDCCH_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_DCI7_CandidatesPerAL_SPDCCH_r15 }, + { &hf_lte_rrc_resourceBlockAssignment_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_resourceBlockAssignment_r15 }, + { &hf_lte_rrc_subslotApplicability_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_5 }, + { &hf_lte_rrc_al_StartingPointSPDCCH_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_al_StartingPointSPDCCH_r15 }, + { &hf_lte_rrc_subframeType_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_subframeType_r15 }, + { &hf_lte_rrc_rateMatchingMode_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rateMatchingMode_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PHICH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_126(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_lte_rrc_PHICH_Config, PHICH_Config_sequence); + ett_lte_rrc_T_setup_126, T_setup_126_sequence); return offset; } +static const value_string lte_rrc_SPDCCH_Elements_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_systemFrameNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *value_tvb = NULL; - guint32 sfn; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, &value_tvb, NULL); - - /* Show SFN in info column */ - sfn = tvb_get_guint8(value_tvb, 0); - col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (SFN=%u)", sfn); +static const per_choice_t SPDCCH_Elements_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_141 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_126 }, + { 0, NULL, 0, NULL } +}; +static int +dissect_lte_rrc_SPDCCH_Elements_r15(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_lte_rrc_SPDCCH_Elements_r15, SPDCCH_Elements_r15_choice, + NULL); return offset; } +static const per_sequence_t SPDCCH_Set_r15_sequence_of[1] = { + { &hf_lte_rrc_SPDCCH_Set_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPDCCH_Elements_r15 }, +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_5(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, - 5, 5, FALSE, NULL, NULL); +dissect_lte_rrc_SPDCCH_Set_r15(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_lte_rrc_SPDCCH_Set_r15, SPDCCH_Set_r15_sequence_of, + 1, 4, FALSE); return offset; } -static const per_sequence_t MasterInformationBlock_sequence[] = { - { &hf_lte_rrc_dl_Bandwidth, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_Bandwidth }, - { &hf_lte_rrc_phich_Config, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PHICH_Config }, - { &hf_lte_rrc_systemFrameNumber, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_systemFrameNumber }, - { &hf_lte_rrc_schedulingInfoSIB1_BR_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, - { &hf_lte_rrc_spare_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_5 }, +static const per_sequence_t T_setup_125_sequence[] = { + { &hf_lte_rrc_spdcch_L1_ReuseIndication_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_spdcch_L1_ReuseIndication_r15 }, + { &hf_lte_rrc_spdcch_SetConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPDCCH_Set_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MasterInformationBlock(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MasterInformationBlock"); - +dissect_lte_rrc_T_setup_125(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_lte_rrc_MasterInformationBlock, MasterInformationBlock_sequence); + ett_lte_rrc_T_setup_125, T_setup_125_sequence); return offset; } +static const value_string lte_rrc_SPDCCH_Config_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_MCC_MNC_Digit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 9U, NULL, FALSE); - - return offset; -} - - -static const per_sequence_t MCC_sequence_of[1] = { - { &hf_lte_rrc_MCC_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MCC_MNC_Digit }, +static const per_choice_t SPDCCH_Config_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_140 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_125 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MCC(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_lte_rrc_MCC, MCC_sequence_of, - 3, 3, FALSE); +dissect_lte_rrc_SPDCCH_Config_r15(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_lte_rrc_SPDCCH_Config_r15, SPDCCH_Config_r15_choice, + NULL); return offset; } -static const per_sequence_t MNC_sequence_of[1] = { - { &hf_lte_rrc_MNC_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MCC_MNC_Digit }, +static const per_sequence_t T_n1SubslotSPUCCH_AN_List_r15_sequence_of[1] = { + { &hf_lte_rrc_n1SubslotSPUCCH_AN_List_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1319 }, }; static int -dissect_lte_rrc_MNC(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_n1SubslotSPUCCH_AN_List_r15(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_lte_rrc_MNC, MNC_sequence_of, - 2, 3, FALSE); + ett_lte_rrc_T_n1SubslotSPUCCH_AN_List_r15, T_n1SubslotSPUCCH_AN_List_r15_sequence_of, + 1, 4, FALSE); return offset; } -static const per_sequence_t PLMN_Identity_sequence[] = { - { &hf_lte_rrc_mcc , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MCC }, - { &hf_lte_rrc_mnc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MNC }, +static const per_sequence_t N4SPUCCH_Resource_r15_sequence[] = { + { &hf_lte_rrc_n4startingPRB_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_109 }, + { &hf_lte_rrc_n4numberOfPRB_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PLMN_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_N4SPUCCH_Resource_r15(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_lte_rrc_PLMN_Identity, PLMN_Identity_sequence); + ett_lte_rrc_N4SPUCCH_Resource_r15, N4SPUCCH_Resource_r15_sequence); return offset; } -static const value_string lte_rrc_T_cellReservedForOperatorUse_vals[] = { - { 0, "reserved" }, - { 1, "notReserved" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15_sequence_of[1] = { + { &hf_lte_rrc_n4SPUCCHSlot_Resource_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_N4SPUCCH_Resource_r15 }, }; - static int -dissect_lte_rrc_T_cellReservedForOperatorUse(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, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15(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_lte_rrc_SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15, SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15_sequence_of, + 1, 2, FALSE); return offset; } -static const per_sequence_t PLMN_IdentityInfo_sequence[] = { - { &hf_lte_rrc_plmn_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, - { &hf_lte_rrc_cellReservedForOperatorUse, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReservedForOperatorUse }, +static const per_sequence_t T_setup_134_sequence[] = { + { &hf_lte_rrc_n1SubslotSPUCCH_AN_List_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_n1SubslotSPUCCH_AN_List_r15 }, + { &hf_lte_rrc_n1SlotSPUCCH_FH_AN_List_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1319 }, + { &hf_lte_rrc_n1SlotSPUCCH_NoFH_AN_List_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3959 }, + { &hf_lte_rrc_n3SPUCCH_AN_List_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_549 }, + { &hf_lte_rrc_n4SPUCCHSlot_Resource_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15 }, + { &hf_lte_rrc_n4SPUCCHSubslot_Resource_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15 }, + { &hf_lte_rrc_n4maxCoderateSlotPUCCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_n4maxCoderateSubslotPUCCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_n4maxCoderateMultiResourceSlotPUCCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_n4maxCoderateMultiResourceSubslotPUCCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PLMN_IdentityInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_134(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_lte_rrc_PLMN_IdentityInfo, PLMN_IdentityInfo_sequence); + ett_lte_rrc_T_setup_134, T_setup_134_sequence); return offset; } -static const per_sequence_t PLMN_IdentityList_sequence_of[1] = { - { &hf_lte_rrc_PLMN_IdentityList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityInfo }, +static const value_string lte_rrc_SPUCCH_Elements_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } }; -static int -dissect_lte_rrc_PLMN_IdentityList(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_lte_rrc_PLMN_IdentityList, PLMN_IdentityList_sequence_of, - 1, maxPLMN_r11, FALSE); - - return offset; -} - - +static const per_choice_t SPUCCH_Elements_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_149 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_134 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_TrackingAreaCode(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, - 16, 16, FALSE, NULL, NULL); +dissect_lte_rrc_SPUCCH_Elements_r15(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_lte_rrc_SPUCCH_Elements_r15, SPUCCH_Elements_r15_choice, + NULL); return offset; } +static const per_sequence_t SPUCCH_Set_r15_sequence_of[1] = { + { &hf_lte_rrc_SPUCCH_Set_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPUCCH_Elements_r15 }, +}; static int -dissect_lte_rrc_CellIdentity(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, - 28, 28, FALSE, NULL, NULL); +dissect_lte_rrc_SPUCCH_Set_r15(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_lte_rrc_SPUCCH_Set_r15, SPUCCH_Set_r15_sequence_of, + 1, 4, FALSE); return offset; } -static const value_string lte_rrc_T_cellBarred_vals[] = { - { 0, "barred" }, - { 1, "notBarred" }, +static const value_string lte_rrc_T_twoAntennaPortActivatedSPUCCH_Format1a1b_r15_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_cellBarred(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_twoAntennaPortActivatedSPUCCH_Format1a1b_r15(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_intraFreqReselection_vals[] = { - { 0, "allowed" }, - { 1, "notAllowed" }, - { 0, NULL } +static const per_sequence_t T_n3SPUCCH_AN_List_r15_sequence_of[1] = { + { &hf_lte_rrc_n3SPUCCH_AN_List_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_549 }, }; - static int -dissect_lte_rrc_T_intraFreqReselection(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, FALSE, 0, NULL); +dissect_lte_rrc_T_n3SPUCCH_AN_List_r15(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_lte_rrc_T_n3SPUCCH_AN_List_r15, T_n3SPUCCH_AN_List_r15_sequence_of, + 1, 4, FALSE); return offset; } +static const per_sequence_t T_twoAntennaPortActivatedSPUCCH_Format3_r15_sequence[] = { + { &hf_lte_rrc_n3SPUCCH_AN_List_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n3SPUCCH_AN_List_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_CSG_Identity(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, - 27, 27, FALSE, NULL, NULL); +dissect_lte_rrc_T_twoAntennaPortActivatedSPUCCH_Format3_r15(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_lte_rrc_T_twoAntennaPortActivatedSPUCCH_Format3_r15, T_twoAntennaPortActivatedSPUCCH_Format3_r15_sequence); return offset; } -static const per_sequence_t T_cellAccessRelatedInfo_sequence[] = { - { &hf_lte_rrc_plmn_IdentityList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityList }, - { &hf_lte_rrc_trackingAreaCode, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, - { &hf_lte_rrc_cellIdentity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, - { &hf_lte_rrc_cellBarred , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellBarred }, - { &hf_lte_rrc_intraFreqReselection, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_intraFreqReselection }, - { &hf_lte_rrc_csg_Indication, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_csg_Identity, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSG_Identity }, +static const per_sequence_t T_setup_133_sequence[] = { + { &hf_lte_rrc_spucch_Set_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPUCCH_Set_r15 }, + { &hf_lte_rrc_twoAntennaPortActivatedSPUCCH_Format1a1b_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_twoAntennaPortActivatedSPUCCH_Format1a1b_r15 }, + { &hf_lte_rrc_twoAntennaPortActivatedSPUCCH_Format3_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_twoAntennaPortActivatedSPUCCH_Format3_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cellAccessRelatedInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_133(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_lte_rrc_T_cellAccessRelatedInfo, T_cellAccessRelatedInfo_sequence); + ett_lte_rrc_T_setup_133, T_setup_133_sequence); return offset; } +static const value_string lte_rrc_SPUCCH_Config_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t SPUCCH_Config_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_148 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_133 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_Q_RxLevMin(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -70, -22, NULL, FALSE); +dissect_lte_rrc_SPUCCH_Config_r15(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_lte_rrc_SPUCCH_Config_r15, SPUCCH_Config_r15_choice, + NULL); return offset; } -static const per_sequence_t T_cellSelectionInfo_sequence[] = { - { &hf_lte_rrc_q_RxLevMin , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_q_RxLevMinOffset, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_8 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_ShortTTI_Length_r15_vals[] = { + { 0, "slot" }, + { 1, "subslot" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_cellSelectionInfo(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_lte_rrc_T_cellSelectionInfo, T_cellSelectionInfo_sequence); +dissect_lte_rrc_ShortTTI_Length_r15(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, FALSE, 0, NULL); return offset; } +static const per_sequence_t ShortTTI_r15_sequence[] = { + { &hf_lte_rrc_dl_STTI_Length_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ShortTTI_Length_r15 }, + { &hf_lte_rrc_ul_STTI_Length_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ShortTTI_Length_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_P_Max(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -30, 33U, NULL, FALSE); +dissect_lte_rrc_ShortTTI_r15(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_lte_rrc_ShortTTI_r15, ShortTTI_r15_sequence); return offset; } +static const per_sequence_t T_setup_77_sequence[] = { + { &hf_lte_rrc_antennaInfoDedicatedSTTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicatedSTTI_r15 }, + { &hf_lte_rrc_antennaInfoUL_STTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoUL_STTI_r15 }, + { &hf_lte_rrc_pucch_ConfigDedicated_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigDedicated_v1530 }, + { &hf_lte_rrc_schedulingRequestConfig_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SchedulingRequestConfig_v1530 }, + { &hf_lte_rrc_uplinkPowerControlDedicatedSTTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicatedSTTI_r15 }, + { &hf_lte_rrc_cqi_ReportConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_r15 }, + { &hf_lte_rrc_csi_RS_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_r15 }, + { &hf_lte_rrc_csi_RS_ConfigNZPToReleaseList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r15 }, + { &hf_lte_rrc_csi_RS_ConfigNZPToAddModList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPToAddModList_r15 }, + { &hf_lte_rrc_csi_RS_ConfigZPToReleaseList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigZPToReleaseList_r11 }, + { &hf_lte_rrc_csi_RS_ConfigZPToAddModList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigZPToAddModList_r11 }, + { &hf_lte_rrc_csi_RS_ConfigZP_ApList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigZP_ApList_r14 }, + { &hf_lte_rrc_eimta_MainConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_EIMTA_MainConfig_r12 }, + { &hf_lte_rrc_eimta_MainConfigServCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_EIMTA_MainConfigServCell_r12 }, + { &hf_lte_rrc_semiOpenLoopSTTI_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_slotOrSubslotPDSCH_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SlotOrSubslotPDSCH_Config_r15 }, + { &hf_lte_rrc_slotOrSubslotPUSCH_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SlotOrSubslotPUSCH_Config_r15 }, + { &hf_lte_rrc_spdcch_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPDCCH_Config_r15 }, + { &hf_lte_rrc_spucch_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPUCCH_Config_r15 }, + { &hf_lte_rrc_srs_DCI7_TriggeringConfig_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_shortProcessingTime_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_shortTTI_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ShortTTI_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_FreqBandIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 value; - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxFBI, &value, FALSE); - - set_freq_band_indicator(value, actx); - +dissect_lte_rrc_T_setup_77(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_lte_rrc_T_setup_77, T_setup_77_sequence); return offset; } -static const value_string lte_rrc_T_si_Periodicity_vals[] = { - { 0, "rf8" }, - { 1, "rf16" }, - { 2, "rf32" }, - { 3, "rf64" }, - { 4, "rf128" }, - { 5, "rf256" }, - { 6, "rf512" }, +static const value_string lte_rrc_PhysicalConfigDedicatedSTTI_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t PhysicalConfigDedicatedSTTI_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_87 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_77 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_si_Periodicity(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, - 7, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PhysicalConfigDedicatedSTTI_r15(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_lte_rrc_PhysicalConfigDedicatedSTTI_r15, PhysicalConfigDedicatedSTTI_r15_choice, + NULL); return offset; } -static const value_string lte_rrc_SIB_Type_vals[] = { - { 0, "sibType3" }, - { 1, "sibType4" }, - { 2, "sibType5" }, - { 3, "sibType6" }, - { 4, "sibType7" }, - { 5, "sibType8" }, - { 6, "sibType9" }, - { 7, "sibType10" }, - { 8, "sibType11" }, - { 9, "sibType12-v920" }, - { 10, "sibType13-v920" }, - { 11, "sibType14-v1130" }, - { 12, "sibType15-v1130" }, - { 13, "sibType16-v1130" }, - { 14, "sibType17-v1250" }, - { 15, "sibType18-v1250" }, - { 16, "sibType19-v1250" }, - { 17, "sibType20-v1310" }, - { 18, "sibType21-v1430" }, +static const value_string lte_rrc_T_qcl_Operation_v1530_vals[] = { + { 0, "typeC" }, { 0, NULL } }; -static value_string_ext lte_rrc_SIB_Type_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_SIB_Type_vals); - static int -dissect_lte_rrc_SIB_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_qcl_Operation_v1530(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, - 16, NULL, TRUE, 3, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SIB_MappingInfo_sequence_of[1] = { - { &hf_lte_rrc_SIB_MappingInfo_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB_Type }, +static const value_string lte_rrc_T_tbs_IndexAlt3_r15_vals[] = { + { 0, "a37" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SIB_MappingInfo(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_lte_rrc_SIB_MappingInfo, SIB_MappingInfo_sequence_of, - 0, maxSIB_1, FALSE); +dissect_lte_rrc_T_tbs_IndexAlt3_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SchedulingInfo_sequence[] = { - { &hf_lte_rrc_si_Periodicity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_Periodicity }, - { &hf_lte_rrc_sib_MappingInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB_MappingInfo }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ce_CQI_AlternativeTableConfig_r15_vals[] = { + { 0, "on" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SchedulingInfo(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_lte_rrc_SchedulingInfo, SchedulingInfo_sequence); +dissect_lte_rrc_T_ce_CQI_AlternativeTableConfig_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SchedulingInfoList_sequence_of[1] = { - { &hf_lte_rrc_SchedulingInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfo }, +static const value_string lte_rrc_T_ce_PDSCH_64QAM_Config_r15_vals[] = { + { 0, "on" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SchedulingInfoList(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_lte_rrc_SchedulingInfoList, SchedulingInfoList_sequence_of, - 1, maxSI_Message, FALSE); +dissect_lte_rrc_T_ce_PDSCH_64QAM_Config_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_subframeAssignment_vals[] = { - { 0, "sa0" }, - { 1, "sa1" }, - { 2, "sa2" }, - { 3, "sa3" }, - { 4, "sa4" }, - { 5, "sa5" }, - { 6, "sa6" }, +static const value_string lte_rrc_T_ce_PDSCH_FlexibleStartPRB_AllocConfig_r15_vals[] = { + { 0, "on" }, { 0, NULL } }; static int -dissect_lte_rrc_T_subframeAssignment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_PDSCH_FlexibleStartPRB_AllocConfig_r15(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, - 7, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_specialSubframePatterns_vals[] = { - { 0, "ssp0" }, - { 1, "ssp1" }, - { 2, "ssp2" }, - { 3, "ssp3" }, - { 4, "ssp4" }, - { 5, "ssp5" }, - { 6, "ssp6" }, - { 7, "ssp7" }, - { 8, "ssp8" }, +static const value_string lte_rrc_T_altMCS_TableScalingConfig_r15_vals[] = { + { 0, "oDot5" }, + { 1, "oDot625" }, + { 2, "oDot75" }, + { 3, "oDot875" }, { 0, NULL } }; static int -dissect_lte_rrc_T_specialSubframePatterns(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_altMCS_TableScalingConfig_r15(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, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t TDD_Config_sequence[] = { - { &hf_lte_rrc_subframeAssignment, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subframeAssignment }, - { &hf_lte_rrc_specialSubframePatterns, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_specialSubframePatterns }, +static const per_sequence_t PDSCH_ConfigDedicated_v1530_sequence[] = { + { &hf_lte_rrc_qcl_Operation_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_qcl_Operation_v1530 }, + { &hf_lte_rrc_tbs_IndexAlt3_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tbs_IndexAlt3_r15 }, + { &hf_lte_rrc_ce_CQI_AlternativeTableConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_CQI_AlternativeTableConfig_r15 }, + { &hf_lte_rrc_ce_PDSCH_64QAM_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_64QAM_Config_r15 }, + { &hf_lte_rrc_ce_PDSCH_FlexibleStartPRB_AllocConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_FlexibleStartPRB_AllocConfig_r15 }, + { &hf_lte_rrc_altMCS_TableScalingConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_altMCS_TableScalingConfig_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_TDD_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PDSCH_ConfigDedicated_v1530(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_lte_rrc_TDD_Config, TDD_Config_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_si_WindowLength_vals[] = { - { 0, "ms1" }, - { 1, "ms2" }, - { 2, "ms5" }, - { 3, "ms10" }, - { 4, "ms15" }, - { 5, "ms20" }, - { 6, "ms40" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_si_WindowLength(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, - 7, NULL, FALSE, 0, NULL); + ett_lte_rrc_PDSCH_ConfigDedicated_v1530, PDSCH_ConfigDedicated_v1530_sequence); return offset; } @@ -31317,59 +34934,45 @@ dissect_lte_rrc_T_si_WindowLength(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int -dissect_lte_rrc_T_systemInfoValueTag(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 value; +dissect_lte_rrc_INTEGER_M1_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 31U, &value, FALSE); - - /* Track whether systemInfoValue has changed since last seen, indicating new SI config - TODO: add link back to previous config and (if known) time since previous config - was first seen */ - if (!actx->pinfo->fd->flags.visited) { - if (system_info_value_current_set && (value != system_info_value_current)) { - /* Add entry to the hash table. Offset by one to distinguish 0 from lookup failure */ - wmem_map_insert(lte_rrc_system_info_value_changed_hash, GUINT_TO_POINTER(actx->pinfo->num), - GUINT_TO_POINTER(system_info_value_current+1)); - } - system_info_value_current_set = TRUE; - system_info_value_current = value; - } - else { - /* Look up indication of changed info value from hash table */ - gpointer p_previous = wmem_map_lookup(lte_rrc_system_info_value_changed_hash, GUINT_TO_POINTER(actx->pinfo->num)); - if (p_previous != NULL) { - /* Subtract one from stored result to get previous value */ - guint32 previous = GPOINTER_TO_UINT(p_previous) - 1; - expert_add_info_format(actx->pinfo, actx->created_item, &ei_lte_rrc_si_info_value_changed, - "SI Info Value changed (now %u, was %u)", value, previous); - } - } - + -1, 3U, NULL, FALSE); return offset; } +static const per_sequence_t T_setup_94_sequence[] = { + { &hf_lte_rrc_offsetCE_ModeB_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M1_3 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_lateNonCriticalExtension_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType1_v8h0_IEs_PDU); +dissect_lte_rrc_T_setup_94(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_lte_rrc_T_setup_94, T_setup_94_sequence); return offset; } -static const value_string lte_rrc_T_ims_EmergencySupport_r9_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t T_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_105 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_94 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_ims_EmergencySupport_r9(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15(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_lte_rrc_T_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15, T_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15_choice, + NULL); return offset; } @@ -31377,362 +34980,337 @@ dissect_lte_rrc_T_ims_EmergencySupport_r9(tvbuff_t *tvb _U_, int offset _U_, asn static int -dissect_lte_rrc_Q_QualMin_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_0_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -34, -3, NULL, FALSE); + 0U, 2U, NULL, FALSE); return offset; } -static const per_sequence_t CellSelectionInfo_v920_sequence[] = { - { &hf_lte_rrc_q_QualMin_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_QualMin_r9 }, - { &hf_lte_rrc_q_QualMinOffset_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_8 }, +static const per_sequence_t T_setup_95_sequence[] = { + { &hf_lte_rrc_locationCE_ModeB_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_5 }, + { &hf_lte_rrc_sixToneCyclicShift_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_threeToneCyclicShift_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellSelectionInfo_v920(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_95(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_lte_rrc_CellSelectionInfo_v920, CellSelectionInfo_v920_sequence); + ett_lte_rrc_T_setup_95, T_setup_95_sequence); return offset; } -static const value_string lte_rrc_T_specialSubframePatterns_v1130_vals[] = { - { 0, "ssp7" }, - { 1, "ssp9" }, +static const value_string lte_rrc_T_ce_PUSCH_SubPRB_Config_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; - -static int -dissect_lte_rrc_T_specialSubframePatterns_v1130(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, FALSE, 0, NULL); - - return offset; -} - - -static const per_sequence_t TDD_Config_v1130_sequence[] = { - { &hf_lte_rrc_specialSubframePatterns_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_specialSubframePatterns_v1130 }, - { NULL, 0, 0, NULL } +static const per_choice_t T_ce_PUSCH_SubPRB_Config_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_106 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_95 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_TDD_Config_v1130(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_lte_rrc_TDD_Config_v1130, TDD_Config_v1130_sequence); +dissect_lte_rrc_T_ce_PUSCH_SubPRB_Config_r15(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_lte_rrc_T_ce_PUSCH_SubPRB_Config_r15, T_ce_PUSCH_SubPRB_Config_r15_choice, + NULL); return offset; } -static const per_sequence_t CellSelectionInfo_v1130_sequence[] = { - { &hf_lte_rrc_q_QualMinWB_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_QualMin_r9 }, +static const per_sequence_t PUSCH_ConfigDedicated_v1530_sequence[] = { + { &hf_lte_rrc_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15 }, + { &hf_lte_rrc_ce_PUSCH_SubPRB_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PUSCH_SubPRB_Config_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellSelectionInfo_v1130(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PUSCH_ConfigDedicated_v1530(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_lte_rrc_CellSelectionInfo_v1130, CellSelectionInfo_v1130_sequence); + ett_lte_rrc_PUSCH_ConfigDedicated_v1530, PUSCH_ConfigDedicated_v1530_sequence); return offset; } -static const value_string lte_rrc_T_category0Allowed_r12_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_altCQI_Table_1024QAM_r15_vals[] = { + { 0, "allSubframes" }, + { 1, "csi-SubframeSet1" }, + { 2, "csi-SubframeSet2" }, + { 3, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_category0Allowed_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_altCQI_Table_1024QAM_r15(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, - 1, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_cellAccessRelatedInfo_v1250_sequence[] = { - { &hf_lte_rrc_category0Allowed_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_category0Allowed_r12 }, +static const per_sequence_t CQI_ReportConfig_v1530_sequence[] = { + { &hf_lte_rrc_altCQI_Table_1024QAM_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_altCQI_Table_1024QAM_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cellAccessRelatedInfo_v1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CQI_ReportConfig_v1530(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_lte_rrc_T_cellAccessRelatedInfo_v1250, T_cellAccessRelatedInfo_v1250_sequence); + ett_lte_rrc_CQI_ReportConfig_v1530, CQI_ReportConfig_v1530_sequence); return offset; } -static const per_sequence_t CellSelectionInfo_v1250_sequence[] = { - { &hf_lte_rrc_q_QualMinRSRQ_OnAllSymbols_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_QualMin_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_NrOfPairs_r15_vals[] = { + { 0, "two" }, + { 1, "three" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CellSelectionInfo_v1250(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_lte_rrc_CellSelectionInfo_v1250, CellSelectionInfo_v1250_sequence); +dissect_lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_NrOfPairs_r15(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_freqBandIndicatorPriority_r12_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_setup_08_vals[] = { + { 0, "ue-TxAntennaSelection-SRS-1T4R-Config-r15" }, + { 1, "ue-TxAntennaSelection-SRS-2T4R-NrOfPairs-r15" }, { 0, NULL } }; +static const per_choice_t T_setup_08_choice[] = { + { 0, &hf_lte_rrc_ue_TxAntennaSelection_SRS_1T4R_Config_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_ue_TxAntennaSelection_SRS_2T4R_NrOfPairs_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_NrOfPairs_r15 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_freqBandIndicatorPriority_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_setup_08(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_lte_rrc_T_setup_08, T_setup_08_choice, + NULL); return offset; } -static const value_string lte_rrc_T_eDRX_Allowed_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_AntennaInfoDedicated_v1530_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t AntennaInfoDedicated_v1530_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_08 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_08 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_eDRX_Allowed_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_AntennaInfoDedicated_v1530(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_lte_rrc_AntennaInfoDedicated_v1530, AntennaInfoDedicated_v1530_choice, + NULL); return offset; } -static const per_sequence_t CellSelectionInfoCE_r13_sequence[] = { - { &hf_lte_rrc_q_RxLevMinCE_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_q_QualMinRSRQ_CE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, +static const per_sequence_t CSI_RS_Config_v1530_sequence[] = { + { &hf_lte_rrc_eMIMO_Type_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigEMIMO_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellSelectionInfoCE_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CSI_RS_Config_v1530(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_lte_rrc_CellSelectionInfoCE_r13, CellSelectionInfoCE_r13_sequence); + ett_lte_rrc_CSI_RS_Config_v1530, CSI_RS_Config_v1530_sequence); return offset; } -static const value_string lte_rrc_T_si_WindowLength_BR_r13_vals[] = { - { 0, "ms20" }, - { 1, "ms40" }, - { 2, "ms60" }, - { 3, "ms80" }, - { 4, "ms120" }, - { 5, "ms160" }, - { 6, "ms200" }, - { 7, "spare" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_si_WindowLength_BR_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_M16_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -16, 15U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_si_RepetitionPattern_r13_vals[] = { - { 0, "everyRF" }, - { 1, "every2ndRF" }, - { 2, "every4thRF" }, - { 3, "every8thRF" }, - { 0, NULL } +static const per_sequence_t UplinkPowerControlDedicated_v1530_sequence[] = { + { &hf_lte_rrc_alpha_UE_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Alpha_r12 }, + { &hf_lte_rrc_p0_UE_PUSCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M16_15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_si_RepetitionPattern_r13(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); +dissect_lte_rrc_UplinkPowerControlDedicated_v1530(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_lte_rrc_UplinkPowerControlDedicated_v1530, UplinkPowerControlDedicated_v1530_sequence); return offset; } -static const value_string lte_rrc_T_si_TBS_r13_vals[] = { - { 0, "b152" }, - { 1, "b208" }, - { 2, "b256" }, - { 3, "b328" }, - { 4, "b408" }, - { 5, "b504" }, - { 6, "b600" }, - { 7, "b712" }, - { 8, "b808" }, - { 9, "b936" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_si_TBS_r13(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, - 10, NULL, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_1_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 3U, NULL, FALSE); return offset; } -static const per_sequence_t SchedulingInfo_BR_r13_sequence[] = { - { &hf_lte_rrc_si_Narrowband_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, - { &hf_lte_rrc_si_TBS_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_TBS_r13 }, +static const per_sequence_t CFI_Config_r15_sequence[] = { + { &hf_lte_rrc_cfi_SubframeNonMBSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_4 }, + { &hf_lte_rrc_cfi_SlotSubslotNonMBSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_3 }, + { &hf_lte_rrc_cfi_SubframeMBSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_2 }, + { &hf_lte_rrc_cfi_SlotSubslotMBSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SchedulingInfo_BR_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CFI_Config_r15(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_lte_rrc_SchedulingInfo_BR_r13, SchedulingInfo_BR_r13_sequence); + ett_lte_rrc_CFI_Config_r15, CFI_Config_r15_sequence); return offset; } -static const per_sequence_t SchedulingInfoList_BR_r13_sequence_of[1] = { - { &hf_lte_rrc_SchedulingInfoList_BR_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfo_BR_r13 }, +static const per_sequence_t T_cfi_PatternSubframe_r15_sequence_of[1] = { + { &hf_lte_rrc_cfi_PatternSubframe_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, }; static int -dissect_lte_rrc_SchedulingInfoList_BR_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cfi_PatternSubframe_r15(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_lte_rrc_SchedulingInfoList_BR_r13, SchedulingInfoList_BR_r13_sequence_of, - 1, maxSI_Message, FALSE); + ett_lte_rrc_T_cfi_PatternSubframe_r15, T_cfi_PatternSubframe_r15_sequence_of, + 10, 10, FALSE); return offset; } -static const value_string lte_rrc_T_fdd_DownlinkOrTddSubframeBitmapBR_r13_vals[] = { - { 0, "subframePattern10-r13" }, - { 1, "subframePattern40-r13" }, - { 0, NULL } -}; - -static const per_choice_t T_fdd_DownlinkOrTddSubframeBitmapBR_r13_choice[] = { - { 0, &hf_lte_rrc_subframePattern10_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_10 }, - { 1, &hf_lte_rrc_subframePattern40_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_40 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_cfi_PatternSlotSubslot_r15_sequence_of[1] = { + { &hf_lte_rrc_cfi_PatternSlotSubslot_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_3 }, }; static int -dissect_lte_rrc_T_fdd_DownlinkOrTddSubframeBitmapBR_r13(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_lte_rrc_T_fdd_DownlinkOrTddSubframeBitmapBR_r13, T_fdd_DownlinkOrTddSubframeBitmapBR_r13_choice, - NULL); +dissect_lte_rrc_T_cfi_PatternSlotSubslot_r15(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_lte_rrc_T_cfi_PatternSlotSubslot_r15, T_cfi_PatternSlotSubslot_r15_sequence_of, + 10, 10, FALSE); return offset; } -static const value_string lte_rrc_T_si_HoppingConfigCommon_r13_vals[] = { - { 0, "on" }, - { 1, "off" }, - { 0, NULL } +static const per_sequence_t CFI_PatternConfig_r15_sequence[] = { + { &hf_lte_rrc_cfi_PatternSubframe_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cfi_PatternSubframe_r15 }, + { &hf_lte_rrc_cfi_PatternSlotSubslot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cfi_PatternSlotSubslot_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_si_HoppingConfigCommon_r13(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, FALSE, 0, NULL); +dissect_lte_rrc_CFI_PatternConfig_r15(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_lte_rrc_CFI_PatternConfig_r15, CFI_PatternConfig_r15_sequence); return offset; } -static const value_string lte_rrc_T_si_ValidityTime_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_setup_69_vals[] = { + { 0, "cfi-Config-r15" }, + { 1, "cfi-PatternConfig-r15" }, { 0, NULL } }; +static const per_choice_t T_setup_69_choice[] = { + { 0, &hf_lte_rrc_cfi_Config_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CFI_Config_r15 }, + { 1, &hf_lte_rrc_cfi_PatternConfig_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CFI_PatternConfig_r15 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_si_ValidityTime_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_setup_69(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_lte_rrc_T_setup_69, T_setup_69_choice, + NULL); return offset; } +static const value_string lte_rrc_T_semiStaticCFI_Config_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_SystemInfoValueTagSI_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 3U, NULL, FALSE); - - return offset; -} - - -static const per_sequence_t SystemInfoValueTagList_r13_sequence_of[1] = { - { &hf_lte_rrc_SystemInfoValueTagList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInfoValueTagSI_r13 }, +static const per_choice_t T_semiStaticCFI_Config_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_79 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_69 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SystemInfoValueTagList_r13(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_lte_rrc_SystemInfoValueTagList_r13, SystemInfoValueTagList_r13_sequence_of, - 1, maxSI_Message, FALSE); +dissect_lte_rrc_T_semiStaticCFI_Config_r15(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_lte_rrc_T_semiStaticCFI_Config_r15, T_semiStaticCFI_Config_r15_choice, + NULL); return offset; } -static const per_sequence_t T_bandwidthReducedAccessRelatedInfo_r13_sequence[] = { - { &hf_lte_rrc_si_WindowLength_BR_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_WindowLength_BR_r13 }, - { &hf_lte_rrc_si_RepetitionPattern_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_RepetitionPattern_r13 }, - { &hf_lte_rrc_schedulingInfoList_BR_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SchedulingInfoList_BR_r13 }, - { &hf_lte_rrc_fdd_DownlinkOrTddSubframeBitmapBR_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fdd_DownlinkOrTddSubframeBitmapBR_r13 }, - { &hf_lte_rrc_fdd_UplinkSubframeBitmapBR_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_10 }, - { &hf_lte_rrc_startSymbolBR_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, - { &hf_lte_rrc_si_HoppingConfigCommon_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_HoppingConfigCommon_r13 }, - { &hf_lte_rrc_si_ValidityTime_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_si_ValidityTime_r13 }, - { &hf_lte_rrc_systemInfoValueTagList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInfoValueTagList_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_maxNumber_SubframePDSCH_Repetitions_r15_vals[] = { + { 0, "n4" }, + { 1, "n6" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_bandwidthReducedAccessRelatedInfo_r13(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_lte_rrc_T_bandwidthReducedAccessRelatedInfo_r13, T_bandwidthReducedAccessRelatedInfo_r13_sequence); +dissect_lte_rrc_T_maxNumber_SubframePDSCH_Repetitions_r15(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_mpdcch_pdsch_HoppingNB_r13_vals[] = { - { 0, "nb2" }, - { 1, "nb4" }, +static const value_string lte_rrc_T_maxNumber_SlotSubslotPDSCH_Repetitions_r15_vals[] = { + { 0, "n4" }, + { 1, "n6" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mpdcch_pdsch_HoppingNB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_maxNumber_SlotSubslotPDSCH_Repetitions_r15(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, FALSE, 0, NULL); @@ -31740,1027 +35318,1015 @@ dissect_lte_rrc_T_mpdcch_pdsch_HoppingNB_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_interval_FDD_r13_vals[] = { - { 0, "int1" }, - { 1, "int2" }, - { 2, "int4" }, - { 3, "int8" }, +static const value_string lte_rrc_T_rv_SubframePDSCH_Repetitions_r15_vals[] = { + { 0, "dlrvseq1" }, + { 1, "dlrvseq2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_interval_FDD_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rv_SubframePDSCH_Repetitions_r15(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); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_interval_TDD_r13_vals[] = { - { 0, "int1" }, - { 1, "int5" }, - { 2, "int10" }, - { 3, "int20" }, +static const value_string lte_rrc_T_rv_SlotsublotPDSCH_Repetitions_r15_vals[] = { + { 0, "dlrvseq1" }, + { 1, "dlrvseq2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_interval_TDD_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rv_SlotsublotPDSCH_Repetitions_r15(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); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_interval_DLHoppingConfigCommonModeA_r13_vals[] = { - { 0, "interval-FDD-r13" }, - { 1, "interval-TDD-r13" }, +static const value_string lte_rrc_T_mcs_restrictionSubframePDSCH_Repetitions_r15_vals[] = { + { 0, "n0" }, + { 1, "n1" }, { 0, NULL } }; -static const per_choice_t T_interval_DLHoppingConfigCommonModeA_r13_choice[] = { - { 0, &hf_lte_rrc_interval_FDD_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13 }, - { 1, &hf_lte_rrc_interval_TDD_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_interval_DLHoppingConfigCommonModeA_r13(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_lte_rrc_T_interval_DLHoppingConfigCommonModeA_r13, T_interval_DLHoppingConfigCommonModeA_r13_choice, - NULL); +dissect_lte_rrc_T_mcs_restrictionSubframePDSCH_Repetitions_r15(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_interval_FDD_r13_01_vals[] = { - { 0, "int2" }, - { 1, "int4" }, - { 2, "int8" }, - { 3, "int16" }, +static const value_string lte_rrc_T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_vals[] = { + { 0, "n0" }, + { 1, "n1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_interval_FDD_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15(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); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_interval_TDD_r13_01_vals[] = { - { 0, "int5" }, - { 1, "int10" }, - { 2, "int20" }, - { 3, "int40" }, - { 0, NULL } +static const per_sequence_t T_setup_70_sequence[] = { + { &hf_lte_rrc_blindSubframePDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_blindSlotSubslotPDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_maxNumber_SubframePDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumber_SubframePDSCH_Repetitions_r15 }, + { &hf_lte_rrc_maxNumber_SlotSubslotPDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumber_SlotSubslotPDSCH_Repetitions_r15 }, + { &hf_lte_rrc_rv_SubframePDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rv_SubframePDSCH_Repetitions_r15 }, + { &hf_lte_rrc_rv_SlotsublotPDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rv_SlotsublotPDSCH_Repetitions_r15 }, + { &hf_lte_rrc_numberOfProcesses_SubframePDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_16 }, + { &hf_lte_rrc_numberOfProcesses_SlotSubslotPDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_16 }, + { &hf_lte_rrc_mcs_restrictionSubframePDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mcs_restrictionSubframePDSCH_Repetitions_r15 }, + { &hf_lte_rrc_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_interval_TDD_r13_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); +dissect_lte_rrc_T_setup_70(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_lte_rrc_T_setup_70, T_setup_70_sequence); return offset; } -static const value_string lte_rrc_T_interval_DLHoppingConfigCommonModeB_r13_vals[] = { - { 0, "interval-FDD-r13" }, - { 1, "interval-TDD-r13" }, +static const value_string lte_rrc_T_blindPDSCH_Repetition_Config_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_interval_DLHoppingConfigCommonModeB_r13_choice[] = { - { 0, &hf_lte_rrc_interval_FDD_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13_01 }, - { 1, &hf_lte_rrc_interval_TDD_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13_01 }, +static const per_choice_t T_blindPDSCH_Repetition_Config_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_80 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_70 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_interval_DLHoppingConfigCommonModeB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_blindPDSCH_Repetition_Config_r15(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_lte_rrc_T_interval_DLHoppingConfigCommonModeB_r13, T_interval_DLHoppingConfigCommonModeB_r13_choice, + ett_lte_rrc_T_blindPDSCH_Repetition_Config_r15, T_blindPDSCH_Repetition_Config_r15_choice, NULL); return offset; } -static const per_sequence_t T_freqHoppingParametersDL_r13_sequence[] = { - { &hf_lte_rrc_mpdcch_pdsch_HoppingNB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mpdcch_pdsch_HoppingNB_r13 }, - { &hf_lte_rrc_interval_DLHoppingConfigCommonModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interval_DLHoppingConfigCommonModeA_r13 }, - { &hf_lte_rrc_interval_DLHoppingConfigCommonModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interval_DLHoppingConfigCommonModeB_r13 }, - { &hf_lte_rrc_mpdcch_pdsch_HoppingOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, +static const per_sequence_t PhysicalConfigDedicated_eag_11_sequence[] = { + { &hf_lte_rrc_physicalConfigDedicatedSTTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicatedSTTI_r15 }, + { &hf_lte_rrc_pdsch_ConfigDedicated_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated_v1530 }, + { &hf_lte_rrc_pusch_ConfigDedicated_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicated_v1530 }, + { &hf_lte_rrc_cqi_ReportConfig_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1530 }, + { &hf_lte_rrc_antennaInfo_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v1530 }, + { &hf_lte_rrc_csi_RS_Config_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1530 }, + { &hf_lte_rrc_uplinkPowerControlDedicated_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicated_v1530 }, + { &hf_lte_rrc_semiStaticCFI_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_semiStaticCFI_Config_r15 }, + { &hf_lte_rrc_blindPDSCH_Repetition_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_blindPDSCH_Repetition_Config_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_freqHoppingParametersDL_r13(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_lte_rrc_T_freqHoppingParametersDL_r13, T_freqHoppingParametersDL_r13_sequence); +dissect_lte_rrc_PhysicalConfigDedicated_eag_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicated_eag_11_sequence); return offset; } -static const per_sequence_t CellSelectionInfoCE1_r13_sequence[] = { - { &hf_lte_rrc_q_RxLevMinCE1_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_q_QualMinRSRQ_CE1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_CellSelectionInfoCE1_r13(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_lte_rrc_CellSelectionInfoCE1_r13, CellSelectionInfoCE1_r13_sequence); +static const per_sequence_t PhysicalConfigDedicated_sequence[] = { + { &hf_lte_rrc_pdsch_ConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated }, + { &hf_lte_rrc_pucch_ConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigDedicated }, + { &hf_lte_rrc_pusch_ConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicated }, + { &hf_lte_rrc_uplinkPowerControlDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicated }, + { &hf_lte_rrc_tpc_PDCCH_ConfigPUCCH, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TPC_PDCCH_Config }, + { &hf_lte_rrc_tpc_PDCCH_ConfigPUSCH, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TPC_PDCCH_Config }, + { &hf_lte_rrc_cqi_ReportConfig, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicated }, + { &hf_lte_rrc_antennaInfo , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_antennaInfo }, + { &hf_lte_rrc_schedulingRequestConfig, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SchedulingRequestConfig }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_7 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_8 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_9 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_10 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_eag_11 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PhysicalConfigDedicated(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_lte_rrc_PhysicalConfigDedicated, PhysicalConfigDedicated_sequence); return offset; } +static const value_string lte_rrc_T_t301_r9_vals[] = { + { 0, "ms100" }, + { 1, "ms200" }, + { 2, "ms300" }, + { 3, "ms400" }, + { 4, "ms600" }, + { 5, "ms1000" }, + { 6, "ms1500" }, + { 7, "ms2000" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_M8_M1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -8, -1, NULL, FALSE); +dissect_lte_rrc_T_t301_r9(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CellSelectionInfoCE1_v1360_sequence[] = { - { &hf_lte_rrc_delta_RxLevMinCE1_v1360, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_M1 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_t310_r9_vals[] = { + { 0, "ms0" }, + { 1, "ms50" }, + { 2, "ms100" }, + { 3, "ms200" }, + { 4, "ms500" }, + { 5, "ms1000" }, + { 6, "ms2000" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CellSelectionInfoCE1_v1360(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_lte_rrc_CellSelectionInfoCE1_v1360, CellSelectionInfoCE1_v1360_sequence); +dissect_lte_rrc_T_t310_r9(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, + 7, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_eCallOverIMS_Support_r14_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_n310_r9_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n6" }, + { 5, "n8" }, + { 6, "n10" }, + { 7, "n20" }, { 0, NULL } }; static int -dissect_lte_rrc_T_eCallOverIMS_Support_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_n310_r9(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_specialSubframePatterns_v1430_vals[] = { - { 0, "ssp10" }, +static const value_string lte_rrc_T_t311_r9_vals[] = { + { 0, "ms1000" }, + { 1, "ms3000" }, + { 2, "ms5000" }, + { 3, "ms10000" }, + { 4, "ms15000" }, + { 5, "ms20000" }, + { 6, "ms30000" }, { 0, NULL } }; static int -dissect_lte_rrc_T_specialSubframePatterns_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t311_r9(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, - 1, NULL, FALSE, 0, NULL); + 7, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t TDD_Config_v1430_sequence[] = { - { &hf_lte_rrc_specialSubframePatterns_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_specialSubframePatterns_v1430 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_n311_r9_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n8" }, + { 7, "n10" }, + { 0, NULL } }; + static int -dissect_lte_rrc_TDD_Config_v1430(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_lte_rrc_TDD_Config_v1430, TDD_Config_v1430_sequence); +dissect_lte_rrc_T_n311_r9(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CellAccessRelatedInfo_r14_sequence[] = { - { &hf_lte_rrc_plmn_IdentityList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityList }, - { &hf_lte_rrc_trackingAreaCode_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, - { &hf_lte_rrc_cellIdentity_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, +static const per_sequence_t T_setup_106_sequence[] = { + { &hf_lte_rrc_t301_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t301_r9 }, + { &hf_lte_rrc_t310_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t310_r9 }, + { &hf_lte_rrc_n310_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n310_r9 }, + { &hf_lte_rrc_t311_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t311_r9 }, + { &hf_lte_rrc_n311_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n311_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellAccessRelatedInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_106(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_lte_rrc_CellAccessRelatedInfo_r14, CellAccessRelatedInfo_r14_sequence); + ett_lte_rrc_T_setup_106, T_setup_106_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14_sequence_of[1] = { - { &hf_lte_rrc_cellAccessRelatedInfoList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellAccessRelatedInfo_r14 }, +static const value_string lte_rrc_RLF_TimersAndConstants_r9_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t RLF_TimersAndConstants_r9_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_121 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_106 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14, SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14_sequence_of, - 1, maxPLMN_1_r14, FALSE); +dissect_lte_rrc_RLF_TimersAndConstants_r9(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_lte_rrc_RLF_TimersAndConstants_r9, RLF_TimersAndConstants_r9_choice, + NULL); return offset; } -static const value_string lte_rrc_T_specialSubframePatterns_v1450_vals[] = { - { 0, "ssp10-CRS-LessDwPTS" }, - { 0, NULL } +static const per_sequence_t RadioResourceConfigDedicated_eag_1_sequence[] = { + { &hf_lte_rrc_rlf_TimersAndConstants_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLF_TimersAndConstants_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_specialSubframePatterns_v1450(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RadioResourceConfigDedicated_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_1_sequence); return offset; } -static const per_sequence_t TDD_Config_v1450_sequence[] = { - { &hf_lte_rrc_specialSubframePatterns_v1450, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_specialSubframePatterns_v1450 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_MeasSubframePatternPCell_r10_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t MeasSubframePatternPCell_r10_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_112 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_MeasSubframePattern_r10 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_TDD_Config_v1450(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_lte_rrc_TDD_Config_v1450, TDD_Config_v1450_sequence); +dissect_lte_rrc_MeasSubframePatternPCell_r10(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_lte_rrc_MeasSubframePatternPCell_r10, MeasSubframePatternPCell_r10_choice, + NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_52_sequence[] = { +static const per_sequence_t RadioResourceConfigDedicated_eag_2_sequence[] = { + { &hf_lte_rrc_measSubframePatternPCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasSubframePatternPCell_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_52(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_lte_rrc_T_nonCriticalExtension_52, T_nonCriticalExtension_52_sequence); +dissect_lte_rrc_RadioResourceConfigDedicated_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_2_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType1_v1450_IEs_sequence[] = { - { &hf_lte_rrc_tdd_Config_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1450 }, - { &hf_lte_rrc_nonCriticalExtension_154, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_52 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_antennaPortsCount_r11_01_vals[] = { + { 0, "an1" }, + { 1, "an2" }, + { 2, "an4" }, + { 3, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType1_v1450_IEs(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_lte_rrc_SystemInformationBlockType1_v1450_IEs, SystemInformationBlockType1_v1450_IEs_sequence); +dissect_lte_rrc_T_antennaPortsCount_r11_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 per_sequence_t SystemInformationBlockType1_v1430_IEs_sequence[] = { - { &hf_lte_rrc_eCallOverIMS_Support_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eCallOverIMS_Support_r14 }, - { &hf_lte_rrc_tdd_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1430 }, - { &hf_lte_rrc_cellAccessRelatedInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14 }, - { &hf_lte_rrc_nonCriticalExtension_153, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1450_IEs }, +static const per_sequence_t CRS_AssistanceInfo_r11_eag_1_sequence[] = { + { &hf_lte_rrc_mbsfn_SubframeConfigList_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType1_v1430_IEs(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_lte_rrc_SystemInformationBlockType1_v1430_IEs, SystemInformationBlockType1_v1430_IEs_sequence); +dissect_lte_rrc_CRS_AssistanceInfo_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CRS_AssistanceInfo_r11_eag_1_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType1_v1360_IEs_sequence[] = { - { &hf_lte_rrc_cellSelectionInfoCE1_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_v1360 }, - { &hf_lte_rrc_nonCriticalExtension_152, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1430_IEs }, +static const per_sequence_t CRS_AssistanceInfo_r11_sequence[] = { + { &hf_lte_rrc_physCellId_r11_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_antennaPortsCount_r11_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_antennaPortsCount_r11_01 }, + { &hf_lte_rrc_mbsfn_SubframeConfigList_r11_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfigList }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CRS_AssistanceInfo_r11_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType1_v1360_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CRS_AssistanceInfo_r11(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_lte_rrc_SystemInformationBlockType1_v1360_IEs, SystemInformationBlockType1_v1360_IEs_sequence); + ett_lte_rrc_CRS_AssistanceInfo_r11, CRS_AssistanceInfo_r11_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType1_v1350_IEs_sequence[] = { - { &hf_lte_rrc_cellSelectionInfoCE1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_r13 }, - { &hf_lte_rrc_nonCriticalExtension_151, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1360_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t CRS_AssistanceInfoList_r11_sequence_of[1] = { + { &hf_lte_rrc_CRS_AssistanceInfoList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CRS_AssistanceInfo_r11 }, }; static int -dissect_lte_rrc_SystemInformationBlockType1_v1350_IEs(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_lte_rrc_SystemInformationBlockType1_v1350_IEs, SystemInformationBlockType1_v1350_IEs_sequence); +dissect_lte_rrc_CRS_AssistanceInfoList_r11(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_lte_rrc_CRS_AssistanceInfoList_r11, CRS_AssistanceInfoList_r11_sequence_of, + 1, maxCellReport, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType1_v1320_IEs_sequence[] = { - { &hf_lte_rrc_freqHoppingParametersDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqHoppingParametersDL_r13 }, - { &hf_lte_rrc_nonCriticalExtension_150, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1350_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_NeighCellsCRS_Info_r11_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t NeighCellsCRS_Info_r11_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_113 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CRS_AssistanceInfoList_r11 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType1_v1320_IEs(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_lte_rrc_SystemInformationBlockType1_v1320_IEs, SystemInformationBlockType1_v1320_IEs_sequence); +dissect_lte_rrc_NeighCellsCRS_Info_r11(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_lte_rrc_NeighCellsCRS_Info_r11, NeighCellsCRS_Info_r11_choice, + NULL); return offset; } -static const per_sequence_t SystemInformationBlockType1_v1310_IEs_sequence[] = { - { &hf_lte_rrc_hyperSFN_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_10 }, - { &hf_lte_rrc_eDRX_Allowed_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eDRX_Allowed_r13 }, - { &hf_lte_rrc_cellSelectionInfoCE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE_r13 }, - { &hf_lte_rrc_bandwidthReducedAccessRelatedInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bandwidthReducedAccessRelatedInfo_r13 }, - { &hf_lte_rrc_nonCriticalExtension_149, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1320_IEs }, +static const per_sequence_t RadioResourceConfigDedicated_eag_3_sequence[] = { + { &hf_lte_rrc_neighCellsCRS_Info_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType1_v1310_IEs(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_lte_rrc_SystemInformationBlockType1_v1310_IEs, SystemInformationBlockType1_v1310_IEs_sequence); +dissect_lte_rrc_RadioResourceConfigDedicated_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_3_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType1_v1250_IEs_sequence[] = { - { &hf_lte_rrc_cellAccessRelatedInfo_v1250, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellAccessRelatedInfo_v1250 }, - { &hf_lte_rrc_cellSelectionInfo_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfo_v1250 }, - { &hf_lte_rrc_freqBandIndicatorPriority_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqBandIndicatorPriority_r12 }, - { &hf_lte_rrc_nonCriticalExtension_148, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1310_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t NeighCellsToReleaseList_r12_sequence_of[1] = { + { &hf_lte_rrc_NeighCellsToReleaseList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, }; static int -dissect_lte_rrc_SystemInformationBlockType1_v1250_IEs(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_lte_rrc_SystemInformationBlockType1_v1250_IEs, SystemInformationBlockType1_v1250_IEs_sequence); +dissect_lte_rrc_NeighCellsToReleaseList_r12(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_lte_rrc_NeighCellsToReleaseList_r12, NeighCellsToReleaseList_r12_sequence_of, + 1, maxNeighCell_r12, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType1_v1130_IEs_sequence[] = { - { &hf_lte_rrc_tdd_Config_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1130 }, - { &hf_lte_rrc_cellSelectionInfo_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfo_v1130 }, - { &hf_lte_rrc_nonCriticalExtension_147, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1250_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_crs_PortsCount_r12_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "spare" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType1_v1130_IEs(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_lte_rrc_SystemInformationBlockType1_v1130_IEs, SystemInformationBlockType1_v1130_IEs_sequence); +dissect_lte_rrc_T_crs_PortsCount_r12(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 per_sequence_t SystemInformationBlockType1_v920_IEs_sequence[] = { - { &hf_lte_rrc_ims_EmergencySupport_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ims_EmergencySupport_r9 }, - { &hf_lte_rrc_cellSelectionInfo_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfo_v920 }, - { &hf_lte_rrc_nonCriticalExtension_146, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1130_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_P_a_vals[] = { + { 0, "dB-6" }, + { 1, "dB-4dot77" }, + { 2, "dB-3" }, + { 3, "dB-1dot77" }, + { 4, "dB0" }, + { 5, "dB1" }, + { 6, "dB2" }, + { 7, "dB3" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType1_v920_IEs(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_lte_rrc_SystemInformationBlockType1_v920_IEs, SystemInformationBlockType1_v920_IEs_sequence); +dissect_lte_rrc_P_a(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType1_v890_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_05, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_04 }, - { &hf_lte_rrc_nonCriticalExtension_141, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v920_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a_sequence_of[1] = { + { &hf_lte_rrc_p_aList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_P_a }, }; static int -dissect_lte_rrc_SystemInformationBlockType1_v890_IEs(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_lte_rrc_SystemInformationBlockType1_v890_IEs, SystemInformationBlockType1_v890_IEs_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a(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_lte_rrc_SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a, SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a_sequence_of, + 1, maxP_a_PerNeighCell_r12, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType1_sequence[] = { - { &hf_lte_rrc_cellAccessRelatedInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellAccessRelatedInfo }, - { &hf_lte_rrc_cellSelectionInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellSelectionInfo }, - { &hf_lte_rrc_p_Max , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_freqBandIndicator, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator }, - { &hf_lte_rrc_schedulingInfoList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfoList }, - { &hf_lte_rrc_tdd_Config , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, - { &hf_lte_rrc_si_WindowLength, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_WindowLength }, - { &hf_lte_rrc_systemInfoValueTag, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_systemInfoValueTag }, - { &hf_lte_rrc_nonCriticalExtension_140, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v890_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SystemInformationBlockType1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_transmissionModeList_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *tm_list_tvb=NULL; + proto_tree *subtree; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, FALSE, &tm_list_tvb, NULL); - if (private_data_get_bcch_dl_sch_msg(actx) == FALSE) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformationBlockType1"); - } + if (tm_list_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_transmissionModeList_r12); + proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm1, tm_list_tvb, 0, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm2, tm_list_tvb, 1, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm3, tm_list_tvb, 2, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm4, tm_list_tvb, 3, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm6, tm_list_tvb, 4, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm8, tm_list_tvb, 5, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm9, tm_list_tvb, 6, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_transmissionModeList_r12_tm10, tm_list_tvb, 7, 1, ENC_BIG_ENDIAN); + } - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType1, SystemInformationBlockType1_sequence); return offset; } -static const value_string lte_rrc_T_ac_BarringFactor_vals[] = { - { 0, "p00" }, - { 1, "p05" }, - { 2, "p10" }, - { 3, "p15" }, - { 4, "p20" }, - { 5, "p25" }, - { 6, "p30" }, - { 7, "p40" }, - { 8, "p50" }, - { 9, "p60" }, - { 10, "p70" }, - { 11, "p75" }, - { 12, "p80" }, - { 13, "p85" }, - { 14, "p90" }, - { 15, "p95" }, - { 0, NULL } +static const per_sequence_t NeighCellsInfo_r12_sequence[] = { + { &hf_lte_rrc_physCellId_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_p_b_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_crs_PortsCount_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_crs_PortsCount_r12 }, + { &hf_lte_rrc_mbsfn_SubframeConfig_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList }, + { &hf_lte_rrc_p_aList_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a }, + { &hf_lte_rrc_transmissionModeList_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_transmissionModeList_r12 }, + { &hf_lte_rrc_resAllocGranularity_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ac_BarringFactor(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_NeighCellsInfo_r12(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_lte_rrc_NeighCellsInfo_r12, NeighCellsInfo_r12_sequence); return offset; } -static const value_string lte_rrc_T_ac_BarringTime_vals[] = { - { 0, "s4" }, - { 1, "s8" }, - { 2, "s16" }, - { 3, "s32" }, - { 4, "s64" }, - { 5, "s128" }, - { 6, "s256" }, - { 7, "s512" }, - { 0, NULL } +static const per_sequence_t NeighCellsToAddModList_r12_sequence_of[1] = { + { &hf_lte_rrc_NeighCellsToAddModList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsInfo_r12 }, }; - static int -dissect_lte_rrc_T_ac_BarringTime(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_NeighCellsToAddModList_r12(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_lte_rrc_NeighCellsToAddModList_r12, NeighCellsToAddModList_r12_sequence_of, + 1, maxNeighCell_r12, FALSE); return offset; } -static const per_sequence_t AC_BarringConfig_sequence[] = { - { &hf_lte_rrc_ac_BarringFactor, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ac_BarringFactor }, - { &hf_lte_rrc_ac_BarringTime, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ac_BarringTime }, - { &hf_lte_rrc_ac_BarringForSpecialAC, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_5 }, +static const per_sequence_t T_setup_101_sequence[] = { + { &hf_lte_rrc_neighCellsToReleaseList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsToReleaseList_r12 }, + { &hf_lte_rrc_neighCellsToAddModList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsToAddModList_r12 }, + { &hf_lte_rrc_servCellp_a_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_a }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AC_BarringConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_101(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_lte_rrc_AC_BarringConfig, AC_BarringConfig_sequence); + ett_lte_rrc_T_setup_101, T_setup_101_sequence); return offset; } -static const per_sequence_t T_ac_BarringInfo_sequence[] = { - { &hf_lte_rrc_ac_BarringForEmergency, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_ac_BarringForMO_Signalling, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, - { &hf_lte_rrc_ac_BarringForMO_Data, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_NAICS_AssistanceInfo_r12_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t NAICS_AssistanceInfo_r12_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_116 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_101 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_ac_BarringInfo(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_lte_rrc_T_ac_BarringInfo, T_ac_BarringInfo_sequence); +dissect_lte_rrc_NAICS_AssistanceInfo_r12(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_lte_rrc_NAICS_AssistanceInfo_r12, NAICS_AssistanceInfo_r12_choice, + NULL); return offset; } -static const value_string lte_rrc_T_numberOfRA_Preambles_vals[] = { - { 0, "n4" }, - { 1, "n8" }, - { 2, "n12" }, - { 3, "n16" }, - { 4, "n20" }, - { 5, "n24" }, - { 6, "n28" }, - { 7, "n32" }, - { 8, "n36" }, - { 9, "n40" }, - { 10, "n44" }, - { 11, "n48" }, - { 12, "n52" }, - { 13, "n56" }, - { 14, "n60" }, - { 15, "n64" }, - { 0, NULL } +static const per_sequence_t RadioResourceConfigDedicated_eag_4_sequence[] = { + { &hf_lte_rrc_naics_Info_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NAICS_AssistanceInfo_r12 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_numberOfRA_Preambles(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint value; - offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 16, &value, FALSE, 0, NULL); - - /* This is mandatory, store value */ - private_data_set_ra_preambles(actx, value); - +dissect_lte_rrc_RadioResourceConfigDedicated_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_4_sequence); return offset; } -static const value_string lte_rrc_T_sizeOfRA_PreamblesGroupA_vals[] = { - { 0, "n4" }, - { 1, "n8" }, - { 2, "n12" }, - { 3, "n16" }, - { 4, "n20" }, - { 5, "n24" }, - { 6, "n28" }, - { 7, "n32" }, - { 8, "n36" }, - { 9, "n40" }, - { 10, "n44" }, - { 11, "n48" }, - { 12, "n52" }, - { 13, "n56" }, - { 14, "n60" }, +static const value_string lte_rrc_T_antennaPortsCount_r13_vals[] = { + { 0, "an1" }, + { 1, "an2" }, + { 2, "an4" }, + { 3, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_sizeOfRA_PreamblesGroupA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint ra_value, value; +dissect_lte_rrc_T_antennaPortsCount_r13(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, - 15, &value, FALSE, 0, NULL); - - /* Retrived stored value for RA (both Group A & Group B) */ - ra_value = private_data_get_ra_preambles(actx); - if (value > ra_value) { - /* Something is wrong if A has more RAPIDs than A & B combined! */ - expert_add_info_format(actx->pinfo, actx->created_item, &ei_lte_rrc_too_many_group_a_rapids, - "Group A size (%s) > Total RA size (%s)!", - val_to_str_const(value, lte_rrc_T_sizeOfRA_PreamblesGroupA_vals, "Unknown"), - val_to_str_const(ra_value, lte_rrc_T_numberOfRA_Preambles_vals, "Unknown")); - - } - /* Tell MAC dissector so that it can say for RAPIDs whether A, B, non-RA */ - set_mac_lte_rapid_ranges((value+1)*4, (ra_value+1)*4); - /* Reset again */ - private_data_set_ra_preambles(actx, 0); - + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_messageSizeGroupA_vals[] = { - { 0, "b56" }, - { 1, "b144" }, - { 2, "b208" }, - { 3, "b256" }, - { 0, NULL } +static const per_sequence_t CRS_AssistanceInfo_r13_eag_1_sequence[] = { + { &hf_lte_rrc_mbsfn_SubframeConfigList_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_messageSizeGroupA(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); +dissect_lte_rrc_CRS_AssistanceInfo_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CRS_AssistanceInfo_r13_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_messagePowerOffsetGroupB_vals[] = { - { 0, "minusinfinity" }, - { 1, "dB0" }, - { 2, "dB5" }, - { 3, "dB8" }, - { 4, "dB10" }, - { 5, "dB12" }, - { 6, "dB15" }, - { 7, "dB18" }, - { 0, NULL } +static const per_sequence_t CRS_AssistanceInfo_r13_sequence[] = { + { &hf_lte_rrc_physCellId_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_antennaPortsCount_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_antennaPortsCount_r13 }, + { &hf_lte_rrc_mbsfn_SubframeConfigList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CRS_AssistanceInfo_r13_eag_1 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_messagePowerOffsetGroupB(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CRS_AssistanceInfo_r13(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_lte_rrc_CRS_AssistanceInfo_r13, CRS_AssistanceInfo_r13_sequence); return offset; } -static const per_sequence_t T_preamblesGroupAConfig_sequence[] = { - { &hf_lte_rrc_sizeOfRA_PreamblesGroupA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sizeOfRA_PreamblesGroupA }, - { &hf_lte_rrc_messageSizeGroupA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messageSizeGroupA }, - { &hf_lte_rrc_messagePowerOffsetGroupB, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messagePowerOffsetGroupB }, - { NULL, 0, 0, NULL } +static const per_sequence_t CRS_AssistanceInfoList_r13_sequence_of[1] = { + { &hf_lte_rrc_CRS_AssistanceInfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CRS_AssistanceInfo_r13 }, }; static int -dissect_lte_rrc_T_preamblesGroupAConfig(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_lte_rrc_T_preamblesGroupAConfig, T_preamblesGroupAConfig_sequence); +dissect_lte_rrc_CRS_AssistanceInfoList_r13(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_lte_rrc_CRS_AssistanceInfoList_r13, CRS_AssistanceInfoList_r13_sequence_of, + 1, maxCellReport, FALSE); return offset; } -static const per_sequence_t T_preambleInfo_sequence[] = { - { &hf_lte_rrc_numberOfRA_Preambles, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numberOfRA_Preambles }, - { &hf_lte_rrc_preamblesGroupAConfig, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_preamblesGroupAConfig }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_NeighCellsCRS_Info_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } }; -static int -dissect_lte_rrc_T_preambleInfo(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_lte_rrc_T_preambleInfo, T_preambleInfo_sequence); - - /* Initialise to invalid value */ - private_data_set_ra_preambles(actx, 0); +static const per_choice_t NeighCellsCRS_Info_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_114 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CRS_AssistanceInfoList_r13 }, + { 0, NULL, 0, NULL } +}; +static int +dissect_lte_rrc_NeighCellsCRS_Info_r13(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_lte_rrc_NeighCellsCRS_Info_r13, NeighCellsCRS_Info_r13_choice, + NULL); return offset; } -static const value_string lte_rrc_T_powerRampingStep_vals[] = { - { 0, "dB0" }, - { 1, "dB2" }, - { 2, "dB4" }, - { 3, "dB6" }, +static const value_string lte_rrc_T_t301_v1310_vals[] = { + { 0, "ms2500" }, + { 1, "ms3000" }, + { 2, "ms3500" }, + { 3, "ms4000" }, + { 4, "ms5000" }, + { 5, "ms6000" }, + { 6, "ms8000" }, + { 7, "ms10000" }, { 0, NULL } }; static int -dissect_lte_rrc_T_powerRampingStep(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t301_v1310(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); + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_preambleInitialReceivedTargetPower_vals[] = { - { 0, "dBm-120" }, - { 1, "dBm-118" }, - { 2, "dBm-116" }, - { 3, "dBm-114" }, - { 4, "dBm-112" }, - { 5, "dBm-110" }, - { 6, "dBm-108" }, - { 7, "dBm-106" }, - { 8, "dBm-104" }, - { 9, "dBm-102" }, - { 10, "dBm-100" }, - { 11, "dBm-98" }, - { 12, "dBm-96" }, - { 13, "dBm-94" }, - { 14, "dBm-92" }, - { 15, "dBm-90" }, +static const value_string lte_rrc_T_t310_v1330_vals[] = { + { 0, "ms4000" }, + { 1, "ms6000" }, { 0, NULL } }; static int -dissect_lte_rrc_T_preambleInitialReceivedTargetPower(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t310_v1330(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, - 16, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PowerRampingParameters_sequence[] = { - { &hf_lte_rrc_powerRampingStep, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_powerRampingStep }, - { &hf_lte_rrc_preambleInitialReceivedTargetPower, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_preambleInitialReceivedTargetPower }, +static const per_sequence_t T_eag_1_sequence[] = { + { &hf_lte_rrc_t310_v1330 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t310_v1330 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PowerRampingParameters(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_lte_rrc_PowerRampingParameters, PowerRampingParameters_sequence); +dissect_lte_rrc_T_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_1_sequence); return offset; } -static const value_string lte_rrc_PreambleTransMax_vals[] = { - { 0, "n3" }, - { 1, "n4" }, - { 2, "n5" }, - { 3, "n6" }, - { 4, "n7" }, - { 5, "n8" }, - { 6, "n10" }, - { 7, "n20" }, - { 8, "n50" }, - { 9, "n100" }, - { 10, "n200" }, - { 0, NULL } +static const per_sequence_t T_setup_107_sequence[] = { + { &hf_lte_rrc_t301_v1310 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t301_v1310 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_1 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_PreambleTransMax(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, FALSE, 0, NULL); +dissect_lte_rrc_T_setup_107(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_lte_rrc_T_setup_107, T_setup_107_sequence); return offset; } -static const value_string lte_rrc_T_ra_ResponseWindowSize_vals[] = { - { 0, "sf2" }, - { 1, "sf3" }, - { 2, "sf4" }, - { 3, "sf5" }, - { 4, "sf6" }, - { 5, "sf7" }, - { 6, "sf8" }, - { 7, "sf10" }, +static const value_string lte_rrc_RLF_TimersAndConstants_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; - -static int -dissect_lte_rrc_T_ra_ResponseWindowSize(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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_mac_ContentionResolutionTimer_vals[] = { - { 0, "sf8" }, - { 1, "sf16" }, - { 2, "sf24" }, - { 3, "sf32" }, - { 4, "sf40" }, - { 5, "sf48" }, - { 6, "sf56" }, - { 7, "sf64" }, - { 0, NULL } +static const per_choice_t RLF_TimersAndConstants_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_122 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_107 }, + { 0, NULL, 0, NULL } }; - static int -dissect_lte_rrc_T_mac_ContentionResolutionTimer(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RLF_TimersAndConstants_r13(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_lte_rrc_RLF_TimersAndConstants_r13, RLF_TimersAndConstants_r13_choice, + NULL); return offset; } -static const per_sequence_t T_ra_SupervisionInfo_sequence[] = { - { &hf_lte_rrc_preambleTransMax, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PreambleTransMax }, - { &hf_lte_rrc_ra_ResponseWindowSize, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ra_ResponseWindowSize }, - { &hf_lte_rrc_mac_ContentionResolutionTimer, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mac_ContentionResolutionTimer }, +static const per_sequence_t RadioResourceConfigDedicated_eag_5_sequence[] = { + { &hf_lte_rrc_neighCellsCRS_Info_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r13 }, + { &hf_lte_rrc_rlf_TimersAndConstants_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLF_TimersAndConstants_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_ra_SupervisionInfo(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_lte_rrc_T_ra_SupervisionInfo, T_ra_SupervisionInfo_sequence); +dissect_lte_rrc_RadioResourceConfigDedicated_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_5_sequence); return offset; } +static const per_sequence_t SPS_ConfigUL_ToAddModList_r14_sequence_of[1] = { + { &hf_lte_rrc_SPS_ConfigUL_ToAddModList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigUL }, +}; static int -dissect_lte_rrc_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 63U, NULL, FALSE); +dissect_lte_rrc_SPS_ConfigUL_ToAddModList_r14(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_lte_rrc_SPS_ConfigUL_ToAddModList_r14, SPS_ConfigUL_ToAddModList_r14_sequence_of, + 1, maxConfigSPS_r14, FALSE); return offset; } -static const per_sequence_t T_preambleMappingInfo_r13_sequence[] = { - { &hf_lte_rrc_firstPreamble_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, - { &hf_lte_rrc_lastPreamble_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SPS_ConfigUL_ToReleaseList_r14_sequence_of[1] = { + { &hf_lte_rrc_SPS_ConfigUL_ToReleaseList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigIndex_r14 }, }; static int -dissect_lte_rrc_T_preambleMappingInfo_r13(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_lte_rrc_T_preambleMappingInfo_r13, T_preambleMappingInfo_r13_sequence); +dissect_lte_rrc_SPS_ConfigUL_ToReleaseList_r14(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_lte_rrc_SPS_ConfigUL_ToReleaseList_r14, SPS_ConfigUL_ToReleaseList_r14_sequence_of, + 1, maxConfigSPS_r14, FALSE); return offset; } -static const value_string lte_rrc_T_ra_ResponseWindowSize_r13_vals[] = { +static const value_string lte_rrc_T_semiPersistSchedIntervalSL_r14_vals[] = { { 0, "sf20" }, { 1, "sf50" }, - { 2, "sf80" }, - { 3, "sf120" }, - { 4, "sf180" }, - { 5, "sf240" }, - { 6, "sf320" }, - { 7, "sf400" }, + { 2, "sf100" }, + { 3, "sf200" }, + { 4, "sf300" }, + { 5, "sf400" }, + { 6, "sf500" }, + { 7, "sf600" }, + { 8, "sf700" }, + { 9, "sf800" }, + { 10, "sf900" }, + { 11, "sf1000" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ra_ResponseWindowSize_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_semiPersistSchedIntervalSL_r14(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, - 8, NULL, FALSE, 0, NULL); + 16, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_mac_ContentionResolutionTimer_r13_vals[] = { - { 0, "sf80" }, - { 1, "sf100" }, - { 2, "sf120" }, - { 3, "sf160" }, - { 4, "sf200" }, - { 5, "sf240" }, - { 6, "sf480" }, - { 7, "sf960" }, - { 0, NULL } +static const per_sequence_t SPS_ConfigSL_r14_sequence[] = { + { &hf_lte_rrc_sps_ConfigIndex_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigIndex_r14 }, + { &hf_lte_rrc_semiPersistSchedIntervalSL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_semiPersistSchedIntervalSL_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_mac_ContentionResolutionTimer_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SPS_ConfigSL_r14(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_lte_rrc_SPS_ConfigSL_r14, SPS_ConfigSL_r14_sequence); return offset; } -static const value_string lte_rrc_T_rar_HoppingConfig_r13_vals[] = { - { 0, "on" }, - { 1, "off" }, - { 0, NULL } +static const per_sequence_t SPS_ConfigSL_ToAddModList_r14_sequence_of[1] = { + { &hf_lte_rrc_SPS_ConfigSL_ToAddModList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigSL_r14 }, }; +static int +dissect_lte_rrc_SPS_ConfigSL_ToAddModList_r14(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_lte_rrc_SPS_ConfigSL_ToAddModList_r14, SPS_ConfigSL_ToAddModList_r14_sequence_of, + 1, maxConfigSPS_r14, FALSE); + + return offset; +} + + +static const per_sequence_t SPS_ConfigSL_ToReleaseList_r14_sequence_of[1] = { + { &hf_lte_rrc_SPS_ConfigSL_ToReleaseList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigIndex_r14 }, +}; static int -dissect_lte_rrc_T_rar_HoppingConfig_r13(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, FALSE, 0, NULL); +dissect_lte_rrc_SPS_ConfigSL_ToReleaseList_r14(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_lte_rrc_SPS_ConfigSL_ToReleaseList_r14, SPS_ConfigSL_ToReleaseList_r14_sequence_of, + 1, maxConfigSPS_r14, FALSE); return offset; } -static const per_sequence_t RACH_CE_LevelInfo_r13_sequence[] = { - { &hf_lte_rrc_preambleMappingInfo_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_preambleMappingInfo_r13 }, - { &hf_lte_rrc_ra_ResponseWindowSize_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ra_ResponseWindowSize_r13 }, - { &hf_lte_rrc_mac_ContentionResolutionTimer_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mac_ContentionResolutionTimer_r13 }, - { &hf_lte_rrc_rar_HoppingConfig_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rar_HoppingConfig_r13 }, +static const per_sequence_t SPS_Config_v1430_sequence[] = { + { &hf_lte_rrc_ul_SPS_V_RNTI_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_sl_SPS_V_RNTI_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_sps_ConfigUL_ToAddModList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigUL_ToAddModList_r14 }, + { &hf_lte_rrc_sps_ConfigUL_ToReleaseList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigUL_ToReleaseList_r14 }, + { &hf_lte_rrc_sps_ConfigSL_ToAddModList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigSL_ToAddModList_r14 }, + { &hf_lte_rrc_sps_ConfigSL_ToReleaseList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigSL_ToReleaseList_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RACH_CE_LevelInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SPS_Config_v1430(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_lte_rrc_RACH_CE_LevelInfo_r13, RACH_CE_LevelInfo_r13_sequence); + ett_lte_rrc_SPS_Config_v1430, SPS_Config_v1430_sequence); return offset; } -static const per_sequence_t RACH_CE_LevelInfoList_r13_sequence_of[1] = { - { &hf_lte_rrc_RACH_CE_LevelInfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_CE_LevelInfo_r13 }, +static const per_sequence_t RadioResourceConfigDedicated_eag_6_sequence[] = { + { &hf_lte_rrc_sps_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config_v1430 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RACH_CE_LevelInfoList_r13(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_lte_rrc_RACH_CE_LevelInfoList_r13, RACH_CE_LevelInfoList_r13_sequence_of, - 1, maxCE_Level_r13, FALSE); +dissect_lte_rrc_RadioResourceConfigDedicated_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_6_sequence); return offset; } -static const per_sequence_t RACH_ConfigCommon_eag_1_sequence[] = { - { &hf_lte_rrc_preambleTransMax_CE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PreambleTransMax }, - { &hf_lte_rrc_rach_CE_LevelInfoList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_CE_LevelInfoList_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SRB_ToAddModExtList_r15_sequence_of[1] = { + { &hf_lte_rrc_SRB_ToAddModExtList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SRB_ToAddMod }, }; static int -dissect_lte_rrc_RACH_ConfigCommon_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RACH_ConfigCommon_eag_1_sequence); +dissect_lte_rrc_SRB_ToAddModExtList_r15(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_lte_rrc_SRB_ToAddModExtList_r15, SRB_ToAddModExtList_r15_sequence_of, + 1, 1, FALSE); return offset; } -static const per_sequence_t RACH_ConfigCommon_sequence[] = { - { &hf_lte_rrc_preambleInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_preambleInfo }, - { &hf_lte_rrc_powerRampingParameters, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PowerRampingParameters }, - { &hf_lte_rrc_ra_SupervisionInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ra_SupervisionInfo }, - { &hf_lte_rrc_maxHARQ_Msg3Tx, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_8 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_ConfigCommon_eag_1 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_semiPersistSchedIntervalUL_STTI_r15_vals[] = { + { 0, "sTTI1" }, + { 1, "sTTI2" }, + { 2, "sTTI3" }, + { 3, "sTTI4" }, + { 4, "sTTI6" }, + { 5, "sTTI8" }, + { 6, "sTTI12" }, + { 7, "sTTI16" }, + { 8, "sTTI20" }, + { 9, "sTTI40" }, + { 10, "sTTI60" }, + { 11, "sTTI80" }, + { 12, "sTTI120" }, + { 13, "sTTI240" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RACH_ConfigCommon(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_lte_rrc_RACH_ConfigCommon, RACH_ConfigCommon_sequence); +dissect_lte_rrc_T_semiPersistSchedIntervalUL_STTI_r15(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_modificationPeriodCoeff_vals[] = { - { 0, "n2" }, - { 1, "n4" }, - { 2, "n8" }, - { 3, "n16" }, +static const value_string lte_rrc_T_implicitReleaseAfter_01_vals[] = { + { 0, "e2" }, + { 1, "e3" }, + { 2, "e4" }, + { 3, "e8" }, { 0, NULL } }; static int -dissect_lte_rrc_T_modificationPeriodCoeff(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_implicitReleaseAfter_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); @@ -32768,70 +36334,68 @@ dissect_lte_rrc_T_modificationPeriodCoeff(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t BCCH_Config_sequence[] = { - { &hf_lte_rrc_modificationPeriodCoeff, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_modificationPeriodCoeff }, +static const per_sequence_t T_p0_Persistent_r15_sequence[] = { + { &hf_lte_rrc_p0_NominalSPUSCH_Persistent_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, + { &hf_lte_rrc_p0_UE_SPUSCH_Persistent_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BCCH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_p0_Persistent_r15(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_lte_rrc_BCCH_Config, BCCH_Config_sequence); + ett_lte_rrc_T_p0_Persistent_r15, T_p0_Persistent_r15_sequence); return offset; } -static const value_string lte_rrc_T_defaultPagingCycle_vals[] = { - { 0, "rf32" }, - { 1, "rf64" }, - { 2, "rf128" }, - { 3, "rf256" }, +static const value_string lte_rrc_T_twoIntervalsConfig_r15_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_defaultPagingCycle(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_twoIntervalsConfig_r15(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); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_nB_vals[] = { - { 0, "fourT" }, - { 1, "twoT" }, - { 2, "oneT" }, - { 3, "halfT" }, - { 4, "quarterT" }, - { 5, "oneEighthT" }, - { 6, "oneSixteenthT" }, - { 7, "oneThirtySecondT" }, - { 0, NULL } +static const per_sequence_t T_setup_132_sequence[] = { + { &hf_lte_rrc_p0_NominalSPUSCH_PersistentSubframeSet2_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, + { &hf_lte_rrc_p0_UE_SPUSCH_PersistentSubframeSet2_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_7 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_nB(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_setup_132(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_lte_rrc_T_setup_132, T_setup_132_sequence); return offset; } -static const per_sequence_t PCCH_Config_sequence[] = { - { &hf_lte_rrc_defaultPagingCycle, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_defaultPagingCycle }, - { &hf_lte_rrc_nB , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nB }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_p0_PersistentSubframeSet2_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_p0_PersistentSubframeSet2_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_147 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_132 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_PCCH_Config(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_lte_rrc_PCCH_Config, PCCH_Config_sequence); +dissect_lte_rrc_T_p0_PersistentSubframeSet2_r15(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_lte_rrc_T_p0_PersistentSubframeSet2_r15, T_p0_PersistentSubframeSet2_r15_choice, + NULL); return offset; } @@ -32839,487 +36403,563 @@ dissect_lte_rrc_PCCH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int -dissect_lte_rrc_INTEGER_0_837(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_1_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 837U, NULL, FALSE); + 1U, 12U, NULL, FALSE); return offset; } +static const value_string lte_rrc_T_cyclicShiftSPS_sTTI_r15_vals[] = { + { 0, "cs0" }, + { 1, "cs1" }, + { 2, "cs2" }, + { 3, "cs3" }, + { 4, "cs4" }, + { 5, "cs5" }, + { 6, "cs6" }, + { 7, "cs7" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_0_94(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 94U, NULL, FALSE); +dissect_lte_rrc_T_cyclicShiftSPS_sTTI_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PRACH_ConfigInfo_sequence[] = { - { &hf_lte_rrc_prach_ConfigIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, - { &hf_lte_rrc_highSpeedFlag, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_zeroCorrelationZoneConfig, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, - { &hf_lte_rrc_prach_FreqOffset, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_94 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_rv_SPS_STTI_UL_Repetitions_r15_vals[] = { + { 0, "ulrvseq1" }, + { 1, "ulrvseq2" }, + { 2, "ulrvseq3" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PRACH_ConfigInfo(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_lte_rrc_PRACH_ConfigInfo, PRACH_ConfigInfo_sequence); +dissect_lte_rrc_T_rv_SPS_STTI_UL_Repetitions_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t PRACH_ConfigSIB_sequence[] = { - { &hf_lte_rrc_rootSequenceIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_837 }, - { &hf_lte_rrc_prach_ConfigInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PRACH_ConfigInfo }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_tbs_scalingFactorSubslotSPS_UL_Repetitions_r15_vals[] = { + { 0, "n6" }, + { 1, "n12" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PRACH_ConfigSIB(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_lte_rrc_PRACH_ConfigSIB, PRACH_ConfigSIB_sequence); +dissect_lte_rrc_T_tbs_scalingFactorSubslotSPS_UL_Repetitions_r15(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, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_totalNumberPUSCH_SPS_STTI_UL_Repetitions_r15_vals[] = { + { 0, "n2" }, + { 1, "n3" }, + { 2, "n4" }, + { 3, "n6" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_M60_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -60, 50U, NULL, FALSE); +dissect_lte_rrc_T_totalNumberPUSCH_SPS_STTI_UL_Repetitions_r15(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 per_sequence_t PDSCH_ConfigCommon_sequence[] = { - { &hf_lte_rrc_referenceSignalPower, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_50 }, - { &hf_lte_rrc_p_b , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, +static const per_sequence_t T_setup_131_sequence[] = { + { &hf_lte_rrc_semiPersistSchedIntervalUL_STTI_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_semiPersistSchedIntervalUL_STTI_r15 }, + { &hf_lte_rrc_implicitReleaseAfter_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_implicitReleaseAfter_01 }, + { &hf_lte_rrc_p0_Persistent_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_p0_Persistent_r15 }, + { &hf_lte_rrc_twoIntervalsConfig_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_twoIntervalsConfig_r15 }, + { &hf_lte_rrc_p0_PersistentSubframeSet2_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_p0_PersistentSubframeSet2_r15 }, + { &hf_lte_rrc_numberOfConfUL_SPS_Processes_STTI_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_12 }, + { &hf_lte_rrc_sTTI_StartTimeUL_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_5 }, + { &hf_lte_rrc_tpc_PDCCH_ConfigPUSCH_SPS_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TPC_PDCCH_Config }, + { &hf_lte_rrc_cyclicShiftSPS_sTTI_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_cyclicShiftSPS_sTTI_r15 }, + { &hf_lte_rrc_ifdma_Config_SPS_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_harq_ProcID_offset_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_rv_SPS_STTI_UL_Repetitions_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rv_SPS_STTI_UL_Repetitions_r15 }, + { &hf_lte_rrc_sps_ConfigIndex_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigIndex_r15 }, + { &hf_lte_rrc_tbs_scalingFactorSubslotSPS_UL_Repetitions_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_tbs_scalingFactorSubslotSPS_UL_Repetitions_r15 }, + { &hf_lte_rrc_totalNumberPUSCH_SPS_STTI_UL_Repetitions_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_totalNumberPUSCH_SPS_STTI_UL_Repetitions_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PDSCH_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_131(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_lte_rrc_PDSCH_ConfigCommon, PDSCH_ConfigCommon_sequence); + ett_lte_rrc_T_setup_131, T_setup_131_sequence); return offset; } -static const value_string lte_rrc_T_hoppingMode_vals[] = { - { 0, "interSubFrame" }, - { 1, "intraAndInterSubFrame" }, +static const value_string lte_rrc_SPS_ConfigUL_STTI_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t SPS_ConfigUL_STTI_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_146 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_131 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_hoppingMode(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, FALSE, 0, NULL); +dissect_lte_rrc_SPS_ConfigUL_STTI_r15(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_lte_rrc_SPS_ConfigUL_STTI_r15, SPS_ConfigUL_STTI_r15_choice, + NULL); return offset; } +static const per_sequence_t SPS_ConfigUL_STTI_ToAddModList_r15_sequence_of[1] = { + { &hf_lte_rrc_SPS_ConfigUL_STTI_ToAddModList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigUL_STTI_r15 }, +}; static int -dissect_lte_rrc_INTEGER_0_98(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 98U, NULL, FALSE); +dissect_lte_rrc_SPS_ConfigUL_STTI_ToAddModList_r15(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_lte_rrc_SPS_ConfigUL_STTI_ToAddModList_r15, SPS_ConfigUL_STTI_ToAddModList_r15_sequence_of, + 1, maxConfigSPS_r15, FALSE); return offset; } -static const per_sequence_t T_pusch_ConfigBasic_sequence[] = { - { &hf_lte_rrc_n_SB , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, - { &hf_lte_rrc_hoppingMode , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_hoppingMode }, - { &hf_lte_rrc_pusch_HoppingOffset, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_98 }, - { &hf_lte_rrc_enable64QAM , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { NULL, 0, 0, NULL } +static const per_sequence_t SPS_ConfigUL_STTI_ToReleaseList_r15_sequence_of[1] = { + { &hf_lte_rrc_SPS_ConfigUL_STTI_ToReleaseList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigIndex_r15 }, }; static int -dissect_lte_rrc_T_pusch_ConfigBasic(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_lte_rrc_T_pusch_ConfigBasic, T_pusch_ConfigBasic_sequence); +dissect_lte_rrc_SPS_ConfigUL_STTI_ToReleaseList_r15(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_lte_rrc_SPS_ConfigUL_STTI_ToReleaseList_r15, SPS_ConfigUL_STTI_ToReleaseList_r15_sequence_of, + 1, maxConfigSPS_r15, FALSE); return offset; } +static const per_sequence_t SPS_ConfigUL_ToAddModList_r15_sequence_of[1] = { + { &hf_lte_rrc_SPS_ConfigUL_ToAddModList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigUL }, +}; static int -dissect_lte_rrc_INTEGER_0_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 29U, NULL, FALSE); +dissect_lte_rrc_SPS_ConfigUL_ToAddModList_r15(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_lte_rrc_SPS_ConfigUL_ToAddModList_r15, SPS_ConfigUL_ToAddModList_r15_sequence_of, + 1, maxConfigSPS_r15, FALSE); return offset; } -static const per_sequence_t UL_ReferenceSignalsPUSCH_sequence[] = { - { &hf_lte_rrc_groupHoppingEnabled, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_groupAssignmentPUSCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_29 }, - { &hf_lte_rrc_sequenceHoppingEnabled, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_cyclicShift , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SPS_ConfigUL_ToReleaseList_r15_sequence_of[1] = { + { &hf_lte_rrc_SPS_ConfigUL_ToReleaseList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SPS_ConfigIndex_r15 }, }; static int -dissect_lte_rrc_UL_ReferenceSignalsPUSCH(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_lte_rrc_UL_ReferenceSignalsPUSCH, UL_ReferenceSignalsPUSCH_sequence); +dissect_lte_rrc_SPS_ConfigUL_ToReleaseList_r15(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_lte_rrc_SPS_ConfigUL_ToReleaseList_r15, SPS_ConfigUL_ToReleaseList_r15_sequence_of, + 1, maxConfigSPS_r15, FALSE); return offset; } -static const per_sequence_t PUSCH_ConfigCommon_sequence[] = { - { &hf_lte_rrc_pusch_ConfigBasic, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pusch_ConfigBasic }, - { &hf_lte_rrc_ul_ReferenceSignalsPUSCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_ReferenceSignalsPUSCH }, +static const per_sequence_t SPS_Config_v1530_sequence[] = { + { &hf_lte_rrc_semiPersistSchedC_RNTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_sps_ConfigDL, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigDL }, + { &hf_lte_rrc_sps_ConfigUL_STTI_ToAddModList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigUL_STTI_ToAddModList_r15 }, + { &hf_lte_rrc_sps_ConfigUL_STTI_ToReleaseList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigUL_STTI_ToReleaseList_r15 }, + { &hf_lte_rrc_sps_ConfigUL_ToAddModList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigUL_ToAddModList_r15 }, + { &hf_lte_rrc_sps_ConfigUL_ToReleaseList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_ConfigUL_ToReleaseList_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PUSCH_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SPS_Config_v1530(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_lte_rrc_PUSCH_ConfigCommon, PUSCH_ConfigCommon_sequence); + ett_lte_rrc_SPS_Config_v1530, SPS_Config_v1530_sequence); return offset; } -static const value_string lte_rrc_T_deltaPUCCH_Shift_vals[] = { - { 0, "ds1" }, - { 1, "ds2" }, - { 2, "ds3" }, +static const value_string lte_rrc_T_crs_IntfMitigNumPRBs_r15_01_vals[] = { + { 0, "n6" }, + { 1, "n24" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaPUCCH_Shift(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_crs_IntfMitigNumPRBs_r15_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, - 3, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PUCCH_ConfigCommon_sequence[] = { - { &hf_lte_rrc_deltaPUCCH_Shift, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaPUCCH_Shift }, - { &hf_lte_rrc_nRB_CQI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_98 }, - { &hf_lte_rrc_nCS_AN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_n1PUCCH_AN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_setup_100_vals[] = { + { 0, "crs-IntfMitigEnabled-15" }, + { 1, "crs-IntfMitigNumPRBs-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_setup_100_choice[] = { + { 0, &hf_lte_rrc_crs_IntfMitigEnabled_15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_crs_IntfMitigNumPRBs_r15_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_crs_IntfMitigNumPRBs_r15_01 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_PUCCH_ConfigCommon(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_lte_rrc_PUCCH_ConfigCommon, PUCCH_ConfigCommon_sequence); +dissect_lte_rrc_T_setup_100(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_lte_rrc_T_setup_100, T_setup_100_choice, + NULL); return offset; } -static const value_string lte_rrc_T_srs_BandwidthConfig_vals[] = { - { 0, "bw0" }, - { 1, "bw1" }, - { 2, "bw2" }, - { 3, "bw3" }, - { 4, "bw4" }, - { 5, "bw5" }, - { 6, "bw6" }, - { 7, "bw7" }, +static const value_string lte_rrc_T_crs_IntfMitigConfig_r15_01_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t T_crs_IntfMitigConfig_r15_01_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_111 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_100 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_srs_BandwidthConfig(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_crs_IntfMitigConfig_r15_01(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_lte_rrc_T_crs_IntfMitigConfig_r15_01, T_crs_IntfMitigConfig_r15_01_choice, + NULL); return offset; } -static const value_string lte_rrc_T_srs_SubframeConfig_vals[] = { - { 0, "sc0" }, - { 1, "sc1" }, - { 2, "sc2" }, - { 3, "sc3" }, - { 4, "sc4" }, - { 5, "sc5" }, - { 6, "sc6" }, - { 7, "sc7" }, - { 8, "sc8" }, - { 9, "sc9" }, - { 10, "sc10" }, - { 11, "sc11" }, - { 12, "sc12" }, - { 13, "sc13" }, - { 14, "sc14" }, - { 15, "sc15" }, +static const value_string lte_rrc_T_crs_IntfMitigEnabled_15_vals[] = { + { 0, "enabled" }, { 0, NULL } }; static int -dissect_lte_rrc_T_srs_SubframeConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_crs_IntfMitigEnabled_15(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, - 16, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_srs_MaxUpPts_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t CRS_AssistanceInfo_r15_sequence[] = { + { &hf_lte_rrc_physCellId_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_crs_IntfMitigEnabled_15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_IntfMitigEnabled_15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_srs_MaxUpPts(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CRS_AssistanceInfo_r15(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_lte_rrc_CRS_AssistanceInfo_r15, CRS_AssistanceInfo_r15_sequence); return offset; } -static const per_sequence_t T_setup_84_sequence[] = { - { &hf_lte_rrc_srs_BandwidthConfig, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_srs_BandwidthConfig }, - { &hf_lte_rrc_srs_SubframeConfig, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_srs_SubframeConfig }, - { &hf_lte_rrc_ackNackSRS_SimultaneousTransmission, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_srs_MaxUpPts, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_MaxUpPts }, - { NULL, 0, 0, NULL } +static const per_sequence_t CRS_AssistanceInfoList_r15_sequence_of[1] = { + { &hf_lte_rrc_CRS_AssistanceInfoList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CRS_AssistanceInfo_r15 }, }; static int -dissect_lte_rrc_T_setup_84(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_lte_rrc_T_setup_84, T_setup_84_sequence); +dissect_lte_rrc_CRS_AssistanceInfoList_r15(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_lte_rrc_CRS_AssistanceInfoList_r15, CRS_AssistanceInfoList_r15_sequence_of, + 1, maxCellReport, FALSE); return offset; } -static const value_string lte_rrc_SoundingRS_UL_ConfigCommon_vals[] = { +static const value_string lte_rrc_NeighCellsCRS_Info_r15_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t SoundingRS_UL_ConfigCommon_choice[] = { +static const per_choice_t NeighCellsCRS_Info_r15_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_97 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_84 }, + { 1, &hf_lte_rrc_setup_115 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CRS_AssistanceInfoList_r15 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SoundingRS_UL_ConfigCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NeighCellsCRS_Info_r15(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_lte_rrc_SoundingRS_UL_ConfigCommon, SoundingRS_UL_ConfigCommon_choice, + ett_lte_rrc_NeighCellsCRS_Info_r15, NeighCellsCRS_Info_r15_choice, NULL); return offset; } +static const per_sequence_t DRB_ToAddModList_r15_sequence_of[1] = { + { &hf_lte_rrc_DRB_ToAddModList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddMod }, +}; static int -dissect_lte_rrc_INTEGER_M127_M96(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -127, -96, NULL, FALSE); +dissect_lte_rrc_DRB_ToAddModList_r15(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_lte_rrc_DRB_ToAddModList_r15, DRB_ToAddModList_r15_sequence_of, + 1, maxDRB_r15, FALSE); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format1_vals[] = { - { 0, "deltaF-2" }, - { 1, "deltaF0" }, - { 2, "deltaF2" }, - { 0, NULL } +static const per_sequence_t DRB_ToReleaseList_r15_sequence_of[1] = { + { &hf_lte_rrc_DRB_ToReleaseList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, }; - static int -dissect_lte_rrc_T_deltaF_PUCCH_Format1(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, FALSE, 0, NULL); +dissect_lte_rrc_DRB_ToReleaseList_r15(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_lte_rrc_DRB_ToReleaseList_r15, DRB_ToReleaseList_r15_sequence_of, + 1, maxDRB_r15, FALSE); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format1b_vals[] = { - { 0, "deltaF1" }, - { 1, "deltaF3" }, - { 2, "deltaF5" }, - { 0, NULL } +static const per_sequence_t SRB_ToReleaseListDupl_r15_sequence_of[1] = { + { &hf_lte_rrc_SRB_ToReleaseListDupl_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_2 }, }; - static int -dissect_lte_rrc_T_deltaF_PUCCH_Format1b(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, FALSE, 0, NULL); +dissect_lte_rrc_SRB_ToReleaseListDupl_r15(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_lte_rrc_SRB_ToReleaseListDupl_r15, SRB_ToReleaseListDupl_r15_sequence_of, + 1, 2, FALSE); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format2_vals[] = { - { 0, "deltaF-2" }, - { 1, "deltaF0" }, - { 2, "deltaF1" }, - { 3, "deltaF2" }, - { 0, NULL } +static const per_sequence_t RadioResourceConfigDedicated_eag_7_sequence[] = { + { &hf_lte_rrc_srb_ToAddModExtList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SRB_ToAddModExtList_r15 }, + { &hf_lte_rrc_srb_ToReleaseExtList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_4 }, + { &hf_lte_rrc_sps_Config_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config_v1530 }, + { &hf_lte_rrc_crs_IntfMitigConfig_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_IntfMitigConfig_r15_01 }, + { &hf_lte_rrc_neighCellsCRS_Info_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r15 }, + { &hf_lte_rrc_drb_ToAddModList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToAddModList_r15 }, + { &hf_lte_rrc_drb_ToReleaseList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToReleaseList_r15 }, + { &hf_lte_rrc_srb_ToReleaseListDupl_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SRB_ToReleaseListDupl_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_deltaF_PUCCH_Format2(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); +dissect_lte_rrc_RadioResourceConfigDedicated_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_eag_7_sequence); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format2a_vals[] = { - { 0, "deltaF-2" }, - { 1, "deltaF0" }, - { 2, "deltaF2" }, - { 0, NULL } +static const per_sequence_t RadioResourceConfigDedicated_sequence[] = { + { &hf_lte_rrc_srb_ToAddModList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SRB_ToAddModList }, + { &hf_lte_rrc_drb_ToAddModList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToAddModList }, + { &hf_lte_rrc_drb_ToReleaseList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToReleaseList }, + { &hf_lte_rrc_mac_MainConfig, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_mac_MainConfig }, + { &hf_lte_rrc_sps_Config , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config }, + { &hf_lte_rrc_physicalConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicated }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_eag_7 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_deltaF_PUCCH_Format2a(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, FALSE, 0, NULL); +dissect_lte_rrc_RadioResourceConfigDedicated(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + private_data_set_simult_pucch_pusch_cell_type(actx, SIMULT_PUCCH_PUSCH_PCELL); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RadioResourceConfigDedicated, RadioResourceConfigDedicated_sequence); + + return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format2b_vals[] = { - { 0, "deltaF-2" }, - { 1, "deltaF0" }, - { 2, "deltaF2" }, +static const value_string lte_rrc_CipheringAlgorithm_r12_vals[] = { + { 0, "eea0" }, + { 1, "eea1" }, + { 2, "eea2" }, + { 3, "eea3-v1130" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaF_PUCCH_Format2b(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CipheringAlgorithm_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 value; + pdcp_security_info_t *p_security_algorithms; offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 3, NULL, FALSE, 0, NULL); + 8, &value, TRUE, 0, NULL); + + p_security_algorithms = private_data_pdcp_security_algorithms(actx); + p_security_algorithms->ciphering = (enum security_ciphering_algorithm_e)value; + return offset; } -static const per_sequence_t DeltaFList_PUCCH_sequence[] = { - { &hf_lte_rrc_deltaF_PUCCH_Format1, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format1 }, - { &hf_lte_rrc_deltaF_PUCCH_Format1b, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format1b }, - { &hf_lte_rrc_deltaF_PUCCH_Format2, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format2 }, - { &hf_lte_rrc_deltaF_PUCCH_Format2a, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format2a }, - { &hf_lte_rrc_deltaF_PUCCH_Format2b, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format2b }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_integrityProtAlgorithm_vals[] = { + { 0, "eia0-v920" }, + { 1, "eia1" }, + { 2, "eia2" }, + { 3, "eia3-v1130" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_DeltaFList_PUCCH(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_lte_rrc_DeltaFList_PUCCH, DeltaFList_PUCCH_sequence); +dissect_lte_rrc_T_integrityProtAlgorithm(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 value; + pdcp_security_info_t *p_security_algorithms; + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 8, &value, TRUE, 0, NULL); + + p_security_algorithms = private_data_pdcp_security_algorithms(actx); + p_security_algorithms->integrity = (enum security_integrity_algorithm_e)value; + return offset; } -static const per_sequence_t UplinkPowerControlCommon_sequence[] = { - { &hf_lte_rrc_p0_NominalPUSCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, - { &hf_lte_rrc_alpha , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Alpha_r12 }, - { &hf_lte_rrc_p0_NominalPUCCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M127_M96 }, - { &hf_lte_rrc_deltaFList_PUCCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DeltaFList_PUCCH }, - { &hf_lte_rrc_deltaPreambleMsg3, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M1_6 }, +static const per_sequence_t SecurityAlgorithmConfig_sequence[] = { + { &hf_lte_rrc_cipheringAlgorithm, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CipheringAlgorithm_r12 }, + { &hf_lte_rrc_integrityProtAlgorithm, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_integrityProtAlgorithm }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UplinkPowerControlCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SecurityAlgorithmConfig(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + pdcp_lte_info *p_pdcp_lte_info; + pdcp_security_info_t *p_security_algorithms; offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_UplinkPowerControlCommon, UplinkPowerControlCommon_sequence); + ett_lte_rrc_SecurityAlgorithmConfig, SecurityAlgorithmConfig_sequence); + + p_security_algorithms = private_data_pdcp_security_algorithms(actx); + p_security_algorithms->configuration_frame = actx->pinfo->num; + p_security_algorithms->previous_configuration_frame = 0; + p_security_algorithms->previous_integrity = eia0; + p_security_algorithms->previous_ciphering = eea0; + + /* Look for UE identifier */ + p_pdcp_lte_info = (pdcp_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_pdcp_lte, 0); + if (p_pdcp_lte_info != NULL) { + /* Configure algorithms */ + set_pdcp_lte_security_algorithms(p_pdcp_lte_info->ueid, p_security_algorithms); + } + return offset; } -static const value_string lte_rrc_UL_CyclicPrefixLength_vals[] = { - { 0, "len1" }, - { 1, "len2" }, +static const value_string lte_rrc_T_dl_Bandwidth_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, { 0, NULL } }; static int -dissect_lte_rrc_UL_CyclicPrefixLength(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dl_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, - 2, NULL, FALSE, 0, NULL); + 6, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format3_r10_vals[] = { - { 0, "deltaF-1" }, - { 1, "deltaF0" }, - { 2, "deltaF1" }, - { 3, "deltaF2" }, - { 4, "deltaF3" }, - { 5, "deltaF4" }, - { 6, "deltaF5" }, - { 7, "deltaF6" }, +static const value_string lte_rrc_T_phich_Duration_vals[] = { + { 0, "normal" }, + { 1, "extended" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaF_PUCCH_Format3_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_phich_Duration(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, - 8, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format1bCS_r10_vals[] = { - { 0, "deltaF1" }, - { 1, "deltaF2" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_phich_Resource_vals[] = { + { 0, "oneSixth" }, + { 1, "half" }, + { 2, "one" }, + { 3, "two" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_phich_Resource(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); @@ -33327,714 +36967,703 @@ dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r10(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t UplinkPowerControlCommon_v1020_sequence[] = { - { &hf_lte_rrc_deltaF_PUCCH_Format3_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format3_r10 }, - { &hf_lte_rrc_deltaF_PUCCH_Format1bCS_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r10 }, +static const per_sequence_t PHICH_Config_sequence[] = { + { &hf_lte_rrc_phich_Duration, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_phich_Duration }, + { &hf_lte_rrc_phich_Resource, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_phich_Resource }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UplinkPowerControlCommon_v1020(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PHICH_Config(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_lte_rrc_UplinkPowerControlCommon_v1020, UplinkPowerControlCommon_v1020_sequence); + ett_lte_rrc_PHICH_Config, PHICH_Config_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommonSIB_eag_1_sequence[] = { - { &hf_lte_rrc_uplinkPowerControlCommon_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1020 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_1_sequence); +dissect_lte_rrc_T_systemFrameNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *value_tvb = NULL; + guint32 sfn; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, FALSE, &value_tvb, NULL); + + /* Show SFN in info column */ + sfn = tvb_get_guint8(value_tvb, 0); + col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (SFN=%u)", sfn); + return offset; } -static const value_string lte_rrc_T_connEstFailCount_r12_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, - { 0, NULL } +static const per_sequence_t MasterInformationBlock_sequence[] = { + { &hf_lte_rrc_dl_Bandwidth, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_Bandwidth }, + { &hf_lte_rrc_phich_Config, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PHICH_Config }, + { &hf_lte_rrc_systemFrameNumber, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_systemFrameNumber }, + { &hf_lte_rrc_schedulingInfoSIB1_BR_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_systemInfoUnchanged_BR_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_spare_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_4 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_connEstFailCount_r12(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); +dissect_lte_rrc_MasterInformationBlock(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MasterInformationBlock"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_MasterInformationBlock, MasterInformationBlock_sequence); return offset; } -static const value_string lte_rrc_T_connEstFailOffsetValidity_r12_vals[] = { - { 0, "s30" }, - { 1, "s60" }, - { 2, "s120" }, - { 3, "s240" }, - { 4, "s300" }, - { 5, "s420" }, - { 6, "s600" }, - { 7, "s900" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_connEstFailOffsetValidity_r12(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MCC_MNC_Digit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 9U, NULL, FALSE); return offset; } -static const per_sequence_t T_txFailParams_r12_sequence[] = { - { &hf_lte_rrc_connEstFailCount_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_connEstFailCount_r12 }, - { &hf_lte_rrc_connEstFailOffsetValidity_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_connEstFailOffsetValidity_r12 }, - { &hf_lte_rrc_connEstFailOffset_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, - { NULL, 0, 0, NULL } +static const per_sequence_t MCC_sequence_of[1] = { + { &hf_lte_rrc_MCC_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MCC_MNC_Digit }, }; static int -dissect_lte_rrc_T_txFailParams_r12(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_lte_rrc_T_txFailParams_r12, T_txFailParams_r12_sequence); +dissect_lte_rrc_MCC(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_lte_rrc_MCC, MCC_sequence_of, + 3, 3, FALSE); return offset; } -static const per_sequence_t RACH_ConfigCommon_v1250_sequence[] = { - { &hf_lte_rrc_txFailParams_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_txFailParams_r12 }, - { NULL, 0, 0, NULL } +static const per_sequence_t MNC_sequence_of[1] = { + { &hf_lte_rrc_MNC_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MCC_MNC_Digit }, }; static int -dissect_lte_rrc_RACH_ConfigCommon_v1250(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_lte_rrc_RACH_ConfigCommon_v1250, RACH_ConfigCommon_v1250_sequence); +dissect_lte_rrc_MNC(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_lte_rrc_MNC, MNC_sequence_of, + 2, 3, FALSE); return offset; } -static const per_sequence_t RadioResourceConfigCommonSIB_eag_2_sequence[] = { - { &hf_lte_rrc_rach_ConfigCommon_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_ConfigCommon_v1250 }, +static const per_sequence_t PLMN_Identity_sequence[] = { + { &hf_lte_rrc_mcc , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MCC }, + { &hf_lte_rrc_mnc , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MNC }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_2_sequence); +dissect_lte_rrc_PLMN_Identity(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_lte_rrc_PLMN_Identity, PLMN_Identity_sequence); return offset; } -static const value_string lte_rrc_T_enable64QAM_v1270_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_cellReservedForOperatorUse_vals[] = { + { 0, "reserved" }, + { 1, "notReserved" }, { 0, NULL } }; static int -dissect_lte_rrc_T_enable64QAM_v1270(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cellReservedForOperatorUse(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PUSCH_ConfigCommon_v1270_sequence[] = { - { &hf_lte_rrc_enable64QAM_v1270, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_enable64QAM_v1270 }, +static const per_sequence_t PLMN_IdentityInfo_sequence[] = { + { &hf_lte_rrc_plmn_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, + { &hf_lte_rrc_cellReservedForOperatorUse, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReservedForOperatorUse }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PUSCH_ConfigCommon_v1270(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PLMN_IdentityInfo(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_lte_rrc_PUSCH_ConfigCommon_v1270, PUSCH_ConfigCommon_v1270_sequence); + ett_lte_rrc_PLMN_IdentityInfo, PLMN_IdentityInfo_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommonSIB_eag_3_sequence[] = { - { &hf_lte_rrc_pusch_ConfigCommon_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigCommon_v1270 }, - { NULL, 0, 0, NULL } +static const per_sequence_t PLMN_IdentityList_sequence_of[1] = { + { &hf_lte_rrc_PLMN_IdentityList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityInfo }, }; static int -dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_3_sequence); +dissect_lte_rrc_PLMN_IdentityList(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_lte_rrc_PLMN_IdentityList, PLMN_IdentityList_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const value_string lte_rrc_T_modificationPeriodCoeff_v1310_vals[] = { - { 0, "n64" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_modificationPeriodCoeff_v1310(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_TrackingAreaCode(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, + 16, 16, FALSE, NULL, NULL); return offset; } -static const per_sequence_t BCCH_Config_v1310_sequence[] = { - { &hf_lte_rrc_modificationPeriodCoeff_v1310, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_modificationPeriodCoeff_v1310 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_BCCH_Config_v1310(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_lte_rrc_BCCH_Config_v1310, BCCH_Config_v1310_sequence); +dissect_lte_rrc_CellIdentity(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, + 28, 28, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_mpdcch_NumRepetition_Paging_r13_vals[] = { - { 0, "r1" }, - { 1, "r2" }, - { 2, "r4" }, - { 3, "r8" }, - { 4, "r16" }, - { 5, "r32" }, - { 6, "r64" }, - { 7, "r128" }, - { 8, "r256" }, +static const value_string lte_rrc_T_cellBarred_vals[] = { + { 0, "barred" }, + { 1, "notBarred" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mpdcch_NumRepetition_Paging_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cellBarred(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, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_nB_v1310_vals[] = { - { 0, "one64thT" }, - { 1, "one128thT" }, - { 2, "one256thT" }, +static const value_string lte_rrc_T_intraFreqReselection_vals[] = { + { 0, "allowed" }, + { 1, "notAllowed" }, { 0, NULL } }; static int -dissect_lte_rrc_T_nB_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_intraFreqReselection(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, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PCCH_Config_v1310_sequence[] = { - { &hf_lte_rrc_paging_narrowBands_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, - { &hf_lte_rrc_mpdcch_NumRepetition_Paging_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NumRepetition_Paging_r13 }, - { &hf_lte_rrc_nB_v1310 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nB_v1310 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_PCCH_Config_v1310(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_lte_rrc_PCCH_Config_v1310, PCCH_Config_v1310_sequence); +dissect_lte_rrc_CSG_Identity(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, + 27, 27, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_dummy_02_vals[] = { - { 0, "nb2" }, - { 1, "nb4" }, - { 0, NULL } +static const per_sequence_t T_cellAccessRelatedInfo_sequence[] = { + { &hf_lte_rrc_plmn_IdentityList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityList }, + { &hf_lte_rrc_trackingAreaCode, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, + { &hf_lte_rrc_cellIdentity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, + { &hf_lte_rrc_cellBarred , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellBarred }, + { &hf_lte_rrc_intraFreqReselection, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_intraFreqReselection }, + { &hf_lte_rrc_csg_Indication, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_csg_Identity, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSG_Identity }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_dummy_02(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, FALSE, 0, NULL); +dissect_lte_rrc_T_cellAccessRelatedInfo(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_lte_rrc_T_cellAccessRelatedInfo, T_cellAccessRelatedInfo_sequence); return offset; } -static const value_string lte_rrc_T_interval_FDD_r13_02_vals[] = { - { 0, "int1" }, - { 1, "int2" }, - { 2, "int4" }, - { 3, "int8" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_interval_FDD_r13_02(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); +dissect_lte_rrc_Q_RxLevMin(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -70, -22, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_interval_TDD_r13_02_vals[] = { - { 0, "int1" }, - { 1, "int5" }, - { 2, "int10" }, - { 3, "int20" }, - { 0, NULL } +static const per_sequence_t T_cellSelectionInfo_sequence[] = { + { &hf_lte_rrc_q_RxLevMin , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_q_RxLevMinOffset, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_8 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_interval_TDD_r13_02(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); +dissect_lte_rrc_T_cellSelectionInfo(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_lte_rrc_T_cellSelectionInfo, T_cellSelectionInfo_sequence); return offset; } -static const value_string lte_rrc_T_dummy2_01_vals[] = { - { 0, "interval-FDD-r13" }, - { 1, "interval-TDD-r13" }, - { 0, NULL } -}; -static const per_choice_t T_dummy2_01_choice[] = { - { 0, &hf_lte_rrc_interval_FDD_r13_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13_02 }, - { 1, &hf_lte_rrc_interval_TDD_r13_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13_02 }, - { 0, NULL, 0, NULL } -}; +static int +dissect_lte_rrc_P_Max(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -30, 33U, NULL, FALSE); + + return offset; +} + + static int -dissect_lte_rrc_T_dummy2_01(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_lte_rrc_T_dummy2_01, T_dummy2_01_choice, - NULL); +dissect_lte_rrc_FreqBandIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 value; + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxFBI, &value, FALSE); + + set_freq_band_indicator(value, actx); + return offset; } -static const value_string lte_rrc_T_interval_FDD_r13_03_vals[] = { - { 0, "int2" }, - { 1, "int4" }, - { 2, "int8" }, - { 3, "int16" }, +static const value_string lte_rrc_T_si_Periodicity_vals[] = { + { 0, "rf8" }, + { 1, "rf16" }, + { 2, "rf32" }, + { 3, "rf64" }, + { 4, "rf128" }, + { 5, "rf256" }, + { 6, "rf512" }, { 0, NULL } }; static int -dissect_lte_rrc_T_interval_FDD_r13_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_si_Periodicity(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); + 7, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_interval_TDD_r13_03_vals[] = { - { 0, "int5" }, - { 1, "int10" }, - { 2, "int20" }, - { 3, "int40" }, +static const value_string lte_rrc_SIB_Type_vals[] = { + { 0, "sibType3" }, + { 1, "sibType4" }, + { 2, "sibType5" }, + { 3, "sibType6" }, + { 4, "sibType7" }, + { 5, "sibType8" }, + { 6, "sibType9" }, + { 7, "sibType10" }, + { 8, "sibType11" }, + { 9, "sibType12-v920" }, + { 10, "sibType13-v920" }, + { 11, "sibType14-v1130" }, + { 12, "sibType15-v1130" }, + { 13, "sibType16-v1130" }, + { 14, "sibType17-v1250" }, + { 15, "sibType18-v1250" }, + { 16, "sibType19-v1250" }, + { 17, "sibType20-v1310" }, + { 18, "sibType21-v1430" }, + { 19, "sibType24-v1530" }, + { 20, "sibType25-v1530" }, + { 21, "sibType26-v1530" }, { 0, NULL } }; +static value_string_ext lte_rrc_SIB_Type_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_SIB_Type_vals); + static int -dissect_lte_rrc_T_interval_TDD_r13_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SIB_Type(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); + 16, NULL, TRUE, 6, NULL); return offset; } -static const value_string lte_rrc_T_dummy3_vals[] = { - { 0, "interval-FDD-r13" }, - { 1, "interval-TDD-r13" }, - { 0, NULL } +static const per_sequence_t SIB_MappingInfo_sequence_of[1] = { + { &hf_lte_rrc_SIB_MappingInfo_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB_Type }, }; -static const per_choice_t T_dummy3_choice[] = { - { 0, &hf_lte_rrc_interval_FDD_r13_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13_03 }, - { 1, &hf_lte_rrc_interval_TDD_r13_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13_03 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_SIB_MappingInfo(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_lte_rrc_SIB_MappingInfo, SIB_MappingInfo_sequence_of, + 0, maxSIB_1, FALSE); + + return offset; +} + + +static const per_sequence_t SchedulingInfo_sequence[] = { + { &hf_lte_rrc_si_Periodicity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_Periodicity }, + { &hf_lte_rrc_sib_MappingInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB_MappingInfo }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_dummy3(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_lte_rrc_T_dummy3, T_dummy3_choice, - NULL); +dissect_lte_rrc_SchedulingInfo(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_lte_rrc_SchedulingInfo, SchedulingInfo_sequence); return offset; } -static const value_string lte_rrc_T_interval_FDD_r13_04_vals[] = { - { 0, "int1" }, - { 1, "int2" }, - { 2, "int4" }, - { 3, "int8" }, - { 0, NULL } +static const per_sequence_t SchedulingInfoList_sequence_of[1] = { + { &hf_lte_rrc_SchedulingInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfo }, }; - static int -dissect_lte_rrc_T_interval_FDD_r13_04(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); +dissect_lte_rrc_SchedulingInfoList(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_lte_rrc_SchedulingInfoList, SchedulingInfoList_sequence_of, + 1, maxSI_Message, FALSE); return offset; } -static const value_string lte_rrc_T_interval_TDD_r13_04_vals[] = { - { 0, "int1" }, - { 1, "int5" }, - { 2, "int10" }, - { 3, "int20" }, +static const value_string lte_rrc_T_subframeAssignment_vals[] = { + { 0, "sa0" }, + { 1, "sa1" }, + { 2, "sa2" }, + { 3, "sa3" }, + { 4, "sa4" }, + { 5, "sa5" }, + { 6, "sa6" }, { 0, NULL } }; static int -dissect_lte_rrc_T_interval_TDD_r13_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_subframeAssignment(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); + 7, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_interval_ULHoppingConfigCommonModeA_r13_vals[] = { - { 0, "interval-FDD-r13" }, - { 1, "interval-TDD-r13" }, +static const value_string lte_rrc_T_specialSubframePatterns_vals[] = { + { 0, "ssp0" }, + { 1, "ssp1" }, + { 2, "ssp2" }, + { 3, "ssp3" }, + { 4, "ssp4" }, + { 5, "ssp5" }, + { 6, "ssp6" }, + { 7, "ssp7" }, + { 8, "ssp8" }, { 0, NULL } }; -static const per_choice_t T_interval_ULHoppingConfigCommonModeA_r13_choice[] = { - { 0, &hf_lte_rrc_interval_FDD_r13_04, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13_04 }, - { 1, &hf_lte_rrc_interval_TDD_r13_04, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13_04 }, - { 0, NULL, 0, NULL } + +static int +dissect_lte_rrc_T_specialSubframePatterns(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t TDD_Config_sequence[] = { + { &hf_lte_rrc_subframeAssignment, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subframeAssignment }, + { &hf_lte_rrc_specialSubframePatterns, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_specialSubframePatterns }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_interval_ULHoppingConfigCommonModeA_r13(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_lte_rrc_T_interval_ULHoppingConfigCommonModeA_r13, T_interval_ULHoppingConfigCommonModeA_r13_choice, - NULL); +dissect_lte_rrc_TDD_Config(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_lte_rrc_TDD_Config, TDD_Config_sequence); return offset; } -static const value_string lte_rrc_T_interval_FDD_r13_05_vals[] = { - { 0, "int2" }, - { 1, "int4" }, - { 2, "int8" }, - { 3, "int16" }, +static const value_string lte_rrc_T_si_WindowLength_vals[] = { + { 0, "ms1" }, + { 1, "ms2" }, + { 2, "ms5" }, + { 3, "ms10" }, + { 4, "ms15" }, + { 5, "ms20" }, + { 6, "ms40" }, { 0, NULL } }; static int -dissect_lte_rrc_T_interval_FDD_r13_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_si_WindowLength(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); + 7, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_interval_TDD_r13_05_vals[] = { - { 0, "int5" }, - { 1, "int10" }, - { 2, "int20" }, - { 3, "int40" }, - { 0, NULL } -}; + +static int +dissect_lte_rrc_T_systemInfoValueTag(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 value; + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 31U, &value, FALSE); + + /* Track whether systemInfoValue has changed since last seen, indicating new SI config + TODO: add link back to previous config and (if known) time since previous config + was first seen */ + if (!actx->pinfo->fd->flags.visited) { + if (system_info_value_current_set && (value != system_info_value_current)) { + /* Add entry to the hash table. Offset by one to distinguish 0 from lookup failure */ + wmem_map_insert(lte_rrc_system_info_value_changed_hash, GUINT_TO_POINTER(actx->pinfo->num), + GUINT_TO_POINTER(system_info_value_current+1)); + } + system_info_value_current_set = TRUE; + system_info_value_current = value; + } + else { + /* Look up indication of changed info value from hash table */ + gpointer p_previous = wmem_map_lookup(lte_rrc_system_info_value_changed_hash, GUINT_TO_POINTER(actx->pinfo->num)); + if (p_previous != NULL) { + /* Subtract one from stored result to get previous value */ + guint32 previous = GPOINTER_TO_UINT(p_previous) - 1; + expert_add_info_format(actx->pinfo, actx->created_item, &ei_lte_rrc_si_info_value_changed, + "SI Info Value changed (now %u, was %u)", value, previous); + } + } + + + return offset; +} + static int -dissect_lte_rrc_T_interval_TDD_r13_05(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); +dissect_lte_rrc_T_lateNonCriticalExtension_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType1_v8h0_IEs_PDU); return offset; } -static const value_string lte_rrc_T_interval_ULHoppingConfigCommonModeB_r13_vals[] = { - { 0, "interval-FDD-r13" }, - { 1, "interval-TDD-r13" }, +static const value_string lte_rrc_T_ims_EmergencySupport_r9_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t T_interval_ULHoppingConfigCommonModeB_r13_choice[] = { - { 0, &hf_lte_rrc_interval_FDD_r13_05, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13_05 }, - { 1, &hf_lte_rrc_interval_TDD_r13_05, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13_05 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_interval_ULHoppingConfigCommonModeB_r13(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_lte_rrc_T_interval_ULHoppingConfigCommonModeB_r13, T_interval_ULHoppingConfigCommonModeB_r13_choice, - NULL); +dissect_lte_rrc_T_ims_EmergencySupport_r9(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t FreqHoppingParameters_r13_sequence[] = { - { &hf_lte_rrc_dummy_03 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dummy_02 }, - { &hf_lte_rrc_dummy2_01 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dummy2_01 }, - { &hf_lte_rrc_dummy3 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dummy3 }, - { &hf_lte_rrc_interval_ULHoppingConfigCommonModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interval_ULHoppingConfigCommonModeA_r13 }, - { &hf_lte_rrc_interval_ULHoppingConfigCommonModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interval_ULHoppingConfigCommonModeB_r13 }, - { &hf_lte_rrc_dummy4 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_FreqHoppingParameters_r13(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_lte_rrc_FreqHoppingParameters_r13, FreqHoppingParameters_r13_sequence); +dissect_lte_rrc_Q_QualMin_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -34, -3, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_r13_vals[] = { - { 0, "r16" }, - { 1, "r32" }, - { 0, NULL } +static const per_sequence_t CellSelectionInfo_v920_sequence[] = { + { &hf_lte_rrc_q_QualMin_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_QualMin_r9 }, + { &hf_lte_rrc_q_QualMinOffset_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_8 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_r13(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, FALSE, 0, NULL); +dissect_lte_rrc_CellSelectionInfo_v920(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_lte_rrc_CellSelectionInfo_v920, CellSelectionInfo_v920_sequence); return offset; } -static const value_string lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_r13_vals[] = { - { 0, "r192" }, - { 1, "r256" }, - { 2, "r384" }, - { 3, "r512" }, - { 4, "r768" }, - { 5, "r1024" }, - { 6, "r1536" }, - { 7, "r2048" }, +static const value_string lte_rrc_T_specialSubframePatterns_v1130_vals[] = { + { 0, "ssp7" }, + { 1, "ssp9" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_specialSubframePatterns_v1130(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, - 8, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PDSCH_ConfigCommon_v1310_sequence[] = { - { &hf_lte_rrc_pdsch_maxNumRepetitionCEmodeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_r13 }, - { &hf_lte_rrc_pdsch_maxNumRepetitionCEmodeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_r13 }, +static const per_sequence_t TDD_Config_v1130_sequence[] = { + { &hf_lte_rrc_specialSubframePatterns_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_specialSubframePatterns_v1130 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PDSCH_ConfigCommon_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_TDD_Config_v1130(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_lte_rrc_PDSCH_ConfigCommon_v1310, PDSCH_ConfigCommon_v1310_sequence); + ett_lte_rrc_TDD_Config_v1130, TDD_Config_v1130_sequence); return offset; } -static const value_string lte_rrc_T_pusch_maxNumRepetitionCEmodeA_r13_vals[] = { - { 0, "r8" }, - { 1, "r16" }, - { 2, "r32" }, - { 0, NULL } +static const per_sequence_t CellSelectionInfo_v1130_sequence[] = { + { &hf_lte_rrc_q_QualMinWB_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_QualMin_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_pusch_maxNumRepetitionCEmodeA_r13(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, FALSE, 0, NULL); +dissect_lte_rrc_CellSelectionInfo_v1130(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_lte_rrc_CellSelectionInfo_v1130, CellSelectionInfo_v1130_sequence); return offset; } -static const value_string lte_rrc_T_pusch_maxNumRepetitionCEmodeB_r13_vals[] = { - { 0, "r192" }, - { 1, "r256" }, - { 2, "r384" }, - { 3, "r512" }, - { 4, "r768" }, - { 5, "r1024" }, - { 6, "r1536" }, - { 7, "r2048" }, +static const value_string lte_rrc_T_category0Allowed_r12_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pusch_maxNumRepetitionCEmodeB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_category0Allowed_r12(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PUSCH_ConfigCommon_v1310_sequence[] = { - { &hf_lte_rrc_pusch_maxNumRepetitionCEmodeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_maxNumRepetitionCEmodeA_r13 }, - { &hf_lte_rrc_pusch_maxNumRepetitionCEmodeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_maxNumRepetitionCEmodeB_r13 }, - { &hf_lte_rrc_pusch_HoppingOffset_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, +static const per_sequence_t T_cellAccessRelatedInfo_v1250_sequence[] = { + { &hf_lte_rrc_category0Allowed_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_category0Allowed_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PUSCH_ConfigCommon_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cellAccessRelatedInfo_v1250(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_lte_rrc_PUSCH_ConfigCommon_v1310, PUSCH_ConfigCommon_v1310_sequence); + ett_lte_rrc_T_cellAccessRelatedInfo_v1250, T_cellAccessRelatedInfo_v1250_sequence); return offset; } -static const per_sequence_t RSRP_ThresholdsPrachInfoList_r13_sequence_of[1] = { - { &hf_lte_rrc_RSRP_ThresholdsPrachInfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, +static const per_sequence_t CellSelectionInfo_v1250_sequence[] = { + { &hf_lte_rrc_q_QualMinRSRQ_OnAllSymbols_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_QualMin_r9 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RSRP_ThresholdsPrachInfoList_r13(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_lte_rrc_RSRP_ThresholdsPrachInfoList_r13, RSRP_ThresholdsPrachInfoList_r13_sequence_of, - 1, 3, FALSE); +dissect_lte_rrc_CellSelectionInfo_v1250(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_lte_rrc_CellSelectionInfo_v1250, CellSelectionInfo_v1250_sequence); return offset; } -static const value_string lte_rrc_T_fdd_r13_01_vals[] = { - { 0, "v1" }, - { 1, "v1dot5" }, - { 2, "v2" }, - { 3, "v2dot5" }, - { 4, "v4" }, - { 5, "v5" }, - { 6, "v8" }, - { 7, "v10" }, +static const value_string lte_rrc_T_freqBandIndicatorPriority_r12_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_fdd_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_freqBandIndicatorPriority_r12(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_tdd_r13_01_vals[] = { - { 0, "v1" }, - { 1, "v2" }, - { 2, "v4" }, - { 3, "v5" }, - { 4, "v8" }, - { 5, "v10" }, - { 6, "v20" }, - { 7, "spare" }, +static const value_string lte_rrc_T_eDRX_Allowed_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_tdd_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_eDRX_Allowed_r13(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_mpdcch_startSF_CSS_RA_r13_vals[] = { - { 0, "fdd-r13" }, - { 1, "tdd-r13" }, - { 0, NULL } -}; - -static const per_choice_t T_mpdcch_startSF_CSS_RA_r13_choice[] = { - { 0, &hf_lte_rrc_fdd_r13_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fdd_r13_01 }, - { 1, &hf_lte_rrc_tdd_r13_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tdd_r13_01 }, - { 0, NULL, 0, NULL } +static const per_sequence_t CellSelectionInfoCE_r13_sequence[] = { + { &hf_lte_rrc_q_RxLevMinCE_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_q_QualMinRSRQ_CE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_mpdcch_startSF_CSS_RA_r13(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_lte_rrc_T_mpdcch_startSF_CSS_RA_r13, T_mpdcch_startSF_CSS_RA_r13_choice, - NULL); +dissect_lte_rrc_CellSelectionInfoCE_r13(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_lte_rrc_CellSelectionInfoCE_r13, CellSelectionInfoCE_r13_sequence); return offset; } -static const value_string lte_rrc_T_prach_StartingSubframe_r13_vals[] = { - { 0, "sf2" }, - { 1, "sf4" }, - { 2, "sf8" }, - { 3, "sf16" }, - { 4, "sf32" }, - { 5, "sf64" }, - { 6, "sf128" }, - { 7, "sf256" }, +static const value_string lte_rrc_T_si_WindowLength_BR_r13_vals[] = { + { 0, "ms20" }, + { 1, "ms40" }, + { 2, "ms60" }, + { 3, "ms80" }, + { 4, "ms120" }, + { 5, "ms160" }, + { 6, "ms200" }, + { 7, "spare" }, { 0, NULL } }; static int -dissect_lte_rrc_T_prach_StartingSubframe_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_si_WindowLength_BR_r13(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, 8, NULL, FALSE, 0, NULL); @@ -34042,87 +37671,100 @@ dissect_lte_rrc_T_prach_StartingSubframe_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_maxNumPreambleAttemptCE_r13_vals[] = { - { 0, "n3" }, - { 1, "n4" }, - { 2, "n5" }, - { 3, "n6" }, - { 4, "n7" }, - { 5, "n8" }, - { 6, "n10" }, +static const value_string lte_rrc_T_si_RepetitionPattern_r13_vals[] = { + { 0, "everyRF" }, + { 1, "every2ndRF" }, + { 2, "every4thRF" }, + { 3, "every8thRF" }, { 0, NULL } }; static int -dissect_lte_rrc_T_maxNumPreambleAttemptCE_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_si_RepetitionPattern_r13(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, - 7, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_numRepetitionPerPreambleAttempt_r13_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n4" }, - { 3, "n8" }, - { 4, "n16" }, - { 5, "n32" }, - { 6, "n64" }, - { 7, "n128" }, +static const value_string lte_rrc_T_si_TBS_r13_vals[] = { + { 0, "b152" }, + { 1, "b208" }, + { 2, "b256" }, + { 3, "b328" }, + { 4, "b408" }, + { 5, "b504" }, + { 6, "b600" }, + { 7, "b712" }, + { 8, "b808" }, + { 9, "b936" }, { 0, NULL } }; static int -dissect_lte_rrc_T_numRepetitionPerPreambleAttempt_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_si_TBS_r13(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, - 8, NULL, FALSE, 0, NULL); + 10, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_mpdcch_NarrowbandsToMonitor_r13_sequence_of[1] = { - { &hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, +static const per_sequence_t SchedulingInfo_BR_r13_sequence[] = { + { &hf_lte_rrc_si_Narrowband_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, + { &hf_lte_rrc_si_TBS_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_TBS_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SchedulingInfo_BR_r13(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_lte_rrc_SchedulingInfo_BR_r13, SchedulingInfo_BR_r13_sequence); + + return offset; +} + + +static const per_sequence_t SchedulingInfoList_BR_r13_sequence_of[1] = { + { &hf_lte_rrc_SchedulingInfoList_BR_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfo_BR_r13 }, +}; + +static int +dissect_lte_rrc_SchedulingInfoList_BR_r13(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_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r13, T_mpdcch_NarrowbandsToMonitor_r13_sequence_of, - 1, 2, FALSE); + ett_lte_rrc_SchedulingInfoList_BR_r13, SchedulingInfoList_BR_r13_sequence_of, + 1, maxSI_Message, FALSE); return offset; } -static const value_string lte_rrc_T_mpdcch_NumRepetition_RA_r13_vals[] = { - { 0, "r1" }, - { 1, "r2" }, - { 2, "r4" }, - { 3, "r8" }, - { 4, "r16" }, - { 5, "r32" }, - { 6, "r64" }, - { 7, "r128" }, - { 8, "r256" }, +static const value_string lte_rrc_T_fdd_DownlinkOrTddSubframeBitmapBR_r13_vals[] = { + { 0, "subframePattern10-r13" }, + { 1, "subframePattern40-r13" }, { 0, NULL } }; +static const per_choice_t T_fdd_DownlinkOrTddSubframeBitmapBR_r13_choice[] = { + { 0, &hf_lte_rrc_subframePattern10_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { 1, &hf_lte_rrc_subframePattern40_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_40 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_mpdcch_NumRepetition_RA_r13(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, FALSE, 0, NULL); +dissect_lte_rrc_T_fdd_DownlinkOrTddSubframeBitmapBR_r13(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_lte_rrc_T_fdd_DownlinkOrTddSubframeBitmapBR_r13, T_fdd_DownlinkOrTddSubframeBitmapBR_r13_choice, + NULL); return offset; } -static const value_string lte_rrc_T_prach_HoppingConfig_r13_vals[] = { +static const value_string lte_rrc_T_si_HoppingConfigCommon_r13_vals[] = { { 0, "on" }, { 1, "off" }, { 0, NULL } @@ -34130,7 +37772,7 @@ static const value_string lte_rrc_T_prach_HoppingConfig_r13_vals[] = { static int -dissect_lte_rrc_T_prach_HoppingConfig_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_si_HoppingConfigCommon_r13(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, FALSE, 0, NULL); @@ -34138,101 +37780,94 @@ dissect_lte_rrc_T_prach_HoppingConfig_r13(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t PRACH_ParametersCE_r13_sequence[] = { - { &hf_lte_rrc_prach_ConfigIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, - { &hf_lte_rrc_prach_FreqOffset_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_94 }, - { &hf_lte_rrc_prach_StartingSubframe_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_prach_StartingSubframe_r13 }, - { &hf_lte_rrc_maxNumPreambleAttemptCE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumPreambleAttemptCE_r13 }, - { &hf_lte_rrc_numRepetitionPerPreambleAttempt_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numRepetitionPerPreambleAttempt_r13 }, - { &hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r13 }, - { &hf_lte_rrc_mpdcch_NumRepetition_RA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NumRepetition_RA_r13 }, - { &hf_lte_rrc_prach_HoppingConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_prach_HoppingConfig_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_si_ValidityTime_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PRACH_ParametersCE_r13(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_lte_rrc_PRACH_ParametersCE_r13, PRACH_ParametersCE_r13_sequence); +dissect_lte_rrc_T_si_ValidityTime_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PRACH_ParametersListCE_r13_sequence_of[1] = { - { &hf_lte_rrc_PRACH_ParametersListCE_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PRACH_ParametersCE_r13 }, -}; static int -dissect_lte_rrc_PRACH_ParametersListCE_r13(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_lte_rrc_PRACH_ParametersListCE_r13, PRACH_ParametersListCE_r13_sequence_of, - 1, maxCE_Level_r13, FALSE); +dissect_lte_rrc_SystemInfoValueTagSI_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3U, NULL, FALSE); return offset; } -static const per_sequence_t PRACH_ConfigSIB_v1310_sequence[] = { - { &hf_lte_rrc_rsrp_ThresholdsPrachInfoList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_ThresholdsPrachInfoList_r13 }, - { &hf_lte_rrc_mpdcch_startSF_CSS_RA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mpdcch_startSF_CSS_RA_r13 }, - { &hf_lte_rrc_prach_HoppingOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_94 }, - { &hf_lte_rrc_prach_ParametersListCE_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PRACH_ParametersListCE_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SystemInfoValueTagList_r13_sequence_of[1] = { + { &hf_lte_rrc_SystemInfoValueTagList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInfoValueTagSI_r13 }, }; static int -dissect_lte_rrc_PRACH_ConfigSIB_v1310(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_lte_rrc_PRACH_ConfigSIB_v1310, PRACH_ConfigSIB_v1310_sequence); +dissect_lte_rrc_SystemInfoValueTagList_r13(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_lte_rrc_SystemInfoValueTagList_r13, SystemInfoValueTagList_r13_sequence_of, + 1, maxSI_Message, FALSE); return offset; } -static const per_sequence_t N1PUCCH_AN_InfoList_r13_sequence_of[1] = { - { &hf_lte_rrc_N1PUCCH_AN_InfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, +static const per_sequence_t T_bandwidthReducedAccessRelatedInfo_r13_sequence[] = { + { &hf_lte_rrc_si_WindowLength_BR_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_WindowLength_BR_r13 }, + { &hf_lte_rrc_si_RepetitionPattern_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_RepetitionPattern_r13 }, + { &hf_lte_rrc_schedulingInfoList_BR_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SchedulingInfoList_BR_r13 }, + { &hf_lte_rrc_fdd_DownlinkOrTddSubframeBitmapBR_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fdd_DownlinkOrTddSubframeBitmapBR_r13 }, + { &hf_lte_rrc_fdd_UplinkSubframeBitmapBR_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { &hf_lte_rrc_startSymbolBR_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, + { &hf_lte_rrc_si_HoppingConfigCommon_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_HoppingConfigCommon_r13 }, + { &hf_lte_rrc_si_ValidityTime_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_si_ValidityTime_r13 }, + { &hf_lte_rrc_systemInfoValueTagList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInfoValueTagList_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_N1PUCCH_AN_InfoList_r13(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_lte_rrc_N1PUCCH_AN_InfoList_r13, N1PUCCH_AN_InfoList_r13_sequence_of, - 1, maxCE_Level_r13, FALSE); +dissect_lte_rrc_T_bandwidthReducedAccessRelatedInfo_r13(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_lte_rrc_T_bandwidthReducedAccessRelatedInfo_r13, T_bandwidthReducedAccessRelatedInfo_r13_sequence); return offset; } -static const value_string lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level0_r13_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n4" }, - { 3, "n8" }, +static const value_string lte_rrc_T_mpdcch_pdsch_HoppingNB_r13_vals[] = { + { 0, "nb2" }, + { 1, "nb4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level0_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mpdcch_pdsch_HoppingNB_r13(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); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level1_r13_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n4" }, - { 3, "n8" }, +static const value_string lte_rrc_T_interval_FDD_r13_vals[] = { + { 0, "int1" }, + { 1, "int2" }, + { 2, "int4" }, + { 3, "int8" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level1_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_interval_FDD_r13(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); @@ -34240,17 +37875,17 @@ dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level1_r13(tvbuff_t *tvb _U_, int o } -static const value_string lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level2_r13_vals[] = { - { 0, "n4" }, - { 1, "n8" }, - { 2, "n16" }, - { 3, "n32" }, +static const value_string lte_rrc_T_interval_TDD_r13_vals[] = { + { 0, "int1" }, + { 1, "int5" }, + { 2, "int10" }, + { 3, "int20" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level2_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_interval_TDD_r13(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); @@ -34258,101 +37893,113 @@ dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level2_r13(tvbuff_t *tvb _U_, int o } -static const value_string lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r13_vals[] = { - { 0, "n4" }, - { 1, "n8" }, - { 2, "n16" }, - { 3, "n32" }, +static const value_string lte_rrc_T_interval_DLHoppingConfigCommonModeA_r13_vals[] = { + { 0, "interval-FDD-r13" }, + { 1, "interval-TDD-r13" }, { 0, NULL } }; +static const per_choice_t T_interval_DLHoppingConfigCommonModeA_r13_choice[] = { + { 0, &hf_lte_rrc_interval_FDD_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13 }, + { 1, &hf_lte_rrc_interval_TDD_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r13(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); +dissect_lte_rrc_T_interval_DLHoppingConfigCommonModeA_r13(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_lte_rrc_T_interval_DLHoppingConfigCommonModeA_r13, T_interval_DLHoppingConfigCommonModeA_r13_choice, + NULL); return offset; } -static const per_sequence_t PUCCH_ConfigCommon_v1310_sequence[] = { - { &hf_lte_rrc_n1PUCCH_AN_InfoList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_N1PUCCH_AN_InfoList_r13 }, - { &hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level0_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level0_r13 }, - { &hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level1_r13 }, - { &hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level2_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level2_r13 }, - { &hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level3_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_interval_FDD_r13_01_vals[] = { + { 0, "int2" }, + { 1, "int4" }, + { 2, "int8" }, + { 3, "int16" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PUCCH_ConfigCommon_v1310(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_lte_rrc_PUCCH_ConfigCommon_v1310, PUCCH_ConfigCommon_v1310_sequence); +dissect_lte_rrc_T_interval_FDD_r13_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 per_sequence_t RadioResourceConfigCommonSIB_eag_4_sequence[] = { - { &hf_lte_rrc_bcch_Config_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BCCH_Config_v1310 }, - { &hf_lte_rrc_pcch_Config_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PCCH_Config_v1310 }, - { &hf_lte_rrc_freqHoppingParameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqHoppingParameters_r13 }, - { &hf_lte_rrc_pdsch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigCommon_v1310 }, - { &hf_lte_rrc_pusch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigCommon_v1310 }, - { &hf_lte_rrc_prach_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ConfigSIB_v1310 }, - { &hf_lte_rrc_pucch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon_v1310 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_interval_TDD_r13_01_vals[] = { + { 0, "int5" }, + { 1, "int10" }, + { 2, "int20" }, + { 3, "int40" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_4_sequence); +dissect_lte_rrc_T_interval_TDD_r13_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 lte_rrc_T_highSpeedEnhancedMeasFlag_r14_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_interval_DLHoppingConfigCommonModeB_r13_vals[] = { + { 0, "interval-FDD-r13" }, + { 1, "interval-TDD-r13" }, { 0, NULL } }; +static const per_choice_t T_interval_DLHoppingConfigCommonModeB_r13_choice[] = { + { 0, &hf_lte_rrc_interval_FDD_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13_01 }, + { 1, &hf_lte_rrc_interval_TDD_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13_01 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_highSpeedEnhancedMeasFlag_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_interval_DLHoppingConfigCommonModeB_r13(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_lte_rrc_T_interval_DLHoppingConfigCommonModeB_r13, T_interval_DLHoppingConfigCommonModeB_r13_choice, + NULL); return offset; } -static const value_string lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_freqHoppingParametersDL_r13_sequence[] = { + { &hf_lte_rrc_mpdcch_pdsch_HoppingNB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mpdcch_pdsch_HoppingNB_r13 }, + { &hf_lte_rrc_interval_DLHoppingConfigCommonModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interval_DLHoppingConfigCommonModeA_r13 }, + { &hf_lte_rrc_interval_DLHoppingConfigCommonModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interval_DLHoppingConfigCommonModeB_r13 }, + { &hf_lte_rrc_mpdcch_pdsch_HoppingOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_freqHoppingParametersDL_r13(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_lte_rrc_T_freqHoppingParametersDL_r13, T_freqHoppingParametersDL_r13_sequence); return offset; } -static const per_sequence_t HighSpeedConfig_r14_sequence[] = { - { &hf_lte_rrc_highSpeedEnhancedMeasFlag_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_highSpeedEnhancedMeasFlag_r14 }, - { &hf_lte_rrc_highSpeedEnhancedDemodulationFlag_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14 }, +static const per_sequence_t CellSelectionInfoCE1_r13_sequence[] = { + { &hf_lte_rrc_q_RxLevMinCE1_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_q_QualMinRSRQ_CE1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HighSpeedConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellSelectionInfoCE1_r13(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_lte_rrc_HighSpeedConfig_r14, HighSpeedConfig_r14_sequence); + ett_lte_rrc_CellSelectionInfoCE1_r13, CellSelectionInfoCE1_r13_sequence); return offset; } @@ -34360,301 +38007,243 @@ dissect_lte_rrc_HighSpeedConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int -dissect_lte_rrc_INTEGER_0_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_M8_M1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 12U, NULL, FALSE); + -8, -1, NULL, FALSE); return offset; } -static const per_sequence_t PRACH_Config_v1430_sequence[] = { - { &hf_lte_rrc_rootSequenceIndexHighSpeed_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_837 }, - { &hf_lte_rrc_zeroCorrelationZoneConfigHighSpeed_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_12 }, - { &hf_lte_rrc_prach_ConfigIndexHighSpeed_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, - { &hf_lte_rrc_prach_FreqOffsetHighSpeed_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_94 }, +static const per_sequence_t CellSelectionInfoCE1_v1360_sequence[] = { + { &hf_lte_rrc_delta_RxLevMinCE1_v1360, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_M1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PRACH_Config_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellSelectionInfoCE1_v1360(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_lte_rrc_PRACH_Config_v1430, PRACH_Config_v1430_sequence); + ett_lte_rrc_CellSelectionInfoCE1_v1360, CellSelectionInfoCE1_v1360_sequence); return offset; } -static const value_string lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r14_vals[] = { - { 0, "n64" }, - { 1, "n128" }, +static const value_string lte_rrc_T_eCallOverIMS_Support_r14_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_eCallOverIMS_Support_r14(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PUCCH_ConfigCommon_v1430_sequence[] = { - { &hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level3_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_specialSubframePatterns_v1430_vals[] = { + { 0, "ssp10" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PUCCH_ConfigCommon_v1430(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_lte_rrc_PUCCH_ConfigCommon_v1430, PUCCH_ConfigCommon_v1430_sequence); +dissect_lte_rrc_T_specialSubframePatterns_v1430(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigCommonSIB_eag_5_sequence[] = { - { &hf_lte_rrc_highSpeedConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HighSpeedConfig_r14 }, - { &hf_lte_rrc_prach_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_Config_v1430 }, - { &hf_lte_rrc_pucch_ConfigCommon_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon_v1430 }, +static const per_sequence_t TDD_Config_v1430_sequence[] = { + { &hf_lte_rrc_specialSubframePatterns_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_specialSubframePatterns_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_5_sequence); +dissect_lte_rrc_TDD_Config_v1430(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_lte_rrc_TDD_Config_v1430, TDD_Config_v1430_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommonSIB_sequence[] = { - { &hf_lte_rrc_rach_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_ConfigCommon }, - { &hf_lte_rrc_bcch_Config , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_Config }, - { &hf_lte_rrc_pcch_Config , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PCCH_Config }, - { &hf_lte_rrc_prach_Config, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PRACH_ConfigSIB }, - { &hf_lte_rrc_pdsch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDSCH_ConfigCommon }, - { &hf_lte_rrc_pusch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PUSCH_ConfigCommon }, - { &hf_lte_rrc_pucch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PUCCH_ConfigCommon }, - { &hf_lte_rrc_soundingRS_UL_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_UL_ConfigCommon }, - { &hf_lte_rrc_uplinkPowerControlCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UplinkPowerControlCommon }, - { &hf_lte_rrc_ul_CyclicPrefixLength, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CyclicPrefixLength }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_5 }, +static const per_sequence_t CellAccessRelatedInfo_r14_sequence[] = { + { &hf_lte_rrc_plmn_IdentityList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityList }, + { &hf_lte_rrc_trackingAreaCode_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, + { &hf_lte_rrc_cellIdentity_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonSIB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellAccessRelatedInfo_r14(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_lte_rrc_RadioResourceConfigCommonSIB, RadioResourceConfigCommonSIB_sequence); + ett_lte_rrc_CellAccessRelatedInfo_r14, CellAccessRelatedInfo_r14_sequence); return offset; } -static const value_string lte_rrc_T_t300_vals[] = { - { 0, "ms100" }, - { 1, "ms200" }, - { 2, "ms300" }, - { 3, "ms400" }, - { 4, "ms600" }, - { 5, "ms1000" }, - { 6, "ms1500" }, - { 7, "ms2000" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14_sequence_of[1] = { + { &hf_lte_rrc_cellAccessRelatedInfoList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellAccessRelatedInfo_r14 }, }; - static int -dissect_lte_rrc_T_t300(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14, SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14_sequence_of, + 1, maxPLMN_1_r14, FALSE); return offset; } -static const value_string lte_rrc_T_t301_vals[] = { - { 0, "ms100" }, - { 1, "ms200" }, - { 2, "ms300" }, - { 3, "ms400" }, - { 4, "ms600" }, - { 5, "ms1000" }, - { 6, "ms1500" }, - { 7, "ms2000" }, +static const value_string lte_rrc_T_specialSubframePatterns_v1450_vals[] = { + { 0, "ssp10-CRS-LessDwPTS" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t301(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_specialSubframePatterns_v1450(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_t310_vals[] = { - { 0, "ms0" }, - { 1, "ms50" }, - { 2, "ms100" }, - { 3, "ms200" }, - { 4, "ms500" }, - { 5, "ms1000" }, - { 6, "ms2000" }, - { 0, NULL } +static const per_sequence_t TDD_Config_v1450_sequence[] = { + { &hf_lte_rrc_specialSubframePatterns_v1450, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_specialSubframePatterns_v1450 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_t310(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, - 7, NULL, FALSE, 0, NULL); +dissect_lte_rrc_TDD_Config_v1450(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_lte_rrc_TDD_Config_v1450, TDD_Config_v1450_sequence); return offset; } -static const value_string lte_rrc_T_n310_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, - { 4, "n6" }, - { 5, "n8" }, - { 6, "n10" }, - { 7, "n20" }, +static const value_string lte_rrc_T_hsdn_Cell_r15_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_n310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_hsdn_Cell_r15(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_t311_vals[] = { - { 0, "ms1000" }, - { 1, "ms3000" }, - { 2, "ms5000" }, - { 3, "ms10000" }, - { 4, "ms15000" }, - { 5, "ms20000" }, - { 6, "ms30000" }, +static const value_string lte_rrc_T_powerClass14dBm_Offset_r15_vals[] = { + { 0, "dB-6" }, + { 1, "dB-3" }, + { 2, "dB3" }, + { 3, "dB6" }, + { 4, "dB9" }, + { 5, "dB12" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t311(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_powerClass14dBm_Offset_r15(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, - 7, NULL, FALSE, 0, NULL); + 6, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_n311_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, - { 4, "n5" }, - { 5, "n6" }, - { 6, "n8" }, - { 7, "n10" }, - { 0, NULL } +static const per_sequence_t CellSelectionInfoCE_v1530_sequence[] = { + { &hf_lte_rrc_powerClass14dBm_Offset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_powerClass14dBm_Offset_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_n311(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CellSelectionInfoCE_v1530(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_lte_rrc_CellSelectionInfoCE_v1530, CellSelectionInfoCE_v1530_sequence); return offset; } -static const value_string lte_rrc_T_t300_v1310_vals[] = { - { 0, "ms2500" }, - { 1, "ms3000" }, - { 2, "ms3500" }, - { 3, "ms4000" }, - { 4, "ms5000" }, - { 5, "ms6000" }, - { 6, "ms8000" }, - { 7, "ms10000" }, +static const value_string lte_rrc_T_crs_IntfMitigNumPRBs_r15_vals[] = { + { 0, "n6" }, + { 1, "n24" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t300_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_crs_IntfMitigNumPRBs_r15(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, - 8, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_t301_v1310_01_vals[] = { - { 0, "ms2500" }, - { 1, "ms3000" }, - { 2, "ms3500" }, - { 3, "ms4000" }, - { 4, "ms5000" }, - { 5, "ms6000" }, - { 6, "ms8000" }, - { 7, "ms10000" }, +static const value_string lte_rrc_T_crs_IntfMitigConfig_r15_vals[] = { + { 0, "crs-IntfMitigEnabled-15" }, + { 1, "crs-IntfMitigNumPRBs-r15" }, { 0, NULL } }; +static const per_choice_t T_crs_IntfMitigConfig_r15_choice[] = { + { 0, &hf_lte_rrc_crs_IntfMitigEnabled_15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_crs_IntfMitigNumPRBs_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_crs_IntfMitigNumPRBs_r15 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_t301_v1310_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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_crs_IntfMitigConfig_r15(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_lte_rrc_T_crs_IntfMitigConfig_r15, T_crs_IntfMitigConfig_r15_choice, + NULL); return offset; } -static const per_sequence_t UE_TimersAndConstants_eag_1_sequence[] = { - { &hf_lte_rrc_t300_v1310 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t300_v1310 }, - { &hf_lte_rrc_t301_v1310_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t301_v1310_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_cellBarred_CRS_r15_vals[] = { + { 0, "barred" }, + { 1, "notBarred" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_TimersAndConstants_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_TimersAndConstants_eag_1_sequence); +dissect_lte_rrc_T_cellBarred_CRS_r15(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_t310_v1330_01_vals[] = { - { 0, "ms4000" }, - { 1, "ms6000" }, +static const value_string lte_rrc_T_cellReservedForOperatorUse_CRS_r15_vals[] = { + { 0, "reserved" }, + { 1, "notReserved" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t310_v1330_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cellReservedForOperatorUse_CRS_r15(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, FALSE, 0, NULL); @@ -34662,121 +38251,63 @@ dissect_lte_rrc_T_t310_v1330_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } -static const per_sequence_t UE_TimersAndConstants_eag_2_sequence[] = { - { &hf_lte_rrc_t310_v1330_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t310_v1330_01 }, +static const per_sequence_t PLMN_IdentityInfo_v1530_sequence[] = { + { &hf_lte_rrc_cellReservedForOperatorUse_CRS_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReservedForOperatorUse_CRS_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_TimersAndConstants_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_TimersAndConstants_eag_2_sequence); +dissect_lte_rrc_PLMN_IdentityInfo_v1530(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_lte_rrc_PLMN_IdentityInfo_v1530, PLMN_IdentityInfo_v1530_sequence); return offset; } -static const per_sequence_t UE_TimersAndConstants_sequence[] = { - { &hf_lte_rrc_t300 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t300 }, - { &hf_lte_rrc_t301 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t301 }, - { &hf_lte_rrc_t310 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t310 }, - { &hf_lte_rrc_n310 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n310 }, - { &hf_lte_rrc_t311 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t311 }, - { &hf_lte_rrc_n311 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n311 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_TimersAndConstants_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_TimersAndConstants_eag_2 }, - { NULL, 0, 0, NULL } +static const per_sequence_t PLMN_IdentityList_v1530_sequence_of[1] = { + { &hf_lte_rrc_PLMN_IdentityList_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityInfo_v1530 }, }; static int -dissect_lte_rrc_UE_TimersAndConstants(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_lte_rrc_UE_TimersAndConstants, UE_TimersAndConstants_sequence); +dissect_lte_rrc_PLMN_IdentityList_v1530(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_lte_rrc_PLMN_IdentityList_v1530, PLMN_IdentityList_v1530_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const value_string lte_rrc_T_ul_Bandwidth_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_ul_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, - 6, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const per_sequence_t T_freqInfo_sequence[] = { - { &hf_lte_rrc_ul_CarrierFreq, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &hf_lte_rrc_ul_Bandwidth, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth }, - { &hf_lte_rrc_additionalSpectrumEmission, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_T_freqInfo(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_lte_rrc_T_freqInfo, T_freqInfo_sequence); - - return offset; -} - - - -static int -dissect_lte_rrc_T_lateNonCriticalExtension_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType2_v8h0_IEs_PDU); - - return offset; -} - - -static const per_sequence_t SystemInformationBlockType2_eag_1_sequence[] = { - { &hf_lte_rrc_ssac_BarringForMMTEL_Voice_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, - { &hf_lte_rrc_ssac_BarringForMMTEL_Video_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_posSI_Periodicity_r15_vals[] = { + { 0, "rf8" }, + { 1, "rf16" }, + { 2, "rf32" }, + { 3, "rf64" }, + { 4, "rf128" }, + { 5, "rf256" }, + { 6, "rf512" }, + { 0, NULL } }; -static int -dissect_lte_rrc_SystemInformationBlockType2_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_1_sequence); - - return offset; -} - - -static const per_sequence_t SystemInformationBlockType2_eag_2_sequence[] = { - { &hf_lte_rrc_ac_BarringForCSFB_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SystemInformationBlockType2_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_2_sequence); +dissect_lte_rrc_T_posSI_Periodicity_r15(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, + 7, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ac_BarringSkipForMMTELVoice_r12_vals[] = { +static const value_string lte_rrc_T_encrypted_r15_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ac_BarringSkipForMMTELVoice_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_encrypted_r15(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, 1, NULL, FALSE, 0, NULL); @@ -34784,359 +38315,396 @@ dissect_lte_rrc_T_ac_BarringSkipForMMTELVoice_r12(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_T_ac_BarringSkipForMMTELVideo_r12_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_gnss_id_r15_vals[] = { + { 0, "gps" }, + { 1, "sbas" }, + { 2, "qzss" }, + { 3, "galileo" }, + { 4, "glonass" }, + { 5, "bds" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ac_BarringSkipForMMTELVideo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_gnss_id_r15(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, - 1, NULL, FALSE, 0, NULL); + 6, NULL, TRUE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ac_BarringSkipForSMS_r12_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t GNSS_ID_r15_sequence[] = { + { &hf_lte_rrc_gnss_id_r15_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_gnss_id_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ac_BarringSkipForSMS_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_GNSS_ID_r15(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_lte_rrc_GNSS_ID_r15, GNSS_ID_r15_sequence); return offset; } +static const value_string lte_rrc_T_sbas_id_r15_vals[] = { + { 0, "waas" }, + { 1, "egnos" }, + { 2, "msas" }, + { 3, "gagan" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_1_maxPLMN_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxPLMN_r11, NULL, FALSE); +dissect_lte_rrc_T_sbas_id_r15(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, 0, NULL); return offset; } -static const per_sequence_t T_ac_BarringInfo_r12_sequence[] = { - { &hf_lte_rrc_ac_BarringForEmergency_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_ac_BarringForMO_Signalling_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, - { &hf_lte_rrc_ac_BarringForMO_Data_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, +static const per_sequence_t SBAS_ID_r15_sequence[] = { + { &hf_lte_rrc_sbas_id_r15_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sbas_id_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_ac_BarringInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SBAS_ID_r15(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_lte_rrc_T_ac_BarringInfo_r12, T_ac_BarringInfo_r12_sequence); + ett_lte_rrc_SBAS_ID_r15, SBAS_ID_r15_sequence); return offset; } -static const value_string lte_rrc_T_ac_BarringSkipForMMTELVoice_r12_01_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_posSibType_r15_vals[] = { + { 0, "posSibType1-1" }, + { 1, "posSibType1-2" }, + { 2, "posSibType1-3" }, + { 3, "posSibType1-4" }, + { 4, "posSibType1-5" }, + { 5, "posSibType1-6" }, + { 6, "posSibType1-7" }, + { 7, "posSibType2-1" }, + { 8, "posSibType2-2" }, + { 9, "posSibType2-3" }, + { 10, "posSibType2-4" }, + { 11, "posSibType2-5" }, + { 12, "posSibType2-6" }, + { 13, "posSibType2-7" }, + { 14, "posSibType2-8" }, + { 15, "posSibType2-9" }, + { 16, "posSibType2-10" }, + { 17, "posSibType2-11" }, + { 18, "posSibType2-12" }, + { 19, "posSibType2-13" }, + { 20, "posSibType2-14" }, + { 21, "posSibType2-15" }, + { 22, "posSibType2-16" }, + { 23, "posSibType2-17" }, + { 24, "posSibType2-18" }, + { 25, "posSibType2-19" }, + { 26, "posSibType3-1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ac_BarringSkipForMMTELVoice_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_posSibType_r15(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, - 1, NULL, FALSE, 0, NULL); + 27, NULL, TRUE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ac_BarringSkipForMMTELVideo_r12_01_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t PosSIB_Type_r15_sequence[] = { + { &hf_lte_rrc_encrypted_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_encrypted_r15 }, + { &hf_lte_rrc_gnss_id_r15 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_GNSS_ID_r15 }, + { &hf_lte_rrc_sbas_id_r15 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SBAS_ID_r15 }, + { &hf_lte_rrc_posSibType_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_posSibType_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ac_BarringSkipForMMTELVideo_r12_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PosSIB_Type_r15(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_lte_rrc_PosSIB_Type_r15, PosSIB_Type_r15_sequence); return offset; } -static const value_string lte_rrc_T_ac_BarringSkipForSMS_r12_01_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t PosSIB_MappingInfo_r15_sequence_of[1] = { + { &hf_lte_rrc_PosSIB_MappingInfo_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PosSIB_Type_r15 }, }; - static int -dissect_lte_rrc_T_ac_BarringSkipForSMS_r12_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PosSIB_MappingInfo_r15(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_lte_rrc_PosSIB_MappingInfo_r15, PosSIB_MappingInfo_r15_sequence_of, + 1, maxSIB, FALSE); return offset; } -static const per_sequence_t AC_BarringPerPLMN_r12_sequence[] = { - { &hf_lte_rrc_plmn_IdentityIndex_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, - { &hf_lte_rrc_ac_BarringInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringInfo_r12 }, - { &hf_lte_rrc_ac_BarringSkipForMMTELVoice_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForMMTELVoice_r12_01 }, - { &hf_lte_rrc_ac_BarringSkipForMMTELVideo_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForMMTELVideo_r12_01 }, - { &hf_lte_rrc_ac_BarringSkipForSMS_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForSMS_r12_01 }, - { &hf_lte_rrc_ac_BarringForCSFB_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, - { &hf_lte_rrc_ssac_BarringForMMTEL_Voice_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, - { &hf_lte_rrc_ssac_BarringForMMTEL_Video_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, +static const per_sequence_t PosSchedulingInfo_r15_sequence[] = { + { &hf_lte_rrc_posSI_Periodicity_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_posSI_Periodicity_r15 }, + { &hf_lte_rrc_posSIB_MappingInfo_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PosSIB_MappingInfo_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AC_BarringPerPLMN_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PosSchedulingInfo_r15(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_lte_rrc_AC_BarringPerPLMN_r12, AC_BarringPerPLMN_r12_sequence); + ett_lte_rrc_PosSchedulingInfo_r15, PosSchedulingInfo_r15_sequence); return offset; } -static const per_sequence_t AC_BarringPerPLMN_List_r12_sequence_of[1] = { - { &hf_lte_rrc_AC_BarringPerPLMN_List_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AC_BarringPerPLMN_r12 }, +static const per_sequence_t PosSchedulingInfoList_r15_sequence_of[1] = { + { &hf_lte_rrc_PosSchedulingInfoList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PosSchedulingInfo_r15 }, }; static int -dissect_lte_rrc_AC_BarringPerPLMN_List_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PosSchedulingInfoList_r15(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_lte_rrc_AC_BarringPerPLMN_List_r12, AC_BarringPerPLMN_List_r12_sequence_of, - 1, maxPLMN_r11, FALSE); + ett_lte_rrc_PosSchedulingInfoList_r15, PosSchedulingInfoList_r15_sequence_of, + 1, maxSI_Message, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType2_eag_3_sequence[] = { - { &hf_lte_rrc_ac_BarringSkipForMMTELVoice_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForMMTELVoice_r12 }, - { &hf_lte_rrc_ac_BarringSkipForMMTELVideo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForMMTELVideo_r12 }, - { &hf_lte_rrc_ac_BarringSkipForSMS_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForSMS_r12 }, - { &hf_lte_rrc_ac_BarringPerPLMN_List_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringPerPLMN_List_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_cellBarred_5GC_r15_vals[] = { + { 0, "barred" }, + { 1, "notBarred" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType2_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_3_sequence); +dissect_lte_rrc_T_cellBarred_5GC_r15(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_voiceServiceCauseIndication_r12_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_cellBarred_5GC_CRS_r15_vals[] = { + { 0, "barred" }, + { 1, "notBarred" }, { 0, NULL } }; static int -dissect_lte_rrc_T_voiceServiceCauseIndication_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cellBarred_5GC_CRS_r15(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType2_eag_4_sequence[] = { - { &hf_lte_rrc_voiceServiceCauseIndication_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_voiceServiceCauseIndication_r12 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SystemInformationBlockType2_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_4_sequence); +dissect_lte_rrc_INTEGER_1_maxPLMN_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxPLMN_r11, NULL, FALSE); return offset; } +static const value_string lte_rrc_T_plmn_Identity_5GC_r15_vals[] = { + { 0, "plmn-Identity-r15" }, + { 1, "plmn-Index-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_plmn_Identity_5GC_r15_choice[] = { + { 0, &hf_lte_rrc_plmn_Identity_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_PLMN_Identity }, + { 1, &hf_lte_rrc_plmn_Index_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_1_maxACDC_Cat_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxACDC_Cat_r13, NULL, FALSE); +dissect_lte_rrc_T_plmn_Identity_5GC_r15(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_lte_rrc_T_plmn_Identity_5GC_r15, T_plmn_Identity_5GC_r15_choice, + NULL); return offset; } -static const value_string lte_rrc_T_ac_BarringFactor_r13_vals[] = { - { 0, "p00" }, - { 1, "p05" }, - { 2, "p10" }, - { 3, "p15" }, - { 4, "p20" }, - { 5, "p25" }, - { 6, "p30" }, - { 7, "p40" }, - { 8, "p50" }, - { 9, "p60" }, - { 10, "p70" }, - { 11, "p75" }, - { 12, "p80" }, - { 13, "p85" }, - { 14, "p90" }, - { 15, "p95" }, +static const value_string lte_rrc_T_cellReservedForOperatorUse_r15_vals[] = { + { 0, "reserved" }, + { 1, "notReserved" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ac_BarringFactor_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cellReservedForOperatorUse_r15(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, - 16, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ac_BarringTime_r13_vals[] = { - { 0, "s4" }, - { 1, "s8" }, - { 2, "s16" }, - { 3, "s32" }, - { 4, "s64" }, - { 5, "s128" }, - { 6, "s256" }, - { 7, "s512" }, +static const value_string lte_rrc_T_cellReservedForOperatorUse_CRS_r15_01_vals[] = { + { 0, "reserved" }, + { 1, "notReserved" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ac_BarringTime_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cellReservedForOperatorUse_CRS_r15_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, - 8, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_acdc_BarringConfig_r13_sequence[] = { - { &hf_lte_rrc_ac_BarringFactor_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ac_BarringFactor_r13 }, - { &hf_lte_rrc_ac_BarringTime_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ac_BarringTime_r13 }, +static const per_sequence_t PLMN_IdentityInfo_r15_sequence[] = { + { &hf_lte_rrc_plmn_Identity_5GC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_plmn_Identity_5GC_r15 }, + { &hf_lte_rrc_cellReservedForOperatorUse_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReservedForOperatorUse_r15 }, + { &hf_lte_rrc_cellReservedForOperatorUse_CRS_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReservedForOperatorUse_CRS_r15_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_acdc_BarringConfig_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PLMN_IdentityInfo_r15(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_lte_rrc_T_acdc_BarringConfig_r13, T_acdc_BarringConfig_r13_sequence); + ett_lte_rrc_PLMN_IdentityInfo_r15, PLMN_IdentityInfo_r15_sequence); return offset; } -static const per_sequence_t BarringPerACDC_Category_r13_sequence[] = { - { &hf_lte_rrc_acdc_Category_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxACDC_Cat_r13 }, - { &hf_lte_rrc_acdc_BarringConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_acdc_BarringConfig_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t PLMN_IdentityList_r15_sequence_of[1] = { + { &hf_lte_rrc_PLMN_IdentityList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityInfo_r15 }, }; static int -dissect_lte_rrc_BarringPerACDC_Category_r13(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_lte_rrc_BarringPerACDC_Category_r13, BarringPerACDC_Category_r13_sequence); +dissect_lte_rrc_PLMN_IdentityList_r15(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_lte_rrc_PLMN_IdentityList_r15, PLMN_IdentityList_r15_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const per_sequence_t BarringPerACDC_CategoryList_r13_sequence_of[1] = { - { &hf_lte_rrc_BarringPerACDC_CategoryList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BarringPerACDC_Category_r13 }, -}; static int -dissect_lte_rrc_BarringPerACDC_CategoryList_r13(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_lte_rrc_BarringPerACDC_CategoryList_r13, BarringPerACDC_CategoryList_r13_sequence_of, - 1, maxACDC_Cat_r13, FALSE); +dissect_lte_rrc_RAN_AreaCode_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); return offset; } -static const per_sequence_t ACDC_BarringForCommon_r13_sequence[] = { - { &hf_lte_rrc_acdc_HPLMNonly_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_barringPerACDC_CategoryList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BarringPerACDC_CategoryList_r13 }, - { NULL, 0, 0, NULL } + +static int +dissect_lte_rrc_TrackingAreaCode_5GC_r15(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, + 24, 24, FALSE, NULL, NULL); + + return offset; +} + + +static const value_string lte_rrc_CellIdentity_5GC_r15_vals[] = { + { 0, "cellIdentity-r15" }, + { 1, "cellId-Index-r15" }, + { 0, NULL } +}; + +static const per_choice_t CellIdentity_5GC_r15_choice[] = { + { 0, &hf_lte_rrc_cellIdentity_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CellIdentity }, + { 1, &hf_lte_rrc_cellId_Index_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_ACDC_BarringForCommon_r13(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_lte_rrc_ACDC_BarringForCommon_r13, ACDC_BarringForCommon_r13_sequence); +dissect_lte_rrc_CellIdentity_5GC_r15(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_lte_rrc_CellIdentity_5GC_r15, CellIdentity_5GC_r15_choice, + NULL); return offset; } -static const per_sequence_t ACDC_BarringPerPLMN_r13_sequence[] = { - { &hf_lte_rrc_plmn_IdentityIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, - { &hf_lte_rrc_acdc_OnlyForHPLMN_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_barringPerACDC_CategoryList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BarringPerACDC_CategoryList_r13 }, +static const per_sequence_t CellAccessRelatedInfo_5GC_r15_sequence[] = { + { &hf_lte_rrc_plmn_IdentityList_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityList_r15 }, + { &hf_lte_rrc_ran_AreaCode_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RAN_AreaCode_r15 }, + { &hf_lte_rrc_trackingAreaCode_5GC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode_5GC_r15 }, + { &hf_lte_rrc_cellIdentity_5GC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity_5GC_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ACDC_BarringPerPLMN_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellAccessRelatedInfo_5GC_r15(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_lte_rrc_ACDC_BarringPerPLMN_r13, ACDC_BarringPerPLMN_r13_sequence); + ett_lte_rrc_CellAccessRelatedInfo_5GC_r15, CellAccessRelatedInfo_5GC_r15_sequence); return offset; } -static const per_sequence_t ACDC_BarringPerPLMN_List_r13_sequence_of[1] = { - { &hf_lte_rrc_ACDC_BarringPerPLMN_List_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ACDC_BarringPerPLMN_r13 }, +static const per_sequence_t SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15_sequence_of[1] = { + { &hf_lte_rrc_cellAccessRelatedInfoList_5GC_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellAccessRelatedInfo_5GC_r15 }, }; static int -dissect_lte_rrc_ACDC_BarringPerPLMN_List_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15(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_lte_rrc_ACDC_BarringPerPLMN_List_r13, ACDC_BarringPerPLMN_List_r13_sequence_of, + ett_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15, SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15_sequence_of, 1, maxPLMN_r11, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType2_eag_5_sequence[] = { - { &hf_lte_rrc_acdc_BarringForCommon_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ACDC_BarringForCommon_r13 }, - { &hf_lte_rrc_acdc_BarringPerPLMN_List_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ACDC_BarringPerPLMN_List_r13 }, +static const per_sequence_t T_cellAccessRelatedInfo_5GC_r15_sequence[] = { + { &hf_lte_rrc_cellBarred_5GC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellBarred_5GC_r15 }, + { &hf_lte_rrc_cellBarred_5GC_CRS_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellBarred_5GC_CRS_r15 }, + { &hf_lte_rrc_cellAccessRelatedInfoList_5GC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType2_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_5_sequence); +dissect_lte_rrc_T_cellAccessRelatedInfo_5GC_r15(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_lte_rrc_T_cellAccessRelatedInfo_5GC_r15, T_cellAccessRelatedInfo_5GC_r15_sequence); return offset; } -static const value_string lte_rrc_T_udt_Restricting_r13_vals[] = { +static const value_string lte_rrc_T_ims_EmergencySupport5GC_r15_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_udt_Restricting_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ims_EmergencySupport5GC_r15(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, 1, NULL, FALSE, 0, NULL); @@ -35144,334 +38712,419 @@ dissect_lte_rrc_T_udt_Restricting_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const value_string lte_rrc_T_udt_RestrictingTime_r13_vals[] = { - { 0, "s4" }, - { 1, "s8" }, - { 2, "s16" }, - { 3, "s32" }, - { 4, "s64" }, - { 5, "s128" }, - { 6, "s256" }, - { 7, "s512" }, +static const value_string lte_rrc_T_eCallOverIMS_Support5GC_r15_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_udt_RestrictingTime_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_eCallOverIMS_Support5GC_r15(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UDT_Restricting_r13_sequence[] = { - { &hf_lte_rrc_udt_Restricting_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_udt_Restricting_r13 }, - { &hf_lte_rrc_udt_RestrictingTime_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_udt_RestrictingTime_r13 }, +static const per_sequence_t T_nonCriticalExtension_58_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UDT_Restricting_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_58(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_lte_rrc_UDT_Restricting_r13, UDT_Restricting_r13_sequence); + ett_lte_rrc_T_nonCriticalExtension_58, T_nonCriticalExtension_58_sequence); return offset; } -static const per_sequence_t UDT_RestrictingPerPLMN_r13_sequence[] = { - { &hf_lte_rrc_plmn_IdentityIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, - { &hf_lte_rrc_udt_Restricting_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UDT_Restricting_r13 }, +static const per_sequence_t SystemInformationBlockType1_v1530_IEs_sequence[] = { + { &hf_lte_rrc_hsdn_Cell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hsdn_Cell_r15 }, + { &hf_lte_rrc_cellSelectionInfoCE_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE_v1530 }, + { &hf_lte_rrc_crs_IntfMitigConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_IntfMitigConfig_r15 }, + { &hf_lte_rrc_cellBarred_CRS_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellBarred_CRS_r15 }, + { &hf_lte_rrc_plmn_IdentityList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList_v1530 }, + { &hf_lte_rrc_posSchedulingInfoList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PosSchedulingInfoList_r15 }, + { &hf_lte_rrc_cellAccessRelatedInfo_5GC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cellAccessRelatedInfo_5GC_r15 }, + { &hf_lte_rrc_ims_EmergencySupport5GC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ims_EmergencySupport5GC_r15 }, + { &hf_lte_rrc_eCallOverIMS_Support5GC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eCallOverIMS_Support5GC_r15 }, + { &hf_lte_rrc_nonCriticalExtension_176, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_58 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UDT_RestrictingPerPLMN_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType1_v1530_IEs(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_lte_rrc_UDT_RestrictingPerPLMN_r13, UDT_RestrictingPerPLMN_r13_sequence); + ett_lte_rrc_SystemInformationBlockType1_v1530_IEs, SystemInformationBlockType1_v1530_IEs_sequence); return offset; } -static const per_sequence_t UDT_RestrictingPerPLMN_List_r13_sequence_of[1] = { - { &hf_lte_rrc_UDT_RestrictingPerPLMN_List_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UDT_RestrictingPerPLMN_r13 }, +static const per_sequence_t SystemInformationBlockType1_v1450_IEs_sequence[] = { + { &hf_lte_rrc_tdd_Config_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1450 }, + { &hf_lte_rrc_nonCriticalExtension_175, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1530_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UDT_RestrictingPerPLMN_List_r13(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_lte_rrc_UDT_RestrictingPerPLMN_List_r13, UDT_RestrictingPerPLMN_List_r13_sequence_of, - 1, maxPLMN_r11, FALSE); +dissect_lte_rrc_SystemInformationBlockType1_v1450_IEs(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_lte_rrc_SystemInformationBlockType1_v1450_IEs, SystemInformationBlockType1_v1450_IEs_sequence); return offset; } -static const value_string lte_rrc_T_up_CIoT_EPS_Optimisation_r13_01_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SystemInformationBlockType1_v1430_IEs_sequence[] = { + { &hf_lte_rrc_eCallOverIMS_Support_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eCallOverIMS_Support_r14 }, + { &hf_lte_rrc_tdd_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1430 }, + { &hf_lte_rrc_cellAccessRelatedInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14 }, + { &hf_lte_rrc_nonCriticalExtension_174, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1450_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_up_CIoT_EPS_Optimisation_r13_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SystemInformationBlockType1_v1430_IEs(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_lte_rrc_SystemInformationBlockType1_v1430_IEs, SystemInformationBlockType1_v1430_IEs_sequence); return offset; } -static const value_string lte_rrc_T_cp_CIoT_EPS_Optimisation_r13_01_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SystemInformationBlockType1_v1360_IEs_sequence[] = { + { &hf_lte_rrc_cellSelectionInfoCE1_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_v1360 }, + { &hf_lte_rrc_nonCriticalExtension_173, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1430_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_cp_CIoT_EPS_Optimisation_r13_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SystemInformationBlockType1_v1360_IEs(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_lte_rrc_SystemInformationBlockType1_v1360_IEs, SystemInformationBlockType1_v1360_IEs_sequence); return offset; } -static const value_string lte_rrc_T_attachWithoutPDN_Connectivity_r13_01_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SystemInformationBlockType1_v1350_IEs_sequence[] = { + { &hf_lte_rrc_cellSelectionInfoCE1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_r13 }, + { &hf_lte_rrc_nonCriticalExtension_172, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1360_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_attachWithoutPDN_Connectivity_r13_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SystemInformationBlockType1_v1350_IEs(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_lte_rrc_SystemInformationBlockType1_v1350_IEs, SystemInformationBlockType1_v1350_IEs_sequence); return offset; } -static const per_sequence_t CIOT_OptimisationPLMN_r13_sequence[] = { - { &hf_lte_rrc_up_CIoT_EPS_Optimisation_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_up_CIoT_EPS_Optimisation_r13_01 }, - { &hf_lte_rrc_cp_CIoT_EPS_Optimisation_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cp_CIoT_EPS_Optimisation_r13_01 }, - { &hf_lte_rrc_attachWithoutPDN_Connectivity_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_attachWithoutPDN_Connectivity_r13_01 }, +static const per_sequence_t SystemInformationBlockType1_v1320_IEs_sequence[] = { + { &hf_lte_rrc_freqHoppingParametersDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqHoppingParametersDL_r13 }, + { &hf_lte_rrc_nonCriticalExtension_171, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1350_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CIOT_OptimisationPLMN_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType1_v1320_IEs(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_lte_rrc_CIOT_OptimisationPLMN_r13, CIOT_OptimisationPLMN_r13_sequence); + ett_lte_rrc_SystemInformationBlockType1_v1320_IEs, SystemInformationBlockType1_v1320_IEs_sequence); return offset; } -static const per_sequence_t CIOT_EPS_OptimisationInfo_r13_sequence_of[1] = { - { &hf_lte_rrc_CIOT_EPS_OptimisationInfo_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CIOT_OptimisationPLMN_r13 }, +static const per_sequence_t SystemInformationBlockType1_v1310_IEs_sequence[] = { + { &hf_lte_rrc_hyperSFN_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { &hf_lte_rrc_eDRX_Allowed_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eDRX_Allowed_r13 }, + { &hf_lte_rrc_cellSelectionInfoCE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE_r13 }, + { &hf_lte_rrc_bandwidthReducedAccessRelatedInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bandwidthReducedAccessRelatedInfo_r13 }, + { &hf_lte_rrc_nonCriticalExtension_170, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1320_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CIOT_EPS_OptimisationInfo_r13(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_lte_rrc_CIOT_EPS_OptimisationInfo_r13, CIOT_EPS_OptimisationInfo_r13_sequence_of, - 1, maxPLMN_r11, FALSE); +dissect_lte_rrc_SystemInformationBlockType1_v1310_IEs(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_lte_rrc_SystemInformationBlockType1_v1310_IEs, SystemInformationBlockType1_v1310_IEs_sequence); return offset; } -static const value_string lte_rrc_T_useFullResumeID_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SystemInformationBlockType1_v1250_IEs_sequence[] = { + { &hf_lte_rrc_cellAccessRelatedInfo_v1250, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellAccessRelatedInfo_v1250 }, + { &hf_lte_rrc_cellSelectionInfo_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfo_v1250 }, + { &hf_lte_rrc_freqBandIndicatorPriority_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqBandIndicatorPriority_r12 }, + { &hf_lte_rrc_nonCriticalExtension_169, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1310_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_useFullResumeID_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SystemInformationBlockType1_v1250_IEs(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_lte_rrc_SystemInformationBlockType1_v1250_IEs, SystemInformationBlockType1_v1250_IEs_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType2_eag_6_sequence[] = { - { &hf_lte_rrc_udt_RestrictingForCommon_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UDT_Restricting_r13 }, - { &hf_lte_rrc_udt_RestrictingPerPLMN_List_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UDT_RestrictingPerPLMN_List_r13 }, - { &hf_lte_rrc_cIoT_EPS_OptimisationInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CIOT_EPS_OptimisationInfo_r13 }, - { &hf_lte_rrc_useFullResumeID_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_useFullResumeID_r13 }, +static const per_sequence_t SystemInformationBlockType1_v1130_IEs_sequence[] = { + { &hf_lte_rrc_tdd_Config_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1130 }, + { &hf_lte_rrc_cellSelectionInfo_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfo_v1130 }, + { &hf_lte_rrc_nonCriticalExtension_168, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1250_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType2_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_6_sequence); +dissect_lte_rrc_SystemInformationBlockType1_v1130_IEs(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_lte_rrc_SystemInformationBlockType1_v1130_IEs, SystemInformationBlockType1_v1130_IEs_sequence); return offset; } -static const value_string lte_rrc_T_unicastFreqHoppingInd_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SystemInformationBlockType1_v920_IEs_sequence[] = { + { &hf_lte_rrc_ims_EmergencySupport_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ims_EmergencySupport_r9 }, + { &hf_lte_rrc_cellSelectionInfo_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfo_v920 }, + { &hf_lte_rrc_nonCriticalExtension_167, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v1130_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_unicastFreqHoppingInd_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SystemInformationBlockType1_v920_IEs(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_lte_rrc_SystemInformationBlockType1_v920_IEs, SystemInformationBlockType1_v920_IEs_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType2_eag_7_sequence[] = { - { &hf_lte_rrc_unicastFreqHoppingInd_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_unicastFreqHoppingInd_r13 }, +static const per_sequence_t SystemInformationBlockType1_v890_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_05, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_04 }, + { &hf_lte_rrc_nonCriticalExtension_162, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v920_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType2_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_7_sequence); +dissect_lte_rrc_SystemInformationBlockType1_v890_IEs(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_lte_rrc_SystemInformationBlockType1_v890_IEs, SystemInformationBlockType1_v890_IEs_sequence); return offset; } -static const value_string lte_rrc_T_videoServiceCauseIndication_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SystemInformationBlockType1_sequence[] = { + { &hf_lte_rrc_cellAccessRelatedInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellAccessRelatedInfo }, + { &hf_lte_rrc_cellSelectionInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellSelectionInfo }, + { &hf_lte_rrc_p_Max , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_freqBandIndicator, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator }, + { &hf_lte_rrc_schedulingInfoList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfoList }, + { &hf_lte_rrc_tdd_Config , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, + { &hf_lte_rrc_si_WindowLength, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_WindowLength }, + { &hf_lte_rrc_systemInfoValueTag, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_systemInfoValueTag }, + { &hf_lte_rrc_nonCriticalExtension_161, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v890_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_videoServiceCauseIndication_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SystemInformationBlockType1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + if (private_data_get_bcch_dl_sch_msg(actx) == FALSE) { + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformationBlockType1"); + } + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformationBlockType1, SystemInformationBlockType1_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType2_eag_8_sequence[] = { - { &hf_lte_rrc_mbsfn_SubframeConfigList_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, - { &hf_lte_rrc_videoServiceCauseIndication_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_videoServiceCauseIndication_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ac_BarringFactor_vals[] = { + { 0, "p00" }, + { 1, "p05" }, + { 2, "p10" }, + { 3, "p15" }, + { 4, "p20" }, + { 5, "p25" }, + { 6, "p30" }, + { 7, "p40" }, + { 8, "p50" }, + { 9, "p60" }, + { 10, "p70" }, + { 11, "p75" }, + { 12, "p80" }, + { 13, "p85" }, + { 14, "p90" }, + { 15, "p95" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType2_eag_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_8_sequence); +dissect_lte_rrc_T_ac_BarringFactor(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_upperLayerIndication_r15_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_ac_BarringTime_vals[] = { + { 0, "s4" }, + { 1, "s8" }, + { 2, "s16" }, + { 3, "s32" }, + { 4, "s64" }, + { 5, "s128" }, + { 6, "s256" }, + { 7, "s512" }, { 0, NULL } }; static int -dissect_lte_rrc_T_upperLayerIndication_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ac_BarringTime(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PLMN_Info_r15_sequence[] = { - { &hf_lte_rrc_upperLayerIndication_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_upperLayerIndication_r15 }, +static const per_sequence_t AC_BarringConfig_sequence[] = { + { &hf_lte_rrc_ac_BarringFactor, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ac_BarringFactor }, + { &hf_lte_rrc_ac_BarringTime, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ac_BarringTime }, + { &hf_lte_rrc_ac_BarringForSpecialAC, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_5 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PLMN_Info_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AC_BarringConfig(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_lte_rrc_PLMN_Info_r15, PLMN_Info_r15_sequence); + ett_lte_rrc_AC_BarringConfig, AC_BarringConfig_sequence); return offset; } -static const per_sequence_t PLMN_InfoList_r15_sequence_of[1] = { - { &hf_lte_rrc_PLMN_InfoList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Info_r15 }, +static const per_sequence_t T_ac_BarringInfo_sequence[] = { + { &hf_lte_rrc_ac_BarringForEmergency, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_ac_BarringForMO_Signalling, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, + { &hf_lte_rrc_ac_BarringForMO_Data, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PLMN_InfoList_r15(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_lte_rrc_PLMN_InfoList_r15, PLMN_InfoList_r15_sequence_of, - 1, maxPLMN_r11, FALSE); +dissect_lte_rrc_T_ac_BarringInfo(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_lte_rrc_T_ac_BarringInfo, T_ac_BarringInfo_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType2_eag_9_sequence[] = { - { &hf_lte_rrc_plmn_InfoList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_InfoList_r15 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_numberOfRA_Preambles_vals[] = { + { 0, "n4" }, + { 1, "n8" }, + { 2, "n12" }, + { 3, "n16" }, + { 4, "n20" }, + { 5, "n24" }, + { 6, "n28" }, + { 7, "n32" }, + { 8, "n36" }, + { 9, "n40" }, + { 10, "n44" }, + { 11, "n48" }, + { 12, "n52" }, + { 13, "n56" }, + { 14, "n60" }, + { 15, "n64" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType2_eag_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_9_sequence); +dissect_lte_rrc_T_numberOfRA_Preambles(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint value; + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 16, &value, FALSE, 0, NULL); + + /* This is mandatory, store value */ + private_data_set_ra_preambles(actx, value); + return offset; } -static const per_sequence_t SystemInformationBlockType2_sequence[] = { - { &hf_lte_rrc_ac_BarringInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringInfo }, - { &hf_lte_rrc_radioResourceConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB }, - { &hf_lte_rrc_ue_TimersAndConstants, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_TimersAndConstants }, - { &hf_lte_rrc_freqInfo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_freqInfo }, - { &hf_lte_rrc_mbsfn_SubframeConfigList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList }, - { &hf_lte_rrc_timeAlignmentTimerCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TimeAlignmentTimer }, - { &hf_lte_rrc_lateNonCriticalExtension_07, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_06 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_5 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_6 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_7 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_8 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sizeOfRA_PreamblesGroupA_vals[] = { + { 0, "n4" }, + { 1, "n8" }, + { 2, "n12" }, + { 3, "n16" }, + { 4, "n20" }, + { 5, "n24" }, + { 6, "n28" }, + { 7, "n32" }, + { 8, "n36" }, + { 9, "n40" }, + { 10, "n44" }, + { 11, "n48" }, + { 12, "n52" }, + { 13, "n56" }, + { 14, "n60" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sizeOfRA_PreamblesGroupA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint ra_value, value; + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 15, &value, FALSE, 0, NULL); - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB2"); + /* Retrived stored value for RA (both Group A & Group B) */ + ra_value = private_data_get_ra_preambles(actx); + if (value > ra_value) { + /* Something is wrong if A has more RAPIDs than A & B combined! */ + expert_add_info_format(actx->pinfo, actx->created_item, &ei_lte_rrc_too_many_group_a_rapids, + "Group A size (%s) > Total RA size (%s)!", + val_to_str_const(value, lte_rrc_T_sizeOfRA_PreamblesGroupA_vals, "Unknown"), + val_to_str_const(ra_value, lte_rrc_T_numberOfRA_Preambles_vals, "Unknown")); + + } + /* Tell MAC dissector so that it can say for RAPIDs whether A, B, non-RA */ + set_mac_lte_rapid_ranges((value+1)*4, (ra_value+1)*4); + /* Reset again */ + private_data_set_ra_preambles(actx, 0); - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType2, SystemInformationBlockType2_sequence); return offset; } -static const value_string lte_rrc_T_antennaPortsCount_vals[] = { - { 0, "an1" }, - { 1, "an2" }, - { 2, "an4" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_messageSizeGroupA_vals[] = { + { 0, "b56" }, + { 1, "b144" }, + { 2, "b208" }, + { 3, "b256" }, { 0, NULL } }; static int -dissect_lte_rrc_T_antennaPortsCount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_messageSizeGroupA(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); @@ -35479,105 +39132,166 @@ dissect_lte_rrc_T_antennaPortsCount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const per_sequence_t AntennaInfoCommon_sequence[] = { - { &hf_lte_rrc_antennaPortsCount, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_antennaPortsCount }, +static const value_string lte_rrc_T_messagePowerOffsetGroupB_vals[] = { + { 0, "minusinfinity" }, + { 1, "dB0" }, + { 2, "dB5" }, + { 3, "dB8" }, + { 4, "dB10" }, + { 5, "dB12" }, + { 6, "dB15" }, + { 7, "dB18" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_messagePowerOffsetGroupB(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_preamblesGroupAConfig_sequence[] = { + { &hf_lte_rrc_sizeOfRA_PreamblesGroupA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sizeOfRA_PreamblesGroupA }, + { &hf_lte_rrc_messageSizeGroupA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messageSizeGroupA }, + { &hf_lte_rrc_messagePowerOffsetGroupB, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messagePowerOffsetGroupB }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AntennaInfoCommon(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_preamblesGroupAConfig(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_lte_rrc_AntennaInfoCommon, AntennaInfoCommon_sequence); + ett_lte_rrc_T_preamblesGroupAConfig, T_preamblesGroupAConfig_sequence); return offset; } +static const per_sequence_t T_preambleInfo_sequence[] = { + { &hf_lte_rrc_numberOfRA_Preambles, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numberOfRA_Preambles }, + { &hf_lte_rrc_preamblesGroupAConfig, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_preamblesGroupAConfig }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_sourceSystemInformationBlockType1Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType1_v890_IEs_PDU); +dissect_lte_rrc_T_preambleInfo(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_lte_rrc_T_preambleInfo, T_preambleInfo_sequence); + + /* Initialise to invalid value */ + private_data_set_ra_preambles(actx, 0); + return offset; } -static const value_string lte_rrc_T_proximityIndicationEUTRA_r9_vals[] = { - { 0, "enabled" }, +static const value_string lte_rrc_T_powerRampingStep_vals[] = { + { 0, "dB0" }, + { 1, "dB2" }, + { 2, "dB4" }, + { 3, "dB6" }, { 0, NULL } }; static int -dissect_lte_rrc_T_proximityIndicationEUTRA_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_powerRampingStep(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, - 1, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_proximityIndicationUTRA_r9_vals[] = { - { 0, "enabled" }, +static const value_string lte_rrc_T_preambleInitialReceivedTargetPower_vals[] = { + { 0, "dBm-120" }, + { 1, "dBm-118" }, + { 2, "dBm-116" }, + { 3, "dBm-114" }, + { 4, "dBm-112" }, + { 5, "dBm-110" }, + { 6, "dBm-108" }, + { 7, "dBm-106" }, + { 8, "dBm-104" }, + { 9, "dBm-102" }, + { 10, "dBm-100" }, + { 11, "dBm-98" }, + { 12, "dBm-96" }, + { 13, "dBm-94" }, + { 14, "dBm-92" }, + { 15, "dBm-90" }, { 0, NULL } }; static int -dissect_lte_rrc_T_proximityIndicationUTRA_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_preambleInitialReceivedTargetPower(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, - 1, NULL, FALSE, 0, NULL); + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t ReportProximityConfig_r9_sequence[] = { - { &hf_lte_rrc_proximityIndicationEUTRA_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_proximityIndicationEUTRA_r9 }, - { &hf_lte_rrc_proximityIndicationUTRA_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_proximityIndicationUTRA_r9 }, +static const per_sequence_t PowerRampingParameters_sequence[] = { + { &hf_lte_rrc_powerRampingStep, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_powerRampingStep }, + { &hf_lte_rrc_preambleInitialReceivedTargetPower, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_preambleInitialReceivedTargetPower }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ReportProximityConfig_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PowerRampingParameters(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_lte_rrc_ReportProximityConfig_r9, ReportProximityConfig_r9_sequence); + ett_lte_rrc_PowerRampingParameters, PowerRampingParameters_sequence); return offset; } -static const value_string lte_rrc_T_idc_Indication_r11_01_vals[] = { - { 0, "setup" }, +static const value_string lte_rrc_PreambleTransMax_vals[] = { + { 0, "n3" }, + { 1, "n4" }, + { 2, "n5" }, + { 3, "n6" }, + { 4, "n7" }, + { 5, "n8" }, + { 6, "n10" }, + { 7, "n20" }, + { 8, "n50" }, + { 9, "n100" }, + { 10, "n200" }, { 0, NULL } }; static int -dissect_lte_rrc_T_idc_Indication_r11_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PreambleTransMax(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, - 1, NULL, FALSE, 0, NULL); + 11, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_autonomousDenialSubframes_r11_vals[] = { - { 0, "n2" }, - { 1, "n5" }, - { 2, "n10" }, - { 3, "n15" }, - { 4, "n20" }, - { 5, "n30" }, - { 6, "spare2" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_ra_ResponseWindowSize_vals[] = { + { 0, "sf2" }, + { 1, "sf3" }, + { 2, "sf4" }, + { 3, "sf5" }, + { 4, "sf6" }, + { 5, "sf7" }, + { 6, "sf8" }, + { 7, "sf10" }, { 0, NULL } }; static int -dissect_lte_rrc_T_autonomousDenialSubframes_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ra_ResponseWindowSize(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, 8, NULL, FALSE, 0, NULL); @@ -35585,21 +39299,21 @@ dissect_lte_rrc_T_autonomousDenialSubframes_r11(tvbuff_t *tvb _U_, int offset _U } -static const value_string lte_rrc_T_autonomousDenialValidity_r11_vals[] = { - { 0, "sf200" }, - { 1, "sf500" }, - { 2, "sf1000" }, - { 3, "sf2000" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_mac_ContentionResolutionTimer_vals[] = { + { 0, "sf8" }, + { 1, "sf16" }, + { 2, "sf24" }, + { 3, "sf32" }, + { 4, "sf40" }, + { 5, "sf48" }, + { 6, "sf56" }, + { 7, "sf64" }, { 0, NULL } }; static int -dissect_lte_rrc_T_autonomousDenialValidity_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mac_ContentionResolutionTimer(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, 8, NULL, FALSE, 0, NULL); @@ -35607,495 +39321,408 @@ dissect_lte_rrc_T_autonomousDenialValidity_r11(tvbuff_t *tvb _U_, int offset _U_ } -static const per_sequence_t T_autonomousDenialParameters_r11_sequence[] = { - { &hf_lte_rrc_autonomousDenialSubframes_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_autonomousDenialSubframes_r11 }, - { &hf_lte_rrc_autonomousDenialValidity_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_autonomousDenialValidity_r11 }, +static const per_sequence_t T_ra_SupervisionInfo_sequence[] = { + { &hf_lte_rrc_preambleTransMax, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PreambleTransMax }, + { &hf_lte_rrc_ra_ResponseWindowSize, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ra_ResponseWindowSize }, + { &hf_lte_rrc_mac_ContentionResolutionTimer, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mac_ContentionResolutionTimer }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_autonomousDenialParameters_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ra_SupervisionInfo(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_lte_rrc_T_autonomousDenialParameters_r11, T_autonomousDenialParameters_r11_sequence); + ett_lte_rrc_T_ra_SupervisionInfo, T_ra_SupervisionInfo_sequence); return offset; } -static const value_string lte_rrc_T_idc_Indication_UL_CA_r11_vals[] = { - { 0, "setup" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_idc_Indication_UL_CA_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_0_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, NULL, FALSE); return offset; } -static const per_sequence_t IDC_Config_r11_eag_1_sequence[] = { - { &hf_lte_rrc_idc_Indication_UL_CA_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_idc_Indication_UL_CA_r11 }, +static const per_sequence_t T_preambleMappingInfo_r13_sequence[] = { + { &hf_lte_rrc_firstPreamble_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, + { &hf_lte_rrc_lastPreamble_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IDC_Config_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, IDC_Config_r11_eag_1_sequence); +dissect_lte_rrc_T_preambleMappingInfo_r13(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_lte_rrc_T_preambleMappingInfo_r13, T_preambleMappingInfo_r13_sequence); return offset; } -static const value_string lte_rrc_T_idc_HardwareSharingIndication_r13_vals[] = { - { 0, "setup" }, +static const value_string lte_rrc_T_ra_ResponseWindowSize_r13_vals[] = { + { 0, "sf20" }, + { 1, "sf50" }, + { 2, "sf80" }, + { 3, "sf120" }, + { 4, "sf180" }, + { 5, "sf240" }, + { 6, "sf320" }, + { 7, "sf400" }, { 0, NULL } }; static int -dissect_lte_rrc_T_idc_HardwareSharingIndication_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ra_ResponseWindowSize_r13(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t IDC_Config_r11_eag_2_sequence[] = { - { &hf_lte_rrc_idc_HardwareSharingIndication_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_idc_HardwareSharingIndication_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mac_ContentionResolutionTimer_r13_vals[] = { + { 0, "sf80" }, + { 1, "sf100" }, + { 2, "sf120" }, + { 3, "sf160" }, + { 4, "sf200" }, + { 5, "sf240" }, + { 6, "sf480" }, + { 7, "sf960" }, + { 0, NULL } }; + static int -dissect_lte_rrc_IDC_Config_r11_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, IDC_Config_r11_eag_2_sequence); +dissect_lte_rrc_T_mac_ContentionResolutionTimer_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t IDC_Config_r11_sequence[] = { - { &hf_lte_rrc_idc_Indication_r11_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_idc_Indication_r11_01 }, - { &hf_lte_rrc_autonomousDenialParameters_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_autonomousDenialParameters_r11 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_IDC_Config_r11_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_IDC_Config_r11_eag_2 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_rar_HoppingConfig_r13_vals[] = { + { 0, "on" }, + { 1, "off" }, + { 0, NULL } }; + static int -dissect_lte_rrc_IDC_Config_r11(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_lte_rrc_IDC_Config_r11, IDC_Config_r11_sequence); +dissect_lte_rrc_T_rar_HoppingConfig_r13(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_powerPrefIndicationTimer_r11_vals[] = { - { 0, "s0" }, - { 1, "s0dot5" }, - { 2, "s1" }, - { 3, "s2" }, - { 4, "s5" }, - { 5, "s10" }, - { 6, "s20" }, - { 7, "s30" }, - { 8, "s60" }, - { 9, "s90" }, - { 10, "s120" }, - { 11, "s300" }, - { 12, "s600" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, +static const value_string lte_rrc_T_edt_TBS_r15_vals[] = { + { 0, "b328" }, + { 1, "b408" }, + { 2, "b504" }, + { 3, "b600" }, + { 4, "b712" }, + { 5, "b808" }, + { 6, "b936" }, + { 7, "b1000or456" }, { 0, NULL } }; static int -dissect_lte_rrc_T_powerPrefIndicationTimer_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_edt_TBS_r15(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, - 16, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_116_sequence[] = { - { &hf_lte_rrc_powerPrefIndicationTimer_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_powerPrefIndicationTimer_r11 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mac_ContentionResolutionTimer_r15_vals[] = { + { 0, "sf240" }, + { 1, "sf480" }, + { 2, "sf960" }, + { 3, "sf1920" }, + { 4, "sf3840" }, + { 5, "sf5760" }, + { 6, "sf7680" }, + { 7, "sf10240" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_setup_116(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_lte_rrc_T_setup_116, T_setup_116_sequence); +dissect_lte_rrc_T_mac_ContentionResolutionTimer_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_PowerPrefIndicationConfig_r11_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t PowerPrefIndicationConfig_r11_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_132 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_116 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_edt_Parameters_r15_sequence[] = { + { &hf_lte_rrc_edt_LastPreamble_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, + { &hf_lte_rrc_edt_SmallTBS_Enabled_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_edt_TBS_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_edt_TBS_r15 }, + { &hf_lte_rrc_mac_ContentionResolutionTimer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mac_ContentionResolutionTimer_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PowerPrefIndicationConfig_r11(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_lte_rrc_PowerPrefIndicationConfig_r11, PowerPrefIndicationConfig_r11_choice, - NULL); +dissect_lte_rrc_T_edt_Parameters_r15(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_lte_rrc_T_edt_Parameters_r15, T_edt_Parameters_r15_sequence); return offset; } -static const value_string lte_rrc_T_obtainLocation_r11_vals[] = { - { 0, "setup" }, - { 0, NULL } +static const per_sequence_t RACH_CE_LevelInfo_r13_eag_1_sequence[] = { + { &hf_lte_rrc_edt_Parameters_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_edt_Parameters_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_obtainLocation_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RACH_CE_LevelInfo_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RACH_CE_LevelInfo_r13_eag_1_sequence); return offset; } -static const per_sequence_t ObtainLocationConfig_r11_sequence[] = { - { &hf_lte_rrc_obtainLocation_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_obtainLocation_r11 }, +static const per_sequence_t RACH_CE_LevelInfo_r13_sequence[] = { + { &hf_lte_rrc_preambleMappingInfo_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_preambleMappingInfo_r13 }, + { &hf_lte_rrc_ra_ResponseWindowSize_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ra_ResponseWindowSize_r13 }, + { &hf_lte_rrc_mac_ContentionResolutionTimer_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mac_ContentionResolutionTimer_r13 }, + { &hf_lte_rrc_rar_HoppingConfig_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rar_HoppingConfig_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_CE_LevelInfo_r13_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ObtainLocationConfig_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RACH_CE_LevelInfo_r13(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_lte_rrc_ObtainLocationConfig_r11, ObtainLocationConfig_r11_sequence); + ett_lte_rrc_RACH_CE_LevelInfo_r13, RACH_CE_LevelInfo_r13_sequence); return offset; } -static const per_sequence_t OtherConfig_r9_eag_1_sequence[] = { - { &hf_lte_rrc_idc_Config_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IDC_Config_r11 }, - { &hf_lte_rrc_powerPrefIndicationConfig_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PowerPrefIndicationConfig_r11 }, - { &hf_lte_rrc_obtainLocationConfig_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ObtainLocationConfig_r11 }, - { NULL, 0, 0, NULL } +static const per_sequence_t RACH_CE_LevelInfoList_r13_sequence_of[1] = { + { &hf_lte_rrc_RACH_CE_LevelInfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_CE_LevelInfo_r13 }, }; static int -dissect_lte_rrc_OtherConfig_r9_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, OtherConfig_r9_eag_1_sequence); +dissect_lte_rrc_RACH_CE_LevelInfoList_r13(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_lte_rrc_RACH_CE_LevelInfoList_r13, RACH_CE_LevelInfoList_r13_sequence_of, + 1, maxCE_Level_r13, FALSE); return offset; } -static const value_string lte_rrc_T_bw_PreferenceIndicationTimer_r14_vals[] = { - { 0, "s0" }, - { 1, "s0dot5" }, - { 2, "s1" }, - { 3, "s2" }, - { 4, "s5" }, - { 5, "s10" }, - { 6, "s20" }, - { 7, "s30" }, - { 8, "s60" }, - { 9, "s90" }, - { 10, "s120" }, - { 11, "s300" }, - { 12, "s600" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } +static const per_sequence_t RACH_ConfigCommon_eag_1_sequence[] = { + { &hf_lte_rrc_preambleTransMax_CE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PreambleTransMax }, + { &hf_lte_rrc_rach_CE_LevelInfoList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_CE_LevelInfoList_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_bw_PreferenceIndicationTimer_r14(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RACH_ConfigCommon_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RACH_ConfigCommon_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_delayBudgetReportingProhibitTimer_r14_vals[] = { - { 0, "s0" }, - { 1, "s0dot4" }, - { 2, "s0dot8" }, - { 3, "s1dot6" }, - { 4, "s3" }, - { 5, "s6" }, - { 6, "s12" }, - { 7, "s30" }, +static const value_string lte_rrc_T_edt_SmallTBS_Subset_r15_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_delayBudgetReportingProhibitTimer_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_edt_SmallTBS_Subset_r15(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_113_sequence[] = { - { &hf_lte_rrc_delayBudgetReportingProhibitTimer_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_delayBudgetReportingProhibitTimer_r14 }, +static const per_sequence_t RACH_ConfigCommon_eag_2_sequence[] = { + { &hf_lte_rrc_edt_SmallTBS_Subset_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_edt_SmallTBS_Subset_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_113(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_lte_rrc_T_setup_113, T_setup_113_sequence); +dissect_lte_rrc_RACH_ConfigCommon_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RACH_ConfigCommon_eag_2_sequence); return offset; } -static const value_string lte_rrc_T_delayBudgetReportingConfig_r14_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t T_delayBudgetReportingConfig_r14_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_129 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_113 }, - { 0, NULL, 0, NULL } +static const per_sequence_t RACH_ConfigCommon_sequence[] = { + { &hf_lte_rrc_preambleInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_preambleInfo }, + { &hf_lte_rrc_powerRampingParameters, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PowerRampingParameters }, + { &hf_lte_rrc_ra_SupervisionInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ra_SupervisionInfo }, + { &hf_lte_rrc_maxHARQ_Msg3Tx, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_8 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_ConfigCommon_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_ConfigCommon_eag_2 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_delayBudgetReportingConfig_r14(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_lte_rrc_T_delayBudgetReportingConfig_r14, T_delayBudgetReportingConfig_r14_choice, - NULL); +dissect_lte_rrc_RACH_ConfigCommon(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_lte_rrc_RACH_ConfigCommon, RACH_ConfigCommon_sequence); return offset; } -static const value_string lte_rrc_T_rlmReportTimer_r14_vals[] = { - { 0, "s0" }, - { 1, "s0dot5" }, - { 2, "s1" }, - { 3, "s2" }, - { 4, "s5" }, - { 5, "s10" }, - { 6, "s20" }, - { 7, "s30" }, - { 8, "s60" }, - { 9, "s90" }, - { 10, "s120" }, - { 11, "s300" }, - { 12, "s600" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, +static const value_string lte_rrc_T_modificationPeriodCoeff_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 2, "n8" }, + { 3, "n16" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rlmReportTimer_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_modificationPeriodCoeff(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, - 16, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_rlmReportRep_MPDCCH_r14_vals[] = { - { 0, "setup" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_rlmReportRep_MPDCCH_r14(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, - 1, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_114_sequence[] = { - { &hf_lte_rrc_rlmReportTimer_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rlmReportTimer_r14 }, - { &hf_lte_rrc_rlmReportRep_MPDCCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlmReportRep_MPDCCH_r14 }, +static const per_sequence_t BCCH_Config_sequence[] = { + { &hf_lte_rrc_modificationPeriodCoeff, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_modificationPeriodCoeff }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_114(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BCCH_Config(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_lte_rrc_T_setup_114, T_setup_114_sequence); + ett_lte_rrc_BCCH_Config, BCCH_Config_sequence); return offset; } -static const value_string lte_rrc_T_rlm_ReportConfig_r14_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_defaultPagingCycle_vals[] = { + { 0, "rf32" }, + { 1, "rf64" }, + { 2, "rf128" }, + { 3, "rf256" }, { 0, NULL } }; -static const per_choice_t T_rlm_ReportConfig_r14_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_130 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_114 }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_lte_rrc_T_rlm_ReportConfig_r14(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_lte_rrc_T_rlm_ReportConfig_r14, T_rlm_ReportConfig_r14_choice, - NULL); - - return offset; -} - - -static const per_sequence_t OtherConfig_r9_eag_2_sequence[] = { - { &hf_lte_rrc_bw_PreferenceIndicationTimer_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bw_PreferenceIndicationTimer_r14 }, - { &hf_lte_rrc_sps_AssistanceInfoReport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_delayBudgetReportingConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_delayBudgetReportingConfig_r14 }, - { &hf_lte_rrc_rlm_ReportConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlm_ReportConfig_r14 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_OtherConfig_r9_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, OtherConfig_r9_eag_2_sequence); +dissect_lte_rrc_T_defaultPagingCycle(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 lte_rrc_T_overheatingIndicationProhibitTimer_r14_vals[] = { - { 0, "s0" }, - { 1, "s0dot5" }, - { 2, "s1" }, - { 3, "s2" }, - { 4, "s5" }, - { 5, "s10" }, - { 6, "s20" }, - { 7, "s30" }, - { 8, "s60" }, - { 9, "s90" }, - { 10, "s120" }, - { 11, "s300" }, - { 12, "s600" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, +static const value_string lte_rrc_T_nB_vals[] = { + { 0, "fourT" }, + { 1, "twoT" }, + { 2, "oneT" }, + { 3, "halfT" }, + { 4, "quarterT" }, + { 5, "oneEighthT" }, + { 6, "oneSixteenthT" }, + { 7, "oneThirtySecondT" }, { 0, NULL } }; static int -dissect_lte_rrc_T_overheatingIndicationProhibitTimer_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nB(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, - 16, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_115_sequence[] = { - { &hf_lte_rrc_overheatingIndicationProhibitTimer_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_overheatingIndicationProhibitTimer_r14 }, +static const per_sequence_t PCCH_Config_sequence[] = { + { &hf_lte_rrc_defaultPagingCycle, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_defaultPagingCycle }, + { &hf_lte_rrc_nB , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nB }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_115(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PCCH_Config(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_lte_rrc_T_setup_115, T_setup_115_sequence); + ett_lte_rrc_PCCH_Config, PCCH_Config_sequence); return offset; } -static const value_string lte_rrc_T_overheatingAssistanceConfig_r14_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t T_overheatingAssistanceConfig_r14_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_131 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_115 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_overheatingAssistanceConfig_r14(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_lte_rrc_T_overheatingAssistanceConfig_r14, T_overheatingAssistanceConfig_r14_choice, - NULL); +dissect_lte_rrc_INTEGER_0_837(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 837U, NULL, FALSE); return offset; } -static const per_sequence_t OtherConfig_r9_eag_3_sequence[] = { - { &hf_lte_rrc_overheatingAssistanceConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_overheatingAssistanceConfig_r14 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_OtherConfig_r9_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, OtherConfig_r9_eag_3_sequence); +dissect_lte_rrc_INTEGER_0_94(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 94U, NULL, FALSE); return offset; } -static const per_sequence_t OtherConfig_r9_sequence[] = { - { &hf_lte_rrc_reportProximityConfig_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_ReportProximityConfig_r9 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherConfig_r9_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherConfig_r9_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherConfig_r9_eag_3 }, +static const per_sequence_t PRACH_ConfigInfo_sequence[] = { + { &hf_lte_rrc_prach_ConfigIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, + { &hf_lte_rrc_highSpeedFlag, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_zeroCorrelationZoneConfig, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_prach_FreqOffset, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_94 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_OtherConfig_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PRACH_ConfigInfo(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_lte_rrc_OtherConfig_r9, OtherConfig_r9_sequence); + ett_lte_rrc_PRACH_ConfigInfo, PRACH_ConfigInfo_sequence); return offset; } -static const per_sequence_t AS_Config_eag_1_sequence[] = { - { &hf_lte_rrc_sourceSystemInformationBlockType1Ext, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sourceSystemInformationBlockType1Ext }, - { &hf_lte_rrc_sourceOtherConfig_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherConfig_r9 }, +static const per_sequence_t PRACH_ConfigSIB_sequence[] = { + { &hf_lte_rrc_rootSequenceIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_837 }, + { &hf_lte_rrc_prach_ConfigInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PRACH_ConfigInfo }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Config_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Config_eag_1_sequence); +dissect_lte_rrc_PRACH_ConfigSIB(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_lte_rrc_PRACH_ConfigSIB, PRACH_ConfigSIB_sequence); return offset; } @@ -36103,286 +39730,309 @@ dissect_lte_rrc_AS_Config_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int -dissect_lte_rrc_SCellIndex_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_M60_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 7U, NULL, FALSE); + -60, 50U, NULL, FALSE); return offset; } -static const per_sequence_t T_cellIdentification_r10_sequence[] = { - { &hf_lte_rrc_physCellId_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_dl_CarrierFreq_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, +static const per_sequence_t PDSCH_ConfigCommon_sequence[] = { + { &hf_lte_rrc_referenceSignalPower, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_50 }, + { &hf_lte_rrc_p_b , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cellIdentification_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PDSCH_ConfigCommon(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_lte_rrc_T_cellIdentification_r10, T_cellIdentification_r10_sequence); + ett_lte_rrc_PDSCH_ConfigCommon, PDSCH_ConfigCommon_sequence); return offset; } -static const value_string lte_rrc_T_dl_Bandwidth_r10_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, +static const value_string lte_rrc_T_hoppingMode_vals[] = { + { 0, "interSubFrame" }, + { 1, "intraAndInterSubFrame" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dl_Bandwidth_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_hoppingMode(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, - 6, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonUL_Configuration_r10_01_sequence[] = { - { &hf_lte_rrc_dl_Bandwidth_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_Bandwidth_r10 }, - { &hf_lte_rrc_antennaInfoCommon_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AntennaInfoCommon }, - { &hf_lte_rrc_mbsfn_SubframeConfigList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList }, - { &hf_lte_rrc_phich_Config_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PHICH_Config }, - { &hf_lte_rrc_pdsch_ConfigCommon_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDSCH_ConfigCommon }, - { &hf_lte_rrc_tdd_Config_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, + +static int +dissect_lte_rrc_INTEGER_0_98(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 98U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_pusch_ConfigBasic_sequence[] = { + { &hf_lte_rrc_n_SB , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, + { &hf_lte_rrc_hoppingMode , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_hoppingMode }, + { &hf_lte_rrc_pusch_HoppingOffset, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_98 }, + { &hf_lte_rrc_enable64QAM , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonUL_Configuration_r10_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pusch_ConfigBasic(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_lte_rrc_T_nonUL_Configuration_r10_01, T_nonUL_Configuration_r10_01_sequence); + ett_lte_rrc_T_pusch_ConfigBasic, T_pusch_ConfigBasic_sequence); return offset; } -static const value_string lte_rrc_T_ul_Bandwidth_r10_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_ul_Bandwidth_r10(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, - 6, NULL, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_0_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 29U, NULL, FALSE); return offset; } -static const per_sequence_t T_ul_FreqInfo_r10_sequence[] = { - { &hf_lte_rrc_ul_CarrierFreq_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &hf_lte_rrc_ul_Bandwidth_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth_r10 }, - { &hf_lte_rrc_additionalSpectrumEmissionSCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, +static const per_sequence_t UL_ReferenceSignalsPUSCH_sequence[] = { + { &hf_lte_rrc_groupHoppingEnabled, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_groupAssignmentPUSCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_29 }, + { &hf_lte_rrc_sequenceHoppingEnabled, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_cyclicShift , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_ul_FreqInfo_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UL_ReferenceSignalsPUSCH(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_lte_rrc_T_ul_FreqInfo_r10, T_ul_FreqInfo_r10_sequence); + ett_lte_rrc_UL_ReferenceSignalsPUSCH, UL_ReferenceSignalsPUSCH_sequence); return offset; } -static const per_sequence_t UplinkPowerControlCommonSCell_r10_sequence[] = { - { &hf_lte_rrc_p0_NominalPUSCH_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, - { &hf_lte_rrc_alpha_r10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Alpha_r12 }, +static const per_sequence_t PUSCH_ConfigCommon_sequence[] = { + { &hf_lte_rrc_pusch_ConfigBasic, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pusch_ConfigBasic }, + { &hf_lte_rrc_ul_ReferenceSignalsPUSCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_ReferenceSignalsPUSCH }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UplinkPowerControlCommonSCell_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PUSCH_ConfigCommon(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_lte_rrc_UplinkPowerControlCommonSCell_r10, UplinkPowerControlCommonSCell_r10_sequence); + ett_lte_rrc_PUSCH_ConfigCommon, PUSCH_ConfigCommon_sequence); return offset; } -static const per_sequence_t PRACH_ConfigSCell_r10_sequence[] = { - { &hf_lte_rrc_prach_ConfigIndex_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaPUCCH_Shift_vals[] = { + { 0, "ds1" }, + { 1, "ds2" }, + { 2, "ds3" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PRACH_ConfigSCell_r10(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_lte_rrc_PRACH_ConfigSCell_r10, PRACH_ConfigSCell_r10_sequence); +dissect_lte_rrc_T_deltaPUCCH_Shift(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_ul_Configuration_r10_01_sequence[] = { - { &hf_lte_rrc_ul_FreqInfo_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_FreqInfo_r10 }, - { &hf_lte_rrc_p_Max_r10 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_uplinkPowerControlCommonSCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UplinkPowerControlCommonSCell_r10 }, - { &hf_lte_rrc_soundingRS_UL_ConfigCommon_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_UL_ConfigCommon }, - { &hf_lte_rrc_ul_CyclicPrefixLength_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CyclicPrefixLength }, - { &hf_lte_rrc_prach_ConfigSCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ConfigSCell_r10 }, - { &hf_lte_rrc_pusch_ConfigCommon_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PUSCH_ConfigCommon }, +static const per_sequence_t PUCCH_ConfigCommon_sequence[] = { + { &hf_lte_rrc_deltaPUCCH_Shift, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaPUCCH_Shift }, + { &hf_lte_rrc_nRB_CQI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_98 }, + { &hf_lte_rrc_nCS_AN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_n1PUCCH_AN , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_ul_Configuration_r10_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PUCCH_ConfigCommon(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_lte_rrc_T_ul_Configuration_r10_01, T_ul_Configuration_r10_01_sequence); + ett_lte_rrc_PUCCH_ConfigCommon, PUCCH_ConfigCommon_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_1_sequence[] = { - { &hf_lte_rrc_ul_CarrierFreq_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_srs_BandwidthConfig_vals[] = { + { 0, "bw0" }, + { 1, "bw1" }, + { 2, "bw2" }, + { 3, "bw3" }, + { 4, "bw4" }, + { 5, "bw5" }, + { 6, "bw6" }, + { 7, "bw7" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_1_sequence); +dissect_lte_rrc_T_srs_BandwidthConfig(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_ra_SupervisionInfo_r11_sequence[] = { - { &hf_lte_rrc_preambleTransMax_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PreambleTransMax }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_srs_SubframeConfig_vals[] = { + { 0, "sc0" }, + { 1, "sc1" }, + { 2, "sc2" }, + { 3, "sc3" }, + { 4, "sc4" }, + { 5, "sc5" }, + { 6, "sc6" }, + { 7, "sc7" }, + { 8, "sc8" }, + { 9, "sc9" }, + { 10, "sc10" }, + { 11, "sc11" }, + { 12, "sc12" }, + { 13, "sc13" }, + { 14, "sc14" }, + { 15, "sc15" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_ra_SupervisionInfo_r11(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_lte_rrc_T_ra_SupervisionInfo_r11, T_ra_SupervisionInfo_r11_sequence); +dissect_lte_rrc_T_srs_SubframeConfig(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RACH_ConfigCommonSCell_r11_sequence[] = { - { &hf_lte_rrc_powerRampingParameters_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PowerRampingParameters }, - { &hf_lte_rrc_ra_SupervisionInfo_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ra_SupervisionInfo_r11 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_srs_MaxUpPts_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RACH_ConfigCommonSCell_r11(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_lte_rrc_RACH_ConfigCommonSCell_r11, RACH_ConfigCommonSCell_r11_sequence); +dissect_lte_rrc_T_srs_MaxUpPts(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PRACH_Config_sequence[] = { - { &hf_lte_rrc_rootSequenceIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_837 }, - { &hf_lte_rrc_prach_ConfigInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ConfigInfo }, +static const per_sequence_t T_setup_114_sequence[] = { + { &hf_lte_rrc_srs_BandwidthConfig, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_srs_BandwidthConfig }, + { &hf_lte_rrc_srs_SubframeConfig, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_srs_SubframeConfig }, + { &hf_lte_rrc_ackNackSRS_SimultaneousTransmission, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_srs_MaxUpPts, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_MaxUpPts }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PRACH_Config(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_114(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_lte_rrc_PRACH_Config, PRACH_Config_sequence); + ett_lte_rrc_T_setup_114, T_setup_114_sequence); return offset; } -static const per_sequence_t UplinkPowerControlCommonSCell_v1130_sequence[] = { - { &hf_lte_rrc_deltaPreambleMsg3_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M1_6 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_SoundingRS_UL_ConfigCommon_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t SoundingRS_UL_ConfigCommon_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_129 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_114 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_UplinkPowerControlCommonSCell_v1130(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_lte_rrc_UplinkPowerControlCommonSCell_v1130, UplinkPowerControlCommonSCell_v1130_sequence); +dissect_lte_rrc_SoundingRS_UL_ConfigCommon(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_lte_rrc_SoundingRS_UL_ConfigCommon, SoundingRS_UL_ConfigCommon_choice, + NULL); return offset; } -static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_2_sequence[] = { - { &hf_lte_rrc_rach_ConfigCommonSCell_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_ConfigCommonSCell_r11 }, - { &hf_lte_rrc_prach_ConfigSCell_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_Config }, - { &hf_lte_rrc_tdd_Config_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1130 }, - { &hf_lte_rrc_uplinkPowerControlCommonSCell_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommonSCell_v1130 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_2_sequence); +dissect_lte_rrc_INTEGER_M127_M96(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -127, -96, NULL, FALSE); return offset; } -static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_3_sequence[] = { - { &hf_lte_rrc_pusch_ConfigCommon_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigCommon_v1270 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaF_PUCCH_Format1_vals[] = { + { 0, "deltaF-2" }, + { 1, "deltaF0" }, + { 2, "deltaF2" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_3_sequence); +dissect_lte_rrc_T_deltaF_PUCCH_Format1(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format3_r12_01_vals[] = { - { 0, "deltaF-1" }, - { 1, "deltaF0" }, - { 2, "deltaF1" }, - { 3, "deltaF2" }, - { 4, "deltaF3" }, - { 5, "deltaF4" }, - { 6, "deltaF5" }, - { 7, "deltaF6" }, +static const value_string lte_rrc_T_deltaF_PUCCH_Format1b_vals[] = { + { 0, "deltaF1" }, + { 1, "deltaF3" }, + { 2, "deltaF5" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaF_PUCCH_Format3_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaF_PUCCH_Format1b(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, - 8, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format1bCS_r12_01_vals[] = { - { 0, "deltaF1" }, - { 1, "deltaF2" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_deltaF_PUCCH_Format2_vals[] = { + { 0, "deltaF-2" }, + { 1, "deltaF0" }, + { 2, "deltaF1" }, + { 3, "deltaF2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaF_PUCCH_Format2(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); @@ -36390,422 +40040,379 @@ dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r12_01(tvbuff_t *tvb _U_, int offset _ } -static const value_string lte_rrc_T_deltaF_PUCCH_Format4_r13_01_vals[] = { - { 0, "deltaF16" }, - { 1, "deltaF15" }, - { 2, "deltaF14" }, - { 3, "deltaF13" }, - { 4, "deltaF12" }, - { 5, "deltaF11" }, - { 6, "deltaF10" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_deltaF_PUCCH_Format2a_vals[] = { + { 0, "deltaF-2" }, + { 1, "deltaF0" }, + { 2, "deltaF2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaF_PUCCH_Format4_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaF_PUCCH_Format2a(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, - 8, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format5_13_01_vals[] = { - { 0, "deltaF13" }, - { 1, "deltaF12" }, - { 2, "deltaF11" }, - { 3, "deltaF10" }, - { 4, "deltaF9" }, - { 5, "deltaF8" }, - { 6, "deltaF7" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_deltaF_PUCCH_Format2b_vals[] = { + { 0, "deltaF-2" }, + { 1, "deltaF0" }, + { 2, "deltaF2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaF_PUCCH_Format5_13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaF_PUCCH_Format2b(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, - 8, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UplinkPowerControlCommonSCell_v1310_sequence[] = { - { &hf_lte_rrc_p0_NominalPUCCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M127_M96 }, - { &hf_lte_rrc_deltaFList_PUCCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DeltaFList_PUCCH }, - { &hf_lte_rrc_deltaF_PUCCH_Format3_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format3_r12_01 }, - { &hf_lte_rrc_deltaF_PUCCH_Format1bCS_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r12_01 }, - { &hf_lte_rrc_deltaF_PUCCH_Format4_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format4_r13_01 }, - { &hf_lte_rrc_deltaF_PUCCH_Format5_13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format5_13_01 }, +static const per_sequence_t DeltaFList_PUCCH_sequence[] = { + { &hf_lte_rrc_deltaF_PUCCH_Format1, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format1 }, + { &hf_lte_rrc_deltaF_PUCCH_Format1b, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format1b }, + { &hf_lte_rrc_deltaF_PUCCH_Format2, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format2 }, + { &hf_lte_rrc_deltaF_PUCCH_Format2a, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format2a }, + { &hf_lte_rrc_deltaF_PUCCH_Format2b, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format2b }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UplinkPowerControlCommonSCell_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DeltaFList_PUCCH(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_lte_rrc_UplinkPowerControlCommonSCell_v1310, UplinkPowerControlCommonSCell_v1310_sequence); + ett_lte_rrc_DeltaFList_PUCCH, DeltaFList_PUCCH_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_4_sequence[] = { - { &hf_lte_rrc_pucch_ConfigCommon_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon }, - { &hf_lte_rrc_uplinkPowerControlCommonSCell_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommonSCell_v1310 }, +static const per_sequence_t UplinkPowerControlCommon_sequence[] = { + { &hf_lte_rrc_p0_NominalPUSCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, + { &hf_lte_rrc_alpha , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Alpha_r12 }, + { &hf_lte_rrc_p0_NominalPUCCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M127_M96 }, + { &hf_lte_rrc_deltaFList_PUCCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DeltaFList_PUCCH }, + { &hf_lte_rrc_deltaPreambleMsg3, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M1_6 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_4_sequence); +dissect_lte_rrc_UplinkPowerControlCommon(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_lte_rrc_UplinkPowerControlCommon, UplinkPowerControlCommon_sequence); return offset; } -static const value_string lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14_01_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_UL_CyclicPrefixLength_vals[] = { + { 0, "len1" }, + { 1, "len2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UL_CyclicPrefixLength(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t HighSpeedConfigSCell_r14_sequence[] = { - { &hf_lte_rrc_highSpeedEnhancedDemodulationFlag_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaF_PUCCH_Format3_r10_vals[] = { + { 0, "deltaF-1" }, + { 1, "deltaF0" }, + { 2, "deltaF1" }, + { 3, "deltaF2" }, + { 4, "deltaF3" }, + { 5, "deltaF4" }, + { 6, "deltaF5" }, + { 7, "deltaF6" }, + { 0, NULL } }; + static int -dissect_lte_rrc_HighSpeedConfigSCell_r14(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_lte_rrc_HighSpeedConfigSCell_r14, HighSpeedConfigSCell_r14_sequence); - - return offset; -} - - - -static int -dissect_lte_rrc_ARFCN_ValueEUTRA_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxEARFCN2, NULL, FALSE); +dissect_lte_rrc_T_deltaF_PUCCH_Format3_r10(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ul_Bandwidth_r14_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, +static const value_string lte_rrc_T_deltaF_PUCCH_Format1bCS_r10_vals[] = { + { 0, "deltaF1" }, + { 1, "deltaF2" }, + { 2, "spare2" }, + { 3, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ul_Bandwidth_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r10(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, - 6, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const per_sequence_t T_ul_FreqInfo_r14_sequence[] = { - { &hf_lte_rrc_ul_CarrierFreq_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_ul_Bandwidth_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth_r14 }, - { &hf_lte_rrc_additionalSpectrumEmissionSCell_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_T_ul_FreqInfo_r14(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_lte_rrc_T_ul_FreqInfo_r14, T_ul_FreqInfo_r14_sequence); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UplinkPowerControlCommonPUSCH_LessCell_v1430_sequence[] = { - { &hf_lte_rrc_p0_Nominal_PeriodicSRS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M126_24 }, - { &hf_lte_rrc_p0_Nominal_AperiodicSRS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M126_24 }, - { &hf_lte_rrc_alpha_SRS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Alpha_r12 }, +static const per_sequence_t UplinkPowerControlCommon_v1020_sequence[] = { + { &hf_lte_rrc_deltaF_PUCCH_Format3_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format3_r10 }, + { &hf_lte_rrc_deltaF_PUCCH_Format1bCS_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UplinkPowerControlCommonPUSCH_LessCell_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UplinkPowerControlCommon_v1020(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_lte_rrc_UplinkPowerControlCommonPUSCH_LessCell_v1430, UplinkPowerControlCommonPUSCH_LessCell_v1430_sequence); + ett_lte_rrc_UplinkPowerControlCommon_v1020, UplinkPowerControlCommon_v1020_sequence); return offset; } -static const per_sequence_t T_ul_Configuration_r14_sequence[] = { - { &hf_lte_rrc_ul_FreqInfo_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_FreqInfo_r14 }, - { &hf_lte_rrc_p_Max_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_soundingRS_UL_ConfigCommon_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_UL_ConfigCommon }, - { &hf_lte_rrc_ul_CyclicPrefixLength_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CyclicPrefixLength }, - { &hf_lte_rrc_prach_ConfigSCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ConfigSCell_r10 }, - { &hf_lte_rrc_uplinkPowerControlCommonPUSCH_LessCell_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommonPUSCH_LessCell_v1430 }, +static const per_sequence_t RadioResourceConfigCommonSIB_eag_1_sequence[] = { + { &hf_lte_rrc_uplinkPowerControlCommon_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1020 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_ul_Configuration_r14(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_lte_rrc_T_ul_Configuration_r14, T_ul_Configuration_r14_sequence); +dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_harq_ReferenceConfig_r14_vals[] = { - { 0, "sa2" }, - { 1, "sa4" }, - { 2, "sa5" }, +static const value_string lte_rrc_T_connEstFailCount_r12_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_harq_ReferenceConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_connEstFailCount_r12(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, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_soundingRS_FlexibleTiming_r14_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_connEstFailOffsetValidity_r12_vals[] = { + { 0, "s30" }, + { 1, "s60" }, + { 2, "s120" }, + { 3, "s240" }, + { 4, "s300" }, + { 5, "s420" }, + { 6, "s600" }, + { 7, "s900" }, { 0, NULL } }; static int -dissect_lte_rrc_T_soundingRS_FlexibleTiming_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_connEstFailOffsetValidity_r12(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_5_sequence[] = { - { &hf_lte_rrc_highSpeedConfigSCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HighSpeedConfigSCell_r14 }, - { &hf_lte_rrc_prach_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_Config_v1430 }, - { &hf_lte_rrc_ul_Configuration_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Configuration_r14 }, - { &hf_lte_rrc_harq_ReferenceConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_harq_ReferenceConfig_r14 }, - { &hf_lte_rrc_soundingRS_FlexibleTiming_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_soundingRS_FlexibleTiming_r14 }, +static const per_sequence_t T_txFailParams_r12_sequence[] = { + { &hf_lte_rrc_connEstFailCount_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_connEstFailCount_r12 }, + { &hf_lte_rrc_connEstFailOffsetValidity_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_connEstFailOffsetValidity_r12 }, + { &hf_lte_rrc_connEstFailOffset_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_5_sequence); +dissect_lte_rrc_T_txFailParams_r12(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_lte_rrc_T_txFailParams_r12, T_txFailParams_r12_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_6_sequence[] = { - { &hf_lte_rrc_mbsfn_SubframeConfigList_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, +static const per_sequence_t RACH_ConfigCommon_v1250_sequence[] = { + { &hf_lte_rrc_txFailParams_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_txFailParams_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_6_sequence); +dissect_lte_rrc_RACH_ConfigCommon_v1250(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_lte_rrc_RACH_ConfigCommon_v1250, RACH_ConfigCommon_v1250_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommonSCell_r10_sequence[] = { - { &hf_lte_rrc_nonUL_Configuration_r10_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nonUL_Configuration_r10_01 }, - { &hf_lte_rrc_ul_Configuration_r10_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Configuration_r10_01 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_5 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_6 }, +static const per_sequence_t RadioResourceConfigCommonSIB_eag_2_sequence[] = { + { &hf_lte_rrc_rach_ConfigCommon_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_ConfigCommon_v1250 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonSCell_r10(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_lte_rrc_RadioResourceConfigCommonSCell_r10, RadioResourceConfigCommonSCell_r10_sequence); +dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_2_sequence); return offset; } -static const per_sequence_t T_own_r10_sequence[] = { - { &hf_lte_rrc_cif_Presence_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_enable64QAM_v1270_vals[] = { + { 0, "true" }, + { 0, NULL } }; -static int -dissect_lte_rrc_T_own_r10(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_lte_rrc_T_own_r10, T_own_r10_sequence); - - return offset; -} - - static int -dissect_lte_rrc_ServCellIndex_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 7U, NULL, FALSE); +dissect_lte_rrc_T_enable64QAM_v1270(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_other_r10_sequence[] = { - { &hf_lte_rrc_schedulingCellId_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r10 }, - { &hf_lte_rrc_pdsch_Start_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, +static const per_sequence_t PUSCH_ConfigCommon_v1270_sequence[] = { + { &hf_lte_rrc_enable64QAM_v1270, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_enable64QAM_v1270 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_other_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PUSCH_ConfigCommon_v1270(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_lte_rrc_T_other_r10, T_other_r10_sequence); + ett_lte_rrc_PUSCH_ConfigCommon_v1270, PUSCH_ConfigCommon_v1270_sequence); return offset; } -static const value_string lte_rrc_T_schedulingCellInfo_r10_vals[] = { - { 0, "own-r10" }, - { 1, "other-r10" }, - { 0, NULL } -}; - -static const per_choice_t T_schedulingCellInfo_r10_choice[] = { - { 0, &hf_lte_rrc_own_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_own_r10 }, - { 1, &hf_lte_rrc_other_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_other_r10 }, - { 0, NULL, 0, NULL } +static const per_sequence_t RadioResourceConfigCommonSIB_eag_3_sequence[] = { + { &hf_lte_rrc_pusch_ConfigCommon_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigCommon_v1270 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_schedulingCellInfo_r10(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_lte_rrc_T_schedulingCellInfo_r10, T_schedulingCellInfo_r10_choice, - NULL); +dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_3_sequence); return offset; } -static const per_sequence_t CrossCarrierSchedulingConfig_r10_sequence[] = { - { &hf_lte_rrc_schedulingCellInfo_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_schedulingCellInfo_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_modificationPeriodCoeff_v1310_vals[] = { + { 0, "n64" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CrossCarrierSchedulingConfig_r10(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_lte_rrc_CrossCarrierSchedulingConfig_r10, CrossCarrierSchedulingConfig_r10_sequence); +dissect_lte_rrc_T_modificationPeriodCoeff_v1310(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonUL_Configuration_r10_sequence[] = { - { &hf_lte_rrc_antennaInfo_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_r10 }, - { &hf_lte_rrc_crossCarrierSchedulingConfig_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CrossCarrierSchedulingConfig_r10 }, - { &hf_lte_rrc_csi_RS_Config_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_r10 }, - { &hf_lte_rrc_pdsch_ConfigDedicated_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated }, +static const per_sequence_t BCCH_Config_v1310_sequence[] = { + { &hf_lte_rrc_modificationPeriodCoeff_v1310, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_modificationPeriodCoeff_v1310 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonUL_Configuration_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BCCH_Config_v1310(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_lte_rrc_T_nonUL_Configuration_r10, T_nonUL_Configuration_r10_sequence); + ett_lte_rrc_BCCH_Config_v1310, BCCH_Config_v1310_sequence); return offset; } -static const value_string lte_rrc_T_groupHoppingDisabled_r10_01_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_mpdcch_NumRepetition_Paging_r13_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "r128" }, + { 8, "r256" }, { 0, NULL } }; static int -dissect_lte_rrc_T_groupHoppingDisabled_r10_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mpdcch_NumRepetition_Paging_r13(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, - 1, NULL, FALSE, 0, NULL); + 9, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_dmrs_WithOCC_Activated_r10_01_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_nB_v1310_vals[] = { + { 0, "one64thT" }, + { 1, "one128thT" }, + { 2, "one256thT" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dmrs_WithOCC_Activated_r10_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nB_v1310(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, - 1, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PUSCH_ConfigDedicatedSCell_r10_sequence[] = { - { &hf_lte_rrc_groupHoppingDisabled_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_groupHoppingDisabled_r10_01 }, - { &hf_lte_rrc_dmrs_WithOCC_Activated_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_WithOCC_Activated_r10_01 }, +static const per_sequence_t PCCH_Config_v1310_sequence[] = { + { &hf_lte_rrc_paging_narrowBands_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, + { &hf_lte_rrc_mpdcch_NumRepetition_Paging_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NumRepetition_Paging_r13 }, + { &hf_lte_rrc_nB_v1310 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nB_v1310 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PUSCH_ConfigDedicatedSCell_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PCCH_Config_v1310(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_lte_rrc_PUSCH_ConfigDedicatedSCell_r10, PUSCH_ConfigDedicatedSCell_r10_sequence); + ett_lte_rrc_PCCH_Config_v1310, PCCH_Config_v1310_sequence); return offset; } -static const value_string lte_rrc_T_deltaMCS_Enabled_r10_vals[] = { - { 0, "en0" }, - { 1, "en1" }, +static const value_string lte_rrc_T_dummy_02_vals[] = { + { 0, "nb2" }, + { 1, "nb4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaMCS_Enabled_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dummy_02(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, FALSE, 0, NULL); @@ -36813,662 +40420,746 @@ dissect_lte_rrc_T_deltaMCS_Enabled_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const value_string lte_rrc_T_pathlossReferenceLinking_r10_vals[] = { - { 0, "pCell" }, - { 1, "sCell" }, +static const value_string lte_rrc_T_interval_FDD_r13_02_vals[] = { + { 0, "int1" }, + { 1, "int2" }, + { 2, "int4" }, + { 3, "int8" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pathlossReferenceLinking_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_interval_FDD_r13_02(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, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UplinkPowerControlDedicatedSCell_r10_sequence[] = { - { &hf_lte_rrc_p0_UE_PUSCH_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_7 }, - { &hf_lte_rrc_deltaMCS_Enabled_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaMCS_Enabled_r10 }, - { &hf_lte_rrc_accumulationEnabled_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_pSRS_Offset_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, - { &hf_lte_rrc_pSRS_OffsetAp_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, - { &hf_lte_rrc_filterCoefficient_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FilterCoefficient }, - { &hf_lte_rrc_pathlossReferenceLinking_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pathlossReferenceLinking_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_interval_TDD_r13_02_vals[] = { + { 0, "int1" }, + { 1, "int5" }, + { 2, "int10" }, + { 3, "int20" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UplinkPowerControlDedicatedSCell_r10(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_lte_rrc_UplinkPowerControlDedicatedSCell_r10, UplinkPowerControlDedicatedSCell_r10_sequence); +dissect_lte_rrc_T_interval_TDD_r13_02(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 lte_rrc_T_pmi_RI_Report_r10_vals[] = { - { 0, "setup" }, +static const value_string lte_rrc_T_dummy2_01_vals[] = { + { 0, "interval-FDD-r13" }, + { 1, "interval-TDD-r13" }, { 0, NULL } }; +static const per_choice_t T_dummy2_01_choice[] = { + { 0, &hf_lte_rrc_interval_FDD_r13_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13_02 }, + { 1, &hf_lte_rrc_interval_TDD_r13_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13_02 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_pmi_RI_Report_r10(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_dummy2_01(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_lte_rrc_T_dummy2_01, T_dummy2_01_choice, + NULL); return offset; } -static const per_sequence_t CQI_ReportConfigSCell_r10_sequence[] = { - { &hf_lte_rrc_cqi_ReportModeAperiodic_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportModeAperiodic }, - { &hf_lte_rrc_nomPDSCH_RS_EPRE_Offset_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M1_6 }, - { &hf_lte_rrc_cqi_ReportPeriodicSCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportPeriodic_r10 }, - { &hf_lte_rrc_pmi_RI_Report_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pmi_RI_Report_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_interval_FDD_r13_03_vals[] = { + { 0, "int2" }, + { 1, "int4" }, + { 2, "int8" }, + { 3, "int16" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CQI_ReportConfigSCell_r10(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_lte_rrc_CQI_ReportConfigSCell_r10, CQI_ReportConfigSCell_r10_sequence); +dissect_lte_rrc_T_interval_FDD_r13_03(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 per_sequence_t T_ul_Configuration_r10_sequence[] = { - { &hf_lte_rrc_antennaInfoUL_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoUL_r10 }, - { &hf_lte_rrc_pusch_ConfigDedicatedSCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicatedSCell_r10 }, - { &hf_lte_rrc_uplinkPowerControlDedicatedSCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicatedSCell_r10 }, - { &hf_lte_rrc_cqi_ReportConfigSCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfigSCell_r10 }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicated_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicated }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicated_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicated_v1020 }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_interval_TDD_r13_03_vals[] = { + { 0, "int5" }, + { 1, "int10" }, + { 2, "int20" }, + { 3, "int40" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_ul_Configuration_r10(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_lte_rrc_T_ul_Configuration_r10, T_ul_Configuration_r10_sequence); +dissect_lte_rrc_T_interval_TDD_r13_03(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 per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_1_sequence[] = { - { &hf_lte_rrc_csi_RS_ConfigNZPToReleaseList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r11 }, - { &hf_lte_rrc_csi_RS_ConfigNZPToAddModList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPToAddModList_r11 }, - { &hf_lte_rrc_csi_RS_ConfigZPToReleaseList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigZPToReleaseList_r11 }, - { &hf_lte_rrc_csi_RS_ConfigZPToAddModList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigZPToAddModList_r11 }, - { &hf_lte_rrc_epdcch_Config_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_EPDCCH_Config_r11 }, - { &hf_lte_rrc_pdsch_ConfigDedicated_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated_v1130 }, - { &hf_lte_rrc_cqi_ReportConfig_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1130 }, - { &hf_lte_rrc_pusch_ConfigDedicated_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicated_v1130 }, - { &hf_lte_rrc_uplinkPowerControlDedicatedSCell_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicated_v1130 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dummy3_vals[] = { + { 0, "interval-FDD-r13" }, + { 1, "interval-TDD-r13" }, + { 0, NULL } }; -static int -dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_1_sequence); - - return offset; -} - - -static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_2_sequence[] = { - { &hf_lte_rrc_antennaInfo_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v1250 }, - { &hf_lte_rrc_eimta_MainConfigSCell_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_EIMTA_MainConfigServCell_r12 }, - { &hf_lte_rrc_cqi_ReportConfigSCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1250 }, - { &hf_lte_rrc_uplinkPowerControlDedicatedSCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicated_v1250 }, - { &hf_lte_rrc_csi_RS_Config_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1250 }, - { NULL, 0, 0, NULL } +static const per_choice_t T_dummy3_choice[] = { + { 0, &hf_lte_rrc_interval_FDD_r13_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13_03 }, + { 1, &hf_lte_rrc_interval_TDD_r13_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13_03 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_2_sequence); +dissect_lte_rrc_T_dummy3(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_lte_rrc_T_dummy3, T_dummy3_choice, + NULL); return offset; } -static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_3_sequence[] = { - { &hf_lte_rrc_pdsch_ConfigDedicated_v1280, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated_v1280 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_interval_FDD_r13_04_vals[] = { + { 0, "int1" }, + { 1, "int2" }, + { 2, "int4" }, + { 3, "int8" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_3_sequence); +dissect_lte_rrc_T_interval_FDD_r13_04(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 lte_rrc_T_pucch_Cell_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_interval_TDD_r13_04_vals[] = { + { 0, "int1" }, + { 1, "int5" }, + { 2, "int10" }, + { 3, "int20" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pucch_Cell_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_interval_TDD_r13_04(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, - 1, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_interval_ULHoppingConfigCommonModeA_r13_vals[] = { + { 0, "interval-FDD-r13" }, + { 1, "interval-TDD-r13" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_sr_ConfigIndex_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 value; - guint16 periodicity, subframe_offset; - proto_item *ti; - proto_tree *subtree; - gint index_offset = offset; - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 157U, &value, FALSE); - - /* Break config index into its parts */ - sr_lookup_configindex(value, &periodicity, &subframe_offset); - /* Show parts as generated fields */ - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_sr_ConfigIndex); - ti = proto_tree_add_uint(subtree, hf_lte_rrc_sr_config_periodicity, tvb, index_offset>>3, 1, periodicity); - PROTO_ITEM_SET_GENERATED(ti); - ti = proto_tree_add_uint(subtree, hf_lte_rrc_sr_config_subframe_offset, tvb, index_offset>>3, 1, subframe_offset); - PROTO_ITEM_SET_GENERATED(ti); +static const per_choice_t T_interval_ULHoppingConfigCommonModeA_r13_choice[] = { + { 0, &hf_lte_rrc_interval_FDD_r13_04, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13_04 }, + { 1, &hf_lte_rrc_interval_TDD_r13_04, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13_04 }, + { 0, NULL, 0, NULL } +}; +static int +dissect_lte_rrc_T_interval_ULHoppingConfigCommonModeA_r13(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_lte_rrc_T_interval_ULHoppingConfigCommonModeA_r13, T_interval_ULHoppingConfigCommonModeA_r13_choice, + NULL); return offset; } -static const value_string lte_rrc_T_dsr_TransMax_r13_vals[] = { - { 0, "n4" }, - { 1, "n8" }, - { 2, "n16" }, - { 3, "n32" }, - { 4, "n64" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_interval_FDD_r13_05_vals[] = { + { 0, "int2" }, + { 1, "int4" }, + { 2, "int8" }, + { 3, "int16" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dsr_TransMax_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_interval_FDD_r13_05(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, - 8, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_83_sequence[] = { - { &hf_lte_rrc_sr_PUCCH_ResourceIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, - { &hf_lte_rrc_sr_PUCCH_ResourceIndexP1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_2047 }, - { &hf_lte_rrc_sr_ConfigIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sr_ConfigIndex_r13 }, - { &hf_lte_rrc_dsr_TransMax_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dsr_TransMax_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_interval_TDD_r13_05_vals[] = { + { 0, "int5" }, + { 1, "int10" }, + { 2, "int20" }, + { 3, "int40" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_setup_83(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_lte_rrc_T_setup_83, T_setup_83_sequence); +dissect_lte_rrc_T_interval_TDD_r13_05(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 lte_rrc_SchedulingRequestConfigSCell_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_interval_ULHoppingConfigCommonModeB_r13_vals[] = { + { 0, "interval-FDD-r13" }, + { 1, "interval-TDD-r13" }, { 0, NULL } }; -static const per_choice_t SchedulingRequestConfigSCell_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_96 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_83 }, +static const per_choice_t T_interval_ULHoppingConfigCommonModeB_r13_choice[] = { + { 0, &hf_lte_rrc_interval_FDD_r13_05, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_FDD_r13_05 }, + { 1, &hf_lte_rrc_interval_TDD_r13_05, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interval_TDD_r13_05 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SchedulingRequestConfigSCell_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_interval_ULHoppingConfigCommonModeB_r13(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_lte_rrc_SchedulingRequestConfigSCell_r13, SchedulingRequestConfigSCell_r13_choice, + ett_lte_rrc_T_interval_ULHoppingConfigCommonModeB_r13, T_interval_ULHoppingConfigCommonModeB_r13_choice, NULL); return offset; } -static const per_sequence_t T_setup_101_sequence[] = { - { &hf_lte_rrc_tpc_Index_PUCCH_SCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TPC_Index }, +static const per_sequence_t FreqHoppingParameters_r13_sequence[] = { + { &hf_lte_rrc_dummy_04 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dummy_02 }, + { &hf_lte_rrc_dummy2_01 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dummy2_01 }, + { &hf_lte_rrc_dummy3 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dummy3 }, + { &hf_lte_rrc_interval_ULHoppingConfigCommonModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interval_ULHoppingConfigCommonModeA_r13 }, + { &hf_lte_rrc_interval_ULHoppingConfigCommonModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interval_ULHoppingConfigCommonModeB_r13 }, + { &hf_lte_rrc_dummy4 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_101(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_FreqHoppingParameters_r13(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_lte_rrc_T_setup_101, T_setup_101_sequence); + ett_lte_rrc_FreqHoppingParameters_r13, FreqHoppingParameters_r13_sequence); return offset; } -static const value_string lte_rrc_TPC_PDCCH_ConfigSCell_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_r13_vals[] = { + { 0, "r16" }, + { 1, "r32" }, { 0, NULL } }; -static const per_choice_t TPC_PDCCH_ConfigSCell_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_114 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_101 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_TPC_PDCCH_ConfigSCell_r13(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_lte_rrc_TPC_PDCCH_ConfigSCell_r13, TPC_PDCCH_ConfigSCell_r13_choice, - NULL); +dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_r13(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t UplinkPowerControlDedicatedSCell_v1310_sequence[] = { - { &hf_lte_rrc_p0_UE_PUCCH , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_7 }, - { &hf_lte_rrc_deltaTxD_OffsetListPUCCH_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DeltaTxD_OffsetListPUCCH_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_r13_vals[] = { + { 0, "r192" }, + { 1, "r256" }, + { 2, "r384" }, + { 3, "r512" }, + { 4, "r768" }, + { 5, "r1024" }, + { 6, "r1536" }, + { 7, "r2048" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UplinkPowerControlDedicatedSCell_v1310(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_lte_rrc_UplinkPowerControlDedicatedSCell_v1310, UplinkPowerControlDedicatedSCell_v1310_sequence); +dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_53_sequence[] = { - { &hf_lte_rrc_pucch_ConfigDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigDedicated_r13 }, - { &hf_lte_rrc_schedulingRequestConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SchedulingRequestConfigSCell_r13 }, - { &hf_lte_rrc_tpc_PDCCH_ConfigPUCCH_SCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TPC_PDCCH_ConfigSCell_r13 }, - { &hf_lte_rrc_pusch_ConfigDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicated_r13 }, - { &hf_lte_rrc_uplinkPowerControlDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicatedSCell_v1310 }, +static const per_sequence_t PDSCH_ConfigCommon_v1310_sequence[] = { + { &hf_lte_rrc_pdsch_maxNumRepetitionCEmodeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_r13 }, + { &hf_lte_rrc_pdsch_maxNumRepetitionCEmodeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_53(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PDSCH_ConfigCommon_v1310(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_lte_rrc_T_setup_53, T_setup_53_sequence); + ett_lte_rrc_PDSCH_ConfigCommon_v1310, PDSCH_ConfigCommon_v1310_sequence); return offset; } -static const value_string lte_rrc_T_pucch_SCell_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_pusch_maxNumRepetitionCEmodeA_r13_vals[] = { + { 0, "r8" }, + { 1, "r16" }, + { 2, "r32" }, { 0, NULL } }; -static const per_choice_t T_pucch_SCell_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_62 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_53 }, - { 0, NULL, 0, NULL } + +static int +dissect_lte_rrc_T_pusch_maxNumRepetitionCEmodeA_r13(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_pusch_maxNumRepetitionCEmodeB_r13_vals[] = { + { 0, "r192" }, + { 1, "r256" }, + { 2, "r384" }, + { 3, "r512" }, + { 4, "r768" }, + { 5, "r1024" }, + { 6, "r1536" }, + { 7, "r2048" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_pucch_SCell(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_lte_rrc_T_pucch_SCell, T_pucch_SCell_choice, - NULL); +dissect_lte_rrc_T_pusch_maxNumRepetitionCEmodeB_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_own_r13_sequence[] = { - { &hf_lte_rrc_cif_Presence_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t PUSCH_ConfigCommon_v1310_sequence[] = { + { &hf_lte_rrc_pusch_maxNumRepetitionCEmodeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_maxNumRepetitionCEmodeA_r13 }, + { &hf_lte_rrc_pusch_maxNumRepetitionCEmodeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_maxNumRepetitionCEmodeB_r13 }, + { &hf_lte_rrc_pusch_HoppingOffset_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_own_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PUSCH_ConfigCommon_v1310(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_lte_rrc_T_own_r13, T_own_r13_sequence); + ett_lte_rrc_PUSCH_ConfigCommon_v1310, PUSCH_ConfigCommon_v1310_sequence); return offset; } +static const per_sequence_t RSRP_ThresholdsPrachInfoList_r13_sequence_of[1] = { + { &hf_lte_rrc_RSRP_ThresholdsPrachInfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, +}; static int -dissect_lte_rrc_INTEGER_1_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 7U, NULL, FALSE); +dissect_lte_rrc_RSRP_ThresholdsPrachInfoList_r13(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_lte_rrc_RSRP_ThresholdsPrachInfoList_r13, RSRP_ThresholdsPrachInfoList_r13_sequence_of, + 1, 3, FALSE); return offset; } -static const per_sequence_t T_other_r13_sequence[] = { - { &hf_lte_rrc_schedulingCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r13 }, - { &hf_lte_rrc_pdsch_Start_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, - { &hf_lte_rrc_cif_InSchedulingCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_7 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_fdd_r13_01_vals[] = { + { 0, "v1" }, + { 1, "v1dot5" }, + { 2, "v2" }, + { 3, "v2dot5" }, + { 4, "v4" }, + { 5, "v5" }, + { 6, "v8" }, + { 7, "v10" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_other_r13(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_lte_rrc_T_other_r13, T_other_r13_sequence); +dissect_lte_rrc_T_fdd_r13_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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_schedulingCellInfo_r13_vals[] = { - { 0, "own-r13" }, - { 1, "other-r13" }, +static const value_string lte_rrc_T_tdd_r13_01_vals[] = { + { 0, "v1" }, + { 1, "v2" }, + { 2, "v4" }, + { 3, "v5" }, + { 4, "v8" }, + { 5, "v10" }, + { 6, "v20" }, + { 7, "spare" }, { 0, NULL } }; -static const per_choice_t T_schedulingCellInfo_r13_choice[] = { - { 0, &hf_lte_rrc_own_r13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_own_r13 }, - { 1, &hf_lte_rrc_other_r13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_other_r13 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_schedulingCellInfo_r13(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_lte_rrc_T_schedulingCellInfo_r13, T_schedulingCellInfo_r13_choice, - NULL); +dissect_lte_rrc_T_tdd_r13_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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CrossCarrierSchedulingConfig_r13_sequence[] = { - { &hf_lte_rrc_schedulingCellInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_schedulingCellInfo_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mpdcch_startSF_CSS_RA_r13_vals[] = { + { 0, "fdd-r13" }, + { 1, "tdd-r13" }, + { 0, NULL } +}; + +static const per_choice_t T_mpdcch_startSF_CSS_RA_r13_choice[] = { + { 0, &hf_lte_rrc_fdd_r13_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fdd_r13_01 }, + { 1, &hf_lte_rrc_tdd_r13_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tdd_r13_01 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_CrossCarrierSchedulingConfig_r13(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_lte_rrc_CrossCarrierSchedulingConfig_r13, CrossCarrierSchedulingConfig_r13_sequence); +dissect_lte_rrc_T_mpdcch_startSF_CSS_RA_r13(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_lte_rrc_T_mpdcch_startSF_CSS_RA_r13, T_mpdcch_startSF_CSS_RA_r13_choice, + NULL); return offset; } -static const value_string lte_rrc_T_skipMonitoringDCI_format0_1A_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_prach_StartingSubframe_r13_vals[] = { + { 0, "sf2" }, + { 1, "sf4" }, + { 2, "sf8" }, + { 3, "sf16" }, + { 4, "sf32" }, + { 5, "sf64" }, + { 6, "sf128" }, + { 7, "sf256" }, { 0, NULL } }; static int -dissect_lte_rrc_T_skipMonitoringDCI_format0_1A_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_prach_StartingSubframe_r13(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PDCCH_ConfigSCell_r13_sequence[] = { - { &hf_lte_rrc_skipMonitoringDCI_format0_1A_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipMonitoringDCI_format0_1A_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_maxNumPreambleAttemptCE_r13_vals[] = { + { 0, "n3" }, + { 1, "n4" }, + { 2, "n5" }, + { 3, "n6" }, + { 4, "n7" }, + { 5, "n8" }, + { 6, "n10" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PDCCH_ConfigSCell_r13(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_lte_rrc_PDCCH_ConfigSCell_r13, PDCCH_ConfigSCell_r13_sequence); +dissect_lte_rrc_T_maxNumPreambleAttemptCE_r13(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, + 7, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_subframeStartPosition_r13_vals[] = { - { 0, "s0" }, - { 1, "s07" }, +static const value_string lte_rrc_T_numRepetitionPerPreambleAttempt_r13_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n32" }, + { 6, "n64" }, + { 7, "n128" }, { 0, NULL } }; static int -dissect_lte_rrc_T_subframeStartPosition_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_numRepetitionPerPreambleAttempt_r13(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, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t LAA_SCellConfiguration_r13_sequence[] = { - { &hf_lte_rrc_subframeStartPosition_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subframeStartPosition_r13 }, - { &hf_lte_rrc_laa_SCellSubframeConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_8 }, - { NULL, 0, 0, NULL } +static const per_sequence_t T_mpdcch_NarrowbandsToMonitor_r13_sequence_of[1] = { + { &hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, }; static int -dissect_lte_rrc_LAA_SCellConfiguration_r13(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_lte_rrc_LAA_SCellConfiguration_r13, LAA_SCellConfiguration_r13_sequence); +dissect_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r13(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_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r13, T_mpdcch_NarrowbandsToMonitor_r13_sequence_of, + 1, 2, FALSE); return offset; } -static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_4_sequence[] = { - { &hf_lte_rrc_pucch_Cell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_Cell_r13 }, - { &hf_lte_rrc_pucch_SCell , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_SCell }, - { &hf_lte_rrc_crossCarrierSchedulingConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CrossCarrierSchedulingConfig_r13 }, - { &hf_lte_rrc_pdcch_ConfigSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_ConfigSCell_r13 }, - { &hf_lte_rrc_cqi_ReportConfig_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1310 }, - { &hf_lte_rrc_pdsch_ConfigDedicated_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated_v1310 }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicated_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicated_v1310 }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedUpPTsExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedUpPTsExt_r13 }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1310 }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 }, - { &hf_lte_rrc_csi_RS_Config_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1310 }, - { &hf_lte_rrc_laa_SCellConfiguration_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LAA_SCellConfiguration_r13 }, - { &hf_lte_rrc_csi_RS_ConfigNZPToAddModListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPToAddModListExt_r13 }, - { &hf_lte_rrc_csi_RS_ConfigNZPToReleaseListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPToReleaseListExt_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mpdcch_NumRepetition_RA_r13_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "r128" }, + { 8, "r256" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_4_sequence); +dissect_lte_rrc_T_mpdcch_NumRepetition_RA_r13(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_5_sequence[] = { - { &hf_lte_rrc_cqi_ReportConfig_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1320 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_prach_HoppingConfig_r13_vals[] = { + { 0, "on" }, + { 1, "off" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_5_sequence); +dissect_lte_rrc_T_prach_HoppingConfig_r13(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t CrossCarrierSchedulingConfigLAA_UL_r14_sequence[] = { - { &hf_lte_rrc_schedulingCellId_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r13 }, - { &hf_lte_rrc_cif_InSchedulingCell_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_7 }, +static const per_sequence_t PRACH_ParametersCE_r13_sequence[] = { + { &hf_lte_rrc_prach_ConfigIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, + { &hf_lte_rrc_prach_FreqOffset_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_94 }, + { &hf_lte_rrc_prach_StartingSubframe_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_prach_StartingSubframe_r13 }, + { &hf_lte_rrc_maxNumPreambleAttemptCE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumPreambleAttemptCE_r13 }, + { &hf_lte_rrc_numRepetitionPerPreambleAttempt_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numRepetitionPerPreambleAttempt_r13 }, + { &hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r13 }, + { &hf_lte_rrc_mpdcch_NumRepetition_RA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NumRepetition_RA_r13 }, + { &hf_lte_rrc_prach_HoppingConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_prach_HoppingConfig_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CrossCarrierSchedulingConfigLAA_UL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PRACH_ParametersCE_r13(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_lte_rrc_CrossCarrierSchedulingConfigLAA_UL_r14, CrossCarrierSchedulingConfigLAA_UL_r14_sequence); + ett_lte_rrc_PRACH_ParametersCE_r13, PRACH_ParametersCE_r13_sequence); return offset; } -static const per_sequence_t T_setup_56_sequence[] = { - { &hf_lte_rrc_crossCarrierSchedulingConfigLAA_UL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CrossCarrierSchedulingConfigLAA_UL_r14 }, - { NULL, 0, 0, NULL } +static const per_sequence_t PRACH_ParametersListCE_r13_sequence_of[1] = { + { &hf_lte_rrc_PRACH_ParametersListCE_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PRACH_ParametersCE_r13 }, }; static int -dissect_lte_rrc_T_setup_56(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_lte_rrc_T_setup_56, T_setup_56_sequence); +dissect_lte_rrc_PRACH_ParametersListCE_r13(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_lte_rrc_PRACH_ParametersListCE_r13, PRACH_ParametersListCE_r13_sequence_of, + 1, maxCE_Level_r13, FALSE); return offset; } -static const value_string lte_rrc_T_crossCarrierSchedulingConfig_UL_r14_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t T_crossCarrierSchedulingConfig_UL_r14_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_65 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_56 }, - { 0, NULL, 0, NULL } +static const per_sequence_t PRACH_ConfigSIB_v1310_sequence[] = { + { &hf_lte_rrc_rsrp_ThresholdsPrachInfoList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_ThresholdsPrachInfoList_r13 }, + { &hf_lte_rrc_mpdcch_startSF_CSS_RA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mpdcch_startSF_CSS_RA_r13 }, + { &hf_lte_rrc_prach_HoppingOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_94 }, + { &hf_lte_rrc_prach_ParametersListCE_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PRACH_ParametersListCE_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_crossCarrierSchedulingConfig_UL_r14(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_lte_rrc_T_crossCarrierSchedulingConfig_UL_r14, T_crossCarrierSchedulingConfig_UL_r14_choice, - NULL); +dissect_lte_rrc_PRACH_ConfigSIB_v1310(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_lte_rrc_PRACH_ConfigSIB_v1310, PRACH_ConfigSIB_v1310_sequence); return offset; } +static const per_sequence_t N1PUCCH_AN_InfoList_r13_sequence_of[1] = { + { &hf_lte_rrc_N1PUCCH_AN_InfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, +}; static int -dissect_lte_rrc_INTEGER_M85_M52(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -85, -52, NULL, FALSE); +dissect_lte_rrc_N1PUCCH_AN_InfoList_r13(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_lte_rrc_N1PUCCH_AN_InfoList_r13, N1PUCCH_AN_InfoList_r13_sequence_of, + 1, maxCE_Level_r13, FALSE); return offset; } +static const value_string lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level0_r13_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_M13_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -13, 20U, NULL, FALSE); +dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level0_r13(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 lte_rrc_LBT_Config_r14_vals[] = { - { 0, "maxEnergyDetectionThreshold-r14" }, - { 1, "energyDetectionThresholdOffset-r14" }, +static const value_string lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level1_r13_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, { 0, NULL } }; -static const per_choice_t LBT_Config_r14_choice[] = { - { 0, &hf_lte_rrc_maxEnergyDetectionThreshold_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_M85_M52 }, - { 1, &hf_lte_rrc_energyDetectionThresholdOffset_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_M13_20 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_LBT_Config_r14(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_lte_rrc_LBT_Config_r14, LBT_Config_r14_choice, - NULL); +dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level1_r13(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 lte_rrc_T_maxNumberOfSchedSubframes_Format0B_r14_vals[] = { - { 0, "sf2" }, - { 1, "sf3" }, - { 2, "sf4" }, +static const value_string lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level2_r13_vals[] = { + { 0, "n4" }, + { 1, "n8" }, + { 2, "n16" }, + { 3, "n32" }, { 0, NULL } }; static int -dissect_lte_rrc_T_maxNumberOfSchedSubframes_Format0B_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level2_r13(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, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_maxNumberOfSchedSubframes_Format4B_r14_vals[] = { - { 0, "sf2" }, - { 1, "sf3" }, - { 2, "sf4" }, +static const value_string lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r13_vals[] = { + { 0, "n4" }, + { 1, "n8" }, + { 2, "n16" }, + { 3, "n32" }, { 0, NULL } }; static int -dissect_lte_rrc_T_maxNumberOfSchedSubframes_Format4B_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r13(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, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_skipMonitoringDCI_Format0A_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t PUCCH_ConfigCommon_v1310_sequence[] = { + { &hf_lte_rrc_n1PUCCH_AN_InfoList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_N1PUCCH_AN_InfoList_r13 }, + { &hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level0_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level0_r13 }, + { &hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level1_r13 }, + { &hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level2_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level2_r13 }, + { &hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level3_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r13 }, + { NULL, 0, 0, NULL } }; +static int +dissect_lte_rrc_PUCCH_ConfigCommon_v1310(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_lte_rrc_PUCCH_ConfigCommon_v1310, PUCCH_ConfigCommon_v1310_sequence); + + return offset; +} + + +static const per_sequence_t RadioResourceConfigCommonSIB_eag_4_sequence[] = { + { &hf_lte_rrc_bcch_Config_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BCCH_Config_v1310 }, + { &hf_lte_rrc_pcch_Config_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PCCH_Config_v1310 }, + { &hf_lte_rrc_freqHoppingParameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqHoppingParameters_r13 }, + { &hf_lte_rrc_pdsch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigCommon_v1310 }, + { &hf_lte_rrc_pusch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigCommon_v1310 }, + { &hf_lte_rrc_prach_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ConfigSIB_v1310 }, + { &hf_lte_rrc_pucch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon_v1310 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_skipMonitoringDCI_Format0A_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_4_sequence); return offset; } -static const value_string lte_rrc_T_skipMonitoringDCI_Format4A_r14_vals[] = { +static const value_string lte_rrc_T_highSpeedEnhancedMeasFlag_r14_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_skipMonitoringDCI_Format4A_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_highSpeedEnhancedMeasFlag_r14(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, 1, NULL, FALSE, 0, NULL); @@ -37476,712 +41167,779 @@ dissect_lte_rrc_T_skipMonitoringDCI_Format4A_r14(tvbuff_t *tvb _U_, int offset _ } -static const value_string lte_rrc_PDCCH_CandidateReductionValue_r14_vals[] = { - { 0, "n0" }, - { 1, "n50" }, - { 2, "n100" }, - { 3, "n150" }, +static const value_string lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_PDCCH_CandidateReductionValue_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14(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); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_44_sequence[] = { - { &hf_lte_rrc_pdcch_candidateReductionAL1_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r13 }, - { &hf_lte_rrc_pdcch_candidateReductionAL2_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r13 }, - { &hf_lte_rrc_pdcch_candidateReductionAL3_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r14 }, - { &hf_lte_rrc_pdcch_candidateReductionAL4_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r14 }, - { &hf_lte_rrc_pdcch_candidateReductionAL5_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r14 }, +static const per_sequence_t HighSpeedConfig_r14_sequence[] = { + { &hf_lte_rrc_highSpeedEnhancedMeasFlag_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_highSpeedEnhancedMeasFlag_r14 }, + { &hf_lte_rrc_highSpeedEnhancedDemodulationFlag_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_44(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HighSpeedConfig_r14(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_lte_rrc_T_setup_44, T_setup_44_sequence); + ett_lte_rrc_HighSpeedConfig_r14, HighSpeedConfig_r14_sequence); return offset; } -static const value_string lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t PDCCH_CandidateReductionsLAA_UL_r14_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_52 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_44 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14(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_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14, PDCCH_CandidateReductionsLAA_UL_r14_choice, - NULL); +dissect_lte_rrc_INTEGER_0_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 12U, NULL, FALSE); return offset; } -static const per_sequence_t PDCCH_ConfigLAA_r14_sequence[] = { - { &hf_lte_rrc_maxNumberOfSchedSubframes_Format0B_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumberOfSchedSubframes_Format0B_r14 }, - { &hf_lte_rrc_maxNumberOfSchedSubframes_Format4B_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumberOfSchedSubframes_Format4B_r14 }, - { &hf_lte_rrc_skipMonitoringDCI_Format0A_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipMonitoringDCI_Format0A_r14 }, - { &hf_lte_rrc_skipMonitoringDCI_Format4A_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipMonitoringDCI_Format4A_r14 }, - { &hf_lte_rrc_pdcch_CandidateReductions_Format0A_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_CandidateReductions_r13 }, - { &hf_lte_rrc_pdcch_CandidateReductions_Format4A_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14 }, - { &hf_lte_rrc_pdcch_CandidateReductions_Format0B_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14 }, - { &hf_lte_rrc_pdcch_CandidateReductions_Format4B_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14 }, +static const per_sequence_t PRACH_Config_v1430_sequence[] = { + { &hf_lte_rrc_rootSequenceIndexHighSpeed_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_837 }, + { &hf_lte_rrc_zeroCorrelationZoneConfigHighSpeed_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_12 }, + { &hf_lte_rrc_prach_ConfigIndexHighSpeed_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, + { &hf_lte_rrc_prach_FreqOffsetHighSpeed_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_94 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PDCCH_ConfigLAA_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PRACH_Config_v1430(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_lte_rrc_PDCCH_ConfigLAA_r14, PDCCH_ConfigLAA_r14_sequence); + ett_lte_rrc_PRACH_Config_v1430, PRACH_Config_v1430_sequence); return offset; } -static const value_string lte_rrc_T_absenceOfAnyOtherTechnology_r14_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r14_vals[] = { + { 0, "n64" }, + { 1, "n128" }, { 0, NULL } }; static int -dissect_lte_rrc_T_absenceOfAnyOtherTechnology_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r14(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_94_sequence[] = { - { &hf_lte_rrc_srs_SubframeIndication_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_4 }, +static const per_sequence_t PUCCH_ConfigCommon_v1430_sequence[] = { + { &hf_lte_rrc_pucch_NumRepetitionCE_Msg4_Level3_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_NumRepetitionCE_Msg4_Level3_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_94(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PUCCH_ConfigCommon_v1430(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_lte_rrc_T_setup_94, T_setup_94_sequence); + ett_lte_rrc_PUCCH_ConfigCommon_v1430, PUCCH_ConfigCommon_v1430_sequence); return offset; } -static const value_string lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } +static const per_sequence_t RadioResourceConfigCommonSIB_eag_5_sequence[] = { + { &hf_lte_rrc_highSpeedConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HighSpeedConfig_r14 }, + { &hf_lte_rrc_prach_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_Config_v1430 }, + { &hf_lte_rrc_pucch_ConfigCommon_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon_v1430 }, + { NULL, 0, 0, NULL } }; -static const per_choice_t SoundingRS_UL_ConfigDedicatedAperiodic_v1430_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_107 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_94 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_5_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_prach_StartingSubframe_r15_vals[] = { + { 0, "sf2" }, + { 1, "sf4" }, + { 2, "sf8" }, + { 3, "sf16" }, + { 4, "sf32" }, + { 5, "sf64" }, + { 6, "sf128" }, + { 7, "sf256" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430(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_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430, SoundingRS_UL_ConfigDedicatedAperiodic_v1430_choice, - NULL); +dissect_lte_rrc_T_prach_StartingSubframe_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t LAA_SCellConfiguration_v1430_sequence[] = { - { &hf_lte_rrc_crossCarrierSchedulingConfig_UL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crossCarrierSchedulingConfig_UL_r14 }, - { &hf_lte_rrc_lbt_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LBT_Config_r14 }, - { &hf_lte_rrc_pdcch_ConfigLAA_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_ConfigLAA_r14 }, - { &hf_lte_rrc_absenceOfAnyOtherTechnology_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_absenceOfAnyOtherTechnology_r14 }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430 }, - { NULL, 0, 0, NULL } +static const per_sequence_t T_mpdcch_NarrowbandsToMonitor_r15_sequence_of[1] = { + { &hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, }; static int -dissect_lte_rrc_LAA_SCellConfiguration_v1430(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_lte_rrc_LAA_SCellConfiguration_v1430, LAA_SCellConfiguration_v1430_sequence); +dissect_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r15(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_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r15, T_mpdcch_NarrowbandsToMonitor_r15_sequence_of, + 1, 2, FALSE); return offset; } -static const per_sequence_t UplinkPUSCH_LessPowerControlDedicated_v1430_sequence[] = { - { &hf_lte_rrc_p0_UE_PeriodicSRS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M8_7 }, - { &hf_lte_rrc_p0_UE_AperiodicSRS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M8_7 }, - { &hf_lte_rrc_accumulationEnabled_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t T_edt_PRACH_ParametersCE_r15_sequence[] = { + { &hf_lte_rrc_prach_ConfigIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, + { &hf_lte_rrc_prach_FreqOffset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_94 }, + { &hf_lte_rrc_prach_StartingSubframe_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_prach_StartingSubframe_r15 }, + { &hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UplinkPUSCH_LessPowerControlDedicated_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_edt_PRACH_ParametersCE_r15(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_lte_rrc_UplinkPUSCH_LessPowerControlDedicated_v1430, UplinkPUSCH_LessPowerControlDedicated_v1430_sequence); + ett_lte_rrc_T_edt_PRACH_ParametersCE_r15, T_edt_PRACH_ParametersCE_r15_sequence); return offset; } -static const per_sequence_t SoundingRS_AperiodicSet_r14_sequence[] = { - { &hf_lte_rrc_srs_CC_SetIndexList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex_r14 }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_r10 }, +static const per_sequence_t EDT_PRACH_ParametersCE_r15_sequence[] = { + { &hf_lte_rrc_edt_PRACH_ParametersCE_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_edt_PRACH_ParametersCE_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SoundingRS_AperiodicSet_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_EDT_PRACH_ParametersCE_r15(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_lte_rrc_SoundingRS_AperiodicSet_r14, SoundingRS_AperiodicSet_r14_sequence); + ett_lte_rrc_EDT_PRACH_ParametersCE_r15, EDT_PRACH_ParametersCE_r15_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14_sequence_of[1] = { - { &hf_lte_rrc_soundingRS_UL_AperiodicConfigDedicatedList_r14_item_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_AperiodicSet_r14 }, +static const per_sequence_t SEQUENCE_SIZE_1_maxCE_Level_r13_OF_EDT_PRACH_ParametersCE_r15_sequence_of[1] = { + { &hf_lte_rrc_edt_PRACH_ParametersListCE_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_EDT_PRACH_ParametersCE_r15 }, }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_maxCE_Level_r13_OF_EDT_PRACH_ParametersCE_r15(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_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14, SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14_sequence_of, - 1, 2, FALSE); + ett_lte_rrc_SEQUENCE_SIZE_1_maxCE_Level_r13_OF_EDT_PRACH_ParametersCE_r15, SEQUENCE_SIZE_1_maxCE_Level_r13_OF_EDT_PRACH_ParametersCE_r15_sequence_of, + 1, maxCE_Level_r13, FALSE); return offset; } -static const per_sequence_t SoundingRS_AperiodicSetUpPTsExt_r14_sequence[] = { - { &hf_lte_rrc_srs_CC_SetIndexList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex_r14 }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 }, +static const per_sequence_t PRACH_ConfigSIB_v1530_sequence[] = { + { &hf_lte_rrc_edt_PRACH_ParametersListCE_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxCE_Level_r13_OF_EDT_PRACH_ParametersCE_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SoundingRS_AperiodicSetUpPTsExt_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PRACH_ConfigSIB_v1530(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_lte_rrc_SoundingRS_AperiodicSetUpPTsExt_r14, SoundingRS_AperiodicSetUpPTsExt_r14_sequence); + ett_lte_rrc_PRACH_ConfigSIB_v1530, PRACH_ConfigSIB_v1530_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14_sequence_of[1] = { - { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedApUpPTsExtList_r14_item_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_AperiodicSetUpPTsExt_r14 }, +static const value_string lte_rrc_T_duration_r15_vals[] = { + { 0, "sf8" }, + { 1, "sf16" }, + { 2, "sf32" }, + { 3, "sf40" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14(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_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14, SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14_sequence_of, - 1, 4, FALSE); +dissect_lte_rrc_T_duration_r15(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 lte_rrc_T_k_max_r14_01_vals[] = { - { 0, "l1" }, - { 1, "l3" }, +static const value_string lte_rrc_T_periodicity_r15_vals[] = { + { 0, "ms160" }, + { 1, "ms320" }, + { 2, "ms640" }, + { 3, "ms1280" }, { 0, NULL } }; static int -dissect_lte_rrc_T_k_max_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_periodicity_r15(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, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_p_a_must_r14_01_vals[] = { - { 0, "dB-6" }, - { 1, "dB-4dot77" }, - { 2, "dB-3" }, - { 3, "dB-1dot77" }, - { 4, "dB0" }, - { 5, "dB1" }, - { 6, "dB2" }, - { 7, "dB3" }, +static const value_string lte_rrc_T_powerBoost_r15_vals[] = { + { 0, "dB0" }, + { 1, "dB3" }, + { 2, "dB4dot8" }, + { 3, "dB6" }, { 0, NULL } }; static int -dissect_lte_rrc_T_p_a_must_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_powerBoost_r15(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, - 8, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_54_sequence[] = { - { &hf_lte_rrc_k_max_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_k_max_r14_01 }, - { &hf_lte_rrc_p_a_must_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_p_a_must_r14_01 }, +static const per_sequence_t RSS_Config_r15_sequence[] = { + { &hf_lte_rrc_duration_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_duration_r15 }, + { &hf_lte_rrc_freqLocation_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_98 }, + { &hf_lte_rrc_periodicity_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_periodicity_r15 }, + { &hf_lte_rrc_powerBoost_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_powerBoost_r15 }, + { &hf_lte_rrc_timeOffset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_54(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RSS_Config_r15(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_lte_rrc_T_setup_54, T_setup_54_sequence); + ett_lte_rrc_RSS_Config_r15, RSS_Config_r15_sequence); return offset; } -static const value_string lte_rrc_T_must_Config_r14_01_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_maxDurationFactor_r15_vals[] = { + { 0, "one32th" }, + { 1, "one16th" }, + { 2, "one8th" }, + { 3, "one4th" }, { 0, NULL } }; -static const per_choice_t T_must_Config_r14_01_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_63 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_54 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_must_Config_r14_01(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_lte_rrc_T_must_Config_r14_01, T_must_Config_r14_01_choice, - NULL); +dissect_lte_rrc_T_maxDurationFactor_r15(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 per_sequence_t PUSCH_ConfigDedicatedSCell_v1430_sequence[] = { - { &hf_lte_rrc_enable256QAM_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Enable256QAM_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_numPOs_r15_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PUSCH_ConfigDedicatedSCell_v1430(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_lte_rrc_PUSCH_ConfigDedicatedSCell_v1430, PUSCH_ConfigDedicatedSCell_v1430_sequence); +dissect_lte_rrc_T_numPOs_r15(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 lte_rrc_T_tbsIndexAlt2_r14_01_vals[] = { - { 0, "b33" }, +static const value_string lte_rrc_T_freqLocation_r15_vals[] = { + { 0, "n0" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_tbsIndexAlt2_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_freqLocation_r15(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, - 1, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PDSCH_ConfigDedicatedSCell_v1430_sequence[] = { - { &hf_lte_rrc_tbsIndexAlt2_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tbsIndexAlt2_r14_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_timeOffsetDRX_r15_vals[] = { + { 0, "ms40" }, + { 1, "ms80" }, + { 2, "ms160" }, + { 3, "ms240" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PDSCH_ConfigDedicatedSCell_v1430(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_lte_rrc_PDSCH_ConfigDedicatedSCell_v1430, PDSCH_ConfigDedicatedSCell_v1430_sequence); +dissect_lte_rrc_T_timeOffsetDRX_r15(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 per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_6_sequence[] = { - { &hf_lte_rrc_laa_SCellConfiguration_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LAA_SCellConfiguration_v1430 }, - { &hf_lte_rrc_typeB_SRS_TPC_PDCCH_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SRS_TPC_PDCCH_Config_r14 }, - { &hf_lte_rrc_uplinkPUSCH_LessPowerControlDedicated_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPUSCH_LessPowerControlDedicated_v1430 }, - { &hf_lte_rrc_soundingRS_UL_PeriodicConfigDedicatedList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_UL_ConfigDedicated }, - { &hf_lte_rrc_soundingRS_UL_PeriodicConfigDedicatedUpPTsExtList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_UL_ConfigDedicatedUpPTsExt_r13 }, - { &hf_lte_rrc_soundingRS_UL_AperiodicConfigDedicatedList_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14 }, - { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedApUpPTsExtList_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14 }, - { &hf_lte_rrc_must_Config_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_Config_r14_01 }, - { &hf_lte_rrc_pusch_ConfigDedicated_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicatedSCell_v1430 }, - { &hf_lte_rrc_csi_RS_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1430 }, - { &hf_lte_rrc_csi_RS_ConfigZP_ApList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigZP_ApList_r14 }, - { &hf_lte_rrc_cqi_ReportConfig_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1430 }, - { &hf_lte_rrc_semiOpenLoop_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_pdsch_ConfigDedicatedSCell_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicatedSCell_v1430 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_timeOffset_eDRX_Short_r15_vals[] = { + { 0, "ms40" }, + { 1, "ms80" }, + { 2, "ms160" }, + { 3, "ms240" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_6_sequence); +dissect_lte_rrc_T_timeOffset_eDRX_Short_r15(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 per_sequence_t PhysicalConfigDedicatedSCell_r10_sequence[] = { - { &hf_lte_rrc_nonUL_Configuration_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nonUL_Configuration_r10 }, - { &hf_lte_rrc_ul_Configuration_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Configuration_r10 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_5 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_6 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_timeOffset_eDRX_Long_r15_vals[] = { + { 0, "ms1000" }, + { 1, "ms2000" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10(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_lte_rrc_PhysicalConfigDedicatedSCell_r10, PhysicalConfigDedicatedSCell_r10_sequence); +dissect_lte_rrc_T_timeOffset_eDRX_Long_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t MAC_MainConfigSCell_r11_sequence[] = { - { &hf_lte_rrc_stag_Id_r11 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_STAG_Id_r11 }, +static const per_sequence_t WUS_Config_r15_sequence[] = { + { &hf_lte_rrc_maxDurationFactor_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_maxDurationFactor_r15 }, + { &hf_lte_rrc_numPOs_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_numPOs_r15 }, + { &hf_lte_rrc_freqLocation_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_freqLocation_r15 }, + { &hf_lte_rrc_timeOffsetDRX_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_timeOffsetDRX_r15 }, + { &hf_lte_rrc_timeOffset_eDRX_Short_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_timeOffset_eDRX_Short_r15 }, + { &hf_lte_rrc_timeOffset_eDRX_Long_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_timeOffset_eDRX_Long_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MAC_MainConfigSCell_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_WUS_Config_r15(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_lte_rrc_MAC_MainConfigSCell_r11, MAC_MainConfigSCell_r11_sequence); + ett_lte_rrc_WUS_Config_r15, WUS_Config_r15_sequence); return offset; } -static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_eag_1_sequence[] = { - { &hf_lte_rrc_mac_MainConfigSCell_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MAC_MainConfigSCell_r11 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_highSpeedMeasGapCE_ModeA_r15_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedSCell_r10_eag_1_sequence); +dissect_lte_rrc_T_highSpeedMeasGapCE_ModeA_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_eag_2_sequence[] = { - { &hf_lte_rrc_naics_Info_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NAICS_AssistanceInfo_r12 }, +static const per_sequence_t HighSpeedConfig_v1530_sequence[] = { + { &hf_lte_rrc_highSpeedMeasGapCE_ModeA_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_highSpeedMeasGapCE_ModeA_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedSCell_r10_eag_2_sequence); +dissect_lte_rrc_HighSpeedConfig_v1530(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_lte_rrc_HighSpeedConfig_v1530, HighSpeedConfig_v1530_sequence); return offset; } -static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_eag_3_sequence[] = { - { &hf_lte_rrc_neighCellsCRS_InfoSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r13 }, +static const per_sequence_t RadioResourceConfigCommonSIB_eag_6_sequence[] = { + { &hf_lte_rrc_prach_Config_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ConfigSIB_v1530 }, + { &hf_lte_rrc_ce_RSS_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSS_Config_r15 }, + { &hf_lte_rrc_wus_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WUS_Config_r15 }, + { &hf_lte_rrc_highSpeedConfig_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HighSpeedConfig_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedSCell_r10_eag_3_sequence); +dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_eag_6_sequence); return offset; } -static const value_string lte_rrc_T_pucch_Format_v1370_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t T_pucch_Format_v1370_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_77 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PUCCH_Format3_Conf_r13 }, - { 0, NULL, 0, NULL } +static const per_sequence_t RadioResourceConfigCommonSIB_sequence[] = { + { &hf_lte_rrc_rach_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_ConfigCommon }, + { &hf_lte_rrc_bcch_Config , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_Config }, + { &hf_lte_rrc_pcch_Config , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PCCH_Config }, + { &hf_lte_rrc_prach_Config, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PRACH_ConfigSIB }, + { &hf_lte_rrc_pdsch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDSCH_ConfigCommon }, + { &hf_lte_rrc_pusch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PUSCH_ConfigCommon }, + { &hf_lte_rrc_pucch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PUCCH_ConfigCommon }, + { &hf_lte_rrc_soundingRS_UL_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_UL_ConfigCommon }, + { &hf_lte_rrc_uplinkPowerControlCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UplinkPowerControlCommon }, + { &hf_lte_rrc_ul_CyclicPrefixLength, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CyclicPrefixLength }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_eag_6 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_pucch_Format_v1370(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_lte_rrc_T_pucch_Format_v1370, T_pucch_Format_v1370_choice, - NULL); +dissect_lte_rrc_RadioResourceConfigCommonSIB(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_lte_rrc_RadioResourceConfigCommonSIB, RadioResourceConfigCommonSIB_sequence); return offset; } -static const per_sequence_t PUCCH_ConfigDedicated_v1370_sequence[] = { - { &hf_lte_rrc_pucch_Format_v1370, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pucch_Format_v1370 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_t300_vals[] = { + { 0, "ms100" }, + { 1, "ms200" }, + { 2, "ms300" }, + { 3, "ms400" }, + { 4, "ms600" }, + { 5, "ms1000" }, + { 6, "ms1500" }, + { 7, "ms2000" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PUCCH_ConfigDedicated_v1370(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_lte_rrc_PUCCH_ConfigDedicated_v1370, PUCCH_ConfigDedicated_v1370_sequence); +dissect_lte_rrc_T_t300(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_55_sequence[] = { - { &hf_lte_rrc_pucch_ConfigDedicated_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigDedicated_v1370 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_t301_vals[] = { + { 0, "ms100" }, + { 1, "ms200" }, + { 2, "ms300" }, + { 3, "ms400" }, + { 4, "ms600" }, + { 5, "ms1000" }, + { 6, "ms1500" }, + { 7, "ms2000" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_setup_55(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_lte_rrc_T_setup_55, T_setup_55_sequence); +dissect_lte_rrc_T_t301(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_pucch_SCell_v1370_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_t310_vals[] = { + { 0, "ms0" }, + { 1, "ms50" }, + { 2, "ms100" }, + { 3, "ms200" }, + { 4, "ms500" }, + { 5, "ms1000" }, + { 6, "ms2000" }, { 0, NULL } }; -static const per_choice_t T_pucch_SCell_v1370_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_64 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_55 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_pucch_SCell_v1370(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_lte_rrc_T_pucch_SCell_v1370, T_pucch_SCell_v1370_choice, - NULL); +dissect_lte_rrc_T_t310(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, + 7, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PhysicalConfigDedicatedSCell_v1370_sequence[] = { - { &hf_lte_rrc_pucch_SCell_v1370, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pucch_SCell_v1370 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_n310_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n6" }, + { 5, "n8" }, + { 6, "n10" }, + { 7, "n20" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhysicalConfigDedicatedSCell_v1370(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_lte_rrc_PhysicalConfigDedicatedSCell_v1370, PhysicalConfigDedicatedSCell_v1370_sequence); +dissect_lte_rrc_T_n310(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_eag_4_sequence[] = { - { &hf_lte_rrc_physicalConfigDedicatedSCell_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicatedSCell_v1370 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_t311_vals[] = { + { 0, "ms1000" }, + { 1, "ms3000" }, + { 2, "ms5000" }, + { 3, "ms10000" }, + { 4, "ms15000" }, + { 5, "ms20000" }, + { 6, "ms30000" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedSCell_r10_eag_4_sequence); +dissect_lte_rrc_T_t311(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, + 7, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_sequence[] = { - { &hf_lte_rrc_physicalConfigDedicatedSCell_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_4 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_n311_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n8" }, + { 7, "n10" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10(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_lte_rrc_RadioResourceConfigDedicatedSCell_r10, RadioResourceConfigDedicatedSCell_r10_sequence); +dissect_lte_rrc_T_n311(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCellToAddMod_r10_eag_1_sequence[] = { - { &hf_lte_rrc_dl_CarrierFreq_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_t300_v1310_vals[] = { + { 0, "ms2500" }, + { 1, "ms3000" }, + { 2, "ms3500" }, + { 3, "ms4000" }, + { 4, "ms5000" }, + { 5, "ms6000" }, + { 6, "ms8000" }, + { 7, "ms10000" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCellToAddMod_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCellToAddMod_r10_eag_1_sequence); +dissect_lte_rrc_T_t300_v1310(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_maxLayersMIMO_r10_vals[] = { - { 0, "twoLayers" }, - { 1, "fourLayers" }, - { 2, "eightLayers" }, +static const value_string lte_rrc_T_t301_v1310_01_vals[] = { + { 0, "ms2500" }, + { 1, "ms3000" }, + { 2, "ms3500" }, + { 3, "ms4000" }, + { 4, "ms5000" }, + { 5, "ms6000" }, + { 6, "ms8000" }, + { 7, "ms10000" }, { 0, NULL } }; static int -dissect_lte_rrc_T_maxLayersMIMO_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t301_v1310_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, - 3, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t AntennaInfoDedicated_v10i0_sequence[] = { - { &hf_lte_rrc_maxLayersMIMO_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxLayersMIMO_r10 }, +static const per_sequence_t UE_TimersAndConstants_eag_1_sequence[] = { + { &hf_lte_rrc_t300_v1310 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t300_v1310 }, + { &hf_lte_rrc_t301_v1310_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t301_v1310_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AntennaInfoDedicated_v10i0(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_lte_rrc_AntennaInfoDedicated_v10i0, AntennaInfoDedicated_v10i0_sequence); +dissect_lte_rrc_UE_TimersAndConstants_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_TimersAndConstants_eag_1_sequence); return offset; } -static const per_sequence_t SCellToAddMod_r10_eag_2_sequence[] = { - { &hf_lte_rrc_antennaInfoDedicatedSCell_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_t310_v1330_01_vals[] = { + { 0, "ms4000" }, + { 1, "ms6000" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCellToAddMod_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCellToAddMod_r10_eag_2_sequence); +dissect_lte_rrc_T_t310_v1330_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, + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCellToAddMod_r10_eag_3_sequence[] = { - { &hf_lte_rrc_srs_SwitchFromServCellIndex_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, +static const per_sequence_t UE_TimersAndConstants_eag_2_sequence[] = { + { &hf_lte_rrc_t310_v1330_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t310_v1330_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCellToAddMod_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCellToAddMod_r10_eag_3_sequence); +dissect_lte_rrc_UE_TimersAndConstants_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_TimersAndConstants_eag_2_sequence); return offset; } -static const per_sequence_t SCellToAddMod_r10_sequence[] = { - { &hf_lte_rrc_sCellIndex_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r10 }, - { &hf_lte_rrc_cellIdentification_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_cellIdentification_r10 }, - { &hf_lte_rrc_radioResourceConfigCommonSCell_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonSCell_r10 }, - { &hf_lte_rrc_radioResourceConfigDedicatedSCell_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_r10_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_r10_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_r10_eag_3 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_t300_r15_vals[] = { + { 0, "ms4000" }, + { 1, "ms6000" }, + { 2, "ms8000" }, + { 3, "ms10000" }, + { 4, "ms15000" }, + { 5, "ms25000" }, + { 6, "ms40000" }, + { 7, "ms60000" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCellToAddMod_r10(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_lte_rrc_SCellToAddMod_r10, SCellToAddMod_r10_sequence); +dissect_lte_rrc_T_t300_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCellToAddModList_r10_sequence_of[1] = { - { &hf_lte_rrc_SCellToAddModList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_r10 }, +static const per_sequence_t UE_TimersAndConstants_eag_3_sequence[] = { + { &hf_lte_rrc_t300_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t300_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCellToAddModList_r10(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_lte_rrc_SCellToAddModList_r10, SCellToAddModList_r10_sequence_of, - 1, maxSCell_r10, FALSE); +dissect_lte_rrc_UE_TimersAndConstants_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_TimersAndConstants_eag_3_sequence); return offset; } -static const per_sequence_t AS_Config_eag_2_sequence[] = { - { &hf_lte_rrc_sourceSCellConfigList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_r10 }, +static const per_sequence_t UE_TimersAndConstants_sequence[] = { + { &hf_lte_rrc_t300 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t300 }, + { &hf_lte_rrc_t301 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t301 }, + { &hf_lte_rrc_t310 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t310 }, + { &hf_lte_rrc_n310 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n310 }, + { &hf_lte_rrc_t311 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t311 }, + { &hf_lte_rrc_n311 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n311 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_TimersAndConstants_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_TimersAndConstants_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_TimersAndConstants_eag_3 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Config_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Config_eag_2_sequence); +dissect_lte_rrc_UE_TimersAndConstants(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_lte_rrc_UE_TimersAndConstants, UE_TimersAndConstants_sequence); return offset; } -static const per_sequence_t T_scg_r12_sequence[] = { - { &hf_lte_rrc_eps_BearerIdentity_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, - { &hf_lte_rrc_pdcp_Config_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_Config }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ul_Bandwidth_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_scg_r12(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_lte_rrc_T_scg_r12, T_scg_r12_sequence); +dissect_lte_rrc_T_ul_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, + 6, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_drb_Type_r12_01_vals[] = { - { 0, "split-r12" }, - { 1, "scg-r12" }, - { 0, NULL } -}; - -static const per_choice_t T_drb_Type_r12_01_choice[] = { - { 0, &hf_lte_rrc_split_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_scg_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scg_r12 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_freqInfo_sequence[] = { + { &hf_lte_rrc_ul_CarrierFreq, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &hf_lte_rrc_ul_Bandwidth, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth }, + { &hf_lte_rrc_additionalSpectrumEmission, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_drb_Type_r12_01(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_lte_rrc_T_drb_Type_r12_01, T_drb_Type_r12_01_choice, - NULL); +dissect_lte_rrc_T_freqInfo(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_lte_rrc_T_freqInfo, T_freqInfo_sequence); return offset; } @@ -38189,303 +41947,281 @@ dissect_lte_rrc_T_drb_Type_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int -dissect_lte_rrc_INTEGER_3_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 3U, 10U, NULL, FALSE); +dissect_lte_rrc_T_lateNonCriticalExtension_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType2_v8h0_IEs_PDU); return offset; } -static const per_sequence_t DRB_ToAddModSCG_r12_eag_1_sequence[] = { - { &hf_lte_rrc_rlc_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_v1430 }, +static const per_sequence_t SystemInformationBlockType2_eag_1_sequence[] = { + { &hf_lte_rrc_ssac_BarringForMMTEL_Voice_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, + { &hf_lte_rrc_ssac_BarringForMMTEL_Video_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DRB_ToAddModSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DRB_ToAddModSCG_r12_eag_1_sequence); +dissect_lte_rrc_SystemInformationBlockType2_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_1_sequence); return offset; } -static const per_sequence_t DRB_ToAddModSCG_r12_sequence[] = { - { &hf_lte_rrc_drb_Identity_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, - { &hf_lte_rrc_drb_Type_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_Type_r12_01 }, - { &hf_lte_rrc_rlc_ConfigSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config }, - { &hf_lte_rrc_rlc_Config_v1250, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_v1250 }, - { &hf_lte_rrc_logicalChannelIdentitySCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_3_10 }, - { &hf_lte_rrc_logicalChannelConfigSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_LogicalChannelConfig }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddModSCG_r12_eag_1 }, +static const per_sequence_t SystemInformationBlockType2_eag_2_sequence[] = { + { &hf_lte_rrc_ac_BarringForCSFB_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DRB_ToAddModSCG_r12(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_lte_rrc_DRB_ToAddModSCG_r12, DRB_ToAddModSCG_r12_sequence); +dissect_lte_rrc_SystemInformationBlockType2_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_2_sequence); return offset; } -static const per_sequence_t DRB_ToAddModListSCG_r12_sequence_of[1] = { - { &hf_lte_rrc_DRB_ToAddModListSCG_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddModSCG_r12 }, +static const value_string lte_rrc_T_ac_BarringSkipForMMTELVoice_r12_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_DRB_ToAddModListSCG_r12(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_lte_rrc_DRB_ToAddModListSCG_r12, DRB_ToAddModListSCG_r12_sequence_of, - 1, maxDRB, FALSE); +dissect_lte_rrc_T_ac_BarringSkipForMMTELVoice_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_t313_r12_vals[] = { - { 0, "ms0" }, - { 1, "ms50" }, - { 2, "ms100" }, - { 3, "ms200" }, - { 4, "ms500" }, - { 5, "ms1000" }, - { 6, "ms2000" }, +static const value_string lte_rrc_T_ac_BarringSkipForMMTELVideo_r12_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t313_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ac_BarringSkipForMMTELVideo_r12(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, - 7, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_n313_r12_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, - { 4, "n6" }, - { 5, "n8" }, - { 6, "n10" }, - { 7, "n20" }, +static const value_string lte_rrc_T_ac_BarringSkipForSMS_r12_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_n313_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ac_BarringSkipForSMS_r12(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_n314_r12_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, - { 4, "n5" }, - { 5, "n6" }, - { 6, "n8" }, - { 7, "n10" }, +static const per_sequence_t T_ac_BarringInfo_r12_sequence[] = { + { &hf_lte_rrc_ac_BarringForEmergency_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_ac_BarringForMO_Signalling_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, + { &hf_lte_rrc_ac_BarringForMO_Data_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_ac_BarringInfo_r12(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_lte_rrc_T_ac_BarringInfo_r12, T_ac_BarringInfo_r12_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_ac_BarringSkipForMMTELVoice_r12_01_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_n314_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ac_BarringSkipForMMTELVoice_r12_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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_81_sequence[] = { - { &hf_lte_rrc_t313_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t313_r12 }, - { &hf_lte_rrc_n313_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n313_r12 }, - { &hf_lte_rrc_n314_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n314_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ac_BarringSkipForMMTELVideo_r12_01_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_setup_81(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_lte_rrc_T_setup_81, T_setup_81_sequence); +dissect_lte_rrc_T_ac_BarringSkipForMMTELVideo_r12_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_RLF_TimersAndConstantsSCG_r12_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_ac_BarringSkipForSMS_r12_01_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t RLF_TimersAndConstantsSCG_r12_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_94 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_81 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_RLF_TimersAndConstantsSCG_r12(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_lte_rrc_RLF_TimersAndConstantsSCG_r12, RLF_TimersAndConstantsSCG_r12_choice, - NULL); +dissect_lte_rrc_T_ac_BarringSkipForSMS_r12_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicatedSCG_r12_sequence[] = { - { &hf_lte_rrc_drb_ToAddModListSCG_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToAddModListSCG_r12 }, - { &hf_lte_rrc_mac_MainConfigSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MAC_MainConfig }, - { &hf_lte_rrc_rlf_TimersAndConstantsSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RLF_TimersAndConstantsSCG_r12 }, +static const per_sequence_t AC_BarringPerPLMN_r12_sequence[] = { + { &hf_lte_rrc_plmn_IdentityIndex_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { &hf_lte_rrc_ac_BarringInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringInfo_r12 }, + { &hf_lte_rrc_ac_BarringSkipForMMTELVoice_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForMMTELVoice_r12_01 }, + { &hf_lte_rrc_ac_BarringSkipForMMTELVideo_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForMMTELVideo_r12_01 }, + { &hf_lte_rrc_ac_BarringSkipForSMS_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForSMS_r12_01 }, + { &hf_lte_rrc_ac_BarringForCSFB_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, + { &hf_lte_rrc_ssac_BarringForMMTEL_Voice_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, + { &hf_lte_rrc_ssac_BarringForMMTEL_Video_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigDedicatedSCG_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AC_BarringPerPLMN_r12(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_lte_rrc_RadioResourceConfigDedicatedSCG_r12, RadioResourceConfigDedicatedSCG_r12_sequence); + ett_lte_rrc_AC_BarringPerPLMN_r12, AC_BarringPerPLMN_r12_sequence); return offset; } -static const per_sequence_t SCellToReleaseList_r10_sequence_of[1] = { - { &hf_lte_rrc_SCellToReleaseList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r10 }, +static const per_sequence_t AC_BarringPerPLMN_List_r12_sequence_of[1] = { + { &hf_lte_rrc_AC_BarringPerPLMN_List_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AC_BarringPerPLMN_r12 }, }; static int -dissect_lte_rrc_SCellToReleaseList_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AC_BarringPerPLMN_List_r12(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_lte_rrc_SCellToReleaseList_r10, SCellToReleaseList_r10_sequence_of, - 1, maxSCell_r10, FALSE); + ett_lte_rrc_AC_BarringPerPLMN_List_r12, AC_BarringPerPLMN_List_r12_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const per_sequence_t T_cellIdentification_r12_01_sequence[] = { - { &hf_lte_rrc_physCellId_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_dl_CarrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, +static const per_sequence_t SystemInformationBlockType2_eag_3_sequence[] = { + { &hf_lte_rrc_ac_BarringSkipForMMTELVoice_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForMMTELVoice_r12 }, + { &hf_lte_rrc_ac_BarringSkipForMMTELVideo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForMMTELVideo_r12 }, + { &hf_lte_rrc_ac_BarringSkipForSMS_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringSkipForSMS_r12 }, + { &hf_lte_rrc_ac_BarringPerPLMN_List_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringPerPLMN_List_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cellIdentification_r12_01(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_lte_rrc_T_cellIdentification_r12_01, T_cellIdentification_r12_01_sequence); +dissect_lte_rrc_SystemInformationBlockType2_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_3_sequence); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format3_r12_vals[] = { - { 0, "deltaF-1" }, - { 1, "deltaF0" }, - { 2, "deltaF1" }, - { 3, "deltaF2" }, - { 4, "deltaF3" }, - { 5, "deltaF4" }, - { 6, "deltaF5" }, - { 7, "deltaF6" }, +static const value_string lte_rrc_T_voiceServiceCauseIndication_r12_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaF_PUCCH_Format3_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_voiceServiceCauseIndication_r12(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format1bCS_r12_vals[] = { - { 0, "deltaF1" }, - { 1, "deltaF2" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } +static const per_sequence_t SystemInformationBlockType2_eag_4_sequence[] = { + { &hf_lte_rrc_voiceServiceCauseIndication_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_voiceServiceCauseIndication_r12 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r12(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); +dissect_lte_rrc_SystemInformationBlockType2_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_4_sequence); return offset; } -static const per_sequence_t UplinkPowerControlCommonPSCell_r12_sequence[] = { - { &hf_lte_rrc_deltaF_PUCCH_Format3_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format3_r12 }, - { &hf_lte_rrc_deltaF_PUCCH_Format1bCS_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r12 }, - { &hf_lte_rrc_p0_NominalPUCCH_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M127_M96 }, - { &hf_lte_rrc_deltaFList_PUCCH_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DeltaFList_PUCCH }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UplinkPowerControlCommonPSCell_r12(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_lte_rrc_UplinkPowerControlCommonPSCell_r12, UplinkPowerControlCommonPSCell_r12_sequence); +dissect_lte_rrc_INTEGER_1_maxACDC_Cat_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxACDC_Cat_r13, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format4_r13_vals[] = { - { 0, "deltaF16" }, - { 1, "deltaF15" }, - { 2, "deltaF14" }, - { 3, "deltaF13" }, - { 4, "deltaF12" }, - { 5, "deltaF11" }, - { 6, "deltaF10" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_ac_BarringFactor_r13_vals[] = { + { 0, "p00" }, + { 1, "p05" }, + { 2, "p10" }, + { 3, "p15" }, + { 4, "p20" }, + { 5, "p25" }, + { 6, "p30" }, + { 7, "p40" }, + { 8, "p50" }, + { 9, "p60" }, + { 10, "p70" }, + { 11, "p75" }, + { 12, "p80" }, + { 13, "p85" }, + { 14, "p90" }, + { 15, "p95" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaF_PUCCH_Format4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ac_BarringFactor_r13(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, - 8, NULL, FALSE, 0, NULL); + 16, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_deltaF_PUCCH_Format5_13_vals[] = { - { 0, "deltaF13" }, - { 1, "deltaF12" }, - { 2, "deltaF11" }, - { 3, "deltaF10" }, - { 4, "deltaF9" }, - { 5, "deltaF8" }, - { 6, "deltaF7" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_ac_BarringTime_r13_vals[] = { + { 0, "s4" }, + { 1, "s8" }, + { 2, "s16" }, + { 3, "s32" }, + { 4, "s64" }, + { 5, "s128" }, + { 6, "s256" }, + { 7, "s512" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deltaF_PUCCH_Format5_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ac_BarringTime_r13(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, 8, NULL, FALSE, 0, NULL); @@ -38493,241 +42229,228 @@ dissect_lte_rrc_T_deltaF_PUCCH_Format5_13(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t UplinkPowerControlCommon_v1310_sequence[] = { - { &hf_lte_rrc_deltaF_PUCCH_Format4_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format4_r13 }, - { &hf_lte_rrc_deltaF_PUCCH_Format5_13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format5_13 }, +static const per_sequence_t T_acdc_BarringConfig_r13_sequence[] = { + { &hf_lte_rrc_ac_BarringFactor_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ac_BarringFactor_r13 }, + { &hf_lte_rrc_ac_BarringTime_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ac_BarringTime_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UplinkPowerControlCommon_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_acdc_BarringConfig_r13(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_lte_rrc_UplinkPowerControlCommon_v1310, UplinkPowerControlCommon_v1310_sequence); - - return offset; -} - - -static const per_sequence_t RadioResourceConfigCommonPSCell_r12_eag_1_sequence[] = { - { &hf_lte_rrc_uplinkPowerControlCommonPSCell_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1310 }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_RadioResourceConfigCommonPSCell_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonPSCell_r12_eag_1_sequence); + ett_lte_rrc_T_acdc_BarringConfig_r13, T_acdc_BarringConfig_r13_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommonPSCell_r12_sequence[] = { - { &hf_lte_rrc_basicFields_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10 }, - { &hf_lte_rrc_pucch_ConfigCommon_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PUCCH_ConfigCommon }, - { &hf_lte_rrc_rach_ConfigCommon_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_ConfigCommon }, - { &hf_lte_rrc_uplinkPowerControlCommonPSCell_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UplinkPowerControlCommonPSCell_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonPSCell_r12_eag_1 }, +static const per_sequence_t BarringPerACDC_Category_r13_sequence[] = { + { &hf_lte_rrc_acdc_Category_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxACDC_Cat_r13 }, + { &hf_lte_rrc_acdc_BarringConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_acdc_BarringConfig_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonPSCell_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BarringPerACDC_Category_r13(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_lte_rrc_RadioResourceConfigCommonPSCell_r12, RadioResourceConfigCommonPSCell_r12_sequence); + ett_lte_rrc_BarringPerACDC_Category_r13, BarringPerACDC_Category_r13_sequence); return offset; } -static const per_sequence_t RadioResourceConfigDedicatedPSCell_r12_eag_1_sequence[] = { - { &hf_lte_rrc_neighCellsCRS_InfoPSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t BarringPerACDC_CategoryList_r13_sequence_of[1] = { + { &hf_lte_rrc_BarringPerACDC_CategoryList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BarringPerACDC_Category_r13 }, }; static int -dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedPSCell_r12_eag_1_sequence); +dissect_lte_rrc_BarringPerACDC_CategoryList_r13(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_lte_rrc_BarringPerACDC_CategoryList_r13, BarringPerACDC_CategoryList_r13_sequence_of, + 1, maxACDC_Cat_r13, FALSE); return offset; } -static const per_sequence_t RadioResourceConfigDedicatedPSCell_r12_eag_2_sequence[] = { - { &hf_lte_rrc_sps_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config_v1430 }, +static const per_sequence_t ACDC_BarringForCommon_r13_sequence[] = { + { &hf_lte_rrc_acdc_HPLMNonly_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_barringPerACDC_CategoryList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BarringPerACDC_CategoryList_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedPSCell_r12_eag_2_sequence); +dissect_lte_rrc_ACDC_BarringForCommon_r13(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_lte_rrc_ACDC_BarringForCommon_r13, ACDC_BarringForCommon_r13_sequence); return offset; } -static const per_sequence_t RadioResourceConfigDedicatedPSCell_r12_sequence[] = { - { &hf_lte_rrc_physicalConfigDedicatedPSCell_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicated }, - { &hf_lte_rrc_sps_Config_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config }, - { &hf_lte_rrc_naics_Info_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NAICS_AssistanceInfo_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12_eag_2 }, +static const per_sequence_t ACDC_BarringPerPLMN_r13_sequence[] = { + { &hf_lte_rrc_plmn_IdentityIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { &hf_lte_rrc_acdc_OnlyForHPLMN_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_barringPerACDC_CategoryList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BarringPerACDC_CategoryList_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - private_data_set_simult_pucch_pusch_cell_type(actx, SIMULT_PUCCH_PUSCH_PSCELL); +dissect_lte_rrc_ACDC_BarringPerPLMN_r13(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_lte_rrc_RadioResourceConfigDedicatedPSCell_r12, RadioResourceConfigDedicatedPSCell_r12_sequence); - - + ett_lte_rrc_ACDC_BarringPerPLMN_r13, ACDC_BarringPerPLMN_r13_sequence); return offset; } -static const per_sequence_t PSCellToAddMod_r12_eag_1_sequence[] = { - { &hf_lte_rrc_antennaInfoDedicatedPSCell_v1280, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, - { NULL, 0, 0, NULL } +static const per_sequence_t ACDC_BarringPerPLMN_List_r13_sequence_of[1] = { + { &hf_lte_rrc_ACDC_BarringPerPLMN_List_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ACDC_BarringPerPLMN_r13 }, }; static int -dissect_lte_rrc_PSCellToAddMod_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PSCellToAddMod_r12_eag_1_sequence); +dissect_lte_rrc_ACDC_BarringPerPLMN_List_r13(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_lte_rrc_ACDC_BarringPerPLMN_List_r13, ACDC_BarringPerPLMN_List_r13_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } +static const per_sequence_t SystemInformationBlockType2_eag_5_sequence[] = { + { &hf_lte_rrc_acdc_BarringForCommon_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ACDC_BarringForCommon_r13 }, + { &hf_lte_rrc_acdc_BarringPerPLMN_List_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ACDC_BarringPerPLMN_List_r13 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_SCellIndex_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 31U, NULL, FALSE); +dissect_lte_rrc_SystemInformationBlockType2_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_5_sequence); return offset; } -static const per_sequence_t PSCellToAddMod_r12_eag_2_sequence[] = { - { &hf_lte_rrc_sCellIndex_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellIndex_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_udt_Restricting_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PSCellToAddMod_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PSCellToAddMod_r12_eag_2_sequence); +dissect_lte_rrc_T_udt_Restricting_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PhysicalConfigDedicated_v1370_sequence[] = { - { &hf_lte_rrc_pucch_ConfigDedicated_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigDedicated_v1370 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_udt_RestrictingTime_r13_vals[] = { + { 0, "s4" }, + { 1, "s8" }, + { 2, "s16" }, + { 3, "s32" }, + { 4, "s64" }, + { 5, "s128" }, + { 6, "s256" }, + { 7, "s512" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhysicalConfigDedicated_v1370(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_lte_rrc_PhysicalConfigDedicated_v1370, PhysicalConfigDedicated_v1370_sequence); +dissect_lte_rrc_T_udt_RestrictingTime_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicatedPSCell_v1370_sequence[] = { - { &hf_lte_rrc_physicalConfigDedicatedPSCell_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicated_v1370 }, +static const per_sequence_t UDT_Restricting_r13_sequence[] = { + { &hf_lte_rrc_udt_Restricting_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_udt_Restricting_r13 }, + { &hf_lte_rrc_udt_RestrictingTime_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_udt_RestrictingTime_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_v1370(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UDT_Restricting_r13(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_lte_rrc_RadioResourceConfigDedicatedPSCell_v1370, RadioResourceConfigDedicatedPSCell_v1370_sequence); + ett_lte_rrc_UDT_Restricting_r13, UDT_Restricting_r13_sequence); return offset; } -static const per_sequence_t PSCellToAddMod_r12_eag_3_sequence[] = { - { &hf_lte_rrc_radioResourceConfigDedicatedPSCell_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_v1370 }, +static const per_sequence_t UDT_RestrictingPerPLMN_r13_sequence[] = { + { &hf_lte_rrc_plmn_IdentityIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { &hf_lte_rrc_udt_Restricting_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UDT_Restricting_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PSCellToAddMod_r12_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PSCellToAddMod_r12_eag_3_sequence); +dissect_lte_rrc_UDT_RestrictingPerPLMN_r13(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_lte_rrc_UDT_RestrictingPerPLMN_r13, UDT_RestrictingPerPLMN_r13_sequence); return offset; } -static const per_sequence_t PSCellToAddMod_r12_sequence[] = { - { &hf_lte_rrc_sCellIndex_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r10 }, - { &hf_lte_rrc_cellIdentification_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_cellIdentification_r12_01 }, - { &hf_lte_rrc_radioResourceConfigCommonPSCell_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonPSCell_r12 }, - { &hf_lte_rrc_radioResourceConfigDedicatedPSCell_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PSCellToAddMod_r12_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PSCellToAddMod_r12_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PSCellToAddMod_r12_eag_3 }, - { NULL, 0, 0, NULL } +static const per_sequence_t UDT_RestrictingPerPLMN_List_r13_sequence_of[1] = { + { &hf_lte_rrc_UDT_RestrictingPerPLMN_List_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UDT_RestrictingPerPLMN_r13 }, }; static int -dissect_lte_rrc_PSCellToAddMod_r12(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_lte_rrc_PSCellToAddMod_r12, PSCellToAddMod_r12_sequence); +dissect_lte_rrc_UDT_RestrictingPerPLMN_List_r13(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_lte_rrc_UDT_RestrictingPerPLMN_List_r13, UDT_RestrictingPerPLMN_List_r13_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const value_string lte_rrc_T_t307_r12_vals[] = { - { 0, "ms50" }, - { 1, "ms100" }, - { 2, "ms150" }, - { 3, "ms200" }, - { 4, "ms500" }, - { 5, "ms1000" }, - { 6, "ms2000" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_up_CIoT_EPS_Optimisation_r13_01_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t307_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_up_CIoT_EPS_Optimisation_r13_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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RACH_ConfigDedicated_sequence[] = { - { &hf_lte_rrc_ra_PreambleIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, - { &hf_lte_rrc_ra_PRACH_MaskIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_cp_CIoT_EPS_Optimisation_r13_01_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RACH_ConfigDedicated(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_lte_rrc_RACH_ConfigDedicated, RACH_ConfigDedicated_sequence); +dissect_lte_rrc_T_cp_CIoT_EPS_Optimisation_r13_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_makeBeforeBreakSCG_r14_vals[] = { +static const value_string lte_rrc_T_attachWithoutPDN_Connectivity_r13_01_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_makeBeforeBreakSCG_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_attachWithoutPDN_Connectivity_r13_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, 1, NULL, FALSE, 0, NULL); @@ -38735,406 +42458,418 @@ dissect_lte_rrc_T_makeBeforeBreakSCG_r14(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_targetTA_r14_vals[] = { - { 0, "ta0-r14" }, - { 1, "mcg-PTAG-r14" }, - { 2, "scg-PTAG-r14" }, - { 3, "mcg-STAG-r14" }, - { 4, "scg-STAG-r14" }, - { 0, NULL } -}; - -static const per_choice_t T_targetTA_r14_choice[] = { - { 0, &hf_lte_rrc_ta0_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_mcg_PTAG_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_scg_PTAG_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_mcg_STAG_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_STAG_Id_r11 }, - { 4, &hf_lte_rrc_scg_STAG_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_STAG_Id_r11 }, - { 0, NULL, 0, NULL } +static const per_sequence_t CIOT_OptimisationPLMN_r13_sequence[] = { + { &hf_lte_rrc_up_CIoT_EPS_Optimisation_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_up_CIoT_EPS_Optimisation_r13_01 }, + { &hf_lte_rrc_cp_CIoT_EPS_Optimisation_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cp_CIoT_EPS_Optimisation_r13_01 }, + { &hf_lte_rrc_attachWithoutPDN_Connectivity_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_attachWithoutPDN_Connectivity_r13_01 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_targetTA_r14(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_lte_rrc_T_targetTA_r14, T_targetTA_r14_choice, - NULL); +dissect_lte_rrc_CIOT_OptimisationPLMN_r13(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_lte_rrc_CIOT_OptimisationPLMN_r13, CIOT_OptimisationPLMN_r13_sequence); return offset; } -static const value_string lte_rrc_T_ul_SchedInterval_r14_vals[] = { - { 0, "sf2" }, - { 1, "sf5" }, - { 2, "sf10" }, - { 0, NULL } +static const per_sequence_t CIOT_EPS_OptimisationInfo_r13_sequence_of[1] = { + { &hf_lte_rrc_CIOT_EPS_OptimisationInfo_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CIOT_OptimisationPLMN_r13 }, }; - static int -dissect_lte_rrc_T_ul_SchedInterval_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_CIOT_EPS_OptimisationInfo_r13(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_lte_rrc_CIOT_EPS_OptimisationInfo_r13, CIOT_EPS_OptimisationInfo_r13_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const per_sequence_t T_ul_ConfigInfo_r14_sequence[] = { - { &hf_lte_rrc_numberOfConfUL_Processes_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_8 }, - { &hf_lte_rrc_ul_SchedInterval_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_SchedInterval_r14 }, - { &hf_lte_rrc_ul_StartSubframe_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_9 }, - { &hf_lte_rrc_ul_Grant_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_useFullResumeID_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_ul_ConfigInfo_r14(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_lte_rrc_T_ul_ConfigInfo_r14, T_ul_ConfigInfo_r14_sequence); +dissect_lte_rrc_T_useFullResumeID_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RACH_Skip_r14_sequence[] = { - { &hf_lte_rrc_targetTA_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_targetTA_r14 }, - { &hf_lte_rrc_ul_ConfigInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_ConfigInfo_r14 }, +static const per_sequence_t SystemInformationBlockType2_eag_6_sequence[] = { + { &hf_lte_rrc_udt_RestrictingForCommon_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UDT_Restricting_r13 }, + { &hf_lte_rrc_udt_RestrictingPerPLMN_List_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UDT_RestrictingPerPLMN_List_r13 }, + { &hf_lte_rrc_cIoT_EPS_OptimisationInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CIOT_EPS_OptimisationInfo_r13 }, + { &hf_lte_rrc_useFullResumeID_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_useFullResumeID_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RACH_Skip_r14(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_lte_rrc_RACH_Skip_r14, RACH_Skip_r14_sequence); +dissect_lte_rrc_SystemInformationBlockType2_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_6_sequence); return offset; } -static const per_sequence_t MobilityControlInfoSCG_r12_eag_1_sequence[] = { - { &hf_lte_rrc_makeBeforeBreakSCG_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_makeBeforeBreakSCG_r14 }, - { &hf_lte_rrc_rach_SkipSCG_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_Skip_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_unicastFreqHoppingInd_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MobilityControlInfoSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MobilityControlInfoSCG_r12_eag_1_sequence); +dissect_lte_rrc_T_unicastFreqHoppingInd_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MobilityControlInfoSCG_r12_sequence[] = { - { &hf_lte_rrc_t307_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t307_r12 }, - { &hf_lte_rrc_ue_IdentitySCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_C_RNTI }, - { &hf_lte_rrc_rach_ConfigDedicated_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RACH_ConfigDedicated }, - { &hf_lte_rrc_cipheringAlgorithmSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CipheringAlgorithm_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityControlInfoSCG_r12_eag_1 }, +static const per_sequence_t SystemInformationBlockType2_eag_7_sequence[] = { + { &hf_lte_rrc_unicastFreqHoppingInd_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_unicastFreqHoppingInd_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MobilityControlInfoSCG_r12(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_lte_rrc_MobilityControlInfoSCG_r12, MobilityControlInfoSCG_r12_sequence); +dissect_lte_rrc_SystemInformationBlockType2_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_7_sequence); return offset; } -static const per_sequence_t SCellToReleaseListExt_r13_sequence_of[1] = { - { &hf_lte_rrc_SCellToReleaseListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r13 }, +static const value_string lte_rrc_T_videoServiceCauseIndication_r14_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCellToReleaseListExt_r13(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_lte_rrc_SCellToReleaseListExt_r13, SCellToReleaseListExt_r13_sequence_of, - 1, maxSCell_r13, FALSE); +dissect_lte_rrc_T_videoServiceCauseIndication_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_cellIdentification_r13_sequence[] = { - { &hf_lte_rrc_physCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_dl_CarrierFreq_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, +static const per_sequence_t SystemInformationBlockType2_eag_8_sequence[] = { + { &hf_lte_rrc_mbsfn_SubframeConfigList_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, + { &hf_lte_rrc_videoServiceCauseIndication_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_videoServiceCauseIndication_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cellIdentification_r13(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_lte_rrc_T_cellIdentification_r13, T_cellIdentification_r13_sequence); +dissect_lte_rrc_SystemInformationBlockType2_eag_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_8_sequence); return offset; } -static const per_sequence_t SCellToAddModExt_r13_sequence[] = { - { &hf_lte_rrc_sCellIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r13 }, - { &hf_lte_rrc_cellIdentification_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cellIdentification_r13 }, - { &hf_lte_rrc_radioResourceConfigCommonSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonSCell_r10 }, - { &hf_lte_rrc_radioResourceConfigDedicatedSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10 }, - { &hf_lte_rrc_antennaInfoDedicatedSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_upperLayerIndication_r15_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCellToAddModExt_r13(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_lte_rrc_SCellToAddModExt_r13, SCellToAddModExt_r13_sequence); +dissect_lte_rrc_T_upperLayerIndication_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCellToAddModListExt_r13_sequence_of[1] = { - { &hf_lte_rrc_SCellToAddModListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddModExt_r13 }, +static const per_sequence_t PLMN_Info_r15_sequence[] = { + { &hf_lte_rrc_upperLayerIndication_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_upperLayerIndication_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCellToAddModListExt_r13(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_lte_rrc_SCellToAddModListExt_r13, SCellToAddModListExt_r13_sequence_of, - 1, maxSCell_r13, FALSE); +dissect_lte_rrc_PLMN_Info_r15(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_lte_rrc_PLMN_Info_r15, PLMN_Info_r15_sequence); return offset; } -static const per_sequence_t SCG_ConfigPartSCG_r12_eag_1_sequence[] = { - { &hf_lte_rrc_sCellToReleaseListSCG_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseListExt_r13 }, - { &hf_lte_rrc_sCellToAddModListSCG_Ext_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t PLMN_InfoList_r15_sequence_of[1] = { + { &hf_lte_rrc_PLMN_InfoList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Info_r15 }, }; static int -dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCG_ConfigPartSCG_r12_eag_1_sequence); +dissect_lte_rrc_PLMN_InfoList_r15(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_lte_rrc_PLMN_InfoList_r15, PLMN_InfoList_r15_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } +static const per_sequence_t SystemInformationBlockType2_eag_9_sequence[] = { + { &hf_lte_rrc_plmn_InfoList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_InfoList_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_AdditionalSpectrumEmission_v10l0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 33U, 288U, NULL, FALSE); +dissect_lte_rrc_SystemInformationBlockType2_eag_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_9_sequence); return offset; } -static const per_sequence_t T_ul_Configuration_v10l0_sequence[] = { - { &hf_lte_rrc_additionalSpectrumEmissionSCell_v10l0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_cp_EDT_r15_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_ul_Configuration_v10l0(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_lte_rrc_T_ul_Configuration_v10l0, T_ul_Configuration_v10l0_sequence); +dissect_lte_rrc_T_cp_EDT_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigCommonSCell_v10l0_sequence[] = { - { &hf_lte_rrc_ul_Configuration_v10l0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_Configuration_v10l0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_up_EDT_r15_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RadioResourceConfigCommonSCell_v10l0(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_lte_rrc_RadioResourceConfigCommonSCell_v10l0, RadioResourceConfigCommonSCell_v10l0_sequence); +dissect_lte_rrc_T_up_EDT_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCellToAddModExt_v1370_sequence[] = { - { &hf_lte_rrc_radioResourceConfigCommonSCell_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonSCell_v10l0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_idleModeMeasurements_r15_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCellToAddModExt_v1370(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_lte_rrc_SCellToAddModExt_v1370, SCellToAddModExt_v1370_sequence); +dissect_lte_rrc_T_idleModeMeasurements_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCellToAddModListExt_v1370_sequence_of[1] = { - { &hf_lte_rrc_SCellToAddModListExt_v1370_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddModExt_v1370 }, +static const value_string lte_rrc_T_reducedCP_LatencyEnabled_r15_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCellToAddModListExt_v1370(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_lte_rrc_SCellToAddModListExt_v1370, SCellToAddModListExt_v1370_sequence_of, - 1, maxSCell_r13, FALSE); +dissect_lte_rrc_T_reducedCP_LatencyEnabled_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCG_ConfigPartSCG_r12_eag_2_sequence[] = { - { &hf_lte_rrc_sCellToAddModListSCG_Ext_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_v1370 }, +static const per_sequence_t SystemInformationBlockType2_eag_10_sequence[] = { + { &hf_lte_rrc_cp_EDT_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cp_EDT_r15 }, + { &hf_lte_rrc_up_EDT_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_up_EDT_r15 }, + { &hf_lte_rrc_idleModeMeasurements_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_idleModeMeasurements_r15 }, + { &hf_lte_rrc_reducedCP_LatencyEnabled_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedCP_LatencyEnabled_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCG_ConfigPartSCG_r12_eag_2_sequence); +dissect_lte_rrc_SystemInformationBlockType2_eag_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_eag_10_sequence); return offset; } -static const per_sequence_t T_ul_FreqInfo_v1440_sequence[] = { - { &hf_lte_rrc_additionalSpectrumEmissionSCell_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, +static const per_sequence_t SystemInformationBlockType2_sequence[] = { + { &hf_lte_rrc_ac_BarringInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ac_BarringInfo }, + { &hf_lte_rrc_radioResourceConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB }, + { &hf_lte_rrc_ue_TimersAndConstants, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_TimersAndConstants }, + { &hf_lte_rrc_freqInfo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_freqInfo }, + { &hf_lte_rrc_mbsfn_SubframeConfigList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList }, + { &hf_lte_rrc_timeAlignmentTimerCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TimeAlignmentTimer }, + { &hf_lte_rrc_lateNonCriticalExtension_07, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_06 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_7 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_8 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_9 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_eag_10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_ul_FreqInfo_v1440(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB2"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_ul_FreqInfo_v1440, T_ul_FreqInfo_v1440_sequence); + ett_lte_rrc_SystemInformationBlockType2, SystemInformationBlockType2_sequence); return offset; } -static const per_sequence_t T_ul_Configuration_v1440_sequence[] = { - { &hf_lte_rrc_ul_FreqInfo_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_FreqInfo_v1440 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_antennaPortsCount_vals[] = { + { 0, "an1" }, + { 1, "an2" }, + { 2, "an4" }, + { 3, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_ul_Configuration_v1440(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_lte_rrc_T_ul_Configuration_v1440, T_ul_Configuration_v1440_sequence); +dissect_lte_rrc_T_antennaPortsCount(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 per_sequence_t RadioResourceConfigCommonSCell_v1440_sequence[] = { - { &hf_lte_rrc_ul_Configuration_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_Configuration_v1440 }, +static const per_sequence_t AntennaInfoCommon_sequence[] = { + { &hf_lte_rrc_antennaPortsCount, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_antennaPortsCount }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonSCell_v1440(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AntennaInfoCommon(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_lte_rrc_RadioResourceConfigCommonSCell_v1440, RadioResourceConfigCommonSCell_v1440_sequence); + ett_lte_rrc_AntennaInfoCommon, AntennaInfoCommon_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommonPSCell_v1440_sequence[] = { - { &hf_lte_rrc_basicFields_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_v1440 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RadioResourceConfigCommonPSCell_v1440(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_lte_rrc_RadioResourceConfigCommonPSCell_v1440, RadioResourceConfigCommonPSCell_v1440_sequence); +dissect_lte_rrc_T_sourceSystemInformationBlockType1Ext(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType1_v890_IEs_PDU); return offset; } -static const per_sequence_t PSCellToAddMod_v1440_sequence[] = { - { &hf_lte_rrc_radioResourceConfigCommonPSCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonPSCell_v1440 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_proximityIndicationEUTRA_r9_vals[] = { + { 0, "enabled" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PSCellToAddMod_v1440(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_lte_rrc_PSCellToAddMod_v1440, PSCellToAddMod_v1440_sequence); +dissect_lte_rrc_T_proximityIndicationEUTRA_r9(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCG_ConfigPartSCG_r12_eag_3_sequence[] = { - { &hf_lte_rrc_pSCellToAddMod_v1440, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PSCellToAddMod_v1440 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_proximityIndicationUTRA_r9_vals[] = { + { 0, "enabled" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCG_ConfigPartSCG_r12_eag_3_sequence); +dissect_lte_rrc_T_proximityIndicationUTRA_r9(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCG_ConfigPartSCG_r12_sequence[] = { - { &hf_lte_rrc_radioResourceConfigDedicatedSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedSCG_r12 }, - { &hf_lte_rrc_sCellToReleaseListSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseList_r10 }, - { &hf_lte_rrc_pSCellToAddMod_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PSCellToAddMod_r12 }, - { &hf_lte_rrc_sCellToAddModListSCG_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_r10 }, - { &hf_lte_rrc_mobilityControlInfoSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MobilityControlInfoSCG_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_3 }, +static const per_sequence_t ReportProximityConfig_r9_sequence[] = { + { &hf_lte_rrc_proximityIndicationEUTRA_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_proximityIndicationEUTRA_r9 }, + { &hf_lte_rrc_proximityIndicationUTRA_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_proximityIndicationUTRA_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCG_ConfigPartSCG_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ReportProximityConfig_r9(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_lte_rrc_SCG_ConfigPartSCG_r12, SCG_ConfigPartSCG_r12_sequence); + ett_lte_rrc_ReportProximityConfig_r9, ReportProximityConfig_r9_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_03_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_idc_Indication_r11_01_vals[] = { + { 0, "setup" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_03(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_lte_rrc_T_nonCriticalExtension_03, T_nonCriticalExtension_03_sequence); +dissect_lte_rrc_T_idc_Indication_r11_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCG_Config_r12_IEs_sequence[] = { - { &hf_lte_rrc_scg_RadioConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigPartSCG_r12 }, - { &hf_lte_rrc_nonCriticalExtension_11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_03 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_autonomousDenialSubframes_r11_vals[] = { + { 0, "n2" }, + { 1, "n5" }, + { 2, "n10" }, + { 3, "n15" }, + { 4, "n20" }, + { 5, "n30" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCG_Config_r12_IEs(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_lte_rrc_SCG_Config_r12_IEs, SCG_Config_r12_IEs_sequence); +dissect_lte_rrc_T_autonomousDenialSubframes_r11(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_c1_02_vals[] = { - { 0, "scg-Config-r12" }, - { 1, "spare7" }, - { 2, "spare6" }, - { 3, "spare5" }, +static const value_string lte_rrc_T_autonomousDenialValidity_r11_vals[] = { + { 0, "sf200" }, + { 1, "sf500" }, + { 2, "sf1000" }, + { 3, "sf2000" }, { 4, "spare4" }, { 5, "spare3" }, { 6, "spare2" }, @@ -39142,634 +42877,641 @@ static const value_string lte_rrc_T_c1_02_vals[] = { { 0, NULL } }; -static const per_choice_t T_c1_02_choice[] = { - { 0, &hf_lte_rrc_scg_Config_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCG_Config_r12_IEs }, - { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_02(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_lte_rrc_T_c1_02, T_c1_02_choice, - NULL); +dissect_lte_rrc_T_autonomousDenialValidity_r11(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_02_sequence[] = { +static const per_sequence_t T_autonomousDenialParameters_r11_sequence[] = { + { &hf_lte_rrc_autonomousDenialSubframes_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_autonomousDenialSubframes_r11 }, + { &hf_lte_rrc_autonomousDenialValidity_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_autonomousDenialValidity_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_autonomousDenialParameters_r11(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_lte_rrc_T_criticalExtensionsFuture_02, T_criticalExtensionsFuture_02_sequence); + ett_lte_rrc_T_autonomousDenialParameters_r11, T_autonomousDenialParameters_r11_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_02_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_idc_Indication_UL_CA_r11_vals[] = { + { 0, "setup" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_02_choice[] = { - { 0, &hf_lte_rrc_c1_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_02 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_02 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_02(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_lte_rrc_T_criticalExtensions_02, T_criticalExtensions_02_choice, - NULL); +dissect_lte_rrc_T_idc_Indication_UL_CA_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCG_Config_r12_sequence[] = { - { &hf_lte_rrc_criticalExtensions_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_02 }, +static const per_sequence_t IDC_Config_r11_eag_1_sequence[] = { + { &hf_lte_rrc_idc_Indication_UL_CA_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_idc_Indication_UL_CA_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCG_Config_r12(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_lte_rrc_SCG_Config_r12, SCG_Config_r12_sequence); +dissect_lte_rrc_IDC_Config_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, IDC_Config_r11_eag_1_sequence); return offset; } -static const per_sequence_t AS_Config_eag_3_sequence[] = { - { &hf_lte_rrc_sourceConfigSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_Config_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_idc_HardwareSharingIndication_r13_vals[] = { + { 0, "setup" }, + { 0, NULL } }; + static int -dissect_lte_rrc_AS_Config_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Config_eag_3_sequence); +dissect_lte_rrc_T_idc_HardwareSharingIndication_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t IDC_Config_r11_eag_2_sequence[] = { + { &hf_lte_rrc_idc_HardwareSharingIndication_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_idc_HardwareSharingIndication_r13 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_sourceRB_ConfigNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *radio_bearer_config_tvb = NULL; - - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); - - - if (radio_bearer_config_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_sourceRB_ConfigNR_r15); - dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); - } - +dissect_lte_rrc_IDC_Config_r11_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, IDC_Config_r11_eag_2_sequence); return offset; } +static const per_sequence_t CandidateServingFreqListNR_r15_sequence_of[1] = { + { &hf_lte_rrc_CandidateServingFreqListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueNR_r15 }, +}; static int -dissect_lte_rrc_T_sourceRB_ConfigSN_NR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *radio_bearer_config_tvb = NULL; - - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); - - - if (radio_bearer_config_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_sourceRB_ConfigSN_NR_r15); - dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); - } - +dissect_lte_rrc_CandidateServingFreqListNR_r15(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_lte_rrc_CandidateServingFreqListNR_r15, CandidateServingFreqListNR_r15_sequence_of, + 1, maxFreqIDC_r11, FALSE); return offset; } +static const value_string lte_rrc_T_idc_Indication_MRDC_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_sourceOtherConfigSN_NR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *rrc_reconfiguration_tvb = NULL; - - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &rrc_reconfiguration_tvb); - - - if (rrc_reconfiguration_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_sourceOtherConfigSN_NR_r15); - dissect_nr_rrc_RRCReconfiguration_PDU(rrc_reconfiguration_tvb, actx->pinfo, subtree, NULL); - } +static const per_choice_t T_idc_Indication_MRDC_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_177 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CandidateServingFreqListNR_r15 }, + { 0, NULL, 0, NULL } +}; +static int +dissect_lte_rrc_T_idc_Indication_MRDC_r15(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_lte_rrc_T_idc_Indication_MRDC_r15, T_idc_Indication_MRDC_r15_choice, + NULL); return offset; } -static const per_sequence_t AS_ConfigNR_r15_sequence[] = { - { &hf_lte_rrc_sourceRB_ConfigNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sourceRB_ConfigNR_r15 }, - { &hf_lte_rrc_sourceRB_ConfigSN_NR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sourceRB_ConfigSN_NR_r15 }, - { &hf_lte_rrc_sourceOtherConfigSN_NR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sourceOtherConfigSN_NR_r15 }, +static const per_sequence_t IDC_Config_r11_eag_3_sequence[] = { + { &hf_lte_rrc_idc_Indication_MRDC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_idc_Indication_MRDC_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_ConfigNR_r15(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_lte_rrc_AS_ConfigNR_r15, AS_ConfigNR_r15_sequence); +dissect_lte_rrc_IDC_Config_r11_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, IDC_Config_r11_eag_3_sequence); return offset; } -static const per_sequence_t AS_Config_eag_4_sequence[] = { - { &hf_lte_rrc_as_ConfigNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_ConfigNR_r15 }, +static const per_sequence_t IDC_Config_r11_sequence[] = { + { &hf_lte_rrc_idc_Indication_r11_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_idc_Indication_r11_01 }, + { &hf_lte_rrc_autonomousDenialParameters_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_autonomousDenialParameters_r11 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_IDC_Config_r11_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_IDC_Config_r11_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_IDC_Config_r11_eag_3 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Config_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Config_eag_4_sequence); +dissect_lte_rrc_IDC_Config_r11(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_lte_rrc_IDC_Config_r11, IDC_Config_r11_sequence); return offset; } -static const per_sequence_t AS_Config_sequence[] = { - { &hf_lte_rrc_sourceMeasConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasConfig }, - { &hf_lte_rrc_sourceRadioResourceConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated }, - { &hf_lte_rrc_sourceSecurityAlgorithmConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityAlgorithmConfig }, - { &hf_lte_rrc_sourceUE_Identity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, - { &hf_lte_rrc_sourceMasterInformationBlock, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MasterInformationBlock }, - { &hf_lte_rrc_sourceSystemInformationBlockType1, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType1 }, - { &hf_lte_rrc_sourceSystemInformationBlockType2, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2 }, - { &hf_lte_rrc_antennaInfoCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AntennaInfoCommon }, - { &hf_lte_rrc_sourceDl_CarrierFreq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Config_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Config_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Config_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Config_eag_4 }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_AS_Config(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_lte_rrc_AS_Config, AS_Config_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_ue_InactiveTime_vals[] = { - { 0, "s1" }, - { 1, "s2" }, - { 2, "s3" }, - { 3, "s5" }, - { 4, "s7" }, +static const value_string lte_rrc_T_powerPrefIndicationTimer_r11_vals[] = { + { 0, "s0" }, + { 1, "s0dot5" }, + { 2, "s1" }, + { 3, "s2" }, + { 4, "s5" }, { 5, "s10" }, - { 6, "s15" }, - { 7, "s20" }, - { 8, "s25" }, - { 9, "s30" }, - { 10, "s40" }, - { 11, "s50" }, - { 12, "min1" }, - { 13, "min1s20c" }, - { 14, "min1s40" }, - { 15, "min2" }, - { 16, "min2s30" }, - { 17, "min3" }, - { 18, "min3s30" }, - { 19, "min4" }, - { 20, "min5" }, - { 21, "min6" }, - { 22, "min7" }, - { 23, "min8" }, - { 24, "min9" }, - { 25, "min10" }, - { 26, "min12" }, - { 27, "min14" }, - { 28, "min17" }, - { 29, "min20" }, - { 30, "min24" }, - { 31, "min28" }, - { 32, "min33" }, - { 33, "min38" }, - { 34, "min44" }, - { 35, "min50" }, - { 36, "hr1" }, - { 37, "hr1min30" }, - { 38, "hr2" }, - { 39, "hr2min30" }, - { 40, "hr3" }, - { 41, "hr3min30" }, - { 42, "hr4" }, - { 43, "hr5" }, - { 44, "hr6" }, - { 45, "hr8" }, - { 46, "hr10" }, - { 47, "hr13" }, - { 48, "hr16" }, - { 49, "hr20" }, - { 50, "day1" }, - { 51, "day1hr12" }, - { 52, "day2" }, - { 53, "day2hr12" }, - { 54, "day3" }, - { 55, "day4" }, - { 56, "day5" }, - { 57, "day7" }, - { 58, "day10" }, - { 59, "day14" }, - { 60, "day19" }, - { 61, "day24" }, - { 62, "day30" }, - { 63, "dayMoreThan30" }, + { 6, "s20" }, + { 7, "s30" }, + { 8, "s60" }, + { 9, "s90" }, + { 10, "s120" }, + { 11, "s300" }, + { 12, "s600" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, { 0, NULL } }; -static value_string_ext lte_rrc_T_ue_InactiveTime_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_ue_InactiveTime_vals); - static int -dissect_lte_rrc_T_ue_InactiveTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_powerPrefIndicationTimer_r11(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, - 64, NULL, FALSE, 0, NULL); + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CandidateCellInfo_r10_eag_1_sequence[] = { - { &hf_lte_rrc_dl_CarrierFreq_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, +static const per_sequence_t T_setup_155_sequence[] = { + { &hf_lte_rrc_powerPrefIndicationTimer_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_powerPrefIndicationTimer_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CandidateCellInfo_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CandidateCellInfo_r10_eag_1_sequence); +dissect_lte_rrc_T_setup_155(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_lte_rrc_T_setup_155, T_setup_155_sequence); return offset; } -static const per_sequence_t CandidateCellInfo_r10_eag_2_sequence[] = { - { &hf_lte_rrc_rsrqResult_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_PowerPrefIndicationConfig_r11_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t PowerPrefIndicationConfig_r11_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_178 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_155 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_CandidateCellInfo_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CandidateCellInfo_r10_eag_2_sequence); +dissect_lte_rrc_PowerPrefIndicationConfig_r11(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_lte_rrc_PowerPrefIndicationConfig_r11, PowerPrefIndicationConfig_r11_choice, + NULL); return offset; } -static const per_sequence_t CandidateCellInfo_r10_eag_3_sequence[] = { - { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_Range_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_obtainLocation_r11_vals[] = { + { 0, "setup" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CandidateCellInfo_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CandidateCellInfo_r10_eag_3_sequence); +dissect_lte_rrc_T_obtainLocation_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CandidateCellInfo_r10_sequence[] = { - { &hf_lte_rrc_physCellId_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_dl_CarrierFreq_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &hf_lte_rrc_rsrpResult_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResult_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CandidateCellInfo_r10_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CandidateCellInfo_r10_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CandidateCellInfo_r10_eag_3 }, +static const per_sequence_t ObtainLocationConfig_r11_sequence[] = { + { &hf_lte_rrc_obtainLocation_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_obtainLocation_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CandidateCellInfo_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ObtainLocationConfig_r11(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_lte_rrc_CandidateCellInfo_r10, CandidateCellInfo_r10_sequence); + ett_lte_rrc_ObtainLocationConfig_r11, ObtainLocationConfig_r11_sequence); return offset; } -static const per_sequence_t CandidateCellInfoList_r10_sequence_of[1] = { - { &hf_lte_rrc_CandidateCellInfoList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CandidateCellInfo_r10 }, +static const per_sequence_t OtherConfig_r9_eag_1_sequence[] = { + { &hf_lte_rrc_idc_Config_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IDC_Config_r11 }, + { &hf_lte_rrc_powerPrefIndicationConfig_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PowerPrefIndicationConfig_r11 }, + { &hf_lte_rrc_obtainLocationConfig_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ObtainLocationConfig_r11 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CandidateCellInfoList_r10(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_lte_rrc_CandidateCellInfoList_r10, CandidateCellInfoList_r10_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_OtherConfig_r9_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, OtherConfig_r9_eag_1_sequence); return offset; } -static const per_sequence_t RRM_Config_eag_1_sequence[] = { - { &hf_lte_rrc_candidateCellInfoList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CandidateCellInfoList_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_bw_PreferenceIndicationTimer_r14_vals[] = { + { 0, "s0" }, + { 1, "s0dot5" }, + { 2, "s1" }, + { 3, "s2" }, + { 4, "s5" }, + { 5, "s10" }, + { 6, "s20" }, + { 7, "s30" }, + { 8, "s60" }, + { 9, "s90" }, + { 10, "s120" }, + { 11, "s300" }, + { 12, "s600" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRM_Config_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RRM_Config_eag_1_sequence); +dissect_lte_rrc_T_bw_PreferenceIndicationTimer_r14(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MeasResultNR_r15_sequence[] = { - { &hf_lte_rrc_rsrpResult_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_RangeNR_r15 }, - { &hf_lte_rrc_rsrqResult_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_RangeNR_r15 }, - { &hf_lte_rrc_rs_sinr_Result_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_RangeNR_r15 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_delayBudgetReportingProhibitTimer_r14_vals[] = { + { 0, "s0" }, + { 1, "s0dot4" }, + { 2, "s0dot8" }, + { 3, "s1dot6" }, + { 4, "s3" }, + { 5, "s6" }, + { 6, "s12" }, + { 7, "s30" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MeasResultNR_r15(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_lte_rrc_MeasResultNR_r15, MeasResultNR_r15_sequence); +dissect_lte_rrc_T_delayBudgetReportingProhibitTimer_r14(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, + 8, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t T_setup_151_sequence[] = { + { &hf_lte_rrc_delayBudgetReportingProhibitTimer_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_delayBudgetReportingProhibitTimer_r14 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_RS_IndexNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxRS_Index_1_r15, NULL, FALSE); +dissect_lte_rrc_T_setup_151(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_lte_rrc_T_setup_151, T_setup_151_sequence); return offset; } -static const per_sequence_t MeasResultSSB_Index_r15_sequence[] = { - { &hf_lte_rrc_ssb_Index_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_IndexNR_r15 }, - { &hf_lte_rrc_measResultSSB_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultNR_r15 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_delayBudgetReportingConfig_r14_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_delayBudgetReportingConfig_r14_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_173 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_151 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MeasResultSSB_Index_r15(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_lte_rrc_MeasResultSSB_Index_r15, MeasResultSSB_Index_r15_sequence); +dissect_lte_rrc_T_delayBudgetReportingConfig_r14(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_lte_rrc_T_delayBudgetReportingConfig_r14, T_delayBudgetReportingConfig_r14_choice, + NULL); return offset; } -static const per_sequence_t MeasResultSSB_IndexList_r15_sequence_of[1] = { - { &hf_lte_rrc_MeasResultSSB_IndexList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultSSB_Index_r15 }, +static const value_string lte_rrc_T_rlmReportTimer_r14_vals[] = { + { 0, "s0" }, + { 1, "s0dot5" }, + { 2, "s1" }, + { 3, "s2" }, + { 4, "s5" }, + { 5, "s10" }, + { 6, "s20" }, + { 7, "s30" }, + { 8, "s60" }, + { 9, "s90" }, + { 10, "s120" }, + { 11, "s300" }, + { 12, "s600" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MeasResultSSB_IndexList_r15(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_lte_rrc_MeasResultSSB_IndexList_r15, MeasResultSSB_IndexList_r15_sequence_of, - 1, maxRS_IndexReport_r15, FALSE); +dissect_lte_rrc_T_rlmReportTimer_r14(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MeasResultCellNR_r15_sequence[] = { - { &hf_lte_rrc_pci_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdNR_r15 }, - { &hf_lte_rrc_measResultCell_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultNR_r15 }, - { &hf_lte_rrc_measResultRS_IndexList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultSSB_IndexList_r15 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_rlmReportRep_MPDCCH_r14_vals[] = { + { 0, "setup" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MeasResultCellNR_r15(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_lte_rrc_MeasResultCellNR_r15, MeasResultCellNR_r15_sequence); +dissect_lte_rrc_T_rlmReportRep_MPDCCH_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MeasResultServFreqNR_r15_sequence[] = { - { &hf_lte_rrc_carrierFreq_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueNR_r15 }, - { &hf_lte_rrc_measResultSCell_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultCellNR_r15 }, - { &hf_lte_rrc_measResultBestNeighCell_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultCellNR_r15 }, +static const per_sequence_t T_setup_152_sequence[] = { + { &hf_lte_rrc_rlmReportTimer_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rlmReportTimer_r14 }, + { &hf_lte_rrc_rlmReportRep_MPDCCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlmReportRep_MPDCCH_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultServFreqNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_152(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_lte_rrc_MeasResultServFreqNR_r15, MeasResultServFreqNR_r15_sequence); + ett_lte_rrc_T_setup_152, T_setup_152_sequence); return offset; } -static const per_sequence_t MeasResultServFreqListNR_r15_sequence_of[1] = { - { &hf_lte_rrc_MeasResultServFreqListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreqNR_r15 }, +static const value_string lte_rrc_T_rlm_ReportConfig_r14_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_rlm_ReportConfig_r14_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_174 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_152 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MeasResultServFreqListNR_r15(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_lte_rrc_MeasResultServFreqListNR_r15, MeasResultServFreqListNR_r15_sequence_of, - 1, maxServCell_r13, FALSE); +dissect_lte_rrc_T_rlm_ReportConfig_r14(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_lte_rrc_T_rlm_ReportConfig_r14, T_rlm_ReportConfig_r14_choice, + NULL); return offset; } -static const per_sequence_t RRM_Config_eag_2_sequence[] = { - { &hf_lte_rrc_candidateCellInfoListNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqListNR_r15 }, +static const per_sequence_t OtherConfig_r9_eag_2_sequence[] = { + { &hf_lte_rrc_bw_PreferenceIndicationTimer_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bw_PreferenceIndicationTimer_r14 }, + { &hf_lte_rrc_sps_AssistanceInfoReport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_delayBudgetReportingConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_delayBudgetReportingConfig_r14 }, + { &hf_lte_rrc_rlm_ReportConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlm_ReportConfig_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRM_Config_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RRM_Config_eag_2_sequence); +dissect_lte_rrc_OtherConfig_r9_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, OtherConfig_r9_eag_2_sequence); return offset; } -static const per_sequence_t RRM_Config_sequence[] = { - { &hf_lte_rrc_ue_InactiveTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_InactiveTime }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRM_Config_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRM_Config_eag_2 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_overheatingIndicationProhibitTimer_r14_vals[] = { + { 0, "s0" }, + { 1, "s0dot5" }, + { 2, "s1" }, + { 3, "s2" }, + { 4, "s5" }, + { 5, "s10" }, + { 6, "s20" }, + { 7, "s30" }, + { 8, "s60" }, + { 9, "s90" }, + { 10, "s120" }, + { 11, "s300" }, + { 12, "s600" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRM_Config(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_lte_rrc_RRM_Config, RRM_Config_sequence); +dissect_lte_rrc_T_overheatingIndicationProhibitTimer_r14(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, + 16, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t T_setup_153_sequence[] = { + { &hf_lte_rrc_overheatingIndicationProhibitTimer_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_overheatingIndicationProhibitTimer_r14 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_ShortMAC_I(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, - 16, 16, FALSE, NULL, NULL); +dissect_lte_rrc_T_setup_153(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_lte_rrc_T_setup_153, T_setup_153_sequence); return offset; } +static const value_string lte_rrc_T_overheatingAssistanceConfig_r14_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_overheatingAssistanceConfig_r14_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_175 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_153 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_Key_eNodeB_Star(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, - 256, 256, FALSE, NULL, NULL); +dissect_lte_rrc_T_overheatingAssistanceConfig_r14(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_lte_rrc_T_overheatingAssistanceConfig_r14, T_overheatingAssistanceConfig_r14_choice, + NULL); return offset; } -static const per_sequence_t AdditionalReestabInfo_sequence[] = { - { &hf_lte_rrc_cellIdentity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, - { &hf_lte_rrc_key_eNodeB_Star, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Key_eNodeB_Star }, - { &hf_lte_rrc_shortMAC_I , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ShortMAC_I }, +static const per_sequence_t OtherConfig_r9_eag_3_sequence[] = { + { &hf_lte_rrc_overheatingAssistanceConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_overheatingAssistanceConfig_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AdditionalReestabInfo(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_lte_rrc_AdditionalReestabInfo, AdditionalReestabInfo_sequence); +dissect_lte_rrc_OtherConfig_r9_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, OtherConfig_r9_eag_3_sequence); return offset; } -static const per_sequence_t AdditionalReestabInfoList_sequence_of[1] = { - { &hf_lte_rrc_AdditionalReestabInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalReestabInfo }, -}; static int -dissect_lte_rrc_AdditionalReestabInfoList(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_lte_rrc_AdditionalReestabInfoList, AdditionalReestabInfoList_sequence_of, - 1, maxReestabInfo, FALSE); +dissect_lte_rrc_OCTET_STRING_SIZE_1_1000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 1000, FALSE, NULL); return offset; } -static const per_sequence_t ReestablishmentInfo_sequence[] = { - { &hf_lte_rrc_sourcePhysCellId, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_targetCellShortMAC_I, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ShortMAC_I }, - { &hf_lte_rrc_additionalReestabInfoList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalReestabInfoList }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_serviceType_01_vals[] = { + { 0, "qoe" }, + { 1, "qoemtsi" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_ReestablishmentInfo(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_lte_rrc_ReestablishmentInfo, ReestablishmentInfo_sequence); +dissect_lte_rrc_T_serviceType_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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t AS_Context_sequence[] = { - { &hf_lte_rrc_reestablishmentInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ReestablishmentInfo }, +static const per_sequence_t T_setup_154_sequence[] = { + { &hf_lte_rrc_measConfigAppLayerContainer_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_1_1000 }, + { &hf_lte_rrc_serviceType_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_serviceType_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Context(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_154(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_lte_rrc_AS_Context, AS_Context_sequence); + ett_lte_rrc_T_setup_154, T_setup_154_sequence); return offset; } -static const value_string lte_rrc_T_ue_ConfigRelease_r9_vals[] = { - { 0, "rel9" }, - { 1, "rel10" }, - { 2, "rel11" }, - { 3, "rel12" }, - { 4, "v10j0" }, - { 5, "v11e0" }, - { 6, "v1280" }, - { 7, "rel13" }, - { 8, "rel14" }, - { 9, "rel15" }, +static const value_string lte_rrc_T_measConfigAppLayer_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t T_measConfigAppLayer_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_176 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_154 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_ue_ConfigRelease_r9(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, - 8, NULL, TRUE, 2, NULL); +dissect_lte_rrc_T_measConfigAppLayer_r15(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_lte_rrc_T_measConfigAppLayer_r15, T_measConfigAppLayer_r15_choice, + NULL); return offset; } +static const per_sequence_t OtherConfig_r9_eag_4_sequence[] = { + { &hf_lte_rrc_measConfigAppLayer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measConfigAppLayer_r15 }, + { &hf_lte_rrc_ailc_BitConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_bt_NameListConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BT_NameListConfig_r15 }, + { &hf_lte_rrc_wlan_NameListConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_NameListConfig_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_lateNonCriticalExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_HandoverPreparationInformation_v9j0_IEs_PDU); +dissect_lte_rrc_OtherConfig_r9_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, OtherConfig_r9_eag_4_sequence); return offset; } -static const per_sequence_t AS_Config_v9e0_sequence[] = { - { &hf_lte_rrc_sourceDl_CarrierFreq_v9e0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, +static const per_sequence_t OtherConfig_r9_sequence[] = { + { &hf_lte_rrc_reportProximityConfig_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_ReportProximityConfig_r9 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherConfig_r9_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherConfig_r9_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherConfig_r9_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherConfig_r9_eag_4 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Config_v9e0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_OtherConfig_r9(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_lte_rrc_AS_Config_v9e0, AS_Config_v9e0_sequence); + ett_lte_rrc_OtherConfig_r9, OtherConfig_r9_sequence); return offset; } +static const per_sequence_t AS_Config_eag_1_sequence[] = { + { &hf_lte_rrc_sourceSystemInformationBlockType1Ext, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sourceSystemInformationBlockType1Ext }, + { &hf_lte_rrc_sourceOtherConfig_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherConfig_r9 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_idc_Indication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_InDeviceCoexIndication_r11_PDU); +dissect_lte_rrc_AS_Config_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Config_eag_1_sequence); return offset; } @@ -39777,389 +43519,394 @@ dissect_lte_rrc_T_idc_Indication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int -dissect_lte_rrc_T_mbmsInterestIndication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_MBMSInterestIndication_r11_PDU); +dissect_lte_rrc_SCellIndex_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 7U, NULL, FALSE); return offset; } +static const per_sequence_t T_cellIdentification_r10_sequence[] = { + { &hf_lte_rrc_physCellId_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_dl_CarrierFreq_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_powerPrefIndication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UEAssistanceInformation_r11_PDU); +dissect_lte_rrc_T_cellIdentification_r10(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_lte_rrc_T_cellIdentification_r10, T_cellIdentification_r10_sequence); return offset; } +static const value_string lte_rrc_T_dl_Bandwidth_r10_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_sidelinkUEInformation_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SidelinkUEInformation_r12_PDU); +dissect_lte_rrc_T_dl_Bandwidth_r10(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, + 6, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t AS_Context_v1130_eag_1_sequence[] = { - { &hf_lte_rrc_sidelinkUEInformation_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sidelinkUEInformation_r12 }, +static const per_sequence_t T_nonUL_Configuration_r10_01_sequence[] = { + { &hf_lte_rrc_dl_Bandwidth_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_Bandwidth_r10 }, + { &hf_lte_rrc_antennaInfoCommon_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AntennaInfoCommon }, + { &hf_lte_rrc_mbsfn_SubframeConfigList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList }, + { &hf_lte_rrc_phich_Config_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PHICH_Config }, + { &hf_lte_rrc_pdsch_ConfigCommon_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDSCH_ConfigCommon }, + { &hf_lte_rrc_tdd_Config_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Context_v1130_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Context_v1130_eag_1_sequence); +dissect_lte_rrc_T_nonUL_Configuration_r10_01(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_lte_rrc_T_nonUL_Configuration_r10_01, T_nonUL_Configuration_r10_01_sequence); return offset; } +static const value_string lte_rrc_T_ul_Bandwidth_r10_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_sourceContextENDC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *scg_config_info_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &scg_config_info_tvb); +static int +dissect_lte_rrc_T_ul_Bandwidth_r10(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, + 6, NULL, FALSE, 0, NULL); + return offset; +} - if (scg_config_info_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_sourceContextENDC_r15); - dissect_nr_rrc_ConfigRestrictInfoSCG_PDU(scg_config_info_tvb, actx->pinfo, subtree, NULL); - } +static const per_sequence_t T_ul_FreqInfo_r10_sequence[] = { + { &hf_lte_rrc_ul_CarrierFreq_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &hf_lte_rrc_ul_Bandwidth_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth_r10 }, + { &hf_lte_rrc_additionalSpectrumEmissionSCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, + { NULL, 0, 0, NULL } +}; +static int +dissect_lte_rrc_T_ul_FreqInfo_r10(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_lte_rrc_T_ul_FreqInfo_r10, T_ul_FreqInfo_r10_sequence); return offset; } -static const per_sequence_t AS_Context_v1130_eag_2_sequence[] = { - { &hf_lte_rrc_sourceContextENDC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sourceContextENDC_r15 }, +static const per_sequence_t UplinkPowerControlCommonSCell_r10_sequence[] = { + { &hf_lte_rrc_p0_NominalPUSCH_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, + { &hf_lte_rrc_alpha_r10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Alpha_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Context_v1130_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Context_v1130_eag_2_sequence); +dissect_lte_rrc_UplinkPowerControlCommonSCell_r10(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_lte_rrc_UplinkPowerControlCommonSCell_r10, UplinkPowerControlCommonSCell_r10_sequence); return offset; } -static const per_sequence_t AS_Context_v1130_sequence[] = { - { &hf_lte_rrc_idc_Indication_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_idc_Indication_r11 }, - { &hf_lte_rrc_mbmsInterestIndication_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_mbmsInterestIndication_r11 }, - { &hf_lte_rrc_powerPrefIndication_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_powerPrefIndication_r11 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Context_v1130_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Context_v1130_eag_2 }, +static const per_sequence_t PRACH_ConfigSCell_r10_sequence[] = { + { &hf_lte_rrc_prach_ConfigIndex_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Context_v1130(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PRACH_ConfigSCell_r10(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_lte_rrc_AS_Context_v1130, AS_Context_v1130_sequence); + ett_lte_rrc_PRACH_ConfigSCell_r10, PRACH_ConfigSCell_r10_sequence); return offset; } -static const per_sequence_t T_thresholdRSRP_r12_sequence[] = { - { &hf_lte_rrc_thresholdRSRP_Low_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_thresholdRSRP_High_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, +static const per_sequence_t T_ul_Configuration_r10_01_sequence[] = { + { &hf_lte_rrc_ul_FreqInfo_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_FreqInfo_r10 }, + { &hf_lte_rrc_p_Max_r10 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_uplinkPowerControlCommonSCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UplinkPowerControlCommonSCell_r10 }, + { &hf_lte_rrc_soundingRS_UL_ConfigCommon_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_UL_ConfigCommon }, + { &hf_lte_rrc_ul_CyclicPrefixLength_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CyclicPrefixLength }, + { &hf_lte_rrc_prach_ConfigSCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ConfigSCell_r10 }, + { &hf_lte_rrc_pusch_ConfigCommon_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PUSCH_ConfigCommon }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_thresholdRSRP_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_Configuration_r10_01(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_lte_rrc_T_thresholdRSRP_r12, T_thresholdRSRP_r12_sequence); + ett_lte_rrc_T_ul_Configuration_r10_01, T_ul_Configuration_r10_01_sequence); return offset; } -static const per_sequence_t T_thresholdRSRQ_r12_sequence[] = { - { &hf_lte_rrc_thresholdRSRQ_Low_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, - { &hf_lte_rrc_thresholdRSRQ_High_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, +static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_1_sequence[] = { + { &hf_lte_rrc_ul_CarrierFreq_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_thresholdRSRQ_r12(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_lte_rrc_T_thresholdRSRQ_r12, T_thresholdRSRQ_r12_sequence); +dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_1_sequence); return offset; } -static const per_sequence_t T_thresholdRSRQ_OnAllSymbolsWithWB_r12_sequence[] = { - { &hf_lte_rrc_thresholdRSRQ_OnAllSymbolsWithWB_Low_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, - { &hf_lte_rrc_thresholdRSRQ_OnAllSymbolsWithWB_High_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, +static const per_sequence_t T_ra_SupervisionInfo_r11_sequence[] = { + { &hf_lte_rrc_preambleTransMax_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PreambleTransMax }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_thresholdRSRQ_OnAllSymbolsWithWB_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ra_SupervisionInfo_r11(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_lte_rrc_T_thresholdRSRQ_OnAllSymbolsWithWB_r12, T_thresholdRSRQ_OnAllSymbolsWithWB_r12_sequence); + ett_lte_rrc_T_ra_SupervisionInfo_r11, T_ra_SupervisionInfo_r11_sequence); return offset; } -static const per_sequence_t T_thresholdRSRQ_OnAllSymbols_r12_sequence[] = { - { &hf_lte_rrc_thresholdRSRQ_OnAllSymbolsLow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, - { &hf_lte_rrc_thresholdRSRQ_OnAllSymbolsHigh_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, +static const per_sequence_t RACH_ConfigCommonSCell_r11_sequence[] = { + { &hf_lte_rrc_powerRampingParameters_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PowerRampingParameters }, + { &hf_lte_rrc_ra_SupervisionInfo_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ra_SupervisionInfo_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_thresholdRSRQ_OnAllSymbols_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RACH_ConfigCommonSCell_r11(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_lte_rrc_T_thresholdRSRQ_OnAllSymbols_r12, T_thresholdRSRQ_OnAllSymbols_r12_sequence); + ett_lte_rrc_RACH_ConfigCommonSCell_r11, RACH_ConfigCommonSCell_r11_sequence); return offset; } -static const per_sequence_t T_thresholdRSRQ_WB_r12_sequence[] = { - { &hf_lte_rrc_thresholdRSRQ_WB_Low_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, - { &hf_lte_rrc_thresholdRSRQ_WB_High_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, +static const per_sequence_t PRACH_Config_sequence[] = { + { &hf_lte_rrc_rootSequenceIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_837 }, + { &hf_lte_rrc_prach_ConfigInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ConfigInfo }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_thresholdRSRQ_WB_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PRACH_Config(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_lte_rrc_T_thresholdRSRQ_WB_r12, T_thresholdRSRQ_WB_r12_sequence); + ett_lte_rrc_PRACH_Config, PRACH_Config_sequence); return offset; } +static const per_sequence_t UplinkPowerControlCommonSCell_v1130_sequence[] = { + { &hf_lte_rrc_deltaPreambleMsg3_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M1_6 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_thresholdChannelUtilizationLow_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 255U, NULL, FALSE); - - proto_item_append_text(actx->created_item, " (BSS load)"); - +dissect_lte_rrc_UplinkPowerControlCommonSCell_v1130(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_lte_rrc_UplinkPowerControlCommonSCell_v1130, UplinkPowerControlCommonSCell_v1130_sequence); return offset; } +static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_2_sequence[] = { + { &hf_lte_rrc_rach_ConfigCommonSCell_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_ConfigCommonSCell_r11 }, + { &hf_lte_rrc_prach_ConfigSCell_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_Config }, + { &hf_lte_rrc_tdd_Config_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1130 }, + { &hf_lte_rrc_uplinkPowerControlCommonSCell_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommonSCell_v1130 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_thresholdChannelUtilizationHigh_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 255U, NULL, FALSE); - - proto_item_append_text(actx->created_item, " (BSS load)"); - +dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_2_sequence); return offset; } -static const per_sequence_t T_thresholdChannelUtilization_r12_sequence[] = { - { &hf_lte_rrc_thresholdChannelUtilizationLow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_thresholdChannelUtilizationLow_r12 }, - { &hf_lte_rrc_thresholdChannelUtilizationHigh_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_thresholdChannelUtilizationHigh_r12 }, +static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_3_sequence[] = { + { &hf_lte_rrc_pusch_ConfigCommon_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigCommon_v1270 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_thresholdChannelUtilization_r12(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_lte_rrc_T_thresholdChannelUtilization_r12, T_thresholdChannelUtilization_r12_sequence); +dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_3_sequence); return offset; } -static const value_string lte_rrc_WLAN_backhaulRate_r12_vals[] = { - { 0, "r0" }, - { 1, "r4" }, - { 2, "r8" }, - { 3, "r16" }, - { 4, "r32" }, - { 5, "r64" }, - { 6, "r128" }, - { 7, "r256" }, - { 8, "r512" }, - { 9, "r1024" }, - { 10, "r2048" }, - { 11, "r4096" }, - { 12, "r8192" }, - { 13, "r16384" }, - { 14, "r32768" }, - { 15, "r65536" }, - { 16, "r131072" }, - { 17, "r262144" }, - { 18, "r524288" }, - { 19, "r1048576" }, - { 20, "r2097152" }, - { 21, "r4194304" }, - { 22, "r8388608" }, - { 23, "r16777216" }, - { 24, "r33554432" }, - { 25, "r67108864" }, - { 26, "r134217728" }, - { 27, "r268435456" }, - { 28, "r536870912" }, - { 29, "r1073741824" }, - { 30, "r2147483648" }, - { 31, "r4294967296" }, +static const value_string lte_rrc_T_deltaF_PUCCH_Format3_r12_01_vals[] = { + { 0, "deltaF-1" }, + { 1, "deltaF0" }, + { 2, "deltaF1" }, + { 3, "deltaF2" }, + { 4, "deltaF3" }, + { 5, "deltaF4" }, + { 6, "deltaF5" }, + { 7, "deltaF6" }, { 0, NULL } }; -static value_string_ext lte_rrc_WLAN_backhaulRate_r12_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_WLAN_backhaulRate_r12_vals); - static int -dissect_lte_rrc_WLAN_backhaulRate_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaF_PUCCH_Format3_r12_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, - 32, NULL, FALSE, 0, NULL); - - proto_item_append_text(actx->created_item, "Kbps"); - + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_thresholdBackhaul_Bandwidth_r12_sequence[] = { - { &hf_lte_rrc_thresholdBackhaulDL_BandwidthLow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_backhaulRate_r12 }, - { &hf_lte_rrc_thresholdBackhaulDL_BandwidthHigh_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_backhaulRate_r12 }, - { &hf_lte_rrc_thresholdBackhaulUL_BandwidthLow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_backhaulRate_r12 }, - { &hf_lte_rrc_thresholdBackhaulUL_BandwidthHigh_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_backhaulRate_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaF_PUCCH_Format1bCS_r12_01_vals[] = { + { 0, "deltaF1" }, + { 1, "deltaF2" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_thresholdBackhaul_Bandwidth_r12(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_lte_rrc_T_thresholdBackhaul_Bandwidth_r12, T_thresholdBackhaul_Bandwidth_r12_sequence); +dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r12_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 per_sequence_t T_thresholdWLAN_RSSI_r12_sequence[] = { - { &hf_lte_rrc_thresholdWLAN_RSSI_Low_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_255 }, - { &hf_lte_rrc_thresholdWLAN_RSSI_High_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_255 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaF_PUCCH_Format4_r13_01_vals[] = { + { 0, "deltaF16" }, + { 1, "deltaF15" }, + { 2, "deltaF14" }, + { 3, "deltaF13" }, + { 4, "deltaF12" }, + { 5, "deltaF11" }, + { 6, "deltaF10" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_thresholdWLAN_RSSI_r12(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_lte_rrc_T_thresholdWLAN_RSSI_r12, T_thresholdWLAN_RSSI_r12_sequence); +dissect_lte_rrc_T_deltaF_PUCCH_Format4_r13_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, + 8, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_deltaF_PUCCH_Format5_13_01_vals[] = { + { 0, "deltaF13" }, + { 1, "deltaF12" }, + { 2, "deltaF11" }, + { 3, "deltaF10" }, + { 4, "deltaF9" }, + { 5, "deltaF8" }, + { 6, "deltaF7" }, + { 7, "spare1" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_Reselection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 7U, NULL, FALSE); +dissect_lte_rrc_T_deltaF_PUCCH_Format5_13_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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t WLAN_OffloadConfig_r12_sequence[] = { - { &hf_lte_rrc_thresholdRSRP_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdRSRP_r12 }, - { &hf_lte_rrc_thresholdRSRQ_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdRSRQ_r12 }, - { &hf_lte_rrc_thresholdRSRQ_OnAllSymbolsWithWB_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdRSRQ_OnAllSymbolsWithWB_r12 }, - { &hf_lte_rrc_thresholdRSRQ_OnAllSymbols_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdRSRQ_OnAllSymbols_r12 }, - { &hf_lte_rrc_thresholdRSRQ_WB_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdRSRQ_WB_r12 }, - { &hf_lte_rrc_thresholdChannelUtilization_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdChannelUtilization_r12 }, - { &hf_lte_rrc_thresholdBackhaul_Bandwidth_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdBackhaul_Bandwidth_r12 }, - { &hf_lte_rrc_thresholdWLAN_RSSI_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdWLAN_RSSI_r12 }, - { &hf_lte_rrc_offloadPreferenceIndicator_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { &hf_lte_rrc_t_SteeringWLAN_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_Reselection }, +static const per_sequence_t UplinkPowerControlCommonSCell_v1310_sequence[] = { + { &hf_lte_rrc_p0_NominalPUCCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M127_M96 }, + { &hf_lte_rrc_deltaFList_PUCCH, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DeltaFList_PUCCH }, + { &hf_lte_rrc_deltaF_PUCCH_Format3_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format3_r12_01 }, + { &hf_lte_rrc_deltaF_PUCCH_Format1bCS_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r12_01 }, + { &hf_lte_rrc_deltaF_PUCCH_Format4_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format4_r13_01 }, + { &hf_lte_rrc_deltaF_PUCCH_Format5_13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format5_13_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_WLAN_OffloadConfig_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UplinkPowerControlCommonSCell_v1310(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_lte_rrc_WLAN_OffloadConfig_r12, WLAN_OffloadConfig_r12_sequence); + ett_lte_rrc_UplinkPowerControlCommonSCell_v1310, UplinkPowerControlCommonSCell_v1310_sequence); return offset; } -static const per_sequence_t MAC_MainConfigSL_r12_sequence[] = { - { &hf_lte_rrc_periodic_BSR_TimerSL, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PeriodicBSR_Timer_r12 }, - { &hf_lte_rrc_retx_BSR_TimerSL, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RetxBSR_Timer_r12 }, +static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_4_sequence[] = { + { &hf_lte_rrc_pucch_ConfigCommon_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon }, + { &hf_lte_rrc_uplinkPowerControlCommonSCell_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommonSCell_v1310 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MAC_MainConfigSL_r12(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_lte_rrc_MAC_MainConfigSL_r12, MAC_MainConfigSL_r12_sequence); +dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_4_sequence); return offset; } -static const value_string lte_rrc_SL_CP_Len_r12_vals[] = { - { 0, "normal" }, - { 1, "extended" }, +static const value_string lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14_01_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_SL_CP_Len_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14_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, - 2, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_SL_PeriodComm_r12_vals[] = { - { 0, "sf40" }, - { 1, "sf60" }, - { 2, "sf70" }, - { 3, "sf80" }, - { 4, "sf120" }, - { 5, "sf140" }, - { 6, "sf160" }, - { 7, "sf240" }, - { 8, "sf280" }, - { 9, "sf320" }, - { 10, "spare6" }, - { 11, "spare5" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare" }, - { 0, NULL } +static const per_sequence_t HighSpeedConfigSCell_r14_sequence[] = { + { &hf_lte_rrc_highSpeedEnhancedDemodulationFlag_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14_01 }, + { NULL, 0, 0, NULL } }; -static value_string_ext lte_rrc_SL_PeriodComm_r12_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_SL_PeriodComm_r12_vals); - - static int -dissect_lte_rrc_SL_PeriodComm_r12(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_HighSpeedConfigSCell_r14(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_lte_rrc_HighSpeedConfigSCell_r14, HighSpeedConfigSCell_r14_sequence); return offset; } @@ -40167,672 +43914,763 @@ dissect_lte_rrc_SL_PeriodComm_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int -dissect_lte_rrc_INTEGER_0_99(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ARFCN_ValueEUTRA_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 99U, NULL, FALSE); + 0U, maxEARFCN2, NULL, FALSE); return offset; } +static const value_string lte_rrc_T_ul_Bandwidth_r14_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_0_319(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 319U, NULL, FALSE); +dissect_lte_rrc_T_ul_Bandwidth_r14(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, + 6, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_SL_OffsetIndicator_r12_vals[] = { - { 0, "small-r12" }, - { 1, "large-r12" }, - { 0, NULL } -}; - -static const per_choice_t SL_OffsetIndicator_r12_choice[] = { - { 0, &hf_lte_rrc_small_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, - { 1, &hf_lte_rrc_large_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_10239 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_ul_FreqInfo_r14_sequence[] = { + { &hf_lte_rrc_ul_CarrierFreq_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_ul_Bandwidth_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth_r14 }, + { &hf_lte_rrc_additionalSpectrumEmissionSCell_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_OffsetIndicator_r12(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_lte_rrc_SL_OffsetIndicator_r12, SL_OffsetIndicator_r12_choice, - NULL); +dissect_lte_rrc_T_ul_FreqInfo_r14(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_lte_rrc_T_ul_FreqInfo_r14, T_ul_FreqInfo_r14_sequence); return offset; } +static const per_sequence_t UplinkPowerControlCommonPUSCH_LessCell_v1430_sequence[] = { + { &hf_lte_rrc_p0_Nominal_PeriodicSRS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M126_24 }, + { &hf_lte_rrc_p0_Nominal_AperiodicSRS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M126_24 }, + { &hf_lte_rrc_alpha_SRS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Alpha_r12 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_12(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, - 12, 12, FALSE, NULL, NULL); +dissect_lte_rrc_UplinkPowerControlCommonPUSCH_LessCell_v1430(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_lte_rrc_UplinkPowerControlCommonPUSCH_LessCell_v1430, UplinkPowerControlCommonPUSCH_LessCell_v1430_sequence); return offset; } +static const per_sequence_t T_ul_Configuration_r14_sequence[] = { + { &hf_lte_rrc_ul_FreqInfo_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_FreqInfo_r14 }, + { &hf_lte_rrc_p_Max_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_soundingRS_UL_ConfigCommon_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_UL_ConfigCommon }, + { &hf_lte_rrc_ul_CyclicPrefixLength_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CyclicPrefixLength }, + { &hf_lte_rrc_prach_ConfigSCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ConfigSCell_r10 }, + { &hf_lte_rrc_uplinkPowerControlCommonPUSCH_LessCell_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommonPUSCH_LessCell_v1430 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_30(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, - 30, 30, FALSE, NULL, NULL); +dissect_lte_rrc_T_ul_Configuration_r14(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_lte_rrc_T_ul_Configuration_r14, T_ul_Configuration_r14_sequence); return offset; } +static const value_string lte_rrc_T_harq_ReferenceConfig_r14_vals[] = { + { 0, "sa2" }, + { 1, "sa4" }, + { 2, "sa5" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_BIT_STRING_SIZE_42(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, - 42, 42, FALSE, NULL, NULL); +dissect_lte_rrc_T_harq_ReferenceConfig_r14(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_SubframeBitmapSL_r12_vals[] = { - { 0, "bs4-r12" }, - { 1, "bs8-r12" }, - { 2, "bs12-r12" }, - { 3, "bs16-r12" }, - { 4, "bs30-r12" }, - { 5, "bs40-r12" }, - { 6, "bs42-r12" }, +static const value_string lte_rrc_T_soundingRS_FlexibleTiming_r14_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t SubframeBitmapSL_r12_choice[] = { - { 0, &hf_lte_rrc_bs4_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_4 }, - { 1, &hf_lte_rrc_bs8_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_8 }, - { 2, &hf_lte_rrc_bs12_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_12 }, - { 3, &hf_lte_rrc_bs16_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { 4, &hf_lte_rrc_bs30_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_30 }, - { 5, &hf_lte_rrc_bs40_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_40 }, - { 6, &hf_lte_rrc_bs42_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_42 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_SubframeBitmapSL_r12(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_lte_rrc_SubframeBitmapSL_r12, SubframeBitmapSL_r12_choice, - NULL); +dissect_lte_rrc_T_soundingRS_FlexibleTiming_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_TF_ResourceConfig_r12_sequence[] = { - { &hf_lte_rrc_prb_Num_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_100 }, - { &hf_lte_rrc_prb_Start_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_99 }, - { &hf_lte_rrc_prb_End_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_99 }, - { &hf_lte_rrc_offsetIndicator_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_OffsetIndicator_r12 }, - { &hf_lte_rrc_subframeBitmap_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SubframeBitmapSL_r12 }, +static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_5_sequence[] = { + { &hf_lte_rrc_highSpeedConfigSCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HighSpeedConfigSCell_r14 }, + { &hf_lte_rrc_prach_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_Config_v1430 }, + { &hf_lte_rrc_ul_Configuration_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Configuration_r14 }, + { &hf_lte_rrc_harq_ReferenceConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_harq_ReferenceConfig_r14 }, + { &hf_lte_rrc_soundingRS_FlexibleTiming_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_soundingRS_FlexibleTiming_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_TF_ResourceConfig_r12(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_lte_rrc_SL_TF_ResourceConfig_r12, SL_TF_ResourceConfig_r12_sequence); +dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_5_sequence); return offset; } +static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_6_sequence[] = { + { &hf_lte_rrc_mbsfn_SubframeConfigList_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_SubframeConfigList_v1430 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_504(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 504U, NULL, FALSE); +dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_6_sequence); return offset; } -static const value_string lte_rrc_T_numSubbands_r12_vals[] = { - { 0, "ns1" }, - { 1, "ns2" }, - { 2, "ns4" }, +static const value_string lte_rrc_T_deltaF_slotSPUCCH_Format1_r15_vals[] = { + { 0, "deltaF-1" }, + { 1, "deltaF0" }, + { 2, "deltaF1" }, + { 3, "deltaF2" }, + { 4, "deltaF3" }, + { 5, "deltaF4" }, + { 6, "deltaF5" }, + { 7, "deltaF6" }, { 0, NULL } }; static int -dissect_lte_rrc_T_numSubbands_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaF_slotSPUCCH_Format1_r15(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, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_deltaF_slotSPUCCH_Format1a_r15_vals[] = { + { 0, "deltaF1" }, + { 1, "deltaF2" }, + { 2, "deltaF3" }, + { 3, "deltaF4" }, + { 4, "deltaF5" }, + { 5, "deltaF6" }, + { 6, "deltaF7" }, + { 7, "deltaF8" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_0_110(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 110U, NULL, FALSE); +dissect_lte_rrc_T_deltaF_slotSPUCCH_Format1a_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_HoppingConfigComm_r12_sequence[] = { - { &hf_lte_rrc_hoppingParameter_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_504 }, - { &hf_lte_rrc_numSubbands_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numSubbands_r12 }, - { &hf_lte_rrc_rb_Offset_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_110 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaF_slotSPUCCH_Format1b_r15_vals[] = { + { 0, "deltaF3" }, + { 1, "deltaF4" }, + { 2, "deltaF5" }, + { 3, "deltaF6" }, + { 4, "deltaF7" }, + { 5, "deltaF8" }, + { 6, "deltaF9" }, + { 7, "deltaF10" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_HoppingConfigComm_r12(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_lte_rrc_SL_HoppingConfigComm_r12, SL_HoppingConfigComm_r12_sequence); +dissect_lte_rrc_T_deltaF_slotSPUCCH_Format1b_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_deltaF_slotSPUCCH_Format3_r15_vals[] = { + { 0, "deltaF4" }, + { 1, "deltaF5" }, + { 2, "deltaF6" }, + { 3, "deltaF7" }, + { 4, "deltaF8" }, + { 5, "deltaF9" }, + { 6, "deltaF10" }, + { 7, "deltaF11" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_SL_TRPT_Subset_r12(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, - 3, 5, FALSE, NULL, NULL); +dissect_lte_rrc_T_deltaF_slotSPUCCH_Format3_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_ue_SelectedResourceConfig_r12_sequence[] = { - { &hf_lte_rrc_data_TF_ResourceConfig_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_ResourceConfig_r12 }, - { &hf_lte_rrc_trpt_Subset_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TRPT_Subset_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaF_slotSPUCCH_RM_Format4_r15_vals[] = { + { 0, "deltaF13" }, + { 1, "deltaF14" }, + { 2, "deltaF15" }, + { 3, "deltaF16" }, + { 4, "deltaF17" }, + { 5, "deltaF18" }, + { 6, "deltaF19" }, + { 7, "deltaF20" }, + { 0, NULL } }; -static int -dissect_lte_rrc_T_ue_SelectedResourceConfig_r12(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_lte_rrc_T_ue_SelectedResourceConfig_r12, T_ue_SelectedResourceConfig_r12_sequence); + +static int +dissect_lte_rrc_T_deltaF_slotSPUCCH_RM_Format4_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_rxParametersNCell_r12_sequence[] = { - { &hf_lte_rrc_tdd_Config_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, - { &hf_lte_rrc_syncConfigIndex_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaF_slotSPUCCH_TBCC_Format4_r15_vals[] = { + { 0, "deltaF10" }, + { 1, "deltaF11" }, + { 2, "deltaF12" }, + { 3, "deltaF13" }, + { 4, "deltaF14" }, + { 5, "deltaF15" }, + { 6, "deltaF16" }, + { 7, "deltaF17" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_rxParametersNCell_r12(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_lte_rrc_T_rxParametersNCell_r12, T_rxParametersNCell_r12_sequence); +dissect_lte_rrc_T_deltaF_slotSPUCCH_TBCC_Format4_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_deltaF_subslotSPUCCH_Format1and1a_r15_vals[] = { + { 0, "deltaF5" }, + { 1, "deltaF6" }, + { 2, "deltaF7" }, + { 3, "deltaF8" }, + { 4, "deltaF9" }, + { 5, "deltaF10" }, + { 6, "deltaF11" }, + { 7, "deltaF12" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_P0_SL_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -126, 31U, NULL, FALSE); +dissect_lte_rrc_T_deltaF_subslotSPUCCH_Format1and1a_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_TxParameters_r12_sequence[] = { - { &hf_lte_rrc_alpha_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Alpha_r12 }, - { &hf_lte_rrc_p0_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_P0_SL_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaF_subslotSPUCCH_Format1b_r15_vals[] = { + { 0, "deltaF6" }, + { 1, "deltaF7" }, + { 2, "deltaF8" }, + { 3, "deltaF9" }, + { 4, "deltaF10" }, + { 5, "deltaF11" }, + { 6, "deltaF12" }, + { 7, "deltaF13" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_TxParameters_r12(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_lte_rrc_SL_TxParameters_r12, SL_TxParameters_r12_sequence); +dissect_lte_rrc_T_deltaF_subslotSPUCCH_Format1b_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_txParameters_r12_sequence[] = { - { &hf_lte_rrc_sc_TxParameters_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxParameters_r12 }, - { &hf_lte_rrc_dataTxParameters_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxParameters_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaF_subslotSPUCCH_RM_Format4_r15_vals[] = { + { 0, "deltaF15" }, + { 1, "deltaF16" }, + { 2, "deltaF17" }, + { 3, "deltaF18" }, + { 4, "deltaF19" }, + { 5, "deltaF20" }, + { 6, "deltaF21" }, + { 7, "deltaF22" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_txParameters_r12(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_lte_rrc_T_txParameters_r12, T_txParameters_r12_sequence); +dissect_lte_rrc_T_deltaF_subslotSPUCCH_RM_Format4_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_deltaF_subslotSPUCCH_TBCC_Format4_r15_vals[] = { + { 0, "deltaF10" }, + { 1, "deltaF11" }, + { 2, "deltaF12" }, + { 3, "deltaF13" }, + { 4, "deltaF14" }, + { 5, "deltaF15" }, + { 6, "deltaF16" }, + { 7, "deltaF17" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_SL_Priority_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 8U, NULL, FALSE); +dissect_lte_rrc_T_deltaF_subslotSPUCCH_TBCC_Format4_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_PriorityList_r13_sequence_of[1] = { - { &hf_lte_rrc_SL_PriorityList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_Priority_r13 }, +static const per_sequence_t T_setup_139_sequence[] = { + { &hf_lte_rrc_deltaF_slotSPUCCH_Format1_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_slotSPUCCH_Format1_r15 }, + { &hf_lte_rrc_deltaF_slotSPUCCH_Format1a_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_slotSPUCCH_Format1a_r15 }, + { &hf_lte_rrc_deltaF_slotSPUCCH_Format1b_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_slotSPUCCH_Format1b_r15 }, + { &hf_lte_rrc_deltaF_slotSPUCCH_Format3_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_slotSPUCCH_Format3_r15 }, + { &hf_lte_rrc_deltaF_slotSPUCCH_RM_Format4_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_slotSPUCCH_RM_Format4_r15 }, + { &hf_lte_rrc_deltaF_slotSPUCCH_TBCC_Format4_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_slotSPUCCH_TBCC_Format4_r15 }, + { &hf_lte_rrc_deltaF_subslotSPUCCH_Format1and1a_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_subslotSPUCCH_Format1and1a_r15 }, + { &hf_lte_rrc_deltaF_subslotSPUCCH_Format1b_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_subslotSPUCCH_Format1b_r15 }, + { &hf_lte_rrc_deltaF_subslotSPUCCH_RM_Format4_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_subslotSPUCCH_RM_Format4_r15 }, + { &hf_lte_rrc_deltaF_subslotSPUCCH_TBCC_Format4_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_subslotSPUCCH_TBCC_Format4_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_PriorityList_r13(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_lte_rrc_SL_PriorityList_r13, SL_PriorityList_r13_sequence_of, - 1, maxSL_Prio_r13, FALSE); +dissect_lte_rrc_T_setup_139(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_lte_rrc_T_setup_139, T_setup_139_sequence); return offset; } -static const per_sequence_t SL_CommResourcePool_r12_eag_1_sequence[] = { - { &hf_lte_rrc_priorityList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_PriorityList_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_DeltaFList_SPUCCH_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t DeltaFList_SPUCCH_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_154 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_139 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_CommResourcePool_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_CommResourcePool_r12_eag_1_sequence); +dissect_lte_rrc_DeltaFList_SPUCCH_r15(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_lte_rrc_DeltaFList_SPUCCH_r15, DeltaFList_SPUCCH_r15_choice, + NULL); return offset; } -static const per_sequence_t SL_CommResourcePool_r12_sequence[] = { - { &hf_lte_rrc_sc_CP_Len_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CP_Len_r12 }, - { &hf_lte_rrc_sc_Period_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PeriodComm_r12 }, - { &hf_lte_rrc_sc_TF_ResourceConfig_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_ResourceConfig_r12 }, - { &hf_lte_rrc_data_CP_Len_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CP_Len_r12 }, - { &hf_lte_rrc_dataHoppingConfig_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_HoppingConfigComm_r12 }, - { &hf_lte_rrc_ue_SelectedResourceConfig_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_SelectedResourceConfig_r12 }, - { &hf_lte_rrc_rxParametersNCell_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParametersNCell_r12 }, - { &hf_lte_rrc_txParameters_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_txParameters_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12_eag_1 }, +static const per_sequence_t UplinkPowerControlCommon_v1530_sequence[] = { + { &hf_lte_rrc_deltaFList_SPUCCH_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DeltaFList_SPUCCH_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommResourcePool_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UplinkPowerControlCommon_v1530(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_lte_rrc_SL_CommResourcePool_r12, SL_CommResourcePool_r12_sequence); + ett_lte_rrc_UplinkPowerControlCommon_v1530, UplinkPowerControlCommon_v1530_sequence); return offset; } +static const per_sequence_t RadioResourceConfigCommonSCell_r10_eag_7_sequence[] = { + { &hf_lte_rrc_uplinkPowerControlCommonSCell_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1530 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 28U, NULL, FALSE); +dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSCell_r10_eag_7_sequence); return offset; } -static const per_sequence_t T_scheduled_r12_sequence[] = { - { &hf_lte_rrc_sl_RNTI_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, - { &hf_lte_rrc_mac_MainConfig_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfigSL_r12 }, - { &hf_lte_rrc_sc_CommTxConfig_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, - { &hf_lte_rrc_mcs_r12 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_28 }, +static const per_sequence_t RadioResourceConfigCommonSCell_r10_sequence[] = { + { &hf_lte_rrc_nonUL_Configuration_r10_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nonUL_Configuration_r10_01 }, + { &hf_lte_rrc_ul_Configuration_r10_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Configuration_r10_01 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10_eag_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_scheduled_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RadioResourceConfigCommonSCell_r10(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_lte_rrc_T_scheduled_r12, T_scheduled_r12_sequence); + ett_lte_rrc_RadioResourceConfigCommonSCell_r10, RadioResourceConfigCommonSCell_r10_sequence); return offset; } +static const per_sequence_t T_own_r10_sequence[] = { + { &hf_lte_rrc_cif_Presence_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_SL_TxPoolIdentity_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxSL_TxPool_r12, NULL, FALSE); +dissect_lte_rrc_T_own_r10(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_lte_rrc_T_own_r10, T_own_r10_sequence); return offset; } -static const per_sequence_t SL_TxPoolToReleaseList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_TxPoolToReleaseList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolIdentity_r12 }, -}; static int -dissect_lte_rrc_SL_TxPoolToReleaseList_r12(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_lte_rrc_SL_TxPoolToReleaseList_r12, SL_TxPoolToReleaseList_r12_sequence_of, - 1, maxSL_TxPool_r12, FALSE); +dissect_lte_rrc_ServCellIndex_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7U, NULL, FALSE); return offset; } -static const per_sequence_t SL_CommTxPoolToAddMod_r12_sequence[] = { - { &hf_lte_rrc_poolIdentity_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolIdentity_r12 }, - { &hf_lte_rrc_pool_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, +static const per_sequence_t T_other_r10_sequence[] = { + { &hf_lte_rrc_schedulingCellId_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r10 }, + { &hf_lte_rrc_pdsch_Start_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommTxPoolToAddMod_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_other_r10(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_lte_rrc_SL_CommTxPoolToAddMod_r12, SL_CommTxPoolToAddMod_r12_sequence); + ett_lte_rrc_T_other_r10, T_other_r10_sequence); return offset; } -static const per_sequence_t SL_CommTxPoolToAddModList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_CommTxPoolToAddModList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommTxPoolToAddMod_r12 }, +static const value_string lte_rrc_T_schedulingCellInfo_r10_vals[] = { + { 0, "own-r10" }, + { 1, "other-r10" }, + { 0, NULL } +}; + +static const per_choice_t T_schedulingCellInfo_r10_choice[] = { + { 0, &hf_lte_rrc_own_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_own_r10 }, + { 1, &hf_lte_rrc_other_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_other_r10 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_CommTxPoolToAddModList_r12(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_lte_rrc_SL_CommTxPoolToAddModList_r12, SL_CommTxPoolToAddModList_r12_sequence_of, - 1, maxSL_TxPool_r12, FALSE); +dissect_lte_rrc_T_schedulingCellInfo_r10(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_lte_rrc_T_schedulingCellInfo_r10, T_schedulingCellInfo_r10_choice, + NULL); return offset; } -static const per_sequence_t T_commTxPoolNormalDedicated_r12_sequence[] = { - { &hf_lte_rrc_poolToReleaseList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToReleaseList_r12 }, - { &hf_lte_rrc_poolToAddModList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolToAddModList_r12 }, +static const per_sequence_t CrossCarrierSchedulingConfig_r10_sequence[] = { + { &hf_lte_rrc_schedulingCellInfo_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_schedulingCellInfo_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_commTxPoolNormalDedicated_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CrossCarrierSchedulingConfig_r10(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_lte_rrc_T_commTxPoolNormalDedicated_r12, T_commTxPoolNormalDedicated_r12_sequence); + ett_lte_rrc_CrossCarrierSchedulingConfig_r10, CrossCarrierSchedulingConfig_r10_sequence); return offset; } -static const per_sequence_t T_ue_Selected_r12_sequence[] = { - { &hf_lte_rrc_commTxPoolNormalDedicated_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_commTxPoolNormalDedicated_r12 }, +static const per_sequence_t T_nonUL_Configuration_r10_sequence[] = { + { &hf_lte_rrc_antennaInfo_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_r10 }, + { &hf_lte_rrc_crossCarrierSchedulingConfig_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CrossCarrierSchedulingConfig_r10 }, + { &hf_lte_rrc_csi_RS_Config_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_r10 }, + { &hf_lte_rrc_pdsch_ConfigDedicated_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_ue_Selected_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonUL_Configuration_r10(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_lte_rrc_T_ue_Selected_r12, T_ue_Selected_r12_sequence); + ett_lte_rrc_T_nonUL_Configuration_r10, T_nonUL_Configuration_r10_sequence); return offset; } -static const value_string lte_rrc_T_setup_117_vals[] = { - { 0, "scheduled-r12" }, - { 1, "ue-Selected-r12" }, +static const value_string lte_rrc_T_groupHoppingDisabled_r10_01_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t T_setup_117_choice[] = { - { 0, &hf_lte_rrc_scheduled_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scheduled_r12 }, - { 1, &hf_lte_rrc_ue_Selected_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_r12 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_setup_117(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_lte_rrc_T_setup_117, T_setup_117_choice, - NULL); +dissect_lte_rrc_T_groupHoppingDisabled_r10_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_commTxResources_r12_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_dmrs_WithOCC_Activated_r10_01_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t T_commTxResources_r12_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_133 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_117 }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_lte_rrc_T_commTxResources_r12(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_lte_rrc_T_commTxResources_r12, T_commTxResources_r12_choice, - NULL); - - return offset; -} - - -static const per_sequence_t LogicalChGroupInfoList_r13_sequence_of[1] = { - { &hf_lte_rrc_LogicalChGroupInfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PriorityList_r13 }, -}; static int -dissect_lte_rrc_LogicalChGroupInfoList_r13(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_lte_rrc_LogicalChGroupInfoList_r13, LogicalChGroupInfoList_r13_sequence_of, - 1, maxLCG_r13, FALSE); +dissect_lte_rrc_T_dmrs_WithOCC_Activated_r10_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_scheduled_v1310_sequence[] = { - { &hf_lte_rrc_logicalChGroupInfoList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogicalChGroupInfoList_r13 }, - { &hf_lte_rrc_multipleTx_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t PUSCH_ConfigDedicatedSCell_r10_sequence[] = { + { &hf_lte_rrc_groupHoppingDisabled_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_groupHoppingDisabled_r10_01 }, + { &hf_lte_rrc_dmrs_WithOCC_Activated_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_WithOCC_Activated_r10_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_scheduled_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PUSCH_ConfigDedicatedSCell_r10(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_lte_rrc_T_scheduled_v1310, T_scheduled_v1310_sequence); + ett_lte_rrc_PUSCH_ConfigDedicatedSCell_r10, PUSCH_ConfigDedicatedSCell_r10_sequence); return offset; } +static const value_string lte_rrc_T_deltaMCS_Enabled_r10_vals[] = { + { 0, "en0" }, + { 1, "en1" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_SL_TxPoolIdentity_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - maxSL_TxPool_r12Plus1_r13, maxSL_TxPool_r13, NULL, FALSE); +dissect_lte_rrc_T_deltaMCS_Enabled_r10(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_TxPoolToReleaseListExt_r13_sequence_of[1] = { - { &hf_lte_rrc_SL_TxPoolToReleaseListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolIdentity_v1310 }, +static const value_string lte_rrc_T_pathlossReferenceLinking_r10_vals[] = { + { 0, "pCell" }, + { 1, "sCell" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_TxPoolToReleaseListExt_r13(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_lte_rrc_SL_TxPoolToReleaseListExt_r13, SL_TxPoolToReleaseListExt_r13_sequence_of, - 1, maxSL_TxPool_v1310, FALSE); +dissect_lte_rrc_T_pathlossReferenceLinking_r10(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_CommTxPoolToAddModExt_r13_sequence[] = { - { &hf_lte_rrc_poolIdentity_v1310, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolIdentity_v1310 }, - { &hf_lte_rrc_pool_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, +static const per_sequence_t UplinkPowerControlDedicatedSCell_r10_sequence[] = { + { &hf_lte_rrc_p0_UE_PUSCH_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_7 }, + { &hf_lte_rrc_deltaMCS_Enabled_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaMCS_Enabled_r10 }, + { &hf_lte_rrc_accumulationEnabled_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_pSRS_Offset_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_pSRS_OffsetAp_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_filterCoefficient_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FilterCoefficient }, + { &hf_lte_rrc_pathlossReferenceLinking_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pathlossReferenceLinking_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommTxPoolToAddModExt_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UplinkPowerControlDedicatedSCell_r10(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_lte_rrc_SL_CommTxPoolToAddModExt_r13, SL_CommTxPoolToAddModExt_r13_sequence); + ett_lte_rrc_UplinkPowerControlDedicatedSCell_r10, UplinkPowerControlDedicatedSCell_r10_sequence); return offset; } -static const per_sequence_t SL_CommTxPoolToAddModListExt_r13_sequence_of[1] = { - { &hf_lte_rrc_SL_CommTxPoolToAddModListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommTxPoolToAddModExt_r13 }, +static const value_string lte_rrc_T_pmi_RI_Report_r10_vals[] = { + { 0, "setup" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_CommTxPoolToAddModListExt_r13(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_lte_rrc_SL_CommTxPoolToAddModListExt_r13, SL_CommTxPoolToAddModListExt_r13_sequence_of, - 1, maxSL_TxPool_v1310, FALSE); +dissect_lte_rrc_T_pmi_RI_Report_r10(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_commTxPoolNormalDedicatedExt_r13_sequence[] = { - { &hf_lte_rrc_poolToReleaseListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToReleaseListExt_r13 }, - { &hf_lte_rrc_poolToAddModListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolToAddModListExt_r13 }, +static const per_sequence_t CQI_ReportConfigSCell_r10_sequence[] = { + { &hf_lte_rrc_cqi_ReportModeAperiodic_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportModeAperiodic }, + { &hf_lte_rrc_nomPDSCH_RS_EPRE_Offset_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M1_6 }, + { &hf_lte_rrc_cqi_ReportPeriodicSCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportPeriodic_r10 }, + { &hf_lte_rrc_pmi_RI_Report_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pmi_RI_Report_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_commTxPoolNormalDedicatedExt_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CQI_ReportConfigSCell_r10(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_lte_rrc_T_commTxPoolNormalDedicatedExt_r13, T_commTxPoolNormalDedicatedExt_r13_sequence); + ett_lte_rrc_CQI_ReportConfigSCell_r10, CQI_ReportConfigSCell_r10_sequence); return offset; } -static const per_sequence_t T_ue_Selected_v1310_sequence[] = { - { &hf_lte_rrc_commTxPoolNormalDedicatedExt_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_commTxPoolNormalDedicatedExt_r13 }, +static const per_sequence_t T_ul_Configuration_r10_sequence[] = { + { &hf_lte_rrc_antennaInfoUL_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoUL_r10 }, + { &hf_lte_rrc_pusch_ConfigDedicatedSCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicatedSCell_r10 }, + { &hf_lte_rrc_uplinkPowerControlDedicatedSCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicatedSCell_r10 }, + { &hf_lte_rrc_cqi_ReportConfigSCell_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfigSCell_r10 }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicated_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicated }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicated_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicated_v1020 }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_ue_Selected_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_Configuration_r10(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_lte_rrc_T_ue_Selected_v1310, T_ue_Selected_v1310_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_setup_118_vals[] = { - { 0, "scheduled-v1310" }, - { 1, "ue-Selected-v1310" }, - { 0, NULL } -}; - -static const per_choice_t T_setup_118_choice[] = { - { 0, &hf_lte_rrc_scheduled_v1310, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scheduled_v1310 }, - { 1, &hf_lte_rrc_ue_Selected_v1310, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_v1310 }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_lte_rrc_T_setup_118(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_lte_rrc_T_setup_118, T_setup_118_choice, - NULL); + ett_lte_rrc_T_ul_Configuration_r10, T_ul_Configuration_r10_sequence); return offset; } -static const value_string lte_rrc_T_commTxResources_v1310_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t T_commTxResources_v1310_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_134 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_118 }, - { 0, NULL, 0, NULL } +static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_1_sequence[] = { + { &hf_lte_rrc_csi_RS_ConfigNZPToReleaseList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r11 }, + { &hf_lte_rrc_csi_RS_ConfigNZPToAddModList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPToAddModList_r11 }, + { &hf_lte_rrc_csi_RS_ConfigZPToReleaseList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigZPToReleaseList_r11 }, + { &hf_lte_rrc_csi_RS_ConfigZPToAddModList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigZPToAddModList_r11 }, + { &hf_lte_rrc_epdcch_Config_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_EPDCCH_Config_r11 }, + { &hf_lte_rrc_pdsch_ConfigDedicated_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated_v1130 }, + { &hf_lte_rrc_cqi_ReportConfig_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1130 }, + { &hf_lte_rrc_pusch_ConfigDedicated_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicated_v1130 }, + { &hf_lte_rrc_uplinkPowerControlDedicatedSCell_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicated_v1130 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_commTxResources_v1310(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_lte_rrc_T_commTxResources_v1310, T_commTxResources_v1310_choice, - NULL); +dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_1_sequence); return offset; } -static const per_sequence_t SL_CommConfig_r12_eag_1_sequence[] = { - { &hf_lte_rrc_commTxResources_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResources_v1310 }, - { &hf_lte_rrc_commTxAllowRelayDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_2_sequence[] = { + { &hf_lte_rrc_antennaInfo_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v1250 }, + { &hf_lte_rrc_eimta_MainConfigSCell_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_EIMTA_MainConfigServCell_r12 }, + { &hf_lte_rrc_cqi_ReportConfigSCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1250 }, + { &hf_lte_rrc_uplinkPowerControlDedicatedSCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicated_v1250 }, + { &hf_lte_rrc_csi_RS_Config_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1250 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommConfig_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_CommConfig_r12_eag_1_sequence); +dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_2_sequence); return offset; } -static const per_sequence_t SL_CommConfig_r12_sequence[] = { - { &hf_lte_rrc_commTxResources_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResources_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommConfig_r12_eag_1 }, +static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_3_sequence[] = { + { &hf_lte_rrc_pdsch_ConfigDedicated_v1280, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated_v1280 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommConfig_r12(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_lte_rrc_SL_CommConfig_r12, SL_CommConfig_r12_sequence); +dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_3_sequence); return offset; } -static const value_string lte_rrc_T_discPeriod_r12_vals[] = { - { 0, "rf32" }, - { 1, "rf64" }, - { 2, "rf128" }, - { 3, "rf256" }, - { 4, "rf512" }, - { 5, "rf1024" }, - { 6, "rf16-v1310" }, - { 7, "spare" }, +static const value_string lte_rrc_T_pucch_Cell_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_discPeriod_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pucch_Cell_r13(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } @@ -40840,391 +44678,412 @@ dissect_lte_rrc_T_discPeriod_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int -dissect_lte_rrc_INTEGER_1_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sr_ConfigIndex_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 value; + guint16 periodicity, subframe_offset; + proto_item *ti; + proto_tree *subtree; + gint index_offset = offset; offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 50U, NULL, FALSE); + 0U, 157U, &value, FALSE); + + /* Break config index into its parts */ + sr_lookup_configindex(value, &periodicity, &subframe_offset); + /* Show parts as generated fields */ + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_sr_ConfigIndex); + ti = proto_tree_add_uint(subtree, hf_lte_rrc_sr_config_periodicity, tvb, index_offset>>3, 1, periodicity); + PROTO_ITEM_SET_GENERATED(ti); + ti = proto_tree_add_uint(subtree, hf_lte_rrc_sr_config_subframe_offset, tvb, index_offset>>3, 1, subframe_offset); + PROTO_ITEM_SET_GENERATED(ti); + return offset; } +static const value_string lte_rrc_T_dsr_TransMax_r13_vals[] = { + { 0, "n4" }, + { 1, "n8" }, + { 2, "n16" }, + { 3, "n32" }, + { 4, "n64" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_RSRP_RangeSL2_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 7U, NULL, FALSE); +dissect_lte_rrc_T_dsr_TransMax_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_PoolSelectionConfig_r12_sequence[] = { - { &hf_lte_rrc_threshLow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_RangeSL2_r12 }, - { &hf_lte_rrc_threshHigh_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_RangeSL2_r12 }, +static const per_sequence_t T_setup_110_sequence[] = { + { &hf_lte_rrc_sr_PUCCH_ResourceIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, + { &hf_lte_rrc_sr_PUCCH_ResourceIndexP1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_2047 }, + { &hf_lte_rrc_sr_ConfigIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sr_ConfigIndex_r13 }, + { &hf_lte_rrc_dsr_TransMax_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dsr_TransMax_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_PoolSelectionConfig_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_110(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_lte_rrc_SL_PoolSelectionConfig_r12, SL_PoolSelectionConfig_r12_sequence); + ett_lte_rrc_T_setup_110, T_setup_110_sequence); return offset; } -static const value_string lte_rrc_T_poolSelection_r12_vals[] = { - { 0, "rsrpBased-r12" }, - { 1, "random-r12" }, +static const value_string lte_rrc_SchedulingRequestConfigSCell_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_poolSelection_r12_choice[] = { - { 0, &hf_lte_rrc_rsrpBased_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_PoolSelectionConfig_r12 }, - { 1, &hf_lte_rrc_random_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t SchedulingRequestConfigSCell_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_125 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_110 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_poolSelection_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SchedulingRequestConfigSCell_r13(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_lte_rrc_T_poolSelection_r12, T_poolSelection_r12_choice, + ett_lte_rrc_SchedulingRequestConfigSCell_r13, SchedulingRequestConfigSCell_r13_choice, NULL); return offset; } -static const value_string lte_rrc_T_txProbability_r12_vals[] = { - { 0, "p25" }, - { 1, "p50" }, - { 2, "p75" }, - { 3, "p100" }, - { 0, NULL } +static const per_sequence_t T_setup_137_sequence[] = { + { &hf_lte_rrc_tpc_Index_PUCCH_SCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TPC_Index }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_txProbability_r12(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); +dissect_lte_rrc_T_setup_137(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_lte_rrc_T_setup_137, T_setup_137_sequence); return offset; } -static const per_sequence_t T_ue_SelectedResourceConfig_r12_01_sequence[] = { - { &hf_lte_rrc_poolSelection_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_poolSelection_r12 }, - { &hf_lte_rrc_txProbability_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_txProbability_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_TPC_PDCCH_ConfigSCell_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t TPC_PDCCH_ConfigSCell_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_152 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_137 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_ue_SelectedResourceConfig_r12_01(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_lte_rrc_T_ue_SelectedResourceConfig_r12_01, T_ue_SelectedResourceConfig_r12_01_sequence); +dissect_lte_rrc_TPC_PDCCH_ConfigSCell_r13(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_lte_rrc_TPC_PDCCH_ConfigSCell_r13, TPC_PDCCH_ConfigSCell_r13_choice, + NULL); return offset; } -static const per_sequence_t T_txParameters_r12_01_sequence[] = { - { &hf_lte_rrc_txParametersGeneral_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxParameters_r12 }, - { &hf_lte_rrc_ue_SelectedResourceConfig_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_SelectedResourceConfig_r12_01 }, +static const per_sequence_t UplinkPowerControlDedicatedSCell_v1310_sequence[] = { + { &hf_lte_rrc_p0_UE_PUCCH , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_7 }, + { &hf_lte_rrc_deltaTxD_OffsetListPUCCH_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DeltaTxD_OffsetListPUCCH_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_txParameters_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UplinkPowerControlDedicatedSCell_v1310(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_lte_rrc_T_txParameters_r12_01, T_txParameters_r12_01_sequence); + ett_lte_rrc_UplinkPowerControlDedicatedSCell_v1310, UplinkPowerControlDedicatedSCell_v1310_sequence); return offset; } -static const per_sequence_t T_rxParameters_r12_sequence[] = { - { &hf_lte_rrc_tdd_Config_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, - { &hf_lte_rrc_syncConfigIndex_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, - { NULL, 0, 0, NULL } +static const per_sequence_t T_setup_71_sequence[] = { + { &hf_lte_rrc_pucch_ConfigDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigDedicated_r13 }, + { &hf_lte_rrc_schedulingRequestConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SchedulingRequestConfigSCell_r13 }, + { &hf_lte_rrc_tpc_PDCCH_ConfigPUCCH_SCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TPC_PDCCH_ConfigSCell_r13 }, + { &hf_lte_rrc_pusch_ConfigDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicated_r13 }, + { &hf_lte_rrc_uplinkPowerControlDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicatedSCell_v1310 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_rxParameters_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_71(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_lte_rrc_T_rxParameters_r12, T_rxParameters_r12_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_setup_124_vals[] = { - { 0, "rf4" }, - { 1, "rf6" }, - { 2, "rf7" }, - { 3, "rf8" }, - { 4, "rf12" }, - { 5, "rf14" }, - { 6, "rf24" }, - { 7, "rf28" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_setup_124(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, - 8, NULL, FALSE, 0, NULL); + ett_lte_rrc_T_setup_71, T_setup_71_sequence); return offset; } -static const value_string lte_rrc_T_discPeriod_v1310_vals[] = { +static const value_string lte_rrc_T_pucch_SCell_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_discPeriod_v1310_choice[] = { +static const per_choice_t T_pucch_SCell_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_142 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_124 }, + { 1, &hf_lte_rrc_setup_81 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_71 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_discPeriod_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pucch_SCell(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_lte_rrc_T_discPeriod_v1310, T_discPeriod_v1310_choice, + ett_lte_rrc_T_pucch_SCell, T_pucch_SCell_choice, NULL); return offset; } -static const per_sequence_t PhysCellIdList_r13_sequence_of[1] = { - { &hf_lte_rrc_PhysCellIdList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, +static const per_sequence_t T_own_r13_sequence[] = { + { &hf_lte_rrc_cif_Presence_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhysCellIdList_r13(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_lte_rrc_PhysCellIdList_r13, PhysCellIdList_r13_sequence_of, - 1, maxSL_DiscCells_r13, FALSE); +dissect_lte_rrc_T_own_r13(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_lte_rrc_T_own_r13, T_own_r13_sequence); return offset; } -static const per_sequence_t T_setup_125_sequence[] = { - { &hf_lte_rrc_physCellId_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdList_r13 }, + +static int +dissect_lte_rrc_INTEGER_1_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 7U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_other_r13_sequence[] = { + { &hf_lte_rrc_schedulingCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r13 }, + { &hf_lte_rrc_pdsch_Start_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, + { &hf_lte_rrc_cif_InSchedulingCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_125(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_other_r13(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_lte_rrc_T_setup_125, T_setup_125_sequence); + ett_lte_rrc_T_other_r13, T_other_r13_sequence); return offset; } -static const value_string lte_rrc_T_rxParamsAddNeighFreq_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_schedulingCellInfo_r13_vals[] = { + { 0, "own-r13" }, + { 1, "other-r13" }, { 0, NULL } }; -static const per_choice_t T_rxParamsAddNeighFreq_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_143 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_125 }, +static const per_choice_t T_schedulingCellInfo_r13_choice[] = { + { 0, &hf_lte_rrc_own_r13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_own_r13 }, + { 1, &hf_lte_rrc_other_r13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_other_r13 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_rxParamsAddNeighFreq_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_schedulingCellInfo_r13(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_lte_rrc_T_rxParamsAddNeighFreq_r13, T_rxParamsAddNeighFreq_r13_choice, + ett_lte_rrc_T_schedulingCellInfo_r13, T_schedulingCellInfo_r13_choice, NULL); return offset; } -static const value_string lte_rrc_T_ul_Bandwidth_02_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, +static const per_sequence_t CrossCarrierSchedulingConfig_r13_sequence[] = { + { &hf_lte_rrc_schedulingCellInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_schedulingCellInfo_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CrossCarrierSchedulingConfig_r13(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_lte_rrc_CrossCarrierSchedulingConfig_r13, CrossCarrierSchedulingConfig_r13_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_skipMonitoringDCI_format0_1A_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ul_Bandwidth_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_skipMonitoringDCI_format0_1A_r13(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, - 6, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_freqInfo_01_sequence[] = { - { &hf_lte_rrc_ul_CarrierFreq, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &hf_lte_rrc_ul_Bandwidth_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth_02 }, - { &hf_lte_rrc_additionalSpectrumEmission, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, +static const per_sequence_t PDCCH_ConfigSCell_r13_sequence[] = { + { &hf_lte_rrc_skipMonitoringDCI_format0_1A_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipMonitoringDCI_format0_1A_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_freqInfo_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PDCCH_ConfigSCell_r13(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_lte_rrc_T_freqInfo_01, T_freqInfo_01_sequence); + ett_lte_rrc_PDCCH_ConfigSCell_r13, PDCCH_ConfigSCell_r13_sequence); return offset; } -static const per_sequence_t T_setup_126_sequence[] = { - { &hf_lte_rrc_physCellId_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdList_r13 }, - { &hf_lte_rrc_p_Max , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_tdd_Config_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, - { &hf_lte_rrc_tdd_Config_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1130 }, - { &hf_lte_rrc_freqInfo_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_freqInfo_01 }, - { &hf_lte_rrc_referenceSignalPower, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_50 }, - { &hf_lte_rrc_syncConfigIndex_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_subframeStartPosition_r13_vals[] = { + { 0, "s0" }, + { 1, "s07" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_setup_126(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_lte_rrc_T_setup_126, T_setup_126_sequence); +dissect_lte_rrc_T_subframeStartPosition_r13(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_txParamsAddNeighFreq_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } +static const per_sequence_t LAA_SCellConfiguration_r13_sequence[] = { + { &hf_lte_rrc_subframeStartPosition_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subframeStartPosition_r13 }, + { &hf_lte_rrc_laa_SCellSubframeConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_8 }, + { NULL, 0, 0, NULL } }; -static const per_choice_t T_txParamsAddNeighFreq_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_144 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_126 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_LAA_SCellConfiguration_r13(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_lte_rrc_LAA_SCellConfiguration_r13, LAA_SCellConfiguration_r13_sequence); + + return offset; +} + + +static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_4_sequence[] = { + { &hf_lte_rrc_pucch_Cell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_Cell_r13 }, + { &hf_lte_rrc_pucch_SCell , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_SCell }, + { &hf_lte_rrc_crossCarrierSchedulingConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CrossCarrierSchedulingConfig_r13 }, + { &hf_lte_rrc_pdcch_ConfigSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_ConfigSCell_r13 }, + { &hf_lte_rrc_cqi_ReportConfig_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1310 }, + { &hf_lte_rrc_pdsch_ConfigDedicated_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated_v1310 }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicated_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicated_v1310 }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedUpPTsExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedUpPTsExt_r13 }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1310 }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 }, + { &hf_lte_rrc_csi_RS_Config_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1310 }, + { &hf_lte_rrc_laa_SCellConfiguration_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LAA_SCellConfiguration_r13 }, + { &hf_lte_rrc_csi_RS_ConfigNZPToAddModListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPToAddModListExt_r13 }, + { &hf_lte_rrc_csi_RS_ConfigNZPToReleaseListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigNZPToReleaseListExt_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_txParamsAddNeighFreq_r13(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_lte_rrc_T_txParamsAddNeighFreq_r13, T_txParamsAddNeighFreq_r13_choice, - NULL); +dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_4_sequence); return offset; } -static const per_sequence_t SL_DiscResourcePool_r12_eag_1_sequence[] = { - { &hf_lte_rrc_discPeriod_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discPeriod_v1310 }, - { &hf_lte_rrc_rxParamsAddNeighFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParamsAddNeighFreq_r13 }, - { &hf_lte_rrc_txParamsAddNeighFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_txParamsAddNeighFreq_r13 }, +static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_5_sequence[] = { + { &hf_lte_rrc_cqi_ReportConfig_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1320 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscResourcePool_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_DiscResourcePool_r12_eag_1_sequence); +dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_5_sequence); return offset; } -static const per_sequence_t T_freqInfo_v1370_sequence[] = { - { &hf_lte_rrc_additionalSpectrumEmission_v1370, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, +static const per_sequence_t CrossCarrierSchedulingConfigLAA_UL_r14_sequence[] = { + { &hf_lte_rrc_schedulingCellId_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r13 }, + { &hf_lte_rrc_cif_InSchedulingCell_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_freqInfo_v1370(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CrossCarrierSchedulingConfigLAA_UL_r14(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_lte_rrc_T_freqInfo_v1370, T_freqInfo_v1370_sequence); + ett_lte_rrc_CrossCarrierSchedulingConfigLAA_UL_r14, CrossCarrierSchedulingConfigLAA_UL_r14_sequence); return offset; } -static const per_sequence_t T_setup_127_sequence[] = { - { &hf_lte_rrc_freqInfo_v1370, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_freqInfo_v1370 }, +static const per_sequence_t T_setup_76_sequence[] = { + { &hf_lte_rrc_crossCarrierSchedulingConfigLAA_UL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CrossCarrierSchedulingConfigLAA_UL_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_76(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_lte_rrc_T_setup_127, T_setup_127_sequence); + ett_lte_rrc_T_setup_76, T_setup_76_sequence); return offset; } -static const value_string lte_rrc_T_txParamsAddNeighFreq_v1370_vals[] = { +static const value_string lte_rrc_T_crossCarrierSchedulingConfig_UL_r14_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_txParamsAddNeighFreq_v1370_choice[] = { +static const per_choice_t T_crossCarrierSchedulingConfig_UL_r14_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_145 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_127 }, + { 1, &hf_lte_rrc_setup_86 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_76 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_txParamsAddNeighFreq_v1370(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_crossCarrierSchedulingConfig_UL_r14(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_lte_rrc_T_txParamsAddNeighFreq_v1370, T_txParamsAddNeighFreq_v1370_choice, + ett_lte_rrc_T_crossCarrierSchedulingConfig_UL_r14, T_crossCarrierSchedulingConfig_UL_r14_choice, NULL); return offset; } -static const per_sequence_t SL_DiscResourcePool_r12_eag_2_sequence[] = { - { &hf_lte_rrc_txParamsAddNeighFreq_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_txParamsAddNeighFreq_v1370 }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_SL_DiscResourcePool_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_DiscResourcePool_r12_eag_2_sequence); - - return offset; -} - - -static const per_sequence_t SL_DiscResourcePool_r12_sequence[] = { - { &hf_lte_rrc_cp_Len_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CP_Len_r12 }, - { &hf_lte_rrc_discPeriod_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_discPeriod_r12 }, - { &hf_lte_rrc_numRetx_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, - { &hf_lte_rrc_numRepetition_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_50 }, - { &hf_lte_rrc_tf_ResourceConfig_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_ResourceConfig_r12 }, - { &hf_lte_rrc_txParameters_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_txParameters_r12_01 }, - { &hf_lte_rrc_rxParameters_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParameters_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscResourcePool_r12_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscResourcePool_r12_eag_2 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SL_DiscResourcePool_r12(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_lte_rrc_SL_DiscResourcePool_r12, SL_DiscResourcePool_r12_sequence); +dissect_lte_rrc_INTEGER_M85_M52(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -85, -52, NULL, FALSE); return offset; } @@ -41232,1619 +45091,1650 @@ dissect_lte_rrc_SL_DiscResourcePool_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int -dissect_lte_rrc_INTEGER_1_200(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_M13_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 200U, NULL, FALSE); + -13, 20U, NULL, FALSE); return offset; } -static const per_sequence_t SL_TF_IndexPair_r12_sequence[] = { - { &hf_lte_rrc_discSF_Index_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_200 }, - { &hf_lte_rrc_discPRB_Index_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_50 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_LBT_Config_r14_vals[] = { + { 0, "maxEnergyDetectionThreshold-r14" }, + { 1, "energyDetectionThresholdOffset-r14" }, + { 0, NULL } +}; + +static const per_choice_t LBT_Config_r14_choice[] = { + { 0, &hf_lte_rrc_maxEnergyDetectionThreshold_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_M85_M52 }, + { 1, &hf_lte_rrc_energyDetectionThresholdOffset_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_M13_20 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_TF_IndexPair_r12(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_lte_rrc_SL_TF_IndexPair_r12, SL_TF_IndexPair_r12_sequence); +dissect_lte_rrc_LBT_Config_r14(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_lte_rrc_LBT_Config_r14, LBT_Config_r14_choice, + NULL); return offset; } -static const per_sequence_t SL_TF_IndexPairList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_TF_IndexPairList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_IndexPair_r12 }, +static const value_string lte_rrc_T_maxNumberOfSchedSubframes_Format0B_r14_vals[] = { + { 0, "sf2" }, + { 1, "sf3" }, + { 2, "sf4" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_TF_IndexPairList_r12(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_lte_rrc_SL_TF_IndexPairList_r12, SL_TF_IndexPairList_r12_sequence_of, - 1, maxSL_TF_IndexPair_r12, FALSE); +dissect_lte_rrc_T_maxNumberOfSchedSubframes_Format0B_r14(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, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_maxNumberOfSchedSubframes_Format4B_r14_vals[] = { + { 0, "sf2" }, + { 1, "sf3" }, + { 2, "sf4" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_1_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 10U, NULL, FALSE); +dissect_lte_rrc_T_maxNumberOfSchedSubframes_Format4B_r14(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_c_r12_vals[] = { - { 0, "n1" }, - { 1, "n5" }, +static const value_string lte_rrc_T_skipMonitoringDCI_Format0A_r14_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_c_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_skipMonitoringDCI_Format0A_r14(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_HoppingConfigDisc_r12_sequence[] = { - { &hf_lte_rrc_a_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_200 }, - { &hf_lte_rrc_b_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_10 }, - { &hf_lte_rrc_c_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_c_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_skipMonitoringDCI_Format4A_r14_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_HoppingConfigDisc_r12(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_lte_rrc_SL_HoppingConfigDisc_r12, SL_HoppingConfigDisc_r12_sequence); +dissect_lte_rrc_T_skipMonitoringDCI_Format4A_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_scheduled_r12_01_sequence[] = { - { &hf_lte_rrc_discTxConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscResourcePool_r12 }, - { &hf_lte_rrc_discTF_IndexList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TF_IndexPairList_r12 }, - { &hf_lte_rrc_discHoppingConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_HoppingConfigDisc_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_PDCCH_CandidateReductionValue_r14_vals[] = { + { 0, "n0" }, + { 1, "n50" }, + { 2, "n100" }, + { 3, "n150" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_scheduled_r12_01(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_lte_rrc_T_scheduled_r12_01, T_scheduled_r12_01_sequence); +dissect_lte_rrc_PDCCH_CandidateReductionValue_r14(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 per_sequence_t SL_DiscTxPoolToAddMod_r12_sequence[] = { - { &hf_lte_rrc_poolIdentity_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolIdentity_r12 }, - { &hf_lte_rrc_pool_r12_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscResourcePool_r12 }, +static const per_sequence_t T_setup_58_sequence[] = { + { &hf_lte_rrc_pdcch_candidateReductionAL1_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r13 }, + { &hf_lte_rrc_pdcch_candidateReductionAL2_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r13 }, + { &hf_lte_rrc_pdcch_candidateReductionAL3_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r14 }, + { &hf_lte_rrc_pdcch_candidateReductionAL4_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r14 }, + { &hf_lte_rrc_pdcch_candidateReductionAL5_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCCH_CandidateReductionValue_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscTxPoolToAddMod_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_58(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_lte_rrc_SL_DiscTxPoolToAddMod_r12, SL_DiscTxPoolToAddMod_r12_sequence); + ett_lte_rrc_T_setup_58, T_setup_58_sequence); return offset; } -static const per_sequence_t SL_DiscTxPoolToAddModList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_DiscTxPoolToAddModList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscTxPoolToAddMod_r12 }, +static const value_string lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t PDCCH_CandidateReductionsLAA_UL_r14_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_67 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_58 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscTxPoolToAddModList_r12(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_lte_rrc_SL_DiscTxPoolToAddModList_r12, SL_DiscTxPoolToAddModList_r12_sequence_of, - 1, maxSL_TxPool_r12, FALSE); +dissect_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14(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_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14, PDCCH_CandidateReductionsLAA_UL_r14_choice, + NULL); return offset; } -static const per_sequence_t T_discTxPoolDedicated_r12_sequence[] = { - { &hf_lte_rrc_poolToReleaseList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToReleaseList_r12 }, - { &hf_lte_rrc_poolToAddModList_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPoolToAddModList_r12 }, +static const per_sequence_t PDCCH_ConfigLAA_r14_sequence[] = { + { &hf_lte_rrc_maxNumberOfSchedSubframes_Format0B_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumberOfSchedSubframes_Format0B_r14 }, + { &hf_lte_rrc_maxNumberOfSchedSubframes_Format4B_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumberOfSchedSubframes_Format4B_r14 }, + { &hf_lte_rrc_skipMonitoringDCI_Format0A_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipMonitoringDCI_Format0A_r14 }, + { &hf_lte_rrc_skipMonitoringDCI_Format4A_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipMonitoringDCI_Format4A_r14 }, + { &hf_lte_rrc_pdcch_CandidateReductions_Format0A_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_CandidateReductions_r13 }, + { &hf_lte_rrc_pdcch_CandidateReductions_Format4A_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14 }, + { &hf_lte_rrc_pdcch_CandidateReductions_Format0B_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14 }, + { &hf_lte_rrc_pdcch_CandidateReductions_Format4B_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_discTxPoolDedicated_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PDCCH_ConfigLAA_r14(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_lte_rrc_T_discTxPoolDedicated_r12, T_discTxPoolDedicated_r12_sequence); + ett_lte_rrc_PDCCH_ConfigLAA_r14, PDCCH_ConfigLAA_r14_sequence); return offset; } -static const per_sequence_t T_ue_Selected_r12_01_sequence[] = { - { &hf_lte_rrc_discTxPoolDedicated_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxPoolDedicated_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_absenceOfAnyOtherTechnology_r14_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_ue_Selected_r12_01(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_lte_rrc_T_ue_Selected_r12_01, T_ue_Selected_r12_01_sequence); +dissect_lte_rrc_T_absenceOfAnyOtherTechnology_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_setup_119_vals[] = { - { 0, "scheduled-r12" }, - { 1, "ue-Selected-r12" }, - { 0, NULL } -}; - -static const per_choice_t T_setup_119_choice[] = { - { 0, &hf_lte_rrc_scheduled_r12_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scheduled_r12_01 }, - { 1, &hf_lte_rrc_ue_Selected_r12_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_r12_01 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_setup_124_sequence[] = { + { &hf_lte_rrc_srs_SubframeIndication_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_4 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_119(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_lte_rrc_T_setup_119, T_setup_119_choice, - NULL); +dissect_lte_rrc_T_setup_124(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_lte_rrc_T_setup_124, T_setup_124_sequence); return offset; } -static const value_string lte_rrc_T_discTxResources_r12_vals[] = { +static const value_string lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_discTxResources_r12_choice[] = { +static const per_choice_t SoundingRS_UL_ConfigDedicatedAperiodic_v1430_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_135 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_119 }, + { 1, &hf_lte_rrc_setup_139 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_124 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_discTxResources_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430(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_lte_rrc_T_discTxResources_r12, T_discTxResources_r12_choice, + ett_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430, SoundingRS_UL_ConfigDedicatedAperiodic_v1430_choice, NULL); return offset; } +static const per_sequence_t LAA_SCellConfiguration_v1430_sequence[] = { + { &hf_lte_rrc_crossCarrierSchedulingConfig_UL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crossCarrierSchedulingConfig_UL_r14 }, + { &hf_lte_rrc_lbt_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LBT_Config_r14 }, + { &hf_lte_rrc_pdcch_ConfigLAA_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCCH_ConfigLAA_r14 }, + { &hf_lte_rrc_absenceOfAnyOtherTechnology_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_absenceOfAnyOtherTechnology_r14 }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_209(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 209U, NULL, FALSE); +dissect_lte_rrc_LAA_SCellConfiguration_v1430(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_lte_rrc_LAA_SCellConfiguration_v1430, LAA_SCellConfiguration_v1430_sequence); return offset; } +static const per_sequence_t UplinkPUSCH_LessPowerControlDedicated_v1430_sequence[] = { + { &hf_lte_rrc_p0_UE_PeriodicSRS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M8_7 }, + { &hf_lte_rrc_p0_UE_AperiodicSRS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M8_7 }, + { &hf_lte_rrc_accumulationEnabled_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_49(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 49U, NULL, FALSE); +dissect_lte_rrc_UplinkPUSCH_LessPowerControlDedicated_v1430(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_lte_rrc_UplinkPUSCH_LessPowerControlDedicated_v1430, UplinkPUSCH_LessPowerControlDedicated_v1430_sequence); return offset; } -static const per_sequence_t SL_TF_IndexPair_r12b_sequence[] = { - { &hf_lte_rrc_discSF_Index_r12b, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_209 }, - { &hf_lte_rrc_discPRB_Index_r12b, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_49 }, +static const per_sequence_t SoundingRS_AperiodicSet_r14_sequence[] = { + { &hf_lte_rrc_srs_CC_SetIndexList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex_r14 }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodic_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_TF_IndexPair_r12b(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SoundingRS_AperiodicSet_r14(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_lte_rrc_SL_TF_IndexPair_r12b, SL_TF_IndexPair_r12b_sequence); + ett_lte_rrc_SoundingRS_AperiodicSet_r14, SoundingRS_AperiodicSet_r14_sequence); return offset; } -static const per_sequence_t SL_TF_IndexPairList_r12b_sequence_of[1] = { - { &hf_lte_rrc_SL_TF_IndexPairList_r12b_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_IndexPair_r12b }, +static const per_sequence_t SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14_sequence_of[1] = { + { &hf_lte_rrc_soundingRS_UL_AperiodicConfigDedicatedList_r14_item_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_AperiodicSet_r14 }, }; static int -dissect_lte_rrc_SL_TF_IndexPairList_r12b(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14(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_lte_rrc_SL_TF_IndexPairList_r12b, SL_TF_IndexPairList_r12b_sequence_of, - 1, maxSL_TF_IndexPair_r12, FALSE); + ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14, SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14_sequence_of, + 1, 2, FALSE); return offset; } -static const per_sequence_t T_setup_120_sequence[] = { - { &hf_lte_rrc_discTF_IndexList_r12b, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_IndexPairList_r12b }, +static const per_sequence_t SoundingRS_AperiodicSetUpPTsExt_r14_sequence[] = { + { &hf_lte_rrc_srs_CC_SetIndexList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex_r14 }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_120(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SoundingRS_AperiodicSetUpPTsExt_r14(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_lte_rrc_T_setup_120, T_setup_120_sequence); + ett_lte_rrc_SoundingRS_AperiodicSetUpPTsExt_r14, SoundingRS_AperiodicSetUpPTsExt_r14_sequence); return offset; } -static const value_string lte_rrc_T_discTF_IndexList_v1260_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t T_discTF_IndexList_v1260_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_136 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_120 }, - { 0, NULL, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14_sequence_of[1] = { + { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedApUpPTsExtList_r14_item_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SoundingRS_AperiodicSetUpPTsExt_r14 }, }; static int -dissect_lte_rrc_T_discTF_IndexList_v1260(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_lte_rrc_T_discTF_IndexList_v1260, T_discTF_IndexList_v1260_choice, - NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14(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_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14, SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14_sequence_of, + 1, 4, FALSE); return offset; } -static const per_sequence_t SL_DiscConfig_r12_eag_1_sequence[] = { - { &hf_lte_rrc_discTF_IndexList_v1260, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTF_IndexList_v1260 }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_SL_DiscConfig_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_DiscConfig_r12_eag_1_sequence); - - return offset; -} - - -static const per_sequence_t SL_DiscTxConfigScheduled_r13_sequence[] = { - { &hf_lte_rrc_discTxConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscResourcePool_r12 }, - { &hf_lte_rrc_discTF_IndexList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_TF_IndexPairList_r12b }, - { &hf_lte_rrc_discHoppingConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_HoppingConfigDisc_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_k_max_r14_01_vals[] = { + { 0, "l1" }, + { 1, "l3" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_DiscTxConfigScheduled_r13(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_lte_rrc_SL_DiscTxConfigScheduled_r13, SL_DiscTxConfigScheduled_r13_sequence); +dissect_lte_rrc_T_k_max_r14_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, + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_DiscTxPoolDedicated_r13_sequence[] = { - { &hf_lte_rrc_poolToReleaseList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToReleaseList_r12 }, - { &hf_lte_rrc_poolToAddModList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPoolToAddModList_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_p_a_must_r14_01_vals[] = { + { 0, "dB-6" }, + { 1, "dB-4dot77" }, + { 2, "dB-3" }, + { 3, "dB-1dot77" }, + { 4, "dB0" }, + { 5, "dB1" }, + { 6, "dB2" }, + { 7, "dB3" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_DiscTxPoolDedicated_r13(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_lte_rrc_SL_DiscTxPoolDedicated_r13, SL_DiscTxPoolDedicated_r13_sequence); +dissect_lte_rrc_T_p_a_must_r14_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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_ue_Selected_r13_sequence[] = { - { &hf_lte_rrc_discTxPoolPS_Dedicated_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscTxPoolDedicated_r13 }, +static const per_sequence_t T_setup_72_sequence[] = { + { &hf_lte_rrc_k_max_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_k_max_r14_01 }, + { &hf_lte_rrc_p_a_must_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_p_a_must_r14_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_ue_Selected_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_72(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_lte_rrc_T_ue_Selected_r13, T_ue_Selected_r13_sequence); + ett_lte_rrc_T_setup_72, T_setup_72_sequence); return offset; } -static const value_string lte_rrc_T_setup_121_vals[] = { - { 0, "scheduled-r13" }, - { 1, "ue-Selected-r13" }, +static const value_string lte_rrc_T_must_Config_r14_01_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_setup_121_choice[] = { - { 0, &hf_lte_rrc_scheduled_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_DiscTxConfigScheduled_r13 }, - { 1, &hf_lte_rrc_ue_Selected_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_r13 }, +static const per_choice_t T_must_Config_r14_01_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_82 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_72 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_setup_121(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_must_Config_r14_01(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_lte_rrc_T_setup_121, T_setup_121_choice, + ett_lte_rrc_T_must_Config_r14_01, T_must_Config_r14_01_choice, NULL); return offset; } -static const value_string lte_rrc_T_discTxResourcesPS_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } +static const per_sequence_t PUSCH_ConfigDedicatedSCell_v1430_sequence[] = { + { &hf_lte_rrc_enable256QAM_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Enable256QAM_r14 }, + { NULL, 0, 0, NULL } }; -static const per_choice_t T_discTxResourcesPS_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_137 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_121 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_PUSCH_ConfigDedicatedSCell_v1430(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_lte_rrc_PUSCH_ConfigDedicatedSCell_v1430, PUSCH_ConfigDedicatedSCell_v1430_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_tbsIndexAlt2_r14_01_vals[] = { + { 0, "b33" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_discTxResourcesPS_r13(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_lte_rrc_T_discTxResourcesPS_r13, T_discTxResourcesPS_r13_choice, - NULL); +dissect_lte_rrc_T_tbsIndexAlt2_r14_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_SL_DiscTxRefCarrierDedicated_r13_vals[] = { - { 0, "pCell" }, - { 1, "sCell" }, - { 0, NULL } +static const per_sequence_t PDSCH_ConfigDedicatedSCell_v1430_sequence[] = { + { &hf_lte_rrc_tbsIndexAlt2_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tbsIndexAlt2_r14_01 }, + { NULL, 0, 0, NULL } }; -static const per_choice_t SL_DiscTxRefCarrierDedicated_r13_choice[] = { - { 0, &hf_lte_rrc_pCell , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_sCell , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCellIndex_r10 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_PDSCH_ConfigDedicatedSCell_v1430(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_lte_rrc_PDSCH_ConfigDedicatedSCell_v1430, PDSCH_ConfigDedicatedSCell_v1430_sequence); + + return offset; +} + + +static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_6_sequence[] = { + { &hf_lte_rrc_laa_SCellConfiguration_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LAA_SCellConfiguration_v1430 }, + { &hf_lte_rrc_typeB_SRS_TPC_PDCCH_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SRS_TPC_PDCCH_Config_r14 }, + { &hf_lte_rrc_uplinkPUSCH_LessPowerControlDedicated_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPUSCH_LessPowerControlDedicated_v1430 }, + { &hf_lte_rrc_soundingRS_UL_PeriodicConfigDedicatedList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_UL_ConfigDedicated }, + { &hf_lte_rrc_soundingRS_UL_PeriodicConfigDedicatedUpPTsExtList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_UL_ConfigDedicatedUpPTsExt_r13 }, + { &hf_lte_rrc_soundingRS_UL_AperiodicConfigDedicatedList_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14 }, + { &hf_lte_rrc_soundingRS_UL_ConfigDedicatedApUpPTsExtList_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14 }, + { &hf_lte_rrc_must_Config_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_Config_r14_01 }, + { &hf_lte_rrc_pusch_ConfigDedicated_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicatedSCell_v1430 }, + { &hf_lte_rrc_csi_RS_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1430 }, + { &hf_lte_rrc_csi_RS_ConfigZP_ApList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_ConfigZP_ApList_r14 }, + { &hf_lte_rrc_cqi_ReportConfig_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1430 }, + { &hf_lte_rrc_semiOpenLoop_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_pdsch_ConfigDedicatedSCell_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicatedSCell_v1430 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscTxRefCarrierDedicated_r13(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_lte_rrc_SL_DiscTxRefCarrierDedicated_r13, SL_DiscTxRefCarrierDedicated_r13_choice, - NULL); +dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_6_sequence); return offset; } -static const value_string lte_rrc_T_setup_123_vals[] = { - { 0, "scheduled-r13" }, - { 1, "ue-Selected-r13" }, - { 0, NULL } +static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_7_sequence[] = { + { &hf_lte_rrc_csi_RS_Config_v1480, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1480 }, + { NULL, 0, 0, NULL } }; -static const per_choice_t T_setup_123_choice[] = { - { 0, &hf_lte_rrc_scheduled_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_DiscTxConfigScheduled_r13 }, - { 1, &hf_lte_rrc_ue_Selected_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_DiscTxPoolDedicated_r13 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_7_sequence); + + return offset; +} + + +static const per_sequence_t T_setup_21_sequence[] = { + { &hf_lte_rrc_csi_MeasSubframeSet1_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasSubframePattern_r10 }, + { &hf_lte_rrc_csi_MeasSubframeSet2_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasSubframePattern_r10 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_123(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_lte_rrc_T_setup_123, T_setup_123_choice, - NULL); +dissect_lte_rrc_T_setup_21(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_lte_rrc_T_setup_21, T_setup_21_sequence); return offset; } -static const value_string lte_rrc_SL_DiscTxResource_r13_vals[] = { +static const value_string lte_rrc_T_csi_SubframePatternDormant_r15_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t SL_DiscTxResource_r13_choice[] = { +static const per_choice_t T_csi_SubframePatternDormant_r15_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_141 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_123 }, + { 1, &hf_lte_rrc_setup_21 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_21 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscTxResource_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csi_SubframePatternDormant_r15(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_lte_rrc_SL_DiscTxResource_r13, SL_DiscTxResource_r13_choice, + ett_lte_rrc_T_csi_SubframePatternDormant_r15, T_csi_SubframePatternDormant_r15_choice, NULL); return offset; } -static const value_string lte_rrc_T_q_Hyst_r13_vals[] = { - { 0, "dB0" }, - { 1, "dB1" }, - { 2, "dB2" }, - { 3, "dB3" }, - { 4, "dB4" }, - { 5, "dB5" }, - { 6, "dB6" }, - { 7, "dB8" }, - { 8, "dB10" }, - { 9, "dB12" }, - { 10, "dB14" }, - { 11, "dB16" }, - { 12, "dB18" }, - { 13, "dB20" }, - { 14, "dB22" }, - { 15, "dB24" }, +static const value_string lte_rrc_T_csi_ReportMode_r15_vals[] = { + { 0, "submode1" }, + { 1, "submode2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_q_Hyst_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csi_ReportMode_r15(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, - 16, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CellSelectionInfoNFreq_r13_sequence[] = { - { &hf_lte_rrc_q_RxLevMin_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_q_RxLevMinOffset, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_8 }, - { &hf_lte_rrc_q_Hyst_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_q_Hyst_r13 }, - { &hf_lte_rrc_q_RxLevMinReselection_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_t_ReselectionEUTRA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, +static const per_sequence_t T_widebandCQI_r15_sequence[] = { + { &hf_lte_rrc_csi_ReportMode_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportMode_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellSelectionInfoNFreq_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_widebandCQI_r15(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_lte_rrc_CellSelectionInfoNFreq_r13, CellSelectionInfoNFreq_r13_sequence); + ett_lte_rrc_T_widebandCQI_r15, T_widebandCQI_r15_sequence); return offset; } -static const per_sequence_t SL_DiscTxResourceInfoPerFreq_r13_sequence[] = { - { &hf_lte_rrc_discTxCarrierFreq_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_discTxResources_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxResource_r13 }, - { &hf_lte_rrc_discTxResourcesPS_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxResource_r13 }, - { &hf_lte_rrc_discTxRefCarrierDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxRefCarrierDedicated_r13 }, - { &hf_lte_rrc_discCellSelectionInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoNFreq_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_periodicityFactor_r15_vals[] = { + { 0, "n2" }, + { 1, "n4" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_DiscTxResourceInfoPerFreq_r13(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_lte_rrc_SL_DiscTxResourceInfoPerFreq_r13, SL_DiscTxResourceInfoPerFreq_r13_sequence); +dissect_lte_rrc_T_periodicityFactor_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13_sequence_of[1] = { - { &hf_lte_rrc_discTxFreqToAddModList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscTxResourceInfoPerFreq_r13 }, +static const per_sequence_t T_subbandCQI_r15_sequence[] = { + { &hf_lte_rrc_k_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, + { &hf_lte_rrc_periodicityFactor_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_periodicityFactor_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13, SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_subbandCQI_r15(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_lte_rrc_T_subbandCQI_r15, T_subbandCQI_r15_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9_sequence_of[1] = { - { &hf_lte_rrc_discTxFreqToReleaseList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, +static const value_string lte_rrc_T_cqi_FormatIndicatorDormant_r15_vals[] = { + { 0, "widebandCQI-r15" }, + { 1, "subbandCQI-r15" }, + { 0, NULL } }; -static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9, SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9_sequence_of, - 1, maxFreq, FALSE); - - return offset; -} - - -static const per_sequence_t SL_DiscTxInfoInterFreqListAdd_r13_sequence[] = { - { &hf_lte_rrc_discTxFreqToAddModList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13 }, - { &hf_lte_rrc_discTxFreqToReleaseList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9 }, - { NULL, 0, 0, NULL } +static const per_choice_t T_cqi_FormatIndicatorDormant_r15_choice[] = { + { 0, &hf_lte_rrc_widebandCQI_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_widebandCQI_r15 }, + { 1, &hf_lte_rrc_subbandCQI_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_subbandCQI_r15 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscTxInfoInterFreqListAdd_r13(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_lte_rrc_SL_DiscTxInfoInterFreqListAdd_r13, SL_DiscTxInfoInterFreqListAdd_r13_sequence); +dissect_lte_rrc_T_cqi_FormatIndicatorDormant_r15(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_lte_rrc_T_cqi_FormatIndicatorDormant_r15, T_cqi_FormatIndicatorDormant_r15_choice, + NULL); return offset; } -static const per_sequence_t T_setup_122_sequence[] = { - { &hf_lte_rrc_discTxCarrierFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_discTxRefCarrierDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxRefCarrierDedicated_r13 }, - { &hf_lte_rrc_discTxInfoInterFreqListAdd_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxInfoInterFreqListAdd_r13 }, +static const per_sequence_t T_setup_20_sequence[] = { + { &hf_lte_rrc_cqi_pmi_ConfigIndexDormant_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1023 }, + { &hf_lte_rrc_ri_ConfigIndexDormant_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1023 }, + { &hf_lte_rrc_csi_SubframePatternDormant_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_SubframePatternDormant_r15 }, + { &hf_lte_rrc_cqi_FormatIndicatorDormant_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cqi_FormatIndicatorDormant_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_122(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_20(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_lte_rrc_T_setup_122, T_setup_122_sequence); + ett_lte_rrc_T_setup_20, T_setup_20_sequence); return offset; } -static const value_string lte_rrc_T_discTxInterFreqInfo_r13_vals[] = { +static const value_string lte_rrc_CQI_ReportPeriodicSCell_r15_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_discTxInterFreqInfo_r13_choice[] = { +static const per_choice_t CQI_ReportPeriodicSCell_r15_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_138 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_122 }, + { 1, &hf_lte_rrc_setup_20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_20 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_discTxInterFreqInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CQI_ReportPeriodicSCell_r15(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_lte_rrc_T_discTxInterFreqInfo_r13, T_discTxInterFreqInfo_r13_choice, + ett_lte_rrc_CQI_ReportPeriodicSCell_r15, CQI_ReportPeriodicSCell_r15_choice, NULL); return offset; } -static const value_string lte_rrc_T_gapPeriod_r13_vals[] = { - { 0, "sf40" }, - { 1, "sf60" }, - { 2, "sf70" }, - { 3, "sf80" }, - { 4, "sf120" }, - { 5, "sf140" }, - { 6, "sf160" }, - { 7, "sf240" }, - { 8, "sf280" }, - { 9, "sf320" }, - { 10, "sf640" }, - { 11, "sf1280" }, - { 12, "sf2560" }, - { 13, "sf5120" }, - { 14, "sf10240" }, +static const value_string lte_rrc_T_altCQI_Table_1024QAM_r15_02_vals[] = { + { 0, "allSubframes" }, + { 1, "csi-SubframeSet1" }, + { 2, "csi-SubframeSet2" }, + { 3, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_gapPeriod_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_altCQI_Table_1024QAM_r15_02(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, - 15, NULL, FALSE, 0, NULL); - - return offset; -} - - - -static int -dissect_lte_rrc_BIT_STRING_SIZE_1_10240(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, - 1, 10240, FALSE, NULL, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_GapPattern_r13_sequence[] = { - { &hf_lte_rrc_gapPeriod_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_gapPeriod_r13 }, - { &hf_lte_rrc_gapOffset_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_OffsetIndicator_r12 }, - { &hf_lte_rrc_gapSubframeBitmap_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_1_10240 }, +static const per_sequence_t CQI_ReportConfigSCell_r15_sequence[] = { + { &hf_lte_rrc_cqi_ReportPeriodicSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportPeriodicSCell_r15 }, + { &hf_lte_rrc_altCQI_Table_1024QAM_r15_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_altCQI_Table_1024QAM_r15_02 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_GapPattern_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CQI_ReportConfigSCell_r15(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_lte_rrc_SL_GapPattern_r13, SL_GapPattern_r13_sequence); + ett_lte_rrc_CQI_ReportConfigSCell_r15, CQI_ReportConfigSCell_r15_sequence); return offset; } -static const per_sequence_t SL_GapPatternList_r13_sequence_of[1] = { - { &hf_lte_rrc_SL_GapPatternList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_GapPattern_r13 }, +static const value_string lte_rrc_T_csi_ReportModeShort_r15_vals[] = { + { 0, "submode1" }, + { 1, "submode2" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_GapPatternList_r13(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_lte_rrc_SL_GapPatternList_r13, SL_GapPatternList_r13_sequence_of, - 1, maxSL_GP_r13, FALSE); +dissect_lte_rrc_T_csi_ReportModeShort_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_GapConfig_r13_sequence[] = { - { &hf_lte_rrc_gapPatternList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_GapPatternList_r13 }, +static const per_sequence_t T_widebandCQI_Short_r15_sequence[] = { + { &hf_lte_rrc_csi_ReportModeShort_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportModeShort_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_GapConfig_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_widebandCQI_Short_r15(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_lte_rrc_SL_GapConfig_r13, SL_GapConfig_r13_sequence); + ett_lte_rrc_T_widebandCQI_Short_r15, T_widebandCQI_Short_r15_sequence); return offset; } -static const value_string lte_rrc_T_discRxGapConfig_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_periodicityFactor_r15_01_vals[] = { + { 0, "n2" }, + { 1, "n4" }, { 0, NULL } }; -static const per_choice_t T_discRxGapConfig_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_139 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_GapConfig_r13 }, - { 0, NULL, 0, NULL } + +static int +dissect_lte_rrc_T_periodicityFactor_r15_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, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_subbandCQI_Short_r15_sequence[] = { + { &hf_lte_rrc_k_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, + { &hf_lte_rrc_periodicityFactor_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_periodicityFactor_r15_01 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_discRxGapConfig_r13(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_lte_rrc_T_discRxGapConfig_r13, T_discRxGapConfig_r13_choice, - NULL); +dissect_lte_rrc_T_subbandCQI_Short_r15(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_lte_rrc_T_subbandCQI_Short_r15, T_subbandCQI_Short_r15_sequence); return offset; } -static const value_string lte_rrc_T_discTxGapConfig_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_cqi_FormatIndicatorShort_r15_vals[] = { + { 0, "widebandCQI-Short-r15" }, + { 1, "subbandCQI-Short-r15" }, { 0, NULL } }; -static const per_choice_t T_discTxGapConfig_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_139 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_GapConfig_r13 }, +static const per_choice_t T_cqi_FormatIndicatorShort_r15_choice[] = { + { 0, &hf_lte_rrc_widebandCQI_Short_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_widebandCQI_Short_r15 }, + { 1, &hf_lte_rrc_subbandCQI_Short_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_subbandCQI_Short_r15 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_discTxGapConfig_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cqi_FormatIndicatorShort_r15(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_lte_rrc_T_discTxGapConfig_r13, T_discTxGapConfig_r13_choice, + ett_lte_rrc_T_cqi_FormatIndicatorShort_r15, T_cqi_FormatIndicatorShort_r15_choice, NULL); return offset; } -static const per_sequence_t SL_DiscSysInfoToReportFreqList_r13_sequence_of[1] = { - { &hf_lte_rrc_SL_DiscSysInfoToReportFreqList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, +static const per_sequence_t T_setup_23_sequence[] = { + { &hf_lte_rrc_cqi_pmi_ConfigIndexShort_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1023 }, + { &hf_lte_rrc_ri_ConfigIndexShort_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1023 }, + { &hf_lte_rrc_cqi_FormatIndicatorShort_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cqi_FormatIndicatorShort_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscSysInfoToReportFreqList_r13(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_lte_rrc_SL_DiscSysInfoToReportFreqList_r13, SL_DiscSysInfoToReportFreqList_r13_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_setup_23(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_lte_rrc_T_setup_23, T_setup_23_sequence); return offset; } -static const value_string lte_rrc_T_discSysInfoToReportConfig_r13_vals[] = { +static const value_string lte_rrc_CQI_ShortConfigSCell_r15_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_discSysInfoToReportConfig_r13_choice[] = { +static const per_choice_t CQI_ShortConfigSCell_r15_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_140 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_DiscSysInfoToReportFreqList_r13 }, + { 1, &hf_lte_rrc_setup_23 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_23 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_discSysInfoToReportConfig_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CQI_ShortConfigSCell_r15(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_lte_rrc_T_discSysInfoToReportConfig_r13, T_discSysInfoToReportConfig_r13_choice, + ett_lte_rrc_CQI_ShortConfigSCell_r15, CQI_ShortConfigSCell_r15_choice, NULL); return offset; } -static const per_sequence_t SL_DiscConfig_r12_eag_2_sequence[] = { - { &hf_lte_rrc_discTxResourcesPS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxResourcesPS_r13 }, - { &hf_lte_rrc_discTxInterFreqInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxInterFreqInfo_r13 }, - { &hf_lte_rrc_gapRequestsAllowedDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_discRxGapConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discRxGapConfig_r13 }, - { &hf_lte_rrc_discTxGapConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxGapConfig_r13 }, - { &hf_lte_rrc_discSysInfoToReportConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discSysInfoToReportConfig_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_transmissionModeUL_AUL_r15_vals[] = { + { 0, "tm1" }, + { 1, "tm2" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_DiscConfig_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_DiscConfig_r12_eag_2_sequence); +dissect_lte_rrc_T_transmissionModeUL_AUL_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_DiscConfig_r12_sequence[] = { - { &hf_lte_rrc_discTxResources_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxResources_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscConfig_r12_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscConfig_r12_eag_2 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SL_DiscConfig_r12(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_lte_rrc_SL_DiscConfig_r12, SL_DiscConfig_r12_sequence); +dissect_lte_rrc_BIT_STRING_SIZE_7(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, + 7, 7, FALSE, NULL, NULL); return offset; } -static const per_sequence_t AS_Config_v1250_sequence[] = { - { &hf_lte_rrc_sourceWlan_OffloadConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_OffloadConfig_r12 }, - { &hf_lte_rrc_sourceSL_CommConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommConfig_r12 }, - { &hf_lte_rrc_sourceSL_DiscConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscConfig_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_aul_StartingPartialBW_InsideMCOT_r15_vals[] = { + { 0, "o34" }, + { 1, "o43" }, + { 2, "o52" }, + { 3, "o61" }, + { 4, "oOS1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_AS_Config_v1250(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_lte_rrc_AS_Config_v1250, AS_Config_v1250_sequence); +dissect_lte_rrc_T_aul_StartingPartialBW_InsideMCOT_r15(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, + 5, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t WLAN_Id_List_r12_sequence_of[1] = { - { &hf_lte_rrc_WLAN_Id_List_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Identifiers_r12 }, +static const value_string lte_rrc_T_aul_StartingPartialBW_OutsideMCOT_r15_vals[] = { + { 0, "o16" }, + { 1, "o25" }, + { 2, "o34" }, + { 3, "o43" }, + { 4, "o52" }, + { 5, "o61" }, + { 6, "oOS1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_WLAN_Id_List_r12(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_lte_rrc_WLAN_Id_List_r12, WLAN_Id_List_r12_sequence_of, - 1, maxWLAN_Id_r12, FALSE); +dissect_lte_rrc_T_aul_StartingPartialBW_OutsideMCOT_r15(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, + 7, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_steerToWLAN_r13_sequence[] = { - { &hf_lte_rrc_mobilityConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Id_List_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_aul_RetransmissionTimer_r15_vals[] = { + { 0, "psf4" }, + { 1, "psf5" }, + { 2, "psf6" }, + { 3, "psf8" }, + { 4, "psf10" }, + { 5, "psf12" }, + { 6, "psf20" }, + { 7, "psf28" }, + { 8, "psf37" }, + { 9, "psf44" }, + { 10, "psf68" }, + { 11, "psf84" }, + { 12, "psf100" }, + { 13, "psf116" }, + { 14, "psf132" }, + { 15, "psf164" }, + { 16, "psf324" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_steerToWLAN_r13(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_lte_rrc_T_steerToWLAN_r13, T_steerToWLAN_r13_sequence); +dissect_lte_rrc_T_aul_RetransmissionTimer_r15(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, + 17, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_command_vals[] = { - { 0, "steerToWLAN-r13" }, - { 1, "steerToLTE-r13" }, - { 0, NULL } -}; -static const per_choice_t T_command_choice[] = { - { 0, &hf_lte_rrc_steerToWLAN_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_steerToWLAN_r13 }, - { 1, &hf_lte_rrc_steerToLTE_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; +static int +dissect_lte_rrc_INTEGER_12_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 12U, 13U, NULL, FALSE); + + return offset; +} + + static int -dissect_lte_rrc_T_command(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_lte_rrc_T_command, T_command_choice, - NULL); +dissect_lte_rrc_INTEGER_2_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 2U, 4U, NULL, FALSE); return offset; } -static const per_sequence_t RCLWI_Config_r13_sequence[] = { - { &hf_lte_rrc_command , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_command }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_contentionWindowSizeTimer_r15_vals[] = { + { 0, "n0" }, + { 1, "n5" }, + { 2, "n10" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RCLWI_Config_r13(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_lte_rrc_RCLWI_Config_r13, RCLWI_Config_r13_sequence); +dissect_lte_rrc_T_contentionWindowSizeTimer_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_77_sequence[] = { - { &hf_lte_rrc_rclwi_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RCLWI_Config_r13 }, +static const per_sequence_t T_setup_09_sequence[] = { + { &hf_lte_rrc_aul_CRNTI_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_aul_Subframes_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_40 }, + { &hf_lte_rrc_aul_HARQ_Processes_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_16 }, + { &hf_lte_rrc_transmissionModeUL_AUL_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_transmissionModeUL_AUL_r15 }, + { &hf_lte_rrc_aul_StartingFullBW_InsideMCOT_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_5 }, + { &hf_lte_rrc_aul_StartingFullBW_OutsideMCOT_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_7 }, + { &hf_lte_rrc_aul_StartingPartialBW_InsideMCOT_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_aul_StartingPartialBW_InsideMCOT_r15 }, + { &hf_lte_rrc_aul_StartingPartialBW_OutsideMCOT_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_aul_StartingPartialBW_OutsideMCOT_r15 }, + { &hf_lte_rrc_aul_RetransmissionTimer_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_aul_RetransmissionTimer_r15 }, + { &hf_lte_rrc_endingSymbolAUL_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_12_13 }, + { &hf_lte_rrc_subframeOffsetCOT_Sharing_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_2_4 }, + { &hf_lte_rrc_contentionWindowSizeTimer_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_contentionWindowSizeTimer_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_77(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_09(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_lte_rrc_T_setup_77, T_setup_77_sequence); + ett_lte_rrc_T_setup_09, T_setup_09_sequence); return offset; } -static const value_string lte_rrc_RCLWI_Configuration_r13_vals[] = { +static const value_string lte_rrc_AUL_Config_r15_vals[] = { { 0, "release" }, { 1, "setup" }, { 0, NULL } }; -static const per_choice_t RCLWI_Configuration_r13_choice[] = { +static const per_choice_t AUL_Config_r15_choice[] = { { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_90 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_77 }, + { 1, &hf_lte_rrc_setup_09 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_09 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_RCLWI_Configuration_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AUL_Config_r15(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_lte_rrc_RCLWI_Configuration_r13, RCLWI_Configuration_r13_choice, + ett_lte_rrc_AUL_Config_r15, AUL_Config_r15_choice, NULL); return offset; } -static const per_sequence_t AS_Config_v1320_sequence[] = { - { &hf_lte_rrc_sourceSCellConfigList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_r13 }, - { &hf_lte_rrc_sourceRCLWI_Configuration_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RCLWI_Configuration_r13 }, +static const per_sequence_t PUSCH_ModeConfigLAA_r15_sequence[] = { + { &hf_lte_rrc_laa_PUSCH_Mode1, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_laa_PUSCH_Mode2, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_laa_PUSCH_Mode3, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Config_v1320(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PUSCH_ModeConfigLAA_r15(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_lte_rrc_AS_Config_v1320, AS_Config_v1320_sequence); + ett_lte_rrc_PUSCH_ModeConfigLAA_r15, PUSCH_ModeConfigLAA_r15_sequence); return offset; } +static const per_sequence_t LAA_SCellConfiguration_v1530_sequence[] = { + { &hf_lte_rrc_aul_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AUL_Config_r15 }, + { &hf_lte_rrc_pusch_ModeConfigLAA_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ModeConfigLAA_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_wlanConnectionStatusReport_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_WLANConnectionStatusReport_r13_PDU); +dissect_lte_rrc_LAA_SCellConfiguration_v1530(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_lte_rrc_LAA_SCellConfiguration_v1530, LAA_SCellConfiguration_v1530_sequence); return offset; } -static const per_sequence_t AS_Context_v1320_sequence[] = { - { &hf_lte_rrc_wlanConnectionStatusReport_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlanConnectionStatusReport_r13 }, +static const per_sequence_t T_setup_96_sequence[] = { + { &hf_lte_rrc_betaOffsetAUL_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Context_v1320(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_96(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_lte_rrc_AS_Context_v1320, AS_Context_v1320_sequence); + ett_lte_rrc_T_setup_96, T_setup_96_sequence); return offset; } +static const value_string lte_rrc_T_uci_OnPUSCH_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_uci_OnPUSCH_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_107 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_96 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_50(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, - 50, 50, FALSE, NULL, NULL); +dissect_lte_rrc_T_uci_OnPUSCH_r15(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_lte_rrc_T_uci_OnPUSCH_r15, T_uci_OnPUSCH_r15_choice, + NULL); return offset; } +static const per_sequence_t PUSCH_ConfigDedicatedScell_v1530_sequence[] = { + { &hf_lte_rrc_uci_OnPUSCH_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_uci_OnPUSCH_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_100(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, - 100, 100, FALSE, NULL, NULL); +dissect_lte_rrc_PUSCH_ConfigDedicatedScell_v1530(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_lte_rrc_PUSCH_ConfigDedicatedScell_v1530, PUSCH_ConfigDedicatedScell_v1530_sequence); return offset; } -static const value_string lte_rrc_SubframeBitmapSL_r14_vals[] = { - { 0, "bs10-r14" }, - { 1, "bs16-r14" }, - { 2, "bs20-r14" }, - { 3, "bs30-r14" }, - { 4, "bs40-r14" }, - { 5, "bs50-r14" }, - { 6, "bs60-r14" }, - { 7, "bs100-r14" }, +static const value_string lte_rrc_T_setup_73_vals[] = { + { 0, "cfi-Config-r15" }, + { 1, "cfi-PatternConfig-r15" }, { 0, NULL } }; -static const per_choice_t SubframeBitmapSL_r14_choice[] = { - { 0, &hf_lte_rrc_bs10_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_10 }, - { 1, &hf_lte_rrc_bs16_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { 2, &hf_lte_rrc_bs20_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_20 }, - { 3, &hf_lte_rrc_bs30_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_30 }, - { 4, &hf_lte_rrc_bs40_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_40 }, - { 5, &hf_lte_rrc_bs50_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_50 }, - { 6, &hf_lte_rrc_bs60_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_60 }, - { 7, &hf_lte_rrc_bs100_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_100 }, +static const per_choice_t T_setup_73_choice[] = { + { 0, &hf_lte_rrc_cfi_Config_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CFI_Config_r15 }, + { 1, &hf_lte_rrc_cfi_PatternConfig_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CFI_PatternConfig_r15 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SubframeBitmapSL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_73(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_lte_rrc_SubframeBitmapSL_r14, SubframeBitmapSL_r14_choice, + ett_lte_rrc_T_setup_73, T_setup_73_choice, NULL); return offset; } -static const value_string lte_rrc_T_sizeSubchannel_r14_vals[] = { - { 0, "n4" }, - { 1, "n5" }, - { 2, "n6" }, - { 3, "n8" }, - { 4, "n9" }, - { 5, "n10" }, - { 6, "n12" }, - { 7, "n15" }, - { 8, "n16" }, - { 9, "n18" }, - { 10, "n20" }, - { 11, "n25" }, - { 12, "n30" }, - { 13, "n48" }, - { 14, "n50" }, - { 15, "n72" }, - { 16, "n75" }, - { 17, "n96" }, - { 18, "n100" }, - { 19, "spare13" }, - { 20, "spare12" }, - { 21, "spare11" }, - { 22, "spare10" }, - { 23, "spare9" }, - { 24, "spare8" }, - { 25, "spare7" }, - { 26, "spare6" }, - { 27, "spare5" }, - { 28, "spare4" }, - { 29, "spare3" }, - { 30, "spare2" }, - { 31, "spare1" }, +static const value_string lte_rrc_T_semiStaticCFI_Config_r15_01_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; -static value_string_ext lte_rrc_T_sizeSubchannel_r14_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_sizeSubchannel_r14_vals); - +static const per_choice_t T_semiStaticCFI_Config_r15_01_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_83 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_73 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_sizeSubchannel_r14(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, - 32, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_semiStaticCFI_Config_r15_01(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_lte_rrc_T_semiStaticCFI_Config_r15_01, T_semiStaticCFI_Config_r15_01_choice, + NULL); return offset; } -static const value_string lte_rrc_T_numSubchannel_r14_vals[] = { - { 0, "n1" }, - { 1, "n3" }, - { 2, "n5" }, - { 3, "n8" }, - { 4, "n10" }, - { 5, "n15" }, - { 6, "n20" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_maxNumber_SubframePDSCH_Repetitions_r15_01_vals[] = { + { 0, "n4" }, + { 1, "n6" }, { 0, NULL } }; static int -dissect_lte_rrc_T_numSubchannel_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_maxNumber_SubframePDSCH_Repetitions_r15_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, - 8, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_rxParametersNCell_r14_sequence[] = { - { &hf_lte_rrc_tdd_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, - { &hf_lte_rrc_syncConfigIndex_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_maxNumber_SlotSubslotPDSCH_Repetitions_r15_01_vals[] = { + { 0, "n4" }, + { 1, "n6" }, + { 0, NULL } }; -static int -dissect_lte_rrc_T_rxParametersNCell_r14(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_lte_rrc_T_rxParametersNCell_r14, T_rxParametersNCell_r14_sequence); - - return offset; -} - - static int -dissect_lte_rrc_INTEGER_0_45(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 45U, NULL, FALSE); +dissect_lte_rrc_T_maxNumber_SlotSubslotPDSCH_Repetitions_r15_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, + 2, NULL, FALSE, 0, NULL); return offset; } - -static int -dissect_lte_rrc_INTEGER_0_maxCBR_Level_1_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxCBR_Level_1_r14, NULL, FALSE); - - return offset; -} - +static const value_string lte_rrc_T_rv_SubframePDSCH_Repetitions_r15_01_vals[] = { + { 0, "dlrvseq1" }, + { 1, "dlrvseq2" }, + { 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_maxSL_V2X_CBRConfig_1_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxSL_V2X_CBRConfig_1_r14, NULL, FALSE); +dissect_lte_rrc_T_rv_SubframePDSCH_Repetitions_r15_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, + 2, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_rv_SlotsublotPDSCH_Repetitions_r15_01_vals[] = { + { 0, "dlrvseq1" }, + { 1, "dlrvseq2" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_Tx_ConfigIndex_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxSL_V2X_TxConfig_1_r14, NULL, FALSE); +dissect_lte_rrc_T_rv_SlotsublotPDSCH_Repetitions_r15_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, + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14_sequence_of[1] = { - { &hf_lte_rrc_tx_ConfigIndexList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Tx_ConfigIndex_r14 }, +static const value_string lte_rrc_T_mcs_restrictionSubframePDSCH_Repetitions_r15_01_vals[] = { + { 0, "n0" }, + { 1, "n1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14, SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14_sequence_of, - 1, maxCBR_Level_r14, FALSE); +dissect_lte_rrc_T_mcs_restrictionSubframePDSCH_Repetitions_r15_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, + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_PPPP_TxConfigIndex_r14_sequence[] = { - { &hf_lte_rrc_priorityThreshold_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_Priority_r13 }, - { &hf_lte_rrc_defaultTxConfigIndex_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxCBR_Level_1_r14 }, - { &hf_lte_rrc_cbr_ConfigIndex_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxSL_V2X_CBRConfig_1_r14 }, - { &hf_lte_rrc_tx_ConfigIndexList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_01_vals[] = { + { 0, "n0" }, + { 1, "n1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_PPPP_TxConfigIndex_r14(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_lte_rrc_SL_PPPP_TxConfigIndex_r14, SL_PPPP_TxConfigIndex_r14_sequence); +dissect_lte_rrc_T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_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, + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_CBR_PPPP_TxConfigList_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_CBR_PPPP_TxConfigList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PPPP_TxConfigIndex_r14 }, +static const per_sequence_t T_setup_74_sequence[] = { + { &hf_lte_rrc_blindSubframePDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_blindSlotSubslotPDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_maxNumber_SubframePDSCH_Repetitions_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumber_SubframePDSCH_Repetitions_r15_01 }, + { &hf_lte_rrc_maxNumber_SlotSubslotPDSCH_Repetitions_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumber_SlotSubslotPDSCH_Repetitions_r15_01 }, + { &hf_lte_rrc_rv_SubframePDSCH_Repetitions_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rv_SubframePDSCH_Repetitions_r15_01 }, + { &hf_lte_rrc_rv_SlotsublotPDSCH_Repetitions_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rv_SlotsublotPDSCH_Repetitions_r15_01 }, + { &hf_lte_rrc_numberOfProcesses_SubframePDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_16 }, + { &hf_lte_rrc_numberOfProcesses_SlotSubslotPDSCH_Repetitions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_16 }, + { &hf_lte_rrc_mcs_restrictionSubframePDSCH_Repetitions_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mcs_restrictionSubframePDSCH_Repetitions_r15_01 }, + { &hf_lte_rrc_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_01 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CBR_PPPP_TxConfigList_r14(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_lte_rrc_SL_CBR_PPPP_TxConfigList_r14, SL_CBR_PPPP_TxConfigList_r14_sequence_of, - 1, 8, FALSE); +dissect_lte_rrc_T_setup_74(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_lte_rrc_T_setup_74, T_setup_74_sequence); return offset; } -static const value_string lte_rrc_T_partialSensing_r14_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_blindPDSCH_Repetition_Config_r15_01_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t T_blindPDSCH_Repetition_Config_r15_01_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_84 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_74 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_partialSensing_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_blindPDSCH_Repetition_Config_r15_01(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_lte_rrc_T_blindPDSCH_Repetition_Config_r15_01, T_blindPDSCH_Repetition_Config_r15_01_choice, + NULL); return offset; } -static const value_string lte_rrc_T_randomSelection_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t PhysicalConfigDedicatedSCell_r10_eag_8_sequence[] = { + { &hf_lte_rrc_physicalConfigDedicatedSTTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicatedSTTI_r15 }, + { &hf_lte_rrc_pdsch_ConfigDedicated_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigDedicated_v1530 }, + { &hf_lte_rrc_cqi_ReportConfig_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfig_v1530 }, + { &hf_lte_rrc_cqi_ReportConfigSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ReportConfigSCell_r15 }, + { &hf_lte_rrc_cqi_ShortConfigSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_ShortConfigSCell_r15 }, + { &hf_lte_rrc_csi_RS_Config_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSI_RS_Config_v1530 }, + { &hf_lte_rrc_uplinkPowerControlDedicatedSCell_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicated_v1530 }, + { &hf_lte_rrc_laa_SCellConfiguration_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LAA_SCellConfiguration_v1530 }, + { &hf_lte_rrc_pusch_ConfigDedicated_v1530_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigDedicatedScell_v1530 }, + { &hf_lte_rrc_semiStaticCFI_Config_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_semiStaticCFI_Config_r15_01 }, + { &hf_lte_rrc_blindPDSCH_Repetition_Config_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_blindPDSCH_Repetition_Config_r15_01 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_randomSelection_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicatedSCell_r10_eag_8_sequence); return offset; } -static const per_sequence_t SL_P2X_ResourceSelectionConfig_r14_sequence[] = { - { &hf_lte_rrc_partialSensing_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_partialSensing_r14 }, - { &hf_lte_rrc_randomSelection_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_randomSelection_r14 }, +static const per_sequence_t PhysicalConfigDedicatedSCell_r10_sequence[] = { + { &hf_lte_rrc_nonUL_Configuration_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nonUL_Configuration_r10 }, + { &hf_lte_rrc_ul_Configuration_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Configuration_r10 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_7 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10_eag_8 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_P2X_ResourceSelectionConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10(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_lte_rrc_SL_P2X_ResourceSelectionConfig_r14, SL_P2X_ResourceSelectionConfig_r14_sequence); + ett_lte_rrc_PhysicalConfigDedicatedSCell_r10, PhysicalConfigDedicatedSCell_r10_sequence); return offset; } -static const value_string lte_rrc_T_gnss_Sync_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t MAC_MainConfigSCell_r11_sequence[] = { + { &hf_lte_rrc_stag_Id_r11 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_STAG_Id_r11 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_gnss_Sync_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MAC_MainConfigSCell_r11(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_lte_rrc_MAC_MainConfigSCell_r11, MAC_MainConfigSCell_r11_sequence); return offset; } -static const value_string lte_rrc_T_enb_Sync_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_eag_1_sequence[] = { + { &hf_lte_rrc_mac_MainConfigSCell_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MAC_MainConfigSCell_r11 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_enb_Sync_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedSCell_r10_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_ue_Sync_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_eag_2_sequence[] = { + { &hf_lte_rrc_naics_Info_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NAICS_AssistanceInfo_r12 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ue_Sync_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedSCell_r10_eag_2_sequence); return offset; } -static const per_sequence_t SL_SyncAllowed_r14_sequence[] = { - { &hf_lte_rrc_gnss_Sync_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gnss_Sync_r14 }, - { &hf_lte_rrc_enb_Sync_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enb_Sync_r14 }, - { &hf_lte_rrc_ue_Sync_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_Sync_r14 }, +static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_eag_3_sequence[] = { + { &hf_lte_rrc_neighCellsCRS_InfoSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_SyncAllowed_r14(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_lte_rrc_SL_SyncAllowed_r14, SL_SyncAllowed_r14_sequence); +dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedSCell_r10_eag_3_sequence); return offset; } -static const value_string lte_rrc_SL_RestrictResourceReservationPeriod_r14_vals[] = { - { 0, "v0dot2" }, - { 1, "v0dot5" }, - { 2, "v1" }, - { 3, "v2" }, - { 4, "v3" }, - { 5, "v4" }, - { 6, "v5" }, - { 7, "v6" }, - { 8, "v7" }, - { 9, "v8" }, - { 10, "v9" }, - { 11, "v10" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, +static const value_string lte_rrc_T_pucch_Format_v1370_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t T_pucch_Format_v1370_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_99 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PUCCH_Format3_Conf_r13 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_SL_RestrictResourceReservationPeriod_r14(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_pucch_Format_v1370(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_lte_rrc_T_pucch_Format_v1370, T_pucch_Format_v1370_choice, + NULL); return offset; } -static const per_sequence_t SL_RestrictResourceReservationPeriodList_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_RestrictResourceReservationPeriodList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_RestrictResourceReservationPeriod_r14 }, +static const per_sequence_t PUCCH_ConfigDedicated_v1370_sequence[] = { + { &hf_lte_rrc_pucch_Format_v1370, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pucch_Format_v1370 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_RestrictResourceReservationPeriodList_r14(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_lte_rrc_SL_RestrictResourceReservationPeriodList_r14, SL_RestrictResourceReservationPeriodList_r14_sequence_of, - 1, maxReservationPeriod_r14, FALSE); +dissect_lte_rrc_PUCCH_ConfigDedicated_v1370(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_lte_rrc_PUCCH_ConfigDedicated_v1370, PUCCH_ConfigDedicated_v1370_sequence); return offset; } -static const per_sequence_t SL_CommResourcePoolV2X_r14_sequence[] = { - { &hf_lte_rrc_sl_OffsetIndicator_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicator_r12 }, - { &hf_lte_rrc_sl_Subframe_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SubframeBitmapSL_r14 }, - { &hf_lte_rrc_adjacencyPSCCH_PSSCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_sizeSubchannel_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sizeSubchannel_r14 }, - { &hf_lte_rrc_numSubchannel_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numSubchannel_r14 }, - { &hf_lte_rrc_startRB_Subchannel_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_99 }, - { &hf_lte_rrc_startRB_PSCCH_Pool_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_99 }, - { &hf_lte_rrc_rxParametersNCell_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParametersNCell_r14 }, - { &hf_lte_rrc_dataTxParameters_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxParameters_r12 }, - { &hf_lte_rrc_zoneID_r14 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_threshS_RSSI_CBR_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_45 }, - { &hf_lte_rrc_poolReportId_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_TxPoolReportIdentity_r14 }, - { &hf_lte_rrc_cbr_pssch_TxConfigList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_PPPP_TxConfigList_r14 }, - { &hf_lte_rrc_resourceSelectionConfigP2X_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_P2X_ResourceSelectionConfig_r14 }, - { &hf_lte_rrc_syncAllowed_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncAllowed_r14 }, - { &hf_lte_rrc_restrictResourceReservationPeriod_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_RestrictResourceReservationPeriodList_r14 }, +static const per_sequence_t T_setup_75_sequence[] = { + { &hf_lte_rrc_pucch_ConfigDedicated_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigDedicated_v1370 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommResourcePoolV2X_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_75(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_lte_rrc_SL_CommResourcePoolV2X_r14, SL_CommResourcePoolV2X_r14_sequence); + ett_lte_rrc_T_setup_75, T_setup_75_sequence); return offset; } -static const per_sequence_t T_scheduled_r14_sequence[] = { - { &hf_lte_rrc_sl_V_RNTI_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, - { &hf_lte_rrc_mac_MainConfig_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfigSL_r12 }, - { &hf_lte_rrc_v2x_SchedulingPool_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, - { &hf_lte_rrc_mcs_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, - { &hf_lte_rrc_logicalChGroupInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogicalChGroupInfoList_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_pucch_SCell_v1370_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_pucch_SCell_v1370_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_85 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_75 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_scheduled_r14(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_lte_rrc_T_scheduled_r14, T_scheduled_r14_sequence); +dissect_lte_rrc_T_pucch_SCell_v1370(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_lte_rrc_T_pucch_SCell_v1370, T_pucch_SCell_v1370_choice, + NULL); return offset; } +static const per_sequence_t PhysicalConfigDedicatedSCell_v1370_sequence[] = { + { &hf_lte_rrc_pucch_SCell_v1370, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pucch_SCell_v1370 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_SL_V2X_TxPoolIdentity_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxSL_V2X_TxPool_r14, NULL, FALSE); +dissect_lte_rrc_PhysicalConfigDedicatedSCell_v1370(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_lte_rrc_PhysicalConfigDedicatedSCell_v1370, PhysicalConfigDedicatedSCell_v1370_sequence); return offset; } -static const per_sequence_t SL_TxPoolToReleaseListV2X_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_TxPoolToReleaseListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_TxPoolIdentity_r14 }, +static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_eag_4_sequence[] = { + { &hf_lte_rrc_physicalConfigDedicatedSCell_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicatedSCell_v1370 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_TxPoolToReleaseListV2X_r14(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_lte_rrc_SL_TxPoolToReleaseListV2X_r14, SL_TxPoolToReleaseListV2X_r14_sequence_of, - 1, maxSL_V2X_TxPool_r14, FALSE); +dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedSCell_r10_eag_4_sequence); return offset; } -static const per_sequence_t SL_TxPoolToAddMod_r14_sequence[] = { - { &hf_lte_rrc_poolIdentity_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_TxPoolIdentity_r14 }, - { &hf_lte_rrc_pool_r14 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, +static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_eag_5_sequence[] = { + { &hf_lte_rrc_crs_IntfMitigEnabled_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_neighCellsCRS_Info_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r15 }, + { &hf_lte_rrc_sps_Config_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_TxPoolToAddMod_r14(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_lte_rrc_SL_TxPoolToAddMod_r14, SL_TxPoolToAddMod_r14_sequence); +dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedSCell_r10_eag_5_sequence); return offset; } -static const per_sequence_t SL_TxPoolToAddModListV2X_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_TxPoolToAddModListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolToAddMod_r14 }, +static const per_sequence_t RadioResourceConfigDedicatedSCell_r10_sequence[] = { + { &hf_lte_rrc_physicalConfigDedicatedSCell_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicatedSCell_r10 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10_eag_5 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_TxPoolToAddModListV2X_r14(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_lte_rrc_SL_TxPoolToAddModListV2X_r14, SL_TxPoolToAddModListV2X_r14_sequence_of, - 1, maxSL_V2X_TxPool_r14, FALSE); +dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10(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_lte_rrc_RadioResourceConfigDedicatedSCell_r10, RadioResourceConfigDedicatedSCell_r10_sequence); return offset; } -static const value_string lte_rrc_SL_TypeTxSync_r14_vals[] = { - { 0, "gnss" }, - { 1, "enb" }, - { 2, "ue" }, - { 0, NULL } +static const per_sequence_t SCellToAddMod_r10_eag_1_sequence[] = { + { &hf_lte_rrc_dl_CarrierFreq_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_SL_TypeTxSync_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_SCellToAddMod_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCellToAddMod_r10_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_thresUE_Speed_r14_vals[] = { - { 0, "kmph60" }, - { 1, "kmph80" }, - { 2, "kmph100" }, - { 3, "kmph120" }, - { 4, "kmph140" }, - { 5, "kmph160" }, - { 6, "kmph180" }, - { 7, "kmph200" }, +static const value_string lte_rrc_T_maxLayersMIMO_r10_vals[] = { + { 0, "twoLayers" }, + { 1, "fourLayers" }, + { 2, "eightLayers" }, { 0, NULL } }; static int -dissect_lte_rrc_T_thresUE_Speed_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_maxLayersMIMO_r10(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, - 8, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t AntennaInfoDedicated_v10i0_sequence[] = { + { &hf_lte_rrc_maxLayersMIMO_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxLayersMIMO_r10 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_1_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 20U, NULL, FALSE); +dissect_lte_rrc_AntennaInfoDedicated_v10i0(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_lte_rrc_AntennaInfoDedicated_v10i0, AntennaInfoDedicated_v10i0_sequence); return offset; } -static const value_string lte_rrc_T_allowedRetxNumberPSSCH_r14_vals[] = { - { 0, "n0" }, - { 1, "n1" }, - { 2, "both" }, - { 3, "spare1" }, - { 0, NULL } +static const per_sequence_t SCellToAddMod_r10_eag_2_sequence[] = { + { &hf_lte_rrc_antennaInfoDedicatedSCell_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_allowedRetxNumberPSSCH_r14(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); +dissect_lte_rrc_SCellToAddMod_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCellToAddMod_r10_eag_2_sequence); return offset; } +static const per_sequence_t SCellToAddMod_r10_eag_3_sequence[] = { + { &hf_lte_rrc_srs_SwitchFromServCellIndex_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_M41_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -41, 31U, NULL, FALSE); +dissect_lte_rrc_SCellToAddMod_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCellToAddMod_r10_eag_3_sequence); return offset; } -static const value_string lte_rrc_SL_TxPower_r14_vals[] = { - { 0, "minusinfinity-r14" }, - { 1, "txPower-r14" }, +static const value_string lte_rrc_T_sCellState_r15_vals[] = { + { 0, "activated" }, + { 1, "dormant" }, { 0, NULL } }; -static const per_choice_t SL_TxPower_r14_choice[] = { - { 0, &hf_lte_rrc_minusinfinity_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_txPower_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_M41_31 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_SL_TxPower_r14(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_lte_rrc_SL_TxPower_r14, SL_TxPower_r14_choice, - NULL); +dissect_lte_rrc_T_sCellState_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_PSSCH_TxParameters_r14_sequence[] = { - { &hf_lte_rrc_minMCS_PSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, - { &hf_lte_rrc_maxMCS_PSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, - { &hf_lte_rrc_minSubChannel_NumberPSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_20 }, - { &hf_lte_rrc_maxSubchannel_NumberPSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_20 }, - { &hf_lte_rrc_allowedRetxNumberPSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_allowedRetxNumberPSSCH_r14 }, - { &hf_lte_rrc_maxTxPower_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPower_r14 }, +static const per_sequence_t SCellToAddMod_r10_eag_4_sequence[] = { + { &hf_lte_rrc_sCellState_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sCellState_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_PSSCH_TxParameters_r14(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_lte_rrc_SL_PSSCH_TxParameters_r14, SL_PSSCH_TxParameters_r14_sequence); +dissect_lte_rrc_SCellToAddMod_r10_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCellToAddMod_r10_eag_4_sequence); return offset; } -static const per_sequence_t SL_PSSCH_TxConfig_r14_sequence[] = { - { &hf_lte_rrc_typeTxSync_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_TypeTxSync_r14 }, - { &hf_lte_rrc_thresUE_Speed_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_thresUE_Speed_r14 }, - { &hf_lte_rrc_parametersAboveThres_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxParameters_r14 }, - { &hf_lte_rrc_parametersBelowThres_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxParameters_r14 }, +static const per_sequence_t SCellToAddMod_r10_sequence[] = { + { &hf_lte_rrc_sCellIndex_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r10 }, + { &hf_lte_rrc_cellIdentification_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_cellIdentification_r10 }, + { &hf_lte_rrc_radioResourceConfigCommonSCell_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonSCell_r10 }, + { &hf_lte_rrc_radioResourceConfigDedicatedSCell_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_r10_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_r10_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_r10_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_r10_eag_4 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_PSSCH_TxConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCellToAddMod_r10(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_lte_rrc_SL_PSSCH_TxConfig_r14, SL_PSSCH_TxConfig_r14_sequence); + ett_lte_rrc_SCellToAddMod_r10, SCellToAddMod_r10_sequence); return offset; } -static const per_sequence_t SL_PSSCH_TxConfigList_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_PSSCH_TxConfigList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxConfig_r14 }, +static const per_sequence_t SCellToAddModList_r10_sequence_of[1] = { + { &hf_lte_rrc_SCellToAddModList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_r10 }, }; static int -dissect_lte_rrc_SL_PSSCH_TxConfigList_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCellToAddModList_r10(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_lte_rrc_SL_PSSCH_TxConfigList_r14, SL_PSSCH_TxConfigList_r14_sequence_of, - 1, maxPSSCH_TxConfig_r14, FALSE); + ett_lte_rrc_SCellToAddModList_r10, SCellToAddModList_r10_sequence_of, + 1, maxSCell_r10, FALSE); return offset; } +static const per_sequence_t AS_Config_eag_2_sequence[] = { + { &hf_lte_rrc_sourceSCellConfigList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_r10 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_SL_ThresPSSCH_RSRP_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 66U, NULL, FALSE); +dissect_lte_rrc_AS_Config_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Config_eag_2_sequence); return offset; } -static const per_sequence_t SL_ThresPSSCH_RSRP_List_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_ThresPSSCH_RSRP_List_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_ThresPSSCH_RSRP_r14 }, +static const per_sequence_t T_scg_r12_sequence[] = { + { &hf_lte_rrc_eps_BearerIdentity_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_pdcp_Config_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_Config }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_ThresPSSCH_RSRP_List_r14(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_lte_rrc_SL_ThresPSSCH_RSRP_List_r14, SL_ThresPSSCH_RSRP_List_r14_sequence_of, - 64, 64, FALSE); +dissect_lte_rrc_T_scg_r12(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_lte_rrc_T_scg_r12, T_scg_r12_sequence); return offset; } -static const value_string lte_rrc_T_probResourceKeep_r14_vals[] = { - { 0, "v0" }, - { 1, "v0dot2" }, - { 2, "v0dot4" }, - { 3, "v0dot6" }, - { 4, "v0dot8" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } -}; +static const value_string lte_rrc_T_drb_Type_r12_01_vals[] = { + { 0, "split-r12" }, + { 1, "scg-r12" }, + { 0, NULL } +}; +static const per_choice_t T_drb_Type_r12_01_choice[] = { + { 0, &hf_lte_rrc_split_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_scg_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scg_r12 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_probResourceKeep_r14(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_drb_Type_r12_01(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_lte_rrc_T_drb_Type_r12_01, T_drb_Type_r12_01_choice, + NULL); return offset; } @@ -42852,469 +46742,485 @@ dissect_lte_rrc_T_probResourceKeep_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int -dissect_lte_rrc_INTEGER_1_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_3_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 13U, NULL, FALSE); + 3U, 10U, NULL, FALSE); return offset; } -static const per_sequence_t T_p2x_SensingConfig_r14_sequence[] = { - { &hf_lte_rrc_minNumCandidateSF_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_13 }, - { &hf_lte_rrc_gapCandidateSensing_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, +static const per_sequence_t DRB_ToAddModSCG_r12_eag_1_sequence[] = { + { &hf_lte_rrc_rlc_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_p2x_SensingConfig_r14(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_lte_rrc_T_p2x_SensingConfig_r14, T_p2x_SensingConfig_r14_sequence); +dissect_lte_rrc_DRB_ToAddModSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DRB_ToAddModSCG_r12_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_sl_ReselectAfter_r14_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, - { 4, "n5" }, - { 5, "n6" }, - { 6, "n7" }, - { 7, "n8" }, - { 8, "n9" }, - { 9, "spare7" }, - { 10, "spare6" }, - { 11, "spare5" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } +static const per_sequence_t DRB_ToAddModSCG_r12_eag_2_sequence[] = { + { &hf_lte_rrc_logicalChannelIdentitySCG_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_32_38 }, + { &hf_lte_rrc_rlc_Config_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_v1530 }, + { &hf_lte_rrc_rlc_BearerConfigDupl_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_BearerConfig_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_sl_ReselectAfter_r14(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_DRB_ToAddModSCG_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DRB_ToAddModSCG_r12_eag_2_sequence); return offset; } -static const per_sequence_t SL_CommTxPoolSensingConfig_r14_sequence[] = { - { &hf_lte_rrc_pssch_TxConfigList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxConfigList_r14 }, - { &hf_lte_rrc_thresPSSCH_RSRP_List_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_ThresPSSCH_RSRP_List_r14 }, - { &hf_lte_rrc_restrictResourceReservationPeriod_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_RestrictResourceReservationPeriodList_r14 }, - { &hf_lte_rrc_probResourceKeep_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_probResourceKeep_r14 }, - { &hf_lte_rrc_p2x_SensingConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_p2x_SensingConfig_r14 }, - { &hf_lte_rrc_sl_ReselectAfter_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sl_ReselectAfter_r14 }, +static const per_sequence_t DRB_ToAddModSCG_r12_sequence[] = { + { &hf_lte_rrc_drb_Identity_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, + { &hf_lte_rrc_drb_Type_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_Type_r12_01 }, + { &hf_lte_rrc_rlc_ConfigSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config }, + { &hf_lte_rrc_rlc_Config_v1250, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_v1250 }, + { &hf_lte_rrc_logicalChannelIdentitySCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_3_10 }, + { &hf_lte_rrc_logicalChannelConfigSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_LogicalChannelConfig }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddModSCG_r12_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddModSCG_r12_eag_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommTxPoolSensingConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DRB_ToAddModSCG_r12(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_lte_rrc_SL_CommTxPoolSensingConfig_r14, SL_CommTxPoolSensingConfig_r14_sequence); + ett_lte_rrc_DRB_ToAddModSCG_r12, DRB_ToAddModSCG_r12_sequence); return offset; } -static const per_sequence_t T_v2x_CommTxPoolNormalDedicated_r14_sequence[] = { - { &hf_lte_rrc_poolToReleaseList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToReleaseListV2X_r14 }, - { &hf_lte_rrc_poolToAddModList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToAddModListV2X_r14 }, - { &hf_lte_rrc_v2x_CommTxPoolSensingConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolSensingConfig_r14 }, - { NULL, 0, 0, NULL } +static const per_sequence_t DRB_ToAddModListSCG_r12_sequence_of[1] = { + { &hf_lte_rrc_DRB_ToAddModListSCG_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddModSCG_r12 }, }; static int -dissect_lte_rrc_T_v2x_CommTxPoolNormalDedicated_r14(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_lte_rrc_T_v2x_CommTxPoolNormalDedicated_r14, T_v2x_CommTxPoolNormalDedicated_r14_sequence); +dissect_lte_rrc_DRB_ToAddModListSCG_r12(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_lte_rrc_DRB_ToAddModListSCG_r12, DRB_ToAddModListSCG_r12_sequence_of, + 1, maxDRB, FALSE); return offset; } -static const per_sequence_t T_ue_Selected_r14_sequence[] = { - { &hf_lte_rrc_v2x_CommTxPoolNormalDedicated_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_v2x_CommTxPoolNormalDedicated_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_t313_r12_vals[] = { + { 0, "ms0" }, + { 1, "ms50" }, + { 2, "ms100" }, + { 3, "ms200" }, + { 4, "ms500" }, + { 5, "ms1000" }, + { 6, "ms2000" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_ue_Selected_r14(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_lte_rrc_T_ue_Selected_r14, T_ue_Selected_r14_sequence); +dissect_lte_rrc_T_t313_r12(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, + 7, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_setup_128_vals[] = { - { 0, "scheduled-r14" }, - { 1, "ue-Selected-r14" }, +static const value_string lte_rrc_T_n313_r12_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n6" }, + { 5, "n8" }, + { 6, "n10" }, + { 7, "n20" }, { 0, NULL } }; -static const per_choice_t T_setup_128_choice[] = { - { 0, &hf_lte_rrc_scheduled_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scheduled_r14 }, - { 1, &hf_lte_rrc_ue_Selected_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_r14 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_setup_128(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_lte_rrc_T_setup_128, T_setup_128_choice, - NULL); +dissect_lte_rrc_T_n313_r12(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_commTxResources_r14_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_n314_r12_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n8" }, + { 7, "n10" }, { 0, NULL } }; -static const per_choice_t T_commTxResources_r14_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_146 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_128 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_commTxResources_r14(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_lte_rrc_T_commTxResources_r14, T_commTxResources_r14_choice, - NULL); +dissect_lte_rrc_T_n314_r12(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_sl_Bandwidth_r14_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, - { 0, NULL } +static const per_sequence_t T_setup_108_sequence[] = { + { &hf_lte_rrc_t313_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t313_r12 }, + { &hf_lte_rrc_n313_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n313_r12 }, + { &hf_lte_rrc_n314_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n314_r12 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_sl_Bandwidth_r14(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, - 6, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_setup_108(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_lte_rrc_T_setup_108, T_setup_108_sequence); return offset; } +static const value_string lte_rrc_RLF_TimersAndConstantsSCG_r12_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t RLF_TimersAndConstantsSCG_r12_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_123 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_108 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_SL_OffsetIndicatorSync_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 39U, NULL, FALSE); +dissect_lte_rrc_RLF_TimersAndConstantsSCG_r12(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_lte_rrc_RLF_TimersAndConstantsSCG_r12, RLF_TimersAndConstantsSCG_r12_choice, + NULL); return offset; } +static const per_sequence_t DRB_ToAddModListSCG_r15_sequence_of[1] = { + { &hf_lte_rrc_DRB_ToAddModListSCG_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddModSCG_r12 }, +}; static int -dissect_lte_rrc_SLSSID_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 167U, NULL, FALSE); +dissect_lte_rrc_DRB_ToAddModListSCG_r15(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_lte_rrc_DRB_ToAddModListSCG_r15, DRB_ToAddModListSCG_r15_sequence_of, + 1, maxDRB_r15, FALSE); return offset; } -static const per_sequence_t T_asyncParameters_r13_sequence[] = { - { &hf_lte_rrc_syncCP_Len_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CP_Len_r12 }, - { &hf_lte_rrc_syncOffsetIndicator_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_OffsetIndicatorSync_r12 }, - { &hf_lte_rrc_slssid_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SLSSID_r12 }, +static const per_sequence_t RadioResourceConfigDedicatedSCG_r12_eag_1_sequence[] = { + { &hf_lte_rrc_drb_ToAddModListSCG_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToAddModListSCG_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_asyncParameters_r13(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_lte_rrc_T_asyncParameters_r13, T_asyncParameters_r13_sequence); +dissect_lte_rrc_RadioResourceConfigDedicatedSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedSCG_r12_eag_1_sequence); return offset; } +static const per_sequence_t RadioResourceConfigDedicatedSCG_r12_sequence[] = { + { &hf_lte_rrc_drb_ToAddModListSCG_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToAddModListSCG_r12 }, + { &hf_lte_rrc_mac_MainConfigSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MAC_MainConfig }, + { &hf_lte_rrc_rlf_TimersAndConstantsSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RLF_TimersAndConstantsSCG_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedSCG_r12_eag_1 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_RSRP_RangeSL_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 13U, NULL, FALSE); +dissect_lte_rrc_RadioResourceConfigDedicatedSCG_r12(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_lte_rrc_RadioResourceConfigDedicatedSCG_r12, RadioResourceConfigDedicatedSCG_r12_sequence); return offset; } +static const per_sequence_t SCellToReleaseList_r10_sequence_of[1] = { + { &hf_lte_rrc_SCellToReleaseList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r10 }, +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_19(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, - 19, 19, FALSE, NULL, NULL); +dissect_lte_rrc_SCellToReleaseList_r10(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_lte_rrc_SCellToReleaseList_r10, SCellToReleaseList_r10_sequence_of, + 1, maxSCell_r10, FALSE); return offset; } -static const value_string lte_rrc_T_syncTxPeriodic_r13_01_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_cellIdentification_r12_01_sequence[] = { + { &hf_lte_rrc_physCellId_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_dl_CarrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_syncTxPeriodic_r13_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_cellIdentification_r12_01(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_lte_rrc_T_cellIdentification_r12_01, T_cellIdentification_r12_01_sequence); return offset; } -static const per_sequence_t T_txParameters_r13_sequence[] = { - { &hf_lte_rrc_syncTxParameters_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxParameters_r12 }, - { &hf_lte_rrc_syncTxThreshIC_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_RangeSL_r12 }, - { &hf_lte_rrc_syncInfoReserved_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_19 }, - { &hf_lte_rrc_syncTxPeriodic_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_syncTxPeriodic_r13_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_deltaF_PUCCH_Format3_r12_vals[] = { + { 0, "deltaF-1" }, + { 1, "deltaF0" }, + { 2, "deltaF1" }, + { 3, "deltaF2" }, + { 4, "deltaF3" }, + { 5, "deltaF4" }, + { 6, "deltaF5" }, + { 7, "deltaF6" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_txParameters_r13(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_lte_rrc_T_txParameters_r13, T_txParameters_r13_sequence); +dissect_lte_rrc_T_deltaF_PUCCH_Format3_r12(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_discSyncWindow_r13_vals[] = { - { 0, "w1" }, - { 1, "w2" }, +static const value_string lte_rrc_T_deltaF_PUCCH_Format1bCS_r12_vals[] = { + { 0, "deltaF1" }, + { 1, "deltaF2" }, + { 2, "spare2" }, + { 3, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_discSyncWindow_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r12(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, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_rxParameters_r13_sequence[] = { - { &hf_lte_rrc_discSyncWindow_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_discSyncWindow_r13 }, +static const per_sequence_t UplinkPowerControlCommonPSCell_r12_sequence[] = { + { &hf_lte_rrc_deltaF_PUCCH_Format3_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format3_r12 }, + { &hf_lte_rrc_deltaF_PUCCH_Format1bCS_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deltaF_PUCCH_Format1bCS_r12 }, + { &hf_lte_rrc_p0_NominalPUCCH_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M127_M96 }, + { &hf_lte_rrc_deltaFList_PUCCH_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DeltaFList_PUCCH }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_rxParameters_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UplinkPowerControlCommonPSCell_r12(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_lte_rrc_T_rxParameters_r13, T_rxParameters_r13_sequence); + ett_lte_rrc_UplinkPowerControlCommonPSCell_r12, UplinkPowerControlCommonPSCell_r12_sequence); return offset; } +static const value_string lte_rrc_T_deltaF_PUCCH_Format4_r13_vals[] = { + { 0, "deltaF16" }, + { 1, "deltaF15" }, + { 2, "deltaF14" }, + { 3, "deltaF13" }, + { 4, "deltaF12" }, + { 5, "deltaF11" }, + { 6, "deltaF10" }, + { 7, "spare1" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_SL_OffsetIndicatorSync_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 40U, 159U, NULL, FALSE); +dissect_lte_rrc_T_deltaF_PUCCH_Format4_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_gnss_Sync_r14_02_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_deltaF_PUCCH_Format5_13_vals[] = { + { 0, "deltaF13" }, + { 1, "deltaF12" }, + { 2, "deltaF11" }, + { 3, "deltaF10" }, + { 4, "deltaF9" }, + { 5, "deltaF8" }, + { 6, "deltaF7" }, + { 7, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_gnss_Sync_r14_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_deltaF_PUCCH_Format5_13(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_SyncConfigNFreq_r13_eag_1_sequence[] = { - { &hf_lte_rrc_syncOffsetIndicator_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_v1430 }, - { &hf_lte_rrc_gnss_Sync_r14_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gnss_Sync_r14_02 }, +static const per_sequence_t UplinkPowerControlCommon_v1310_sequence[] = { + { &hf_lte_rrc_deltaF_PUCCH_Format4_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format4_r13 }, + { &hf_lte_rrc_deltaF_PUCCH_Format5_13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deltaF_PUCCH_Format5_13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_SyncConfigNFreq_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfigNFreq_r13_eag_1_sequence); +dissect_lte_rrc_UplinkPowerControlCommon_v1310(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_lte_rrc_UplinkPowerControlCommon_v1310, UplinkPowerControlCommon_v1310_sequence); return offset; } +static const per_sequence_t RadioResourceConfigCommonPSCell_r12_eag_1_sequence[] = { + { &hf_lte_rrc_uplinkPowerControlCommonPSCell_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1310 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_SL_OffsetIndicatorSync_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 159U, NULL, FALSE); +dissect_lte_rrc_RadioResourceConfigCommonPSCell_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonPSCell_r12_eag_1_sequence); return offset; } -static const per_sequence_t SL_SyncConfigNFreq_r13_eag_2_sequence[] = { - { &hf_lte_rrc_syncOffsetIndicator2_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_r14 }, - { &hf_lte_rrc_syncOffsetIndicator3_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_r14 }, +static const per_sequence_t RadioResourceConfigCommonPSCell_r12_eag_2_sequence[] = { + { &hf_lte_rrc_uplinkPowerControlCommonPSCell_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_SyncConfigNFreq_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfigNFreq_r13_eag_2_sequence); +dissect_lte_rrc_RadioResourceConfigCommonPSCell_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonPSCell_r12_eag_2_sequence); return offset; } -static const per_sequence_t SL_SyncConfigNFreq_r13_sequence[] = { - { &hf_lte_rrc_asyncParameters_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_asyncParameters_r13 }, - { &hf_lte_rrc_txParameters_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_txParameters_r13 }, - { &hf_lte_rrc_rxParameters_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParameters_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfigNFreq_r13_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfigNFreq_r13_eag_2 }, +static const per_sequence_t RadioResourceConfigCommonPSCell_r12_sequence[] = { + { &hf_lte_rrc_basicFields_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_r10 }, + { &hf_lte_rrc_pucch_ConfigCommon_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PUCCH_ConfigCommon }, + { &hf_lte_rrc_rach_ConfigCommon_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_ConfigCommon }, + { &hf_lte_rrc_uplinkPowerControlCommonPSCell_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UplinkPowerControlCommonPSCell_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonPSCell_r12_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonPSCell_r12_eag_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_SyncConfigNFreq_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RadioResourceConfigCommonPSCell_r12(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_lte_rrc_SL_SyncConfigNFreq_r13, SL_SyncConfigNFreq_r13_sequence); + ett_lte_rrc_RadioResourceConfigCommonPSCell_r12, RadioResourceConfigCommonPSCell_r12_sequence); return offset; } -static const per_sequence_t SL_SyncConfigListNFreqV2X_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_SyncConfigListNFreqV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfigNFreq_r13 }, +static const per_sequence_t RadioResourceConfigDedicatedPSCell_r12_eag_1_sequence[] = { + { &hf_lte_rrc_neighCellsCRS_InfoPSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_SyncConfigListNFreqV2X_r14(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_lte_rrc_SL_SyncConfigListNFreqV2X_r14, SL_SyncConfigListNFreqV2X_r14_sequence_of, - 1, maxSL_V2X_SyncConfig_r14, FALSE); +dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedPSCell_r12_eag_1_sequence); return offset; } -static const per_sequence_t SL_CommRxPoolListV2X_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_CommRxPoolListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, +static const per_sequence_t RadioResourceConfigDedicatedPSCell_r12_eag_2_sequence[] = { + { &hf_lte_rrc_sps_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config_v1430 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommRxPoolListV2X_r14(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_lte_rrc_SL_CommRxPoolListV2X_r14, SL_CommRxPoolListV2X_r14_sequence_of, - 1, maxSL_V2X_RxPool_r14, FALSE); +dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedPSCell_r12_eag_2_sequence); return offset; } -static const per_sequence_t SL_CommTxPoolListV2X_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_CommTxPoolListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, +static const per_sequence_t RadioResourceConfigDedicatedPSCell_r12_eag_3_sequence[] = { + { &hf_lte_rrc_sps_Config_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config_v1530 }, + { &hf_lte_rrc_crs_IntfMitigEnabled_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_neighCellsCRS_Info_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellsCRS_Info_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommTxPoolListV2X_r14(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_lte_rrc_SL_CommTxPoolListV2X_r14, SL_CommTxPoolListV2X_r14_sequence_of, - 1, maxSL_V2X_TxPool_r14, FALSE); +dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicatedPSCell_r12_eag_3_sequence); return offset; } -static const value_string lte_rrc_T_zoneLength_r14_vals[] = { - { 0, "m5" }, - { 1, "m10" }, - { 2, "m20" }, - { 3, "m50" }, - { 4, "m100" }, - { 5, "m200" }, - { 6, "m500" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t RadioResourceConfigDedicatedPSCell_r12_sequence[] = { + { &hf_lte_rrc_physicalConfigDedicatedPSCell_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicated }, + { &hf_lte_rrc_sps_Config_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SPS_Config }, + { &hf_lte_rrc_naics_Info_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NAICS_AssistanceInfo_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12_eag_3 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_zoneLength_r14(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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_zoneWidth_r14_vals[] = { - { 0, "m5" }, - { 1, "m10" }, - { 2, "m20" }, - { 3, "m50" }, - { 4, "m100" }, - { 5, "m200" }, - { 6, "m500" }, - { 7, "spare1" }, - { 0, NULL } -}; +dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + private_data_set_simult_pucch_pusch_cell_type(actx, SIMULT_PUCCH_PUSCH_PSCELL); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RadioResourceConfigDedicatedPSCell_r12, RadioResourceConfigDedicatedPSCell_r12_sequence); -static int -dissect_lte_rrc_T_zoneWidth_r14(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, - 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_ZoneConfig_r14_sequence[] = { - { &hf_lte_rrc_zoneLength_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_zoneLength_r14 }, - { &hf_lte_rrc_zoneWidth_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_zoneWidth_r14 }, - { &hf_lte_rrc_zoneIdLongiMod_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, - { &hf_lte_rrc_zoneIdLatiMod_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, +static const per_sequence_t PSCellToAddMod_r12_eag_1_sequence[] = { + { &hf_lte_rrc_antennaInfoDedicatedPSCell_v1280, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_ZoneConfig_r14(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_lte_rrc_SL_ZoneConfig_r14, SL_ZoneConfig_r14_sequence); +dissect_lte_rrc_PSCellToAddMod_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PSCellToAddMod_r12_eag_1_sequence); return offset; } @@ -43322,295 +47228,319 @@ dissect_lte_rrc_SL_ZoneConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int -dissect_lte_rrc_INTEGER_0_1000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCellIndex_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 1000U, NULL, FALSE); + 1U, 31U, NULL, FALSE); return offset; } -static const per_sequence_t SL_V2X_InterFreqUE_Config_r14_sequence[] = { - { &hf_lte_rrc_physCellIdList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysCellIdList_r13 }, - { &hf_lte_rrc_typeTxSync_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_TypeTxSync_r14 }, - { &hf_lte_rrc_v2x_SyncConfig_r14_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigListNFreqV2X_r14 }, - { &hf_lte_rrc_v2x_CommRxPool_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommRxPoolListV2X_r14 }, - { &hf_lte_rrc_v2x_CommTxPoolNormal_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolListV2X_r14 }, - { &hf_lte_rrc_p2x_CommTxPoolNormal_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolListV2X_r14 }, - { &hf_lte_rrc_v2x_CommTxPoolExceptional_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, - { &hf_lte_rrc_v2x_ResourceSelectionConfig_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolSensingConfig_r14 }, - { &hf_lte_rrc_zoneConfig_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_ZoneConfig_r14 }, - { &hf_lte_rrc_offsetDFN_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1000 }, +static const per_sequence_t PSCellToAddMod_r12_eag_2_sequence[] = { + { &hf_lte_rrc_sCellIndex_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellIndex_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_V2X_InterFreqUE_Config_r14(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_lte_rrc_SL_V2X_InterFreqUE_Config_r14, SL_V2X_InterFreqUE_Config_r14_sequence); +dissect_lte_rrc_PSCellToAddMod_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PSCellToAddMod_r12_eag_2_sequence); return offset; } -static const per_sequence_t SL_V2X_UE_ConfigList_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_V2X_UE_ConfigList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_InterFreqUE_Config_r14 }, +static const per_sequence_t PhysicalConfigDedicated_v1370_sequence[] = { + { &hf_lte_rrc_pucch_ConfigDedicated_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigDedicated_v1370 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_V2X_UE_ConfigList_r14(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_lte_rrc_SL_V2X_UE_ConfigList_r14, SL_V2X_UE_ConfigList_r14_sequence_of, - 1, maxCellIntra, FALSE); +dissect_lte_rrc_PhysicalConfigDedicated_v1370(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_lte_rrc_PhysicalConfigDedicated_v1370, PhysicalConfigDedicated_v1370_sequence); return offset; } -static const value_string lte_rrc_T_additionalSpectrumEmissionV2X_r14_vals[] = { - { 0, "additionalSpectrumEmission-r14" }, - { 1, "additionalSpectrumEmission-v1440" }, - { 0, NULL } -}; - -static const per_choice_t T_additionalSpectrumEmissionV2X_r14_choice[] = { - { 0, &hf_lte_rrc_additionalSpectrumEmission_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_AdditionalSpectrumEmission }, - { 1, &hf_lte_rrc_additionalSpectrumEmission_v1440, ASN1_NO_EXTENSIONS , dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, - { 0, NULL, 0, NULL } +static const per_sequence_t RadioResourceConfigDedicatedPSCell_v1370_sequence[] = { + { &hf_lte_rrc_physicalConfigDedicatedPSCell_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicated_v1370 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_additionalSpectrumEmissionV2X_r14(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_lte_rrc_T_additionalSpectrumEmissionV2X_r14, T_additionalSpectrumEmissionV2X_r14_choice, - NULL); +dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_v1370(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_lte_rrc_RadioResourceConfigDedicatedPSCell_v1370, RadioResourceConfigDedicatedPSCell_v1370_sequence); return offset; } -static const per_sequence_t SL_InterFreqInfoV2X_r14_eag_1_sequence[] = { - { &hf_lte_rrc_additionalSpectrumEmissionV2X_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_additionalSpectrumEmissionV2X_r14 }, +static const per_sequence_t PSCellToAddMod_r12_eag_3_sequence[] = { + { &hf_lte_rrc_radioResourceConfigDedicatedPSCell_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_v1370 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_InterFreqInfoV2X_r14_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_InterFreqInfoV2X_r14_eag_1_sequence); +dissect_lte_rrc_PSCellToAddMod_r12_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PSCellToAddMod_r12_eag_3_sequence); return offset; } -static const per_sequence_t SL_InterFreqInfoV2X_r14_sequence[] = { - { &hf_lte_rrc_plmn_IdentityList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList }, - { &hf_lte_rrc_v2x_CommCarrierFreq_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_sl_MaxTxPower_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_sl_Bandwidth_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_sl_Bandwidth_r14 }, - { &hf_lte_rrc_v2x_SchedulingPool_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, - { &hf_lte_rrc_v2x_UE_ConfigList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_UE_ConfigList_r14 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_InterFreqInfoV2X_r14_eag_1 }, - { NULL, 0, 0, NULL } -}; - +static const per_sequence_t PSCellToAddMod_r12_sequence[] = { + { &hf_lte_rrc_sCellIndex_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r10 }, + { &hf_lte_rrc_cellIdentification_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_cellIdentification_r12_01 }, + { &hf_lte_rrc_radioResourceConfigCommonPSCell_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonPSCell_r12 }, + { &hf_lte_rrc_radioResourceConfigDedicatedPSCell_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedPSCell_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PSCellToAddMod_r12_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PSCellToAddMod_r12_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PSCellToAddMod_r12_eag_3 }, + { NULL, 0, 0, NULL } +}; + static int -dissect_lte_rrc_SL_InterFreqInfoV2X_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PSCellToAddMod_r12(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_lte_rrc_SL_InterFreqInfoV2X_r14, SL_InterFreqInfoV2X_r14_sequence); + ett_lte_rrc_PSCellToAddMod_r12, PSCellToAddMod_r12_sequence); return offset; } -static const per_sequence_t SL_InterFreqInfoListV2X_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_InterFreqInfoListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_InterFreqInfoV2X_r14 }, +static const value_string lte_rrc_T_t307_r12_vals[] = { + { 0, "ms50" }, + { 1, "ms100" }, + { 2, "ms150" }, + { 3, "ms200" }, + { 4, "ms500" }, + { 5, "ms1000" }, + { 6, "ms2000" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_InterFreqInfoListV2X_r14(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_lte_rrc_SL_InterFreqInfoListV2X_r14, SL_InterFreqInfoListV2X_r14_sequence_of, - 0, maxFreqV2X_1_r14, FALSE); +dissect_lte_rrc_T_t307_r12(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_CBR_Levels_Config_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_CBR_Levels_Config_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CBR_r14 }, +static const per_sequence_t RACH_ConfigDedicated_sequence[] = { + { &hf_lte_rrc_ra_PreambleIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, + { &hf_lte_rrc_ra_PRACH_MaskIndex, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CBR_Levels_Config_r14(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_lte_rrc_SL_CBR_Levels_Config_r14, SL_CBR_Levels_Config_r14_sequence_of, - 1, maxCBR_Level_r14, FALSE); +dissect_lte_rrc_RACH_ConfigDedicated(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_lte_rrc_RACH_ConfigDedicated, RACH_ConfigDedicated_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSL_V2X_CBRConfig_r14_OF_SL_CBR_Levels_Config_r14_sequence_of[1] = { - { &hf_lte_rrc_cbr_RangeCommonConfigList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CBR_Levels_Config_r14 }, +static const value_string lte_rrc_T_makeBeforeBreakSCG_r14_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_CBRConfig_r14_OF_SL_CBR_Levels_Config_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_CBRConfig_r14_OF_SL_CBR_Levels_Config_r14, SEQUENCE_SIZE_1_maxSL_V2X_CBRConfig_r14_OF_SL_CBR_Levels_Config_r14_sequence_of, - 1, maxSL_V2X_CBRConfig_r14, FALSE); +dissect_lte_rrc_T_makeBeforeBreakSCG_r14(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_targetTA_r14_vals[] = { + { 0, "ta0-r14" }, + { 1, "mcg-PTAG-r14" }, + { 2, "scg-PTAG-r14" }, + { 3, "mcg-STAG-r14" }, + { 4, "scg-STAG-r14" }, + { 0, NULL } +}; + +static const per_choice_t T_targetTA_r14_choice[] = { + { 0, &hf_lte_rrc_ta0_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_mcg_PTAG_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_scg_PTAG_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_mcg_STAG_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_STAG_Id_r11 }, + { 4, &hf_lte_rrc_scg_STAG_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_STAG_Id_r11 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_targetTA_r14(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_lte_rrc_T_targetTA_r14, T_targetTA_r14_choice, + NULL); return offset; } +static const value_string lte_rrc_T_ul_SchedInterval_r14_vals[] = { + { 0, "sf2" }, + { 1, "sf5" }, + { 2, "sf10" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_0_10000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 10000U, NULL, FALSE); +dissect_lte_rrc_T_ul_SchedInterval_r14(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_CBR_PSSCH_TxConfig_r14_sequence[] = { - { &hf_lte_rrc_cr_Limit_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10000 }, - { &hf_lte_rrc_tx_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxParameters_r14 }, +static const per_sequence_t T_ul_ConfigInfo_r14_sequence[] = { + { &hf_lte_rrc_numberOfConfUL_Processes_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_8 }, + { &hf_lte_rrc_ul_SchedInterval_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_SchedInterval_r14 }, + { &hf_lte_rrc_ul_StartSubframe_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_9 }, + { &hf_lte_rrc_ul_Grant_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CBR_PSSCH_TxConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_ConfigInfo_r14(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_lte_rrc_SL_CBR_PSSCH_TxConfig_r14, SL_CBR_PSSCH_TxConfig_r14_sequence); + ett_lte_rrc_T_ul_ConfigInfo_r14, T_ul_ConfigInfo_r14_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSL_V2X_TxConfig_r14_OF_SL_CBR_PSSCH_TxConfig_r14_sequence_of[1] = { - { &hf_lte_rrc_sl_CBR_PSSCH_TxConfigList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CBR_PSSCH_TxConfig_r14 }, +static const per_sequence_t RACH_Skip_r14_sequence[] = { + { &hf_lte_rrc_targetTA_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_targetTA_r14 }, + { &hf_lte_rrc_ul_ConfigInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_ConfigInfo_r14 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_TxConfig_r14_OF_SL_CBR_PSSCH_TxConfig_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_TxConfig_r14_OF_SL_CBR_PSSCH_TxConfig_r14, SEQUENCE_SIZE_1_maxSL_V2X_TxConfig_r14_OF_SL_CBR_PSSCH_TxConfig_r14_sequence_of, - 1, maxSL_V2X_TxConfig_r14, FALSE); +dissect_lte_rrc_RACH_Skip_r14(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_lte_rrc_RACH_Skip_r14, RACH_Skip_r14_sequence); return offset; } -static const per_sequence_t SL_CBR_CommonTxConfigList_r14_sequence[] = { - { &hf_lte_rrc_cbr_RangeCommonConfigList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_CBRConfig_r14_OF_SL_CBR_Levels_Config_r14 }, - { &hf_lte_rrc_sl_CBR_PSSCH_TxConfigList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_TxConfig_r14_OF_SL_CBR_PSSCH_TxConfig_r14 }, +static const per_sequence_t MobilityControlInfoSCG_r12_eag_1_sequence[] = { + { &hf_lte_rrc_makeBeforeBreakSCG_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_makeBeforeBreakSCG_r14 }, + { &hf_lte_rrc_rach_SkipSCG_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_Skip_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CBR_CommonTxConfigList_r14(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_lte_rrc_SL_CBR_CommonTxConfigList_r14, SL_CBR_CommonTxConfigList_r14_sequence); +dissect_lte_rrc_MobilityControlInfoSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MobilityControlInfoSCG_r12_eag_1_sequence); return offset; } -static const per_sequence_t SL_V2X_ConfigDedicated_r14_sequence[] = { - { &hf_lte_rrc_commTxResources_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResources_r14 }, - { &hf_lte_rrc_v2x_InterFreqInfoList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_InterFreqInfoListV2X_r14 }, - { &hf_lte_rrc_thresSL_TxPrioritization_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_Priority_r13 }, - { &hf_lte_rrc_typeTxSync_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_TypeTxSync_r14 }, - { &hf_lte_rrc_cbr_DedicatedTxConfigList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_CommonTxConfigList_r14 }, +static const per_sequence_t MobilityControlInfoSCG_r12_sequence[] = { + { &hf_lte_rrc_t307_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t307_r12 }, + { &hf_lte_rrc_ue_IdentitySCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_rach_ConfigDedicated_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RACH_ConfigDedicated }, + { &hf_lte_rrc_cipheringAlgorithmSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CipheringAlgorithm_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityControlInfoSCG_r12_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_V2X_ConfigDedicated_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MobilityControlInfoSCG_r12(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_lte_rrc_SL_V2X_ConfigDedicated_r14, SL_V2X_ConfigDedicated_r14_sequence); + ett_lte_rrc_MobilityControlInfoSCG_r12, MobilityControlInfoSCG_r12_sequence); return offset; } -static const value_string lte_rrc_T_associationTimer_r13_vals[] = { - { 0, "s10" }, - { 1, "s30" }, - { 2, "s60" }, - { 3, "s120" }, - { 4, "s240" }, - { 0, NULL } +static const per_sequence_t SCellToReleaseListExt_r13_sequence_of[1] = { + { &hf_lte_rrc_SCellToReleaseListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r13 }, }; - static int -dissect_lte_rrc_T_associationTimer_r13(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, - 5, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SCellToReleaseListExt_r13(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_lte_rrc_SCellToReleaseListExt_r13, SCellToReleaseListExt_r13_sequence_of, + 1, maxSCell_r13, FALSE); return offset; } -static const value_string lte_rrc_T_successReportRequested_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_cellIdentification_r13_sequence[] = { + { &hf_lte_rrc_physCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_dl_CarrierFreq_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_successReportRequested_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_cellIdentification_r13(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_lte_rrc_T_cellIdentification_r13, T_cellIdentification_r13_sequence); return offset; } -static const per_sequence_t WLAN_SuspendConfig_r14_sequence[] = { - { &hf_lte_rrc_wlan_SuspendResumeAllowed_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_wlan_SuspendTriggersStatusReport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t SCellToAddModExt_r13_sequence[] = { + { &hf_lte_rrc_sCellIndex_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r13 }, + { &hf_lte_rrc_cellIdentification_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cellIdentification_r13 }, + { &hf_lte_rrc_radioResourceConfigCommonSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonSCell_r10 }, + { &hf_lte_rrc_radioResourceConfigDedicatedSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10 }, + { &hf_lte_rrc_antennaInfoDedicatedSCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_WLAN_SuspendConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCellToAddModExt_r13(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_lte_rrc_WLAN_SuspendConfig_r14, WLAN_SuspendConfig_r14_sequence); + ett_lte_rrc_SCellToAddModExt_r13, SCellToAddModExt_r13_sequence); return offset; } -static const per_sequence_t WLAN_MobilityConfig_r13_eag_1_sequence[] = { - { &hf_lte_rrc_wlan_SuspendConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_SuspendConfig_r14 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SCellToAddModListExt_r13_sequence_of[1] = { + { &hf_lte_rrc_SCellToAddModListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddModExt_r13 }, }; static int -dissect_lte_rrc_WLAN_MobilityConfig_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, WLAN_MobilityConfig_r13_eag_1_sequence); +dissect_lte_rrc_SCellToAddModListExt_r13(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_lte_rrc_SCellToAddModListExt_r13, SCellToAddModListExt_r13_sequence_of, + 1, maxSCell_r13, FALSE); return offset; } -static const per_sequence_t WLAN_MobilityConfig_r13_sequence[] = { - { &hf_lte_rrc_wlan_ToReleaseList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_Id_List_r13 }, - { &hf_lte_rrc_wlan_ToAddList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_Id_List_r13 }, - { &hf_lte_rrc_associationTimer_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_associationTimer_r13 }, - { &hf_lte_rrc_successReportRequested_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_successReportRequested_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_MobilityConfig_r13_eag_1 }, +static const per_sequence_t SCG_ConfigPartSCG_r12_eag_1_sequence[] = { + { &hf_lte_rrc_sCellToReleaseListSCG_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseListExt_r13 }, + { &hf_lte_rrc_sCellToAddModListSCG_Ext_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_WLAN_MobilityConfig_r13(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_lte_rrc_WLAN_MobilityConfig_r13, WLAN_MobilityConfig_r13_sequence); +dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCG_ConfigPartSCG_r12_eag_1_sequence); return offset; } @@ -43618,277 +47548,303 @@ dissect_lte_rrc_WLAN_MobilityConfig_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ static int -dissect_lte_rrc_INTEGER_0_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AdditionalSpectrumEmission_v10l0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 65535U, NULL, FALSE); + 33U, 288U, NULL, FALSE); return offset; } -static const per_sequence_t LWA_Config_r13_eag_1_sequence[] = { - { &hf_lte_rrc_wt_MAC_Address_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_6 }, +static const per_sequence_t T_ul_Configuration_v10l0_sequence[] = { + { &hf_lte_rrc_additionalSpectrumEmissionSCell_v10l0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LWA_Config_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LWA_Config_r13_eag_1_sequence); +dissect_lte_rrc_T_ul_Configuration_v10l0(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_lte_rrc_T_ul_Configuration_v10l0, T_ul_Configuration_v10l0_sequence); return offset; } -static const per_sequence_t LWA_Config_r13_sequence[] = { - { &hf_lte_rrc_lwa_MobilityConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_MobilityConfig_r13 }, - { &hf_lte_rrc_lwa_WT_Counter_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LWA_Config_r13_eag_1 }, +static const per_sequence_t RadioResourceConfigCommonSCell_v10l0_sequence[] = { + { &hf_lte_rrc_ul_Configuration_v10l0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_Configuration_v10l0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LWA_Config_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RadioResourceConfigCommonSCell_v10l0(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_lte_rrc_LWA_Config_r13, LWA_Config_r13_sequence); + ett_lte_rrc_RadioResourceConfigCommonSCell_v10l0, RadioResourceConfigCommonSCell_v10l0_sequence); return offset; } +static const per_sequence_t SCellToAddModExt_v1370_sequence[] = { + { &hf_lte_rrc_radioResourceConfigCommonSCell_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonSCell_v10l0 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_31250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 31250U, NULL, FALSE); +dissect_lte_rrc_SCellToAddModExt_v1370(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_lte_rrc_SCellToAddModExt_v1370, SCellToAddModExt_v1370_sequence); return offset; } -static const value_string lte_rrc_T_connectedWLAN_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SCellToAddModListExt_v1370_sequence_of[1] = { + { &hf_lte_rrc_SCellToAddModListExt_v1370_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddModExt_v1370 }, }; - static int -dissect_lte_rrc_T_connectedWLAN_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SCellToAddModListExt_v1370(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_lte_rrc_SCellToAddModListExt_v1370, SCellToAddModListExt_v1370_sequence_of, + 1, maxSCell_r13, FALSE); return offset; } -static const per_sequence_t MeasResultWLAN_r13_sequence[] = { - { &hf_lte_rrc_wlan_Identifiers_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Identifiers_r12 }, - { &hf_lte_rrc_carrierInfoWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_CarrierInfo_r13 }, - { &hf_lte_rrc_bandWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_BandIndicator_r13 }, - { &hf_lte_rrc_rssiWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_RSSI_Range_r13 }, - { &hf_lte_rrc_availableAdmissionCapacityWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31250 }, - { &hf_lte_rrc_backhaulDL_BandwidthWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_backhaulRate_r12 }, - { &hf_lte_rrc_backhaulUL_BandwidthWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_backhaulRate_r12 }, - { &hf_lte_rrc_channelUtilizationWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_255 }, - { &hf_lte_rrc_stationCountWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, - { &hf_lte_rrc_connectedWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_connectedWLAN_r13 }, +static const per_sequence_t SCG_ConfigPartSCG_r12_eag_2_sequence[] = { + { &hf_lte_rrc_sCellToAddModListSCG_Ext_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_v1370 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultWLAN_r13(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_lte_rrc_MeasResultWLAN_r13, MeasResultWLAN_r13_sequence); +dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCG_ConfigPartSCG_r12_eag_2_sequence); return offset; } -static const per_sequence_t MeasResultListWLAN_r13_sequence_of[1] = { - { &hf_lte_rrc_MeasResultListWLAN_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultWLAN_r13 }, +static const per_sequence_t T_ul_FreqInfo_v1440_sequence[] = { + { &hf_lte_rrc_additionalSpectrumEmissionSCell_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultListWLAN_r13(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_lte_rrc_MeasResultListWLAN_r13, MeasResultListWLAN_r13_sequence_of, - 1, maxCellReport, FALSE); +dissect_lte_rrc_T_ul_FreqInfo_v1440(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_lte_rrc_T_ul_FreqInfo_v1440, T_ul_FreqInfo_v1440_sequence); return offset; } -static const per_sequence_t AS_Config_v1430_sequence[] = { - { &hf_lte_rrc_sourceSL_V2X_CommConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_ConfigDedicated_r14 }, - { &hf_lte_rrc_sourceLWA_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWA_Config_r13 }, - { &hf_lte_rrc_sourceWLAN_MeasResult_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListWLAN_r13 }, +static const per_sequence_t T_ul_Configuration_v1440_sequence[] = { + { &hf_lte_rrc_ul_FreqInfo_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_FreqInfo_v1440 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AS_Config_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_Configuration_v1440(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_lte_rrc_AS_Config_v1430, AS_Config_v1430_sequence); + ett_lte_rrc_T_ul_Configuration_v1440, T_ul_Configuration_v1440_sequence); return offset; } -static const value_string lte_rrc_T_makeBeforeBreakReq_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t RadioResourceConfigCommonSCell_v1440_sequence[] = { + { &hf_lte_rrc_ul_Configuration_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ul_Configuration_v1440 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_makeBeforeBreakReq_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RadioResourceConfigCommonSCell_v1440(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_lte_rrc_RadioResourceConfigCommonSCell_v1440, RadioResourceConfigCommonSCell_v1440_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_02_sequence[] = { +static const per_sequence_t RadioResourceConfigCommonPSCell_v1440_sequence[] = { + { &hf_lte_rrc_basicFields_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_v1440 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RadioResourceConfigCommonPSCell_v1440(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_lte_rrc_T_nonCriticalExtension_02, T_nonCriticalExtension_02_sequence); + ett_lte_rrc_RadioResourceConfigCommonPSCell_v1440, RadioResourceConfigCommonPSCell_v1440_sequence); return offset; } -static const per_sequence_t HandoverPreparationInformation_v1430_IEs_sequence[] = { - { &hf_lte_rrc_as_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config_v1430 }, - { &hf_lte_rrc_makeBeforeBreakReq_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_makeBeforeBreakReq_r14 }, - { &hf_lte_rrc_nonCriticalExtension_10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_02 }, +static const per_sequence_t PSCellToAddMod_v1440_sequence[] = { + { &hf_lte_rrc_radioResourceConfigCommonPSCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonPSCell_v1440 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverPreparationInformation_v1430_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PSCellToAddMod_v1440(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_lte_rrc_HandoverPreparationInformation_v1430_IEs, HandoverPreparationInformation_v1430_IEs_sequence); + ett_lte_rrc_PSCellToAddMod_v1440, PSCellToAddMod_v1440_sequence); return offset; } -static const per_sequence_t HandoverPreparationInformation_v1320_IEs_sequence[] = { - { &hf_lte_rrc_as_Config_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config_v1320 }, - { &hf_lte_rrc_as_Context_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Context_v1320 }, - { &hf_lte_rrc_nonCriticalExtension_09, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v1430_IEs }, +static const per_sequence_t SCG_ConfigPartSCG_r12_eag_3_sequence[] = { + { &hf_lte_rrc_pSCellToAddMod_v1440, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PSCellToAddMod_v1440 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverPreparationInformation_v1320_IEs(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_lte_rrc_HandoverPreparationInformation_v1320_IEs, HandoverPreparationInformation_v1320_IEs_sequence); +dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCG_ConfigPartSCG_r12_eag_3_sequence); return offset; } -static const per_sequence_t HandoverPreparationInformation_v1250_IEs_sequence[] = { - { &hf_lte_rrc_ue_SupportedEARFCN_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_as_Config_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config_v1250 }, - { &hf_lte_rrc_nonCriticalExtension_08, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v1320_IEs }, + +static int +dissect_lte_rrc_SCellGroupIndex_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxSCellGroups_r15, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SCellGroupToReleaseList_r15_sequence_of[1] = { + { &hf_lte_rrc_SCellGroupToReleaseList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellGroupIndex_r15 }, +}; + +static int +dissect_lte_rrc_SCellGroupToReleaseList_r15(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_lte_rrc_SCellGroupToReleaseList_r15, SCellGroupToReleaseList_r15_sequence_of, + 1, maxSCellGroups_r15, FALSE); + + return offset; +} + + +static const per_sequence_t SCellConfigCommon_r15_sequence[] = { + { &hf_lte_rrc_radioResourceConfigCommonSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonSCell_r10 }, + { &hf_lte_rrc_radioResourceConfigDedicatedSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedSCell_r10 }, + { &hf_lte_rrc_antennaInfoDedicatedSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverPreparationInformation_v1250_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCellConfigCommon_r15(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_lte_rrc_HandoverPreparationInformation_v1250_IEs, HandoverPreparationInformation_v1250_IEs_sequence); + ett_lte_rrc_SCellConfigCommon_r15, SCellConfigCommon_r15_sequence); return offset; } -static const per_sequence_t HandoverPreparationInformation_v1130_IEs_sequence[] = { - { &hf_lte_rrc_as_Context_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Context_v1130 }, - { &hf_lte_rrc_nonCriticalExtension_07, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v1250_IEs }, +static const per_sequence_t SCellGroupToAddMod_r15_sequence[] = { + { &hf_lte_rrc_sCellGroupIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellGroupIndex_r15 }, + { &hf_lte_rrc_sCellConfigCommon_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellConfigCommon_r15 }, + { &hf_lte_rrc_sCellToReleaseList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseListExt_r13 }, + { &hf_lte_rrc_sCellToAddModList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverPreparationInformation_v1130_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCellGroupToAddMod_r15(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_lte_rrc_HandoverPreparationInformation_v1130_IEs, HandoverPreparationInformation_v1130_IEs_sequence); + ett_lte_rrc_SCellGroupToAddMod_r15, SCellGroupToAddMod_r15_sequence); return offset; } -static const per_sequence_t HandoverPreparationInformation_v9e0_IEs_sequence[] = { - { &hf_lte_rrc_as_Config_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config_v9e0 }, - { &hf_lte_rrc_nonCriticalExtension_06, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v1130_IEs }, +static const per_sequence_t SCellGroupToAddModList_r15_sequence_of[1] = { + { &hf_lte_rrc_SCellGroupToAddModList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellGroupToAddMod_r15 }, +}; + +static int +dissect_lte_rrc_SCellGroupToAddModList_r15(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_lte_rrc_SCellGroupToAddModList_r15, SCellGroupToAddModList_r15_sequence_of, + 1, maxSCellGroups_r15, FALSE); + + return offset; +} + + +static const per_sequence_t SCG_ConfigPartSCG_r12_eag_4_sequence[] = { + { &hf_lte_rrc_sCellGroupToReleaseListSCG_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellGroupToReleaseList_r15 }, + { &hf_lte_rrc_sCellGroupToAddModListSCG_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellGroupToAddModList_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverPreparationInformation_v9e0_IEs(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_lte_rrc_HandoverPreparationInformation_v9e0_IEs, HandoverPreparationInformation_v9e0_IEs_sequence); +dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCG_ConfigPartSCG_r12_eag_4_sequence); return offset; } -static const per_sequence_t HandoverPreparationInformation_v9d0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension }, - { &hf_lte_rrc_nonCriticalExtension_03, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v9e0_IEs }, +static const per_sequence_t SCG_ConfigPartSCG_r12_sequence[] = { + { &hf_lte_rrc_radioResourceConfigDedicatedSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicatedSCG_r12 }, + { &hf_lte_rrc_sCellToReleaseListSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseList_r10 }, + { &hf_lte_rrc_pSCellToAddMod_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PSCellToAddMod_r12 }, + { &hf_lte_rrc_sCellToAddModListSCG_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_r10 }, + { &hf_lte_rrc_mobilityControlInfoSCG_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MobilityControlInfoSCG_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCG_ConfigPartSCG_r12_eag_4 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverPreparationInformation_v9d0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCG_ConfigPartSCG_r12(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_lte_rrc_HandoverPreparationInformation_v9d0_IEs, HandoverPreparationInformation_v9d0_IEs_sequence); + ett_lte_rrc_SCG_ConfigPartSCG_r12, SCG_ConfigPartSCG_r12_sequence); return offset; } -static const per_sequence_t HandoverPreparationInformation_v920_IEs_sequence[] = { - { &hf_lte_rrc_ue_ConfigRelease_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_ConfigRelease_r9 }, - { &hf_lte_rrc_nonCriticalExtension_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v9d0_IEs }, +static const per_sequence_t T_nonCriticalExtension_03_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverPreparationInformation_v920_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_03(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_lte_rrc_HandoverPreparationInformation_v920_IEs, HandoverPreparationInformation_v920_IEs_sequence); + ett_lte_rrc_T_nonCriticalExtension_03, T_nonCriticalExtension_03_sequence); return offset; } -static const per_sequence_t HandoverPreparationInformation_r8_IEs_sequence[] = { - { &hf_lte_rrc_ue_RadioAccessCapabilityInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_CapabilityRAT_ContainerList }, - { &hf_lte_rrc_as_Config , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config }, - { &hf_lte_rrc_rrm_Config , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRM_Config }, - { &hf_lte_rrc_as_Context , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Context }, - { &hf_lte_rrc_nonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v920_IEs }, +static const per_sequence_t SCG_Config_r12_IEs_sequence[] = { + { &hf_lte_rrc_scg_RadioConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigPartSCG_r12 }, + { &hf_lte_rrc_nonCriticalExtension_11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_03 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverPreparationInformation_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCG_Config_r12_IEs(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_lte_rrc_HandoverPreparationInformation_r8_IEs, HandoverPreparationInformation_r8_IEs_sequence); + ett_lte_rrc_SCG_Config_r12_IEs, SCG_Config_r12_IEs_sequence); return offset; } -static const value_string lte_rrc_T_c1_01_vals[] = { - { 0, "handoverPreparationInformation-r8" }, +static const value_string lte_rrc_T_c1_02_vals[] = { + { 0, "scg-Config-r12" }, { 1, "spare7" }, { 2, "spare6" }, { 3, "spare5" }, @@ -43899,8 +47855,8 @@ static const value_string lte_rrc_T_c1_01_vals[] = { { 0, NULL } }; -static const per_choice_t T_c1_01_choice[] = { - { 0, &hf_lte_rrc_handoverPreparationInformation_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_HandoverPreparationInformation_r8_IEs }, +static const per_choice_t T_c1_02_choice[] = { + { 0, &hf_lte_rrc_scg_Config_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCG_Config_r12_IEs }, { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, @@ -43912,385 +47868,422 @@ static const per_choice_t T_c1_01_choice[] = { }; static int -dissect_lte_rrc_T_c1_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_02(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_lte_rrc_T_c1_01, T_c1_01_choice, + ett_lte_rrc_T_c1_02, T_c1_02_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_01_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_02_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_02(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_lte_rrc_T_criticalExtensionsFuture_01, T_criticalExtensionsFuture_01_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_02, T_criticalExtensionsFuture_02_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_01_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_02_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_01_choice[] = { - { 0, &hf_lte_rrc_c1_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_01 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_01 }, +static const per_choice_t T_criticalExtensions_02_choice[] = { + { 0, &hf_lte_rrc_c1_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_02 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_02 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_02(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_lte_rrc_T_criticalExtensions_01, T_criticalExtensions_01_choice, + ett_lte_rrc_T_criticalExtensions_02, T_criticalExtensions_02_choice, NULL); return offset; } -static const per_sequence_t HandoverPreparationInformation_sequence[] = { - { &hf_lte_rrc_criticalExtensions_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_01 }, +static const per_sequence_t SCG_Config_r12_sequence[] = { + { &hf_lte_rrc_criticalExtensions_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_02 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverPreparationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCG_Config_r12(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_lte_rrc_HandoverPreparationInformation, HandoverPreparationInformation_sequence); + ett_lte_rrc_SCG_Config_r12, SCG_Config_r12_sequence); return offset; } +static const per_sequence_t AS_Config_eag_3_sequence[] = { + { &hf_lte_rrc_sourceConfigSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_Config_r12 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_OCTET_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL); +dissect_lte_rrc_AS_Config_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Config_eag_3_sequence); return offset; } -static const per_sequence_t AS_Config_v10j0_sequence[] = { - { &hf_lte_rrc_antennaInfoDedicatedPCell_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_AS_Config_v10j0(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_lte_rrc_AS_Config_v10j0, AS_Config_v10j0_sequence); +dissect_lte_rrc_T_sourceRB_ConfigNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *radio_bearer_config_tvb = NULL; - return offset; -} + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); -static const per_sequence_t T_nonCriticalExtension_01_sequence[] = { - { NULL, 0, 0, NULL } -}; + if (radio_bearer_config_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_sourceRB_ConfigNR_r15); + dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); + } -static int -dissect_lte_rrc_T_nonCriticalExtension_01(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_lte_rrc_T_nonCriticalExtension_01, T_nonCriticalExtension_01_sequence); return offset; } -static const per_sequence_t HandoverPreparationInformation_v10j0_IEs_sequence[] = { - { &hf_lte_rrc_as_Config_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config_v10j0 }, - { &hf_lte_rrc_nonCriticalExtension_05, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_01 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_HandoverPreparationInformation_v10j0_IEs(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_lte_rrc_HandoverPreparationInformation_v10j0_IEs, HandoverPreparationInformation_v10j0_IEs_sequence); +dissect_lte_rrc_T_sourceRB_ConfigSN_NR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *radio_bearer_config_tvb = NULL; - return offset; -} + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); -static const per_sequence_t HandoverPreparationInformation_v9j0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_04, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v10j0_IEs }, - { NULL, 0, 0, NULL } -}; + if (radio_bearer_config_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_sourceRB_ConfigSN_NR_r15); + dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); + } -static int -dissect_lte_rrc_HandoverPreparationInformation_v9j0_IEs(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_lte_rrc_HandoverPreparationInformation_v9j0_IEs, HandoverPreparationInformation_v9j0_IEs_sequence); return offset; } -static const per_sequence_t PowerCoordinationInfo_r12_sequence[] = { - { &hf_lte_rrc_p_MeNB_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_16 }, - { &hf_lte_rrc_p_SeNB_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_16 }, - { &hf_lte_rrc_powerControlMode_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_2 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_PowerCoordinationInfo_r12(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_lte_rrc_PowerCoordinationInfo_r12, PowerCoordinationInfo_r12_sequence); +dissect_lte_rrc_T_sourceOtherConfigSN_NR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *rrc_reconfiguration_tvb = NULL; - return offset; -} + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &rrc_reconfiguration_tvb); + if (rrc_reconfiguration_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_sourceOtherConfigSN_NR_r15); + dissect_nr_rrc_RRCReconfiguration_PDU(rrc_reconfiguration_tvb, actx->pinfo, subtree, NULL); + } -static int -dissect_lte_rrc_T_eutra_CapabilityInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UECapabilityInformation_PDU); return offset; } -static const per_sequence_t SCG_ConfigRestrictInfo_r12_sequence[] = { - { &hf_lte_rrc_maxSCH_TB_BitsDL_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_100 }, - { &hf_lte_rrc_maxSCH_TB_BitsUL_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_100 }, +static const per_sequence_t AS_ConfigNR_r15_sequence[] = { + { &hf_lte_rrc_sourceRB_ConfigNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sourceRB_ConfigNR_r15 }, + { &hf_lte_rrc_sourceRB_ConfigSN_NR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sourceRB_ConfigSN_NR_r15 }, + { &hf_lte_rrc_sourceOtherConfigSN_NR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sourceOtherConfigSN_NR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCG_ConfigRestrictInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AS_ConfigNR_r15(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_lte_rrc_SCG_ConfigRestrictInfo_r12, SCG_ConfigRestrictInfo_r12_sequence); - - return offset; -} - - - -static int -dissect_lte_rrc_T_mbmsInterestIndication_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_MBMSInterestIndication_r11_PDU); + ett_lte_rrc_AS_ConfigNR_r15, AS_ConfigNR_r15_sequence); return offset; } -static const per_sequence_t T_measResultSCell_r12_sequence[] = { - { &hf_lte_rrc_rsrpResultSCell_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResultSCell_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, +static const per_sequence_t AS_Config_eag_4_sequence[] = { + { &hf_lte_rrc_as_ConfigNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_ConfigNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultSCell_r12(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_lte_rrc_T_measResultSCell_r12, T_measResultSCell_r12_sequence); +dissect_lte_rrc_AS_Config_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Config_eag_4_sequence); return offset; } -static const per_sequence_t T_measResultSCell_v1310_sequence[] = { - { &hf_lte_rrc_rs_sinr_ResultSCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_SINR_Range_r13 }, +static const per_sequence_t AS_Config_sequence[] = { + { &hf_lte_rrc_sourceMeasConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasConfig }, + { &hf_lte_rrc_sourceRadioResourceConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated }, + { &hf_lte_rrc_sourceSecurityAlgorithmConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityAlgorithmConfig }, + { &hf_lte_rrc_sourceUE_Identity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_sourceMasterInformationBlock, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MasterInformationBlock }, + { &hf_lte_rrc_sourceSystemInformationBlockType1, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType1 }, + { &hf_lte_rrc_sourceSystemInformationBlockType2, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2 }, + { &hf_lte_rrc_antennaInfoCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AntennaInfoCommon }, + { &hf_lte_rrc_sourceDl_CarrierFreq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Config_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Config_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Config_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Config_eag_4 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultSCell_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AS_Config(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_lte_rrc_T_measResultSCell_v1310, T_measResultSCell_v1310_sequence); + ett_lte_rrc_AS_Config, AS_Config_sequence); return offset; } -static const per_sequence_t MeasResultServCellSCG_r12_eag_1_sequence[] = { - { &hf_lte_rrc_servCellId_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ServCellIndex_r13 }, - { &hf_lte_rrc_measResultSCell_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultSCell_v1310 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ue_InactiveTime_vals[] = { + { 0, "s1" }, + { 1, "s2" }, + { 2, "s3" }, + { 3, "s5" }, + { 4, "s7" }, + { 5, "s10" }, + { 6, "s15" }, + { 7, "s20" }, + { 8, "s25" }, + { 9, "s30" }, + { 10, "s40" }, + { 11, "s50" }, + { 12, "min1" }, + { 13, "min1s20c" }, + { 14, "min1s40" }, + { 15, "min2" }, + { 16, "min2s30" }, + { 17, "min3" }, + { 18, "min3s30" }, + { 19, "min4" }, + { 20, "min5" }, + { 21, "min6" }, + { 22, "min7" }, + { 23, "min8" }, + { 24, "min9" }, + { 25, "min10" }, + { 26, "min12" }, + { 27, "min14" }, + { 28, "min17" }, + { 29, "min20" }, + { 30, "min24" }, + { 31, "min28" }, + { 32, "min33" }, + { 33, "min38" }, + { 34, "min44" }, + { 35, "min50" }, + { 36, "hr1" }, + { 37, "hr1min30" }, + { 38, "hr2" }, + { 39, "hr2min30" }, + { 40, "hr3" }, + { 41, "hr3min30" }, + { 42, "hr4" }, + { 43, "hr5" }, + { 44, "hr6" }, + { 45, "hr8" }, + { 46, "hr10" }, + { 47, "hr13" }, + { 48, "hr16" }, + { 49, "hr20" }, + { 50, "day1" }, + { 51, "day1hr12" }, + { 52, "day2" }, + { 53, "day2hr12" }, + { 54, "day3" }, + { 55, "day4" }, + { 56, "day5" }, + { 57, "day7" }, + { 58, "day10" }, + { 59, "day14" }, + { 60, "day19" }, + { 61, "day24" }, + { 62, "day30" }, + { 63, "dayMoreThan30" }, + { 0, NULL } }; +static value_string_ext lte_rrc_T_ue_InactiveTime_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_ue_InactiveTime_vals); + + static int -dissect_lte_rrc_MeasResultServCellSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResultServCellSCG_r12_eag_1_sequence); +dissect_lte_rrc_T_ue_InactiveTime(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, + 64, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MeasResultServCellSCG_r12_sequence[] = { - { &hf_lte_rrc_servCellId_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r10 }, - { &hf_lte_rrc_measResultSCell_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultSCell_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServCellSCG_r12_eag_1 }, +static const per_sequence_t CandidateCellInfo_r10_eag_1_sequence[] = { + { &hf_lte_rrc_dl_CarrierFreq_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultServCellSCG_r12(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_lte_rrc_MeasResultServCellSCG_r12, MeasResultServCellSCG_r12_sequence); +dissect_lte_rrc_CandidateCellInfo_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CandidateCellInfo_r10_eag_1_sequence); return offset; } -static const per_sequence_t MeasResultServCellListSCG_r12_sequence_of[1] = { - { &hf_lte_rrc_MeasResultServCellListSCG_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServCellSCG_r12 }, +static const per_sequence_t CandidateCellInfo_r10_eag_2_sequence[] = { + { &hf_lte_rrc_rsrqResult_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultServCellListSCG_r12(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_lte_rrc_MeasResultServCellListSCG_r12, MeasResultServCellListSCG_r12_sequence_of, - 1, maxServCell_r10, FALSE); +dissect_lte_rrc_CandidateCellInfo_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CandidateCellInfo_r10_eag_2_sequence); return offset; } -static const value_string lte_rrc_T_drb_Type_r12_vals[] = { - { 0, "split" }, - { 1, "scg" }, - { 0, NULL } +static const per_sequence_t CandidateCellInfo_r10_eag_3_sequence[] = { + { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_Range_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_drb_Type_r12(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, FALSE, 0, NULL); +dissect_lte_rrc_CandidateCellInfo_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CandidateCellInfo_r10_eag_3_sequence); return offset; } -static const per_sequence_t DRB_InfoSCG_r12_sequence[] = { - { &hf_lte_rrc_eps_BearerIdentity_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, - { &hf_lte_rrc_drb_Identity_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, - { &hf_lte_rrc_drb_Type_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_Type_r12 }, +static const per_sequence_t CandidateCellInfo_r10_sequence[] = { + { &hf_lte_rrc_physCellId_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_dl_CarrierFreq_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &hf_lte_rrc_rsrpResult_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResult_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CandidateCellInfo_r10_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CandidateCellInfo_r10_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CandidateCellInfo_r10_eag_3 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DRB_InfoSCG_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CandidateCellInfo_r10(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_lte_rrc_DRB_InfoSCG_r12, DRB_InfoSCG_r12_sequence); + ett_lte_rrc_CandidateCellInfo_r10, CandidateCellInfo_r10_sequence); return offset; } -static const per_sequence_t DRB_InfoListSCG_r12_sequence_of[1] = { - { &hf_lte_rrc_DRB_InfoListSCG_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_InfoSCG_r12 }, +static const per_sequence_t CandidateCellInfoList_r10_sequence_of[1] = { + { &hf_lte_rrc_CandidateCellInfoList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CandidateCellInfo_r10 }, }; static int -dissect_lte_rrc_DRB_InfoListSCG_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CandidateCellInfoList_r10(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_lte_rrc_DRB_InfoListSCG_r12, DRB_InfoListSCG_r12_sequence_of, - 1, maxDRB, FALSE); + ett_lte_rrc_CandidateCellInfoList_r10, CandidateCellInfoList_r10_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t T_cellIdentification_r12_sequence[] = { - { &hf_lte_rrc_physCellId_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_dl_CarrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, +static const per_sequence_t RRM_Config_eag_1_sequence[] = { + { &hf_lte_rrc_candidateCellInfoList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CandidateCellInfoList_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cellIdentification_r12(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_lte_rrc_T_cellIdentification_r12, T_cellIdentification_r12_sequence); +dissect_lte_rrc_RRM_Config_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RRM_Config_eag_1_sequence); return offset; } -static const per_sequence_t T_measResultCellToAdd_r12_sequence[] = { - { &hf_lte_rrc_rsrpResult_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResult_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, +static const per_sequence_t MeasResultNR_r15_sequence[] = { + { &hf_lte_rrc_rsrpResult_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_RangeNR_r15 }, + { &hf_lte_rrc_rsrqResult_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_RangeNR_r15 }, + { &hf_lte_rrc_rs_sinr_Result_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_RangeNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultCellToAdd_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasResultNR_r15(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_lte_rrc_T_measResultCellToAdd_r12, T_measResultCellToAdd_r12_sequence); + ett_lte_rrc_MeasResultNR_r15, MeasResultNR_r15_sequence); return offset; } -static const per_sequence_t T_measResultCellToAdd_v1310_sequence[] = { - { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_SINR_Range_r13 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_measResultCellToAdd_v1310(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_lte_rrc_T_measResultCellToAdd_v1310, T_measResultCellToAdd_v1310_sequence); +dissect_lte_rrc_RS_IndexNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxRS_Index_1_r15, NULL, FALSE); return offset; } -static const per_sequence_t Cell_ToAddMod_r12_eag_1_sequence[] = { - { &hf_lte_rrc_sCellIndex_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellIndex_r13 }, - { &hf_lte_rrc_measResultCellToAdd_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultCellToAdd_v1310 }, +static const per_sequence_t MeasResultSSB_Index_r15_sequence[] = { + { &hf_lte_rrc_ssb_Index_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_IndexNR_r15 }, + { &hf_lte_rrc_measResultSSB_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_Cell_ToAddMod_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, Cell_ToAddMod_r12_eag_1_sequence); +dissect_lte_rrc_MeasResultSSB_Index_r15(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_lte_rrc_MeasResultSSB_Index_r15, MeasResultSSB_Index_r15_sequence); return offset; } -static const per_sequence_t Cell_ToAddMod_r12_sequence[] = { - { &hf_lte_rrc_sCellIndex_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r10 }, - { &hf_lte_rrc_cellIdentification_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_cellIdentification_r12 }, - { &hf_lte_rrc_measResultCellToAdd_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultCellToAdd_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_Cell_ToAddMod_r12_eag_1 }, - { NULL, 0, 0, NULL } +static const per_sequence_t MeasResultSSB_IndexList_r15_sequence_of[1] = { + { &hf_lte_rrc_MeasResultSSB_IndexList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultSSB_Index_r15 }, }; static int -dissect_lte_rrc_Cell_ToAddMod_r12(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_lte_rrc_Cell_ToAddMod_r12, Cell_ToAddMod_r12_sequence); +dissect_lte_rrc_MeasResultSSB_IndexList_r15(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_lte_rrc_MeasResultSSB_IndexList_r15, MeasResultSSB_IndexList_r15_sequence_of, + 1, maxRS_IndexReport_r15, FALSE); return offset; } -static const per_sequence_t SCellToAddModListSCG_r12_sequence_of[1] = { - { &hf_lte_rrc_SCellToAddModListSCG_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Cell_ToAddMod_r12 }, +static const per_sequence_t PLMN_IdentityListNR_r15_sequence_of[1] = { + { &hf_lte_rrc_PLMN_IdentityListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, }; static int -dissect_lte_rrc_SCellToAddModListSCG_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PLMN_IdentityListNR_r15(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_lte_rrc_SCellToAddModListSCG_r12, SCellToAddModListSCG_r12_sequence_of, - 1, maxSCell_r10, FALSE); + ett_lte_rrc_PLMN_IdentityListNR_r15, PLMN_IdentityListNR_r15_sequence_of, + 1, maxPLMN_NR_r15, FALSE); return offset; } @@ -44298,9 +48291,9 @@ dissect_lte_rrc_SCellToAddModListSCG_r12(tvbuff_t *tvb _U_, int offset _U_, asn1 static int -dissect_lte_rrc_INTEGER_M5_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -5, 4U, NULL, FALSE); +dissect_lte_rrc_TrackingAreaCodeNR_r15(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, + 24, 24, FALSE, NULL, NULL); return offset; } @@ -44308,417 +48301,332 @@ dissect_lte_rrc_INTEGER_M5_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int -dissect_lte_rrc_INTEGER_0_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 127U, NULL, FALSE); +dissect_lte_rrc_CellIdentityNR_r15(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, + 36, 36, FALSE, NULL, NULL); return offset; } -static const per_sequence_t MeasResultSSTD_r13_sequence[] = { - { &hf_lte_rrc_sfn_OffsetResult_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1023 }, - { &hf_lte_rrc_frameBoundaryOffsetResult_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M5_4 }, - { &hf_lte_rrc_subframeBoundaryOffsetResult_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_127 }, +static const per_sequence_t PLMN_IdentityInfoNR_r15_sequence[] = { + { &hf_lte_rrc_plmn_IdentityList_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityListNR_r15 }, + { &hf_lte_rrc_trackingAreaCode_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TrackingAreaCodeNR_r15 }, + { &hf_lte_rrc_ran_AreaCode_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RAN_AreaCode_r15 }, + { &hf_lte_rrc_cellIdentity_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentityNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultSSTD_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PLMN_IdentityInfoNR_r15(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_lte_rrc_MeasResultSSTD_r13, MeasResultSSTD_r13_sequence); + ett_lte_rrc_PLMN_IdentityInfoNR_r15, PLMN_IdentityInfoNR_r15_sequence); return offset; } -static const per_sequence_t MeasResultServCellListSCG_Ext_r13_sequence_of[1] = { - { &hf_lte_rrc_MeasResultServCellListSCG_Ext_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServCellSCG_r12 }, +static const per_sequence_t PLMN_IdentityInfoListNR_r15_sequence_of[1] = { + { &hf_lte_rrc_PLMN_IdentityInfoListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityInfoNR_r15 }, }; static int -dissect_lte_rrc_MeasResultServCellListSCG_Ext_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PLMN_IdentityInfoListNR_r15(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_lte_rrc_MeasResultServCellListSCG_Ext_r13, MeasResultServCellListSCG_Ext_r13_sequence_of, - 1, maxServCell_r13, FALSE); + ett_lte_rrc_PLMN_IdentityInfoListNR_r15, PLMN_IdentityInfoListNR_r15_sequence_of, + 1, maxPLMN_NR_r15, FALSE); return offset; } -static const per_sequence_t SCellToAddModListSCG_Ext_r13_sequence_of[1] = { - { &hf_lte_rrc_SCellToAddModListSCG_Ext_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Cell_ToAddMod_r12 }, +static const per_sequence_t MultiFrequencyBandListNR_r15_sequence_of[1] = { + { &hf_lte_rrc_MultiFrequencyBandListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicatorNR_r15 }, }; static int -dissect_lte_rrc_SCellToAddModListSCG_Ext_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MultiFrequencyBandListNR_r15(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_lte_rrc_SCellToAddModListSCG_Ext_r13, SCellToAddModListSCG_Ext_r13_sequence_of, - 1, maxSCell_r13, FALSE); - - return offset; -} - - - -static int -dissect_lte_rrc_INTEGER_0_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 100U, NULL, FALSE); + ett_lte_rrc_MultiFrequencyBandListNR_r15, MultiFrequencyBandListNR_r15_sequence_of, + 1, maxMultiBandsNR_r15, FALSE); return offset; } -static const per_sequence_t MeasResultForRSSI_r13_sequence[] = { - { &hf_lte_rrc_rssi_Result_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSSI_Range_r13 }, - { &hf_lte_rrc_channelOccupancy_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_100 }, +static const per_sequence_t T_noSIB1_r15_sequence[] = { + { &hf_lte_rrc_ssb_SubcarrierOffset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_pdcch_ConfigSIB1_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_255 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultForRSSI_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_noSIB1_r15(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_lte_rrc_MeasResultForRSSI_r13, MeasResultForRSSI_r13_sequence); + ett_lte_rrc_T_noSIB1_r15, T_noSIB1_r15_sequence); return offset; } -static const per_sequence_t MeasResultRSSI_SCG_r13_sequence[] = { - { &hf_lte_rrc_servCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r13 }, - { &hf_lte_rrc_measResultForRSSI_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultForRSSI_r13 }, +static const per_sequence_t CGI_InfoNR_r15_sequence[] = { + { &hf_lte_rrc_plmn_IdentityInfoList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityInfoListNR_r15 }, + { &hf_lte_rrc_frequencyBandList_15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MultiFrequencyBandListNR_r15 }, + { &hf_lte_rrc_noSIB1_r15 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_noSIB1_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultRSSI_SCG_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CGI_InfoNR_r15(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_lte_rrc_MeasResultRSSI_SCG_r13, MeasResultRSSI_SCG_r13_sequence); + ett_lte_rrc_CGI_InfoNR_r15, CGI_InfoNR_r15_sequence); return offset; } -static const per_sequence_t MeasResultListRSSI_SCG_r13_sequence_of[1] = { - { &hf_lte_rrc_MeasResultListRSSI_SCG_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultRSSI_SCG_r13 }, +static const per_sequence_t MeasResultCellNR_r15_eag_1_sequence[] = { + { &hf_lte_rrc_cgi_Info_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CGI_InfoNR_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultListRSSI_SCG_r13(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_lte_rrc_MeasResultListRSSI_SCG_r13, MeasResultListRSSI_SCG_r13_sequence_of, - 1, maxServCell_r13, FALSE); +dissect_lte_rrc_MeasResultCellNR_r15_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResultCellNR_r15_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_makeBeforeBreakSCG_Req_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t MeasResultCellNR_r15_sequence[] = { + { &hf_lte_rrc_pci_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdNR_r15 }, + { &hf_lte_rrc_measResultCell_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultNR_r15 }, + { &hf_lte_rrc_measResultRS_IndexList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultSSB_IndexList_r15 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCellNR_r15_eag_1 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_makeBeforeBreakSCG_Req_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MeasResultCellNR_r15(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_lte_rrc_MeasResultCellNR_r15, MeasResultCellNR_r15_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_04_sequence[] = { +static const per_sequence_t MeasResultServFreqNR_r15_sequence[] = { + { &hf_lte_rrc_carrierFreq_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueNR_r15 }, + { &hf_lte_rrc_measResultSCell_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultCellNR_r15 }, + { &hf_lte_rrc_measResultBestNeighCell_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultCellNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasResultServFreqNR_r15(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_lte_rrc_T_nonCriticalExtension_04, T_nonCriticalExtension_04_sequence); + ett_lte_rrc_MeasResultServFreqNR_r15, MeasResultServFreqNR_r15_sequence); return offset; } -static const per_sequence_t SCG_ConfigInfo_v1430_IEs_sequence[] = { - { &hf_lte_rrc_makeBeforeBreakSCG_Req_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_makeBeforeBreakSCG_Req_r14 }, - { &hf_lte_rrc_measGapConfigPerCC_List, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasGapConfigPerCC_List_r14 }, - { &hf_lte_rrc_nonCriticalExtension_15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_04 }, - { NULL, 0, 0, NULL } +static const per_sequence_t MeasResultServFreqListNR_r15_sequence_of[1] = { + { &hf_lte_rrc_MeasResultServFreqListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreqNR_r15 }, }; static int -dissect_lte_rrc_SCG_ConfigInfo_v1430_IEs(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_lte_rrc_SCG_ConfigInfo_v1430_IEs, SCG_ConfigInfo_v1430_IEs_sequence); +dissect_lte_rrc_MeasResultServFreqListNR_r15(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_lte_rrc_MeasResultServFreqListNR_r15, MeasResultServFreqListNR_r15_sequence_of, + 1, maxServCell_r13, FALSE); return offset; } -static const per_sequence_t SCG_ConfigInfo_v1330_IEs_sequence[] = { - { &hf_lte_rrc_measResultListRSSI_SCG_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListRSSI_SCG_r13 }, - { &hf_lte_rrc_nonCriticalExtension_14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigInfo_v1430_IEs }, +static const per_sequence_t RRM_Config_eag_2_sequence[] = { + { &hf_lte_rrc_candidateCellInfoListNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqListNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCG_ConfigInfo_v1330_IEs(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_lte_rrc_SCG_ConfigInfo_v1330_IEs, SCG_ConfigInfo_v1330_IEs_sequence); +dissect_lte_rrc_RRM_Config_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RRM_Config_eag_2_sequence); return offset; } -static const per_sequence_t SCG_ConfigInfo_v1310_IEs_sequence[] = { - { &hf_lte_rrc_measResultSSTD_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultSSTD_r13 }, - { &hf_lte_rrc_sCellToAddModListMCG_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_r13 }, - { &hf_lte_rrc_measResultServCellListSCG_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServCellListSCG_Ext_r13 }, - { &hf_lte_rrc_sCellToAddModListSCG_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListSCG_Ext_r13 }, - { &hf_lte_rrc_sCellToReleaseListSCG_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseListExt_r13 }, - { &hf_lte_rrc_nonCriticalExtension_13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigInfo_v1330_IEs }, +static const per_sequence_t RRM_Config_sequence[] = { + { &hf_lte_rrc_ue_InactiveTime, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_InactiveTime }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRM_Config_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRM_Config_eag_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCG_ConfigInfo_v1310_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRM_Config(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_lte_rrc_SCG_ConfigInfo_v1310_IEs, SCG_ConfigInfo_v1310_IEs_sequence); + ett_lte_rrc_RRM_Config, RRM_Config_sequence); return offset; } -static const per_sequence_t SCG_ConfigInfo_r12_IEs_sequence[] = { - { &hf_lte_rrc_radioResourceConfigDedMCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicated }, - { &hf_lte_rrc_sCellToAddModListMCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_r10 }, - { &hf_lte_rrc_measGapConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasGapConfig }, - { &hf_lte_rrc_powerCoordinationInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PowerCoordinationInfo_r12 }, - { &hf_lte_rrc_scg_RadioConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigPartSCG_r12 }, - { &hf_lte_rrc_eutra_CapabilityInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eutra_CapabilityInfo_r12 }, - { &hf_lte_rrc_scg_ConfigRestrictInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigRestrictInfo_r12 }, - { &hf_lte_rrc_mbmsInterestIndication_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbmsInterestIndication_r12 }, - { &hf_lte_rrc_measResultServCellListSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServCellListSCG_r12 }, - { &hf_lte_rrc_drb_ToAddModListSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_InfoListSCG_r12 }, - { &hf_lte_rrc_drb_ToReleaseListSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToReleaseList }, - { &hf_lte_rrc_sCellToAddModListSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListSCG_r12 }, - { &hf_lte_rrc_sCellToReleaseListSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseList_r10 }, - { &hf_lte_rrc_p_Max_r12 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_nonCriticalExtension_12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigInfo_v1310_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SCG_ConfigInfo_r12_IEs(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_lte_rrc_SCG_ConfigInfo_r12_IEs, SCG_ConfigInfo_r12_IEs_sequence); +dissect_lte_rrc_ShortMAC_I(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, + 16, 16, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_c1_03_vals[] = { - { 0, "scg-ConfigInfo-r12" }, - { 1, "spare7" }, - { 2, "spare6" }, - { 3, "spare5" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_03_choice[] = { - { 0, &hf_lte_rrc_scg_ConfigInfo_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCG_ConfigInfo_r12_IEs }, - { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_03(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_lte_rrc_T_c1_03, T_c1_03_choice, - NULL); +dissect_lte_rrc_Key_eNodeB_Star(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, + 256, 256, FALSE, NULL, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_03_sequence[] = { +static const per_sequence_t AdditionalReestabInfo_sequence[] = { + { &hf_lte_rrc_cellIdentity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, + { &hf_lte_rrc_key_eNodeB_Star, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Key_eNodeB_Star }, + { &hf_lte_rrc_shortMAC_I , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ShortMAC_I }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AdditionalReestabInfo(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_lte_rrc_T_criticalExtensionsFuture_03, T_criticalExtensionsFuture_03_sequence); + ett_lte_rrc_AdditionalReestabInfo, AdditionalReestabInfo_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_03_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_03_choice[] = { - { 0, &hf_lte_rrc_c1_03 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_03 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_03 }, - { 0, NULL, 0, NULL } +static const per_sequence_t AdditionalReestabInfoList_sequence_of[1] = { + { &hf_lte_rrc_AdditionalReestabInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalReestabInfo }, }; static int -dissect_lte_rrc_T_criticalExtensions_03(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_lte_rrc_T_criticalExtensions_03, T_criticalExtensions_03_choice, - NULL); +dissect_lte_rrc_AdditionalReestabInfoList(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_lte_rrc_AdditionalReestabInfoList, AdditionalReestabInfoList_sequence_of, + 1, maxReestabInfo, FALSE); return offset; } -static const per_sequence_t SCG_ConfigInfo_r12_sequence[] = { - { &hf_lte_rrc_criticalExtensions_03, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_03 }, +static const per_sequence_t ReestablishmentInfo_sequence[] = { + { &hf_lte_rrc_sourcePhysCellId, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_targetCellShortMAC_I, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ShortMAC_I }, + { &hf_lte_rrc_additionalReestabInfoList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalReestabInfoList }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCG_ConfigInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ReestablishmentInfo(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_lte_rrc_SCG_ConfigInfo_r12, SCG_ConfigInfo_r12_sequence); + ett_lte_rrc_ReestablishmentInfo, ReestablishmentInfo_sequence); return offset; } +static const per_sequence_t AS_Context_sequence[] = { + { &hf_lte_rrc_reestablishmentInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ReestablishmentInfo }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 256U, NULL, FALSE); +dissect_lte_rrc_AS_Context(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_lte_rrc_AS_Context, AS_Context_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_05_sequence[] = { - { NULL, 0, 0, NULL } -}; +static const value_string lte_rrc_T_ue_ConfigRelease_r9_vals[] = { + { 0, "rel9" }, + { 1, "rel10" }, + { 2, "rel11" }, + { 3, "rel12" }, + { 4, "v10j0" }, + { 5, "v11e0" }, + { 6, "v1280" }, + { 7, "rel13" }, + { 8, "rel14" }, + { 9, "rel15" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_nonCriticalExtension_05(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_lte_rrc_T_nonCriticalExtension_05, T_nonCriticalExtension_05_sequence); +dissect_lte_rrc_T_ue_ConfigRelease_r9(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, + 8, NULL, TRUE, 2, NULL); return offset; } -static const per_sequence_t UEPagingCoverageInformation_r13_IEs_sequence[] = { - { &hf_lte_rrc_mpdcch_NumRepetition_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_256 }, - { &hf_lte_rrc_nonCriticalExtension_16, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_05 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UEPagingCoverageInformation_r13_IEs(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_lte_rrc_UEPagingCoverageInformation_r13_IEs, UEPagingCoverageInformation_r13_IEs_sequence); +dissect_lte_rrc_T_lateNonCriticalExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_HandoverPreparationInformation_v9j0_IEs_PDU); return offset; } -static const value_string lte_rrc_T_c1_04_vals[] = { - { 0, "uePagingCoverageInformation-r13" }, - { 1, "spare7" }, - { 2, "spare6" }, - { 3, "spare5" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_04_choice[] = { - { 0, &hf_lte_rrc_uePagingCoverageInformation_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEPagingCoverageInformation_r13_IEs }, - { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t AS_Config_v9e0_sequence[] = { + { &hf_lte_rrc_sourceDl_CarrierFreq_v9e0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_04(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_lte_rrc_T_c1_04, T_c1_04_choice, - NULL); +dissect_lte_rrc_AS_Config_v9e0(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_lte_rrc_AS_Config_v9e0, AS_Config_v9e0_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_04_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensionsFuture_04(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_lte_rrc_T_criticalExtensionsFuture_04, T_criticalExtensionsFuture_04_sequence); +dissect_lte_rrc_T_idc_Indication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_InDeviceCoexIndication_r11_PDU); return offset; } -static const value_string lte_rrc_T_criticalExtensions_04_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_04_choice[] = { - { 0, &hf_lte_rrc_c1_04 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_04 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_04, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_04 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_04(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_lte_rrc_T_criticalExtensions_04, T_criticalExtensions_04_choice, - NULL); +dissect_lte_rrc_T_mbmsInterestIndication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_MBMSInterestIndication_r11_PDU); return offset; } -static const per_sequence_t UEPagingCoverageInformation_sequence[] = { - { &hf_lte_rrc_criticalExtensions_04, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_04 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UEPagingCoverageInformation(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_lte_rrc_UEPagingCoverageInformation, UEPagingCoverageInformation_sequence); +dissect_lte_rrc_T_powerPrefIndication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UEAssistanceInformation_r11_PDU); return offset; } @@ -44726,484 +48634,508 @@ dissect_lte_rrc_UEPagingCoverageInformation(tvbuff_t *tvb _U_, int offset _U_, a static int -dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sidelinkUEInformation_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UECapabilityInformation_PDU); + NO_BOUND, NO_BOUND, FALSE, dissect_SidelinkUEInformation_r12_PDU); return offset; } -static const per_sequence_t T_nonCriticalExtension_06_sequence[] = { +static const per_sequence_t AS_Context_v1130_eag_1_sequence[] = { + { &hf_lte_rrc_sidelinkUEInformation_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sidelinkUEInformation_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_06(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_lte_rrc_T_nonCriticalExtension_06, T_nonCriticalExtension_06_sequence); +dissect_lte_rrc_AS_Context_v1130_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Context_v1130_eag_1_sequence); return offset; } -static const per_sequence_t UERadioAccessCapabilityInformation_r8_IEs_sequence[] = { - { &hf_lte_rrc_ue_RadioAccessCapabilityInfo_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo }, - { &hf_lte_rrc_nonCriticalExtension_17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_06 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UERadioAccessCapabilityInformation_r8_IEs(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_lte_rrc_UERadioAccessCapabilityInformation_r8_IEs, UERadioAccessCapabilityInformation_r8_IEs_sequence); +dissect_lte_rrc_T_sourceContextEN_DC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *scg_config_info_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &scg_config_info_tvb); + + + if (scg_config_info_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_sourceContextEN_DC_r15); + dissect_nr_rrc_ConfigRestrictInfoSCG_PDU(scg_config_info_tvb, actx->pinfo, subtree, NULL); + } + + return offset; } -static const value_string lte_rrc_T_c1_05_vals[] = { - { 0, "ueRadioAccessCapabilityInformation-r8" }, - { 1, "spare7" }, - { 2, "spare6" }, - { 3, "spare5" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_05_choice[] = { - { 0, &hf_lte_rrc_ueRadioAccessCapabilityInformation_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UERadioAccessCapabilityInformation_r8_IEs }, - { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t AS_Context_v1130_eag_2_sequence[] = { + { &hf_lte_rrc_sourceContextEN_DC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sourceContextEN_DC_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_05(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_lte_rrc_T_c1_05, T_c1_05_choice, - NULL); +dissect_lte_rrc_AS_Context_v1130_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, AS_Context_v1130_eag_2_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_05_sequence[] = { +static const per_sequence_t AS_Context_v1130_sequence[] = { + { &hf_lte_rrc_idc_Indication_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_idc_Indication_r11 }, + { &hf_lte_rrc_mbmsInterestIndication_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_mbmsInterestIndication_r11 }, + { &hf_lte_rrc_powerPrefIndication_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_powerPrefIndication_r11 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Context_v1130_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Context_v1130_eag_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AS_Context_v1130(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_lte_rrc_T_criticalExtensionsFuture_05, T_criticalExtensionsFuture_05_sequence); + ett_lte_rrc_AS_Context_v1130, AS_Context_v1130_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_05_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_05_choice[] = { - { 0, &hf_lte_rrc_c1_05 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_05 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_05, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_05 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_thresholdRSRP_r12_sequence[] = { + { &hf_lte_rrc_thresholdRSRP_Low_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_thresholdRSRP_High_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_05(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_lte_rrc_T_criticalExtensions_05, T_criticalExtensions_05_choice, - NULL); +dissect_lte_rrc_T_thresholdRSRP_r12(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_lte_rrc_T_thresholdRSRP_r12, T_thresholdRSRP_r12_sequence); return offset; } -static const per_sequence_t UERadioAccessCapabilityInformation_sequence[] = { - { &hf_lte_rrc_criticalExtensions_05, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_05 }, +static const per_sequence_t T_thresholdRSRQ_r12_sequence[] = { + { &hf_lte_rrc_thresholdRSRQ_Low_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { &hf_lte_rrc_thresholdRSRQ_High_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UERadioAccessCapabilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_thresholdRSRQ_r12(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_lte_rrc_UERadioAccessCapabilityInformation, UERadioAccessCapabilityInformation_sequence); + ett_lte_rrc_T_thresholdRSRQ_r12, T_thresholdRSRQ_r12_sequence); return offset; } +static const per_sequence_t T_thresholdRSRQ_OnAllSymbolsWithWB_r12_sequence[] = { + { &hf_lte_rrc_thresholdRSRQ_OnAllSymbolsWithWB_Low_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { &hf_lte_rrc_thresholdRSRQ_OnAllSymbolsWithWB_High_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_ue_RadioPagingInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UE_RadioPagingInfo_r12_PDU); +dissect_lte_rrc_T_thresholdRSRQ_OnAllSymbolsWithWB_r12(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_lte_rrc_T_thresholdRSRQ_OnAllSymbolsWithWB_r12, T_thresholdRSRQ_OnAllSymbolsWithWB_r12_sequence); return offset; } +static const per_sequence_t T_thresholdRSRQ_OnAllSymbols_r12_sequence[] = { + { &hf_lte_rrc_thresholdRSRQ_OnAllSymbolsLow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { &hf_lte_rrc_thresholdRSRQ_OnAllSymbolsHigh_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_FreqBandIndicator_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxFBI2, NULL, FALSE); +dissect_lte_rrc_T_thresholdRSRQ_OnAllSymbols_r12(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_lte_rrc_T_thresholdRSRQ_OnAllSymbols_r12, T_thresholdRSRQ_OnAllSymbols_r12_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11_sequence_of[1] = { - { &hf_lte_rrc_supportedBandListEUTRAForPaging_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, +static const per_sequence_t T_thresholdRSRQ_WB_r12_sequence[] = { + { &hf_lte_rrc_thresholdRSRQ_WB_Low_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { &hf_lte_rrc_thresholdRSRQ_WB_High_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11(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_lte_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11, SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_thresholdRSRQ_WB_r12(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_lte_rrc_T_thresholdRSRQ_WB_r12, T_thresholdRSRQ_WB_r12_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_07_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_nonCriticalExtension_07(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_lte_rrc_T_nonCriticalExtension_07, T_nonCriticalExtension_07_sequence); +dissect_lte_rrc_T_thresholdChannelUtilizationLow_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); + + proto_item_append_text(actx->created_item, " (BSS load)"); + return offset; } -static const per_sequence_t UERadioPagingInformation_v1310_IEs_sequence[] = { - { &hf_lte_rrc_supportedBandListEUTRAForPaging_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11 }, - { &hf_lte_rrc_nonCriticalExtension_19, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_07 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UERadioPagingInformation_v1310_IEs(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_lte_rrc_UERadioPagingInformation_v1310_IEs, UERadioPagingInformation_v1310_IEs_sequence); +dissect_lte_rrc_T_thresholdChannelUtilizationHigh_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); + + proto_item_append_text(actx->created_item, " (BSS load)"); + return offset; } -static const per_sequence_t UERadioPagingInformation_r12_IEs_sequence[] = { - { &hf_lte_rrc_ue_RadioPagingInfo_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_RadioPagingInfo_r12 }, - { &hf_lte_rrc_nonCriticalExtension_18, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UERadioPagingInformation_v1310_IEs }, +static const per_sequence_t T_thresholdChannelUtilization_r12_sequence[] = { + { &hf_lte_rrc_thresholdChannelUtilizationLow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_thresholdChannelUtilizationLow_r12 }, + { &hf_lte_rrc_thresholdChannelUtilizationHigh_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_thresholdChannelUtilizationHigh_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UERadioPagingInformation_r12_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_thresholdChannelUtilization_r12(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_lte_rrc_UERadioPagingInformation_r12_IEs, UERadioPagingInformation_r12_IEs_sequence); + ett_lte_rrc_T_thresholdChannelUtilization_r12, T_thresholdChannelUtilization_r12_sequence); return offset; } -static const value_string lte_rrc_T_c1_06_vals[] = { - { 0, "ueRadioPagingInformation-r12" }, - { 1, "spare7" }, - { 2, "spare6" }, - { 3, "spare5" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, +static const value_string lte_rrc_WLAN_backhaulRate_r12_vals[] = { + { 0, "r0" }, + { 1, "r4" }, + { 2, "r8" }, + { 3, "r16" }, + { 4, "r32" }, + { 5, "r64" }, + { 6, "r128" }, + { 7, "r256" }, + { 8, "r512" }, + { 9, "r1024" }, + { 10, "r2048" }, + { 11, "r4096" }, + { 12, "r8192" }, + { 13, "r16384" }, + { 14, "r32768" }, + { 15, "r65536" }, + { 16, "r131072" }, + { 17, "r262144" }, + { 18, "r524288" }, + { 19, "r1048576" }, + { 20, "r2097152" }, + { 21, "r4194304" }, + { 22, "r8388608" }, + { 23, "r16777216" }, + { 24, "r33554432" }, + { 25, "r67108864" }, + { 26, "r134217728" }, + { 27, "r268435456" }, + { 28, "r536870912" }, + { 29, "r1073741824" }, + { 30, "r2147483648" }, + { 31, "r4294967296" }, { 0, NULL } }; -static const per_choice_t T_c1_06_choice[] = { - { 0, &hf_lte_rrc_ueRadioPagingInformation_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UERadioPagingInformation_r12_IEs }, - { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; +static value_string_ext lte_rrc_WLAN_backhaulRate_r12_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_WLAN_backhaulRate_r12_vals); + static int -dissect_lte_rrc_T_c1_06(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_lte_rrc_T_c1_06, T_c1_06_choice, - NULL); +dissect_lte_rrc_WLAN_backhaulRate_r12(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, + 32, NULL, FALSE, 0, NULL); + + proto_item_append_text(actx->created_item, "Kbps"); + return offset; } -static const per_sequence_t T_criticalExtensionsFuture_06_sequence[] = { +static const per_sequence_t T_thresholdBackhaul_Bandwidth_r12_sequence[] = { + { &hf_lte_rrc_thresholdBackhaulDL_BandwidthLow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_backhaulRate_r12 }, + { &hf_lte_rrc_thresholdBackhaulDL_BandwidthHigh_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_backhaulRate_r12 }, + { &hf_lte_rrc_thresholdBackhaulUL_BandwidthLow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_backhaulRate_r12 }, + { &hf_lte_rrc_thresholdBackhaulUL_BandwidthHigh_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_backhaulRate_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_thresholdBackhaul_Bandwidth_r12(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_lte_rrc_T_criticalExtensionsFuture_06, T_criticalExtensionsFuture_06_sequence); + ett_lte_rrc_T_thresholdBackhaul_Bandwidth_r12, T_thresholdBackhaul_Bandwidth_r12_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_06_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_06_choice[] = { - { 0, &hf_lte_rrc_c1_06 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_06 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_06, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_06 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_thresholdWLAN_RSSI_r12_sequence[] = { + { &hf_lte_rrc_thresholdWLAN_RSSI_Low_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_255 }, + { &hf_lte_rrc_thresholdWLAN_RSSI_High_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_255 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_06(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_lte_rrc_T_criticalExtensions_06, T_criticalExtensions_06_choice, - NULL); +dissect_lte_rrc_T_thresholdWLAN_RSSI_r12(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_lte_rrc_T_thresholdWLAN_RSSI_r12, T_thresholdWLAN_RSSI_r12_sequence); return offset; } -static const per_sequence_t UERadioPagingInformation_sequence[] = { - { &hf_lte_rrc_criticalExtensions_06, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_06 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UERadioPagingInformation(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_lte_rrc_UERadioPagingInformation, UERadioPagingInformation_sequence); +dissect_lte_rrc_T_Reselection(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7U, NULL, FALSE); return offset; } +static const per_sequence_t WLAN_OffloadConfig_r12_sequence[] = { + { &hf_lte_rrc_thresholdRSRP_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdRSRP_r12 }, + { &hf_lte_rrc_thresholdRSRQ_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdRSRQ_r12 }, + { &hf_lte_rrc_thresholdRSRQ_OnAllSymbolsWithWB_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdRSRQ_OnAllSymbolsWithWB_r12 }, + { &hf_lte_rrc_thresholdRSRQ_OnAllSymbols_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdRSRQ_OnAllSymbols_r12 }, + { &hf_lte_rrc_thresholdRSRQ_WB_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdRSRQ_WB_r12 }, + { &hf_lte_rrc_thresholdChannelUtilization_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdChannelUtilization_r12 }, + { &hf_lte_rrc_thresholdBackhaul_Bandwidth_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdBackhaul_Bandwidth_r12 }, + { &hf_lte_rrc_thresholdWLAN_RSSI_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_thresholdWLAN_RSSI_r12 }, + { &hf_lte_rrc_offloadPreferenceIndicator_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { &hf_lte_rrc_t_SteeringWLAN_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_Reselection }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_BCCH_BCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_lte_rrc_MasterInformationBlock(tvb, offset, actx, tree, hf_index); +dissect_lte_rrc_WLAN_OffloadConfig_r12(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_lte_rrc_WLAN_OffloadConfig_r12, WLAN_OffloadConfig_r12_sequence); return offset; } -static const per_sequence_t BCCH_BCH_Message_sequence[] = { - { &hf_lte_rrc_message , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_BCH_MessageType }, +static const per_sequence_t MAC_MainConfigSL_r12_sequence[] = { + { &hf_lte_rrc_periodic_BSR_TimerSL, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PeriodicBSR_Timer_r12 }, + { &hf_lte_rrc_retx_BSR_TimerSL, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RetxBSR_Timer_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BCCH_BCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MAC_MainConfigSL_r12(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_lte_rrc_BCCH_BCH_Message, BCCH_BCH_Message_sequence); + ett_lte_rrc_MAC_MainConfigSL_r12, MAC_MainConfigSL_r12_sequence); return offset; } -static const value_string lte_rrc_T_dl_Bandwidth_MBMS_r14_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, +static const value_string lte_rrc_SL_CP_Len_r12_vals[] = { + { 0, "normal" }, + { 1, "extended" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dl_Bandwidth_MBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_CP_Len_r12(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, - 6, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_SL_PeriodComm_r12_vals[] = { + { 0, "sf40" }, + { 1, "sf60" }, + { 2, "sf70" }, + { 3, "sf80" }, + { 4, "sf120" }, + { 5, "sf140" }, + { 6, "sf160" }, + { 7, "sf240" }, + { 8, "sf280" }, + { 9, "sf320" }, + { 10, "spare6" }, + { 11, "spare5" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare" }, + { 0, NULL } +}; + +static value_string_ext lte_rrc_SL_PeriodComm_r12_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_SL_PeriodComm_r12_vals); + static int -dissect_lte_rrc_BIT_STRING_SIZE_13(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, - 13, 13, FALSE, NULL, NULL); +dissect_lte_rrc_SL_PeriodComm_r12(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MasterInformationBlock_MBMS_r14_sequence[] = { - { &hf_lte_rrc_dl_Bandwidth_MBMS_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_Bandwidth_MBMS_r14 }, - { &hf_lte_rrc_systemFrameNumber_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_6 }, - { &hf_lte_rrc_additionalNonMBSFNSubframes_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, - { &hf_lte_rrc_spare_02 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_13 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_MasterInformationBlock_MBMS_r14(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_lte_rrc_MasterInformationBlock_MBMS_r14, MasterInformationBlock_MBMS_r14_sequence); +dissect_lte_rrc_INTEGER_0_99(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 99U, NULL, FALSE); return offset; } +static const value_string lte_rrc_SL_OffsetIndicator_r12_vals[] = { + { 0, "small-r12" }, + { 1, "large-r12" }, + { 0, NULL } +}; + +static const per_choice_t SL_OffsetIndicator_r12_choice[] = { + { 0, &hf_lte_rrc_small_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, + { 1, &hf_lte_rrc_large_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_10239 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_BCCH_BCH_MessageType_MBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_lte_rrc_MasterInformationBlock_MBMS_r14(tvb, offset, actx, tree, hf_index); +dissect_lte_rrc_SL_OffsetIndicator_r12(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_lte_rrc_SL_OffsetIndicator_r12, SL_OffsetIndicator_r12_choice, + NULL); return offset; } -static const per_sequence_t BCCH_BCH_Message_MBMS_sequence[] = { - { &hf_lte_rrc_message_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_BCH_MessageType_MBMS_r14 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_BCCH_BCH_Message_MBMS(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_lte_rrc_BCCH_BCH_Message_MBMS, BCCH_BCH_Message_MBMS_sequence); +dissect_lte_rrc_BIT_STRING_SIZE_12(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, + 12, 12, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_q_Hyst_vals[] = { - { 0, "dB0" }, - { 1, "dB1" }, - { 2, "dB2" }, - { 3, "dB3" }, - { 4, "dB4" }, - { 5, "dB5" }, - { 6, "dB6" }, - { 7, "dB8" }, - { 8, "dB10" }, - { 9, "dB12" }, - { 10, "dB14" }, - { 11, "dB16" }, - { 12, "dB18" }, - { 13, "dB20" }, - { 14, "dB22" }, - { 15, "dB24" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_q_Hyst(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BIT_STRING_SIZE_30(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, + 30, 30, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_sf_Medium_vals[] = { - { 0, "dB-6" }, - { 1, "dB-4" }, - { 2, "dB-2" }, - { 3, "dB0" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_sf_Medium(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); +dissect_lte_rrc_BIT_STRING_SIZE_42(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, + 42, 42, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_sf_High_vals[] = { - { 0, "dB-6" }, - { 1, "dB-4" }, - { 2, "dB-2" }, - { 3, "dB0" }, +static const value_string lte_rrc_SubframeBitmapSL_r12_vals[] = { + { 0, "bs4-r12" }, + { 1, "bs8-r12" }, + { 2, "bs12-r12" }, + { 3, "bs16-r12" }, + { 4, "bs30-r12" }, + { 5, "bs40-r12" }, + { 6, "bs42-r12" }, { 0, NULL } }; +static const per_choice_t SubframeBitmapSL_r12_choice[] = { + { 0, &hf_lte_rrc_bs4_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_4 }, + { 1, &hf_lte_rrc_bs8_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_8 }, + { 2, &hf_lte_rrc_bs12_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_12 }, + { 3, &hf_lte_rrc_bs16_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { 4, &hf_lte_rrc_bs30_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_30 }, + { 5, &hf_lte_rrc_bs40_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_40 }, + { 6, &hf_lte_rrc_bs42_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_42 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_sf_High(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); +dissect_lte_rrc_SubframeBitmapSL_r12(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_lte_rrc_SubframeBitmapSL_r12, SubframeBitmapSL_r12_choice, + NULL); return offset; } -static const per_sequence_t T_q_HystSF_sequence[] = { - { &hf_lte_rrc_sf_Medium , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sf_Medium }, - { &hf_lte_rrc_sf_High , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sf_High }, +static const per_sequence_t SL_TF_ResourceConfig_r12_sequence[] = { + { &hf_lte_rrc_prb_Num_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_100 }, + { &hf_lte_rrc_prb_Start_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_99 }, + { &hf_lte_rrc_prb_End_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_99 }, + { &hf_lte_rrc_offsetIndicator_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_OffsetIndicator_r12 }, + { &hf_lte_rrc_subframeBitmap_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SubframeBitmapSL_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_q_HystSF(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_TF_ResourceConfig_r12(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_lte_rrc_T_q_HystSF, T_q_HystSF_sequence); + ett_lte_rrc_SL_TF_ResourceConfig_r12, SL_TF_ResourceConfig_r12_sequence); return offset; } -static const per_sequence_t T_speedStateReselectionPars_sequence[] = { - { &hf_lte_rrc_mobilityStateParameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityStateParameters }, - { &hf_lte_rrc_q_HystSF , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_q_HystSF }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_speedStateReselectionPars(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_lte_rrc_T_speedStateReselectionPars, T_speedStateReselectionPars_sequence); +dissect_lte_rrc_INTEGER_0_504(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 504U, NULL, FALSE); return offset; } -static const per_sequence_t T_cellReselectionInfoCommon_sequence[] = { - { &hf_lte_rrc_q_Hyst , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_q_Hyst }, - { &hf_lte_rrc_speedStateReselectionPars, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_speedStateReselectionPars }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_numSubbands_r12_vals[] = { + { 0, "ns1" }, + { 1, "ns2" }, + { 2, "ns4" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_cellReselectionInfoCommon(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_lte_rrc_T_cellReselectionInfoCommon, T_cellReselectionInfoCommon_sequence); +dissect_lte_rrc_T_numSubbands_r12(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, FALSE, 0, NULL); return offset; } @@ -45211,66 +49143,65 @@ dissect_lte_rrc_T_cellReselectionInfoCommon(tvbuff_t *tvb _U_, int offset _U_, a static int -dissect_lte_rrc_ReselectionThreshold(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_0_110(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 31U, NULL, FALSE); + 0U, 110U, NULL, FALSE); return offset; } +static const per_sequence_t SL_HoppingConfigComm_r12_sequence[] = { + { &hf_lte_rrc_hoppingParameter_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_504 }, + { &hf_lte_rrc_numSubbands_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numSubbands_r12 }, + { &hf_lte_rrc_rb_Offset_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_110 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_CellReselectionPriority(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 7U, NULL, FALSE); +dissect_lte_rrc_SL_HoppingConfigComm_r12(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_lte_rrc_SL_HoppingConfigComm_r12, SL_HoppingConfigComm_r12_sequence); return offset; } -static const per_sequence_t T_cellReselectionServingFreqInfo_sequence[] = { - { &hf_lte_rrc_s_NonIntraSearch, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_threshServingLow, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_cellReselectionServingFreqInfo(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_lte_rrc_T_cellReselectionServingFreqInfo, T_cellReselectionServingFreqInfo_sequence); +dissect_lte_rrc_SL_TRPT_Subset_r12(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, + 3, 5, FALSE, NULL, NULL); return offset; } -static const per_sequence_t T_intraFreqCellReselectionInfo_sequence[] = { - { &hf_lte_rrc_q_RxLevMin , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_p_Max , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_s_IntraSearch, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_allowedMeasBandwidth, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AllowedMeasBandwidth }, - { &hf_lte_rrc_presenceAntennaPort1, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PresenceAntennaPort1 }, - { &hf_lte_rrc_neighCellConfig, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellConfig }, - { &hf_lte_rrc_t_ReselectionEUTRA, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, - { &hf_lte_rrc_t_ReselectionEUTRA_SF, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, +static const per_sequence_t T_ue_SelectedResourceConfig_r12_sequence[] = { + { &hf_lte_rrc_data_TF_ResourceConfig_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_ResourceConfig_r12 }, + { &hf_lte_rrc_trpt_Subset_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TRPT_Subset_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_intraFreqCellReselectionInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_SelectedResourceConfig_r12(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_lte_rrc_T_intraFreqCellReselectionInfo, T_intraFreqCellReselectionInfo_sequence); + ett_lte_rrc_T_ue_SelectedResourceConfig_r12, T_ue_SelectedResourceConfig_r12_sequence); return offset; } +static const per_sequence_t T_rxParametersNCell_r12_sequence[] = { + { &hf_lte_rrc_tdd_Config_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, + { &hf_lte_rrc_syncConfigIndex_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_lateNonCriticalExtension_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType3_v10j0_IEs_PDU); +dissect_lte_rrc_T_rxParametersNCell_r12(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_lte_rrc_T_rxParametersNCell_r12, T_rxParametersNCell_r12_sequence); return offset; } @@ -45278,113 +49209,98 @@ dissect_lte_rrc_T_lateNonCriticalExtension_07(tvbuff_t *tvb _U_, int offset _U_, static int -dissect_lte_rrc_ReselectionThresholdQ_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_P0_SL_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 31U, NULL, FALSE); + -126, 31U, NULL, FALSE); return offset; } -static const per_sequence_t T_s_IntraSearch_v920_sequence[] = { - { &hf_lte_rrc_s_IntraSearchP_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_s_IntraSearchQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, +static const per_sequence_t SL_TxParameters_r12_sequence[] = { + { &hf_lte_rrc_alpha_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Alpha_r12 }, + { &hf_lte_rrc_p0_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_P0_SL_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_s_IntraSearch_v920(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_TxParameters_r12(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_lte_rrc_T_s_IntraSearch_v920, T_s_IntraSearch_v920_sequence); + ett_lte_rrc_SL_TxParameters_r12, SL_TxParameters_r12_sequence); return offset; } -static const per_sequence_t T_s_NonIntraSearch_v920_sequence[] = { - { &hf_lte_rrc_s_NonIntraSearchP_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_s_NonIntraSearchQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, +static const per_sequence_t T_txParameters_r12_sequence[] = { + { &hf_lte_rrc_sc_TxParameters_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxParameters_r12 }, + { &hf_lte_rrc_dataTxParameters_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxParameters_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_s_NonIntraSearch_v920(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_txParameters_r12(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_lte_rrc_T_s_NonIntraSearch_v920, T_s_NonIntraSearch_v920_sequence); + ett_lte_rrc_T_txParameters_r12, T_txParameters_r12_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType3_eag_1_sequence[] = { - { &hf_lte_rrc_s_IntraSearch_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_s_IntraSearch_v920 }, - { &hf_lte_rrc_s_NonIntraSearch_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_s_NonIntraSearch_v920 }, - { &hf_lte_rrc_q_QualMin_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, - { &hf_lte_rrc_threshServingLowQ_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ReselectionThresholdQ_r9 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SystemInformationBlockType3_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_1_sequence); +dissect_lte_rrc_SL_Priority_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 8U, NULL, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType3_eag_2_sequence[] = { - { &hf_lte_rrc_q_QualMinWB_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_PriorityList_r13_sequence_of[1] = { + { &hf_lte_rrc_SL_PriorityList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_Priority_r13 }, }; static int -dissect_lte_rrc_SystemInformationBlockType3_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_2_sequence); +dissect_lte_rrc_SL_PriorityList_r13(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_lte_rrc_SL_PriorityList_r13, SL_PriorityList_r13_sequence_of, + 1, maxSL_Prio_r13, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType3_eag_3_sequence[] = { - { &hf_lte_rrc_q_QualMinRSRQ_OnAllSymbols_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, +static const per_sequence_t SL_CommResourcePool_r12_eag_1_sequence[] = { + { &hf_lte_rrc_priorityList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_PriorityList_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType3_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_3_sequence); - - return offset; -} - - -static const value_string lte_rrc_CellReselectionSubPriority_r13_vals[] = { - { 0, "oDot2" }, - { 1, "oDot4" }, - { 2, "oDot6" }, - { 3, "oDot8" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_CellReselectionSubPriority_r13(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); +dissect_lte_rrc_SL_CommResourcePool_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_CommResourcePool_r12_eag_1_sequence); return offset; } -static const per_sequence_t CellReselectionServingFreqInfo_v1310_sequence[] = { - { &hf_lte_rrc_cellReselectionSubPriority_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionSubPriority_r13 }, +static const per_sequence_t SL_CommResourcePool_r12_sequence[] = { + { &hf_lte_rrc_sc_CP_Len_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CP_Len_r12 }, + { &hf_lte_rrc_sc_Period_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PeriodComm_r12 }, + { &hf_lte_rrc_sc_TF_ResourceConfig_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_ResourceConfig_r12 }, + { &hf_lte_rrc_data_CP_Len_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CP_Len_r12 }, + { &hf_lte_rrc_dataHoppingConfig_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_HoppingConfigComm_r12 }, + { &hf_lte_rrc_ue_SelectedResourceConfig_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_SelectedResourceConfig_r12 }, + { &hf_lte_rrc_rxParametersNCell_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParametersNCell_r12 }, + { &hf_lte_rrc_txParameters_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_txParameters_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellReselectionServingFreqInfo_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_CommResourcePool_r12(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_lte_rrc_CellReselectionServingFreqInfo_v1310, CellReselectionServingFreqInfo_v1310_sequence); + ett_lte_rrc_SL_CommResourcePool_r12, SL_CommResourcePool_r12_sequence); return offset; } @@ -45392,884 +49308,939 @@ dissect_lte_rrc_CellReselectionServingFreqInfo_v1310(tvbuff_t *tvb _U_, int offs static int -dissect_lte_rrc_INTEGER_0_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_0_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 10U, NULL, FALSE); + 0U, 28U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_redistributionFactorCell_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_scheduled_r12_sequence[] = { + { &hf_lte_rrc_sl_RNTI_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_mac_MainConfig_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfigSL_r12 }, + { &hf_lte_rrc_sc_CommTxConfig_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, + { &hf_lte_rrc_mcs_r12 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_28 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_redistributionFactorCell_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_scheduled_r12(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_lte_rrc_T_scheduled_r12, T_scheduled_r12_sequence); return offset; } -static const value_string lte_rrc_T_t360_r13_vals[] = { - { 0, "min4" }, - { 1, "min8" }, - { 2, "min16" }, - { 3, "min32" }, - { 4, "infinity" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_t360_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SL_TxPoolIdentity_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxSL_TxPool_r12, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_redistrOnPagingOnly_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SL_TxPoolToReleaseList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_TxPoolToReleaseList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolIdentity_r12 }, }; - static int -dissect_lte_rrc_T_redistrOnPagingOnly_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SL_TxPoolToReleaseList_r12(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_lte_rrc_SL_TxPoolToReleaseList_r12, SL_TxPoolToReleaseList_r12_sequence_of, + 1, maxSL_TxPool_r12, FALSE); return offset; } -static const per_sequence_t RedistributionServingInfo_r13_sequence[] = { - { &hf_lte_rrc_redistributionFactorServing_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10 }, - { &hf_lte_rrc_redistributionFactorCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_redistributionFactorCell_r13 }, - { &hf_lte_rrc_t360_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t360_r13 }, - { &hf_lte_rrc_redistrOnPagingOnly_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_redistrOnPagingOnly_r13 }, +static const per_sequence_t SL_CommTxPoolToAddMod_r12_sequence[] = { + { &hf_lte_rrc_poolIdentity_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolIdentity_r12 }, + { &hf_lte_rrc_pool_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RedistributionServingInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_CommTxPoolToAddMod_r12(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_lte_rrc_RedistributionServingInfo_r13, RedistributionServingInfo_r13_sequence); + ett_lte_rrc_SL_CommTxPoolToAddMod_r12, SL_CommTxPoolToAddMod_r12_sequence); return offset; } +static const per_sequence_t SL_CommTxPoolToAddModList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_CommTxPoolToAddModList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommTxPoolToAddMod_r12 }, +}; static int -dissect_lte_rrc_T_ReselectionEUTRA_CE_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 15U, NULL, FALSE); +dissect_lte_rrc_SL_CommTxPoolToAddModList_r12(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_lte_rrc_SL_CommTxPoolToAddModList_r12, SL_CommTxPoolToAddModList_r12_sequence_of, + 1, maxSL_TxPool_r12, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType3_eag_4_sequence[] = { - { &hf_lte_rrc_cellReselectionServingFreqInfo_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionServingFreqInfo_v1310 }, - { &hf_lte_rrc_redistributionServingInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedistributionServingInfo_r13 }, - { &hf_lte_rrc_cellSelectionInfoCE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE_r13 }, - { &hf_lte_rrc_t_ReselectionEUTRA_CE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ReselectionEUTRA_CE_r13 }, +static const per_sequence_t T_commTxPoolNormalDedicated_r12_sequence[] = { + { &hf_lte_rrc_poolToReleaseList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToReleaseList_r12 }, + { &hf_lte_rrc_poolToAddModList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolToAddModList_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType3_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_4_sequence); +dissect_lte_rrc_T_commTxPoolNormalDedicated_r12(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_lte_rrc_T_commTxPoolNormalDedicated_r12, T_commTxPoolNormalDedicated_r12_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType3_eag_5_sequence[] = { - { &hf_lte_rrc_cellSelectionInfoCE1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_r13 }, +static const per_sequence_t T_ue_Selected_r12_sequence[] = { + { &hf_lte_rrc_commTxPoolNormalDedicated_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_commTxPoolNormalDedicated_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType3_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_5_sequence); +dissect_lte_rrc_T_ue_Selected_r12(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_lte_rrc_T_ue_Selected_r12, T_ue_Selected_r12_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType3_eag_6_sequence[] = { - { &hf_lte_rrc_cellSelectionInfoCE1_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_v1360 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_setup_156_vals[] = { + { 0, "scheduled-r12" }, + { 1, "ue-Selected-r12" }, + { 0, NULL } +}; + +static const per_choice_t T_setup_156_choice[] = { + { 0, &hf_lte_rrc_scheduled_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scheduled_r12 }, + { 1, &hf_lte_rrc_ue_Selected_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_r12 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType3_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_6_sequence); +dissect_lte_rrc_T_setup_156(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_lte_rrc_T_setup_156, T_setup_156_choice, + NULL); return offset; } -static const value_string lte_rrc_T_s_SearchDeltaP_r14_vals[] = { - { 0, "dB6" }, - { 1, "dB9" }, - { 2, "dB12" }, - { 3, "dB15" }, +static const value_string lte_rrc_T_commTxResources_r12_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t T_commTxResources_r12_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_179 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_156 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_s_SearchDeltaP_r14(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); +dissect_lte_rrc_T_commTxResources_r12(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_lte_rrc_T_commTxResources_r12, T_commTxResources_r12_choice, + NULL); return offset; } -static const per_sequence_t CellReselectionInfoCommon_v1460_sequence[] = { - { &hf_lte_rrc_s_SearchDeltaP_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_s_SearchDeltaP_r14 }, - { NULL, 0, 0, NULL } +static const per_sequence_t LogicalChGroupInfoList_r13_sequence_of[1] = { + { &hf_lte_rrc_LogicalChGroupInfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PriorityList_r13 }, }; static int -dissect_lte_rrc_CellReselectionInfoCommon_v1460(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_lte_rrc_CellReselectionInfoCommon_v1460, CellReselectionInfoCommon_v1460_sequence); +dissect_lte_rrc_LogicalChGroupInfoList_r13(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_lte_rrc_LogicalChGroupInfoList_r13, LogicalChGroupInfoList_r13_sequence_of, + 1, maxLCG_r13, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType3_eag_7_sequence[] = { - { &hf_lte_rrc_cellReselectionInfoCommon_v1460, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionInfoCommon_v1460 }, +static const per_sequence_t T_scheduled_v1310_sequence[] = { + { &hf_lte_rrc_logicalChGroupInfoList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogicalChGroupInfoList_r13 }, + { &hf_lte_rrc_multipleTx_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType3_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_7_sequence); +dissect_lte_rrc_T_scheduled_v1310(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_lte_rrc_T_scheduled_v1310, T_scheduled_v1310_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType3_sequence[] = { - { &hf_lte_rrc_cellReselectionInfoCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReselectionInfoCommon }, - { &hf_lte_rrc_cellReselectionServingFreqInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReselectionServingFreqInfo }, - { &hf_lte_rrc_intraFreqCellReselectionInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_intraFreqCellReselectionInfo }, - { &hf_lte_rrc_lateNonCriticalExtension_08, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_07 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_5 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_6 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_7 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SystemInformationBlockType3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB3"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType3, SystemInformationBlockType3_sequence); +dissect_lte_rrc_SL_TxPoolIdentity_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + maxSL_TxPool_r12Plus1_r13, maxSL_TxPool_r13, NULL, FALSE); return offset; } -static const per_sequence_t IntraFreqNeighCellInfo_sequence[] = { - { &hf_lte_rrc_physCellId_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_q_OffsetCell, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_OffsetRange }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_TxPoolToReleaseListExt_r13_sequence_of[1] = { + { &hf_lte_rrc_SL_TxPoolToReleaseListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolIdentity_v1310 }, }; static int -dissect_lte_rrc_IntraFreqNeighCellInfo(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_lte_rrc_IntraFreqNeighCellInfo, IntraFreqNeighCellInfo_sequence); +dissect_lte_rrc_SL_TxPoolToReleaseListExt_r13(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_lte_rrc_SL_TxPoolToReleaseListExt_r13, SL_TxPoolToReleaseListExt_r13_sequence_of, + 1, maxSL_TxPool_v1310, FALSE); return offset; } -static const per_sequence_t IntraFreqNeighCellList_sequence_of[1] = { - { &hf_lte_rrc_IntraFreqNeighCellList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IntraFreqNeighCellInfo }, +static const per_sequence_t SL_CommTxPoolToAddModExt_r13_sequence[] = { + { &hf_lte_rrc_poolIdentity_v1310, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolIdentity_v1310 }, + { &hf_lte_rrc_pool_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IntraFreqNeighCellList(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_lte_rrc_IntraFreqNeighCellList, IntraFreqNeighCellList_sequence_of, - 1, maxCellIntra, FALSE); +dissect_lte_rrc_SL_CommTxPoolToAddModExt_r13(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_lte_rrc_SL_CommTxPoolToAddModExt_r13, SL_CommTxPoolToAddModExt_r13_sequence); return offset; } -static const per_sequence_t IntraFreqBlackCellList_sequence_of[1] = { - { &hf_lte_rrc_IntraFreqBlackCellList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdRange }, +static const per_sequence_t SL_CommTxPoolToAddModListExt_r13_sequence_of[1] = { + { &hf_lte_rrc_SL_CommTxPoolToAddModListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommTxPoolToAddModExt_r13 }, }; static int -dissect_lte_rrc_IntraFreqBlackCellList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_CommTxPoolToAddModListExt_r13(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_lte_rrc_IntraFreqBlackCellList, IntraFreqBlackCellList_sequence_of, - 1, maxCellBlack, FALSE); + ett_lte_rrc_SL_CommTxPoolToAddModListExt_r13, SL_CommTxPoolToAddModListExt_r13_sequence_of, + 1, maxSL_TxPool_v1310, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType4_sequence[] = { - { &hf_lte_rrc_intraFreqNeighCellList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IntraFreqNeighCellList }, - { &hf_lte_rrc_intraFreqBlackCellList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IntraFreqBlackCellList }, - { &hf_lte_rrc_csg_PhysCellIdRange, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysCellIdRange }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, +static const per_sequence_t T_commTxPoolNormalDedicatedExt_r13_sequence[] = { + { &hf_lte_rrc_poolToReleaseListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToReleaseListExt_r13 }, + { &hf_lte_rrc_poolToAddModListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolToAddModListExt_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB4"); - +dissect_lte_rrc_T_commTxPoolNormalDedicatedExt_r13(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_lte_rrc_SystemInformationBlockType4, SystemInformationBlockType4_sequence); + ett_lte_rrc_T_commTxPoolNormalDedicatedExt_r13, T_commTxPoolNormalDedicatedExt_r13_sequence); return offset; } -static const per_sequence_t InterFreqNeighCellInfo_sequence[] = { - { &hf_lte_rrc_physCellId_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_q_OffsetCell, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_OffsetRange }, +static const per_sequence_t T_ue_Selected_v1310_sequence[] = { + { &hf_lte_rrc_commTxPoolNormalDedicatedExt_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_commTxPoolNormalDedicatedExt_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqNeighCellInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_Selected_v1310(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_lte_rrc_InterFreqNeighCellInfo, InterFreqNeighCellInfo_sequence); + ett_lte_rrc_T_ue_Selected_v1310, T_ue_Selected_v1310_sequence); return offset; } -static const per_sequence_t InterFreqNeighCellList_sequence_of[1] = { - { &hf_lte_rrc_InterFreqNeighCellList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqNeighCellInfo }, +static const value_string lte_rrc_T_setup_157_vals[] = { + { 0, "scheduled-v1310" }, + { 1, "ue-Selected-v1310" }, + { 0, NULL } +}; + +static const per_choice_t T_setup_157_choice[] = { + { 0, &hf_lte_rrc_scheduled_v1310, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scheduled_v1310 }, + { 1, &hf_lte_rrc_ue_Selected_v1310, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_v1310 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_InterFreqNeighCellList(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_lte_rrc_InterFreqNeighCellList, InterFreqNeighCellList_sequence_of, - 1, maxCellInter, FALSE); +dissect_lte_rrc_T_setup_157(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_lte_rrc_T_setup_157, T_setup_157_choice, + NULL); return offset; } -static const per_sequence_t InterFreqBlackCellList_sequence_of[1] = { - { &hf_lte_rrc_InterFreqBlackCellList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdRange }, +static const value_string lte_rrc_T_commTxResources_v1310_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_commTxResources_v1310_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_180 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_157 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_InterFreqBlackCellList(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_lte_rrc_InterFreqBlackCellList, InterFreqBlackCellList_sequence_of, - 1, maxCellBlack, FALSE); +dissect_lte_rrc_T_commTxResources_v1310(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_lte_rrc_T_commTxResources_v1310, T_commTxResources_v1310_choice, + NULL); return offset; } -static const per_sequence_t T_threshX_Q_r9_sequence[] = { - { &hf_lte_rrc_threshX_HighQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, - { &hf_lte_rrc_threshX_LowQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, +static const per_sequence_t SL_CommConfig_r12_eag_1_sequence[] = { + { &hf_lte_rrc_commTxResources_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResources_v1310 }, + { &hf_lte_rrc_commTxAllowRelayDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_threshX_Q_r9(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_lte_rrc_T_threshX_Q_r9, T_threshX_Q_r9_sequence); +dissect_lte_rrc_SL_CommConfig_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_CommConfig_r12_eag_1_sequence); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_eag_1_sequence[] = { - { &hf_lte_rrc_q_QualMin_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, - { &hf_lte_rrc_threshX_Q_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_threshX_Q_r9 }, - { NULL, 0, 0, NULL } -}; +static const per_sequence_t SL_CommConfig_r12_sequence[] = { + { &hf_lte_rrc_commTxResources_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResources_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommConfig_r12_eag_1 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, InterFreqCarrierFreqInfo_eag_1_sequence); +dissect_lte_rrc_SL_CommConfig_r12(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_lte_rrc_SL_CommConfig_r12, SL_CommConfig_r12_sequence); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_eag_2_sequence[] = { - { &hf_lte_rrc_q_QualMinWB_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_discPeriod_r12_vals[] = { + { 0, "rf32" }, + { 1, "rf64" }, + { 2, "rf128" }, + { 3, "rf256" }, + { 4, "rf512" }, + { 5, "rf1024" }, + { 6, "rf16-v1310" }, + { 7, "spare" }, + { 0, NULL } }; + static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, InterFreqCarrierFreqInfo_eag_2_sequence); +dissect_lte_rrc_T_discPeriod_r12(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_sequence[] = { - { &hf_lte_rrc_dl_CarrierFreq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &hf_lte_rrc_q_RxLevMin , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_p_Max , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_t_ReselectionEUTRA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, - { &hf_lte_rrc_t_ReselectionEUTRA_SF, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, - { &hf_lte_rrc_threshX_High, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_threshX_Low , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_allowedMeasBandwidth, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AllowedMeasBandwidth }, - { &hf_lte_rrc_presenceAntennaPort1, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PresenceAntennaPort1 }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, - { &hf_lte_rrc_neighCellConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellConfig }, - { &hf_lte_rrc_q_OffsetFreq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_OffsetRange }, - { &hf_lte_rrc_interFreqNeighCellList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqNeighCellList }, - { &hf_lte_rrc_interFreqBlackCellList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqBlackCellList }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_eag_2 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_InterFreqCarrierFreqInfo(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_lte_rrc_InterFreqCarrierFreqInfo, InterFreqCarrierFreqInfo_sequence); +dissect_lte_rrc_INTEGER_1_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 50U, NULL, FALSE); return offset; } -static const per_sequence_t InterFreqCarrierFreqList_sequence_of[1] = { - { &hf_lte_rrc_InterFreqCarrierFreqList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo }, -}; static int -dissect_lte_rrc_InterFreqCarrierFreqList(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_lte_rrc_InterFreqCarrierFreqList, InterFreqCarrierFreqList_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_RSRP_RangeSL2_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7U, NULL, FALSE); return offset; } +static const per_sequence_t SL_PoolSelectionConfig_r12_sequence[] = { + { &hf_lte_rrc_threshLow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_RangeSL2_r12 }, + { &hf_lte_rrc_threshHigh_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_RangeSL2_r12 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_lateNonCriticalExtension_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType5_v8h0_IEs_PDU); +dissect_lte_rrc_SL_PoolSelectionConfig_r12(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_lte_rrc_SL_PoolSelectionConfig_r12, SL_PoolSelectionConfig_r12_sequence); return offset; } -static const value_string lte_rrc_T_reducedMeasPerformance_r12_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_poolSelection_r12_vals[] = { + { 0, "rsrpBased-r12" }, + { 1, "random-r12" }, { 0, NULL } }; +static const per_choice_t T_poolSelection_r12_choice[] = { + { 0, &hf_lte_rrc_rsrpBased_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_PoolSelectionConfig_r12 }, + { 1, &hf_lte_rrc_random_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_reducedMeasPerformance_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_poolSelection_r12(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_lte_rrc_T_poolSelection_r12, T_poolSelection_r12_choice, + NULL); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_v1250_sequence[] = { - { &hf_lte_rrc_reducedMeasPerformance_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMeasPerformance_r12 }, - { &hf_lte_rrc_q_QualMinRSRQ_OnAllSymbols_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_txProbability_r12_vals[] = { + { 0, "p25" }, + { 1, "p50" }, + { 2, "p75" }, + { 3, "p100" }, + { 0, NULL } }; + static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_v1250(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_lte_rrc_InterFreqCarrierFreqInfo_v1250, InterFreqCarrierFreqInfo_v1250_sequence); +dissect_lte_rrc_T_txProbability_r12(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 per_sequence_t InterFreqCarrierFreqList_v1250_sequence_of[1] = { - { &hf_lte_rrc_InterFreqCarrierFreqList_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1250 }, +static const per_sequence_t T_ue_SelectedResourceConfig_r12_01_sequence[] = { + { &hf_lte_rrc_poolSelection_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_poolSelection_r12 }, + { &hf_lte_rrc_txProbability_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_txProbability_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqList_v1250(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_lte_rrc_InterFreqCarrierFreqList_v1250, InterFreqCarrierFreqList_v1250_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_ue_SelectedResourceConfig_r12_01(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_lte_rrc_T_ue_SelectedResourceConfig_r12_01, T_ue_SelectedResourceConfig_r12_01_sequence); return offset; } -static const per_sequence_t T_threshX_Q_r12_sequence[] = { - { &hf_lte_rrc_threshX_HighQ_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, - { &hf_lte_rrc_threshX_LowQ_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, +static const per_sequence_t T_txParameters_r12_01_sequence[] = { + { &hf_lte_rrc_txParametersGeneral_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxParameters_r12 }, + { &hf_lte_rrc_ue_SelectedResourceConfig_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_SelectedResourceConfig_r12_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_threshX_Q_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_txParameters_r12_01(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_lte_rrc_T_threshX_Q_r12, T_threshX_Q_r12_sequence); + ett_lte_rrc_T_txParameters_r12_01, T_txParameters_r12_01_sequence); return offset; } -static const per_sequence_t MultiBandInfoList_r11_sequence_of[1] = { - { &hf_lte_rrc_MultiBandInfoList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, +static const per_sequence_t T_rxParameters_r12_sequence[] = { + { &hf_lte_rrc_tdd_Config_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, + { &hf_lte_rrc_syncConfigIndex_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MultiBandInfoList_r11(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_lte_rrc_MultiBandInfoList_r11, MultiBandInfoList_r11_sequence_of, - 1, maxMultiBands, FALSE); +dissect_lte_rrc_T_rxParameters_r12(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_lte_rrc_T_rxParameters_r12, T_rxParameters_r12_sequence); return offset; } -static const value_string lte_rrc_T_reducedMeasPerformance_r12_01_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_setup_163_vals[] = { + { 0, "rf4" }, + { 1, "rf6" }, + { 2, "rf7" }, + { 3, "rf8" }, + { 4, "rf12" }, + { 5, "rf14" }, + { 6, "rf24" }, + { 7, "rf28" }, { 0, NULL } }; static int -dissect_lte_rrc_T_reducedMeasPerformance_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_163(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_r12_sequence[] = { - { &hf_lte_rrc_dl_CarrierFreq_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_q_RxLevMin_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_p_Max_r12 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_t_ReselectionEUTRA_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, - { &hf_lte_rrc_t_ReselectionEUTRA_SF_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, - { &hf_lte_rrc_threshX_High_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_threshX_Low_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_allowedMeasBandwidth_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AllowedMeasBandwidth }, - { &hf_lte_rrc_presenceAntennaPort1_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PresenceAntennaPort1 }, - { &hf_lte_rrc_cellReselectionPriority_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, - { &hf_lte_rrc_neighCellConfig_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellConfig }, - { &hf_lte_rrc_q_OffsetFreq_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_OffsetRange }, - { &hf_lte_rrc_interFreqNeighCellList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqNeighCellList }, - { &hf_lte_rrc_interFreqBlackCellList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqBlackCellList }, - { &hf_lte_rrc_q_QualMin_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, - { &hf_lte_rrc_threshX_Q_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_threshX_Q_r12 }, - { &hf_lte_rrc_q_QualMinWB_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, - { &hf_lte_rrc_multiBandInfoList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_r11 }, - { &hf_lte_rrc_reducedMeasPerformance_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMeasPerformance_r12_01 }, - { &hf_lte_rrc_q_QualMinRSRQ_OnAllSymbols_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_discPeriod_v1310_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_discPeriod_v1310_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_188 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_163 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_r12(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_lte_rrc_InterFreqCarrierFreqInfo_r12, InterFreqCarrierFreqInfo_r12_sequence); +dissect_lte_rrc_T_discPeriod_v1310(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_lte_rrc_T_discPeriod_v1310, T_discPeriod_v1310_choice, + NULL); return offset; } -static const per_sequence_t InterFreqCarrierFreqListExt_r12_sequence_of[1] = { - { &hf_lte_rrc_InterFreqCarrierFreqListExt_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_r12 }, +static const per_sequence_t PhysCellIdList_r13_sequence_of[1] = { + { &hf_lte_rrc_PhysCellIdList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, }; static int -dissect_lte_rrc_InterFreqCarrierFreqListExt_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhysCellIdList_r13(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_lte_rrc_InterFreqCarrierFreqListExt_r12, InterFreqCarrierFreqListExt_r12_sequence_of, - 1, maxFreq, FALSE); + ett_lte_rrc_PhysCellIdList_r13, PhysCellIdList_r13_sequence_of, + 1, maxSL_DiscCells_r13, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType5_eag_1_sequence[] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqList_v1250 }, - { &hf_lte_rrc_interFreqCarrierFreqListExt_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_r12 }, +static const per_sequence_t T_setup_164_sequence[] = { + { &hf_lte_rrc_physCellId_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdList_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType5_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_1_sequence); +dissect_lte_rrc_T_setup_164(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_lte_rrc_T_setup_164, T_setup_164_sequence); return offset; } -static const per_sequence_t NS_PmaxValue_r10_sequence[] = { - { &hf_lte_rrc_additionalPmax_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_additionalSpectrumEmission, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_rxParamsAddNeighFreq_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_rxParamsAddNeighFreq_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_189 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_164 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_NS_PmaxValue_r10(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_lte_rrc_NS_PmaxValue_r10, NS_PmaxValue_r10_sequence); +dissect_lte_rrc_T_rxParamsAddNeighFreq_r13(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_lte_rrc_T_rxParamsAddNeighFreq_r13, T_rxParamsAddNeighFreq_r13_choice, + NULL); return offset; } -static const per_sequence_t NS_PmaxList_r10_sequence_of[1] = { - { &hf_lte_rrc_NS_PmaxList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NS_PmaxValue_r10 }, +static const value_string lte_rrc_T_ul_Bandwidth_02_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, + { 0, NULL } }; + static int -dissect_lte_rrc_NS_PmaxList_r10(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_lte_rrc_NS_PmaxList_r10, NS_PmaxList_r10_sequence_of, - 1, maxNS_Pmax_r10, FALSE); +dissect_lte_rrc_T_ul_Bandwidth_02(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, + 6, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MultiBandInfoList_v10j0_sequence_of[1] = { - { &hf_lte_rrc_MultiBandInfoList_v10j0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NS_PmaxList_r10 }, +static const per_sequence_t T_freqInfo_01_sequence[] = { + { &hf_lte_rrc_ul_CarrierFreq, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &hf_lte_rrc_ul_Bandwidth_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth_02 }, + { &hf_lte_rrc_additionalSpectrumEmission, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MultiBandInfoList_v10j0(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_lte_rrc_MultiBandInfoList_v10j0, MultiBandInfoList_v10j0_sequence_of, - 1, maxMultiBands, FALSE); +dissect_lte_rrc_T_freqInfo_01(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_lte_rrc_T_freqInfo_01, T_freqInfo_01_sequence); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_v10j0_sequence[] = { - { &hf_lte_rrc_freqBandInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_r10 }, - { &hf_lte_rrc_multiBandInfoList_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10j0 }, +static const per_sequence_t T_setup_165_sequence[] = { + { &hf_lte_rrc_physCellId_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdList_r13 }, + { &hf_lte_rrc_p_Max , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_tdd_Config_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, + { &hf_lte_rrc_tdd_Config_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1130 }, + { &hf_lte_rrc_freqInfo_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_freqInfo_01 }, + { &hf_lte_rrc_referenceSignalPower, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_50 }, + { &hf_lte_rrc_syncConfigIndex_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_v10j0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_165(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_lte_rrc_InterFreqCarrierFreqInfo_v10j0, InterFreqCarrierFreqInfo_v10j0_sequence); + ett_lte_rrc_T_setup_165, T_setup_165_sequence); return offset; } -static const per_sequence_t InterFreqCarrierFreqListExt_v1280_sequence_of[1] = { - { &hf_lte_rrc_InterFreqCarrierFreqListExt_v1280_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v10j0 }, +static const value_string lte_rrc_T_txParamsAddNeighFreq_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_txParamsAddNeighFreq_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_190 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_165 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqListExt_v1280(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_lte_rrc_InterFreqCarrierFreqListExt_v1280, InterFreqCarrierFreqListExt_v1280_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_txParamsAddNeighFreq_r13(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_lte_rrc_T_txParamsAddNeighFreq_r13, T_txParamsAddNeighFreq_r13_choice, + NULL); return offset; } -static const per_sequence_t SystemInformationBlockType5_eag_2_sequence[] = { - { &hf_lte_rrc_interFreqCarrierFreqListExt_v1280, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_v1280 }, +static const per_sequence_t SL_DiscResourcePool_r12_eag_1_sequence[] = { + { &hf_lte_rrc_discPeriod_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discPeriod_v1310 }, + { &hf_lte_rrc_rxParamsAddNeighFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParamsAddNeighFreq_r13 }, + { &hf_lte_rrc_txParamsAddNeighFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_txParamsAddNeighFreq_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType5_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_2_sequence); +dissect_lte_rrc_SL_DiscResourcePool_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_DiscResourcePool_r12_eag_1_sequence); return offset; } +static const per_sequence_t T_freqInfo_v1370_sequence[] = { + { &hf_lte_rrc_additionalSpectrumEmission_v1370, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_RedistributionFactor_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 10U, NULL, FALSE); +dissect_lte_rrc_T_freqInfo_v1370(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_lte_rrc_T_freqInfo_v1370, T_freqInfo_v1370_sequence); return offset; } -static const per_sequence_t RedistributionNeighCell_r13_sequence[] = { - { &hf_lte_rrc_physCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_redistributionFactorCell_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RedistributionFactor_r13 }, +static const per_sequence_t T_setup_166_sequence[] = { + { &hf_lte_rrc_freqInfo_v1370, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_freqInfo_v1370 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RedistributionNeighCell_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_166(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_lte_rrc_RedistributionNeighCell_r13, RedistributionNeighCell_r13_sequence); + ett_lte_rrc_T_setup_166, T_setup_166_sequence); return offset; } -static const per_sequence_t RedistributionNeighCellList_r13_sequence_of[1] = { - { &hf_lte_rrc_RedistributionNeighCellList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RedistributionNeighCell_r13 }, +static const value_string lte_rrc_T_txParamsAddNeighFreq_v1370_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_txParamsAddNeighFreq_v1370_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_191 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_166 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_RedistributionNeighCellList_r13(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_lte_rrc_RedistributionNeighCellList_r13, RedistributionNeighCellList_r13_sequence_of, - 1, maxCellInter, FALSE); +dissect_lte_rrc_T_txParamsAddNeighFreq_v1370(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_lte_rrc_T_txParamsAddNeighFreq_v1370, T_txParamsAddNeighFreq_v1370_choice, + NULL); return offset; } -static const per_sequence_t RedistributionInterFreqInfo_r13_sequence[] = { - { &hf_lte_rrc_redistributionFactorFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedistributionFactor_r13 }, - { &hf_lte_rrc_redistributionNeighCellList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedistributionNeighCellList_r13 }, +static const per_sequence_t SL_DiscResourcePool_r12_eag_2_sequence[] = { + { &hf_lte_rrc_txParamsAddNeighFreq_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_txParamsAddNeighFreq_v1370 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RedistributionInterFreqInfo_r13(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_lte_rrc_RedistributionInterFreqInfo_r13, RedistributionInterFreqInfo_r13_sequence); +dissect_lte_rrc_SL_DiscResourcePool_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_DiscResourcePool_r12_eag_2_sequence); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_v1310_sequence[] = { - { &hf_lte_rrc_cellReselectionSubPriority_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionSubPriority_r13 }, - { &hf_lte_rrc_redistributionInterFreqInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedistributionInterFreqInfo_r13 }, - { &hf_lte_rrc_cellSelectionInfoCE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE_r13 }, - { &hf_lte_rrc_t_ReselectionEUTRA_CE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ReselectionEUTRA_CE_r13 }, +static const per_sequence_t SL_DiscResourcePool_r12_sequence[] = { + { &hf_lte_rrc_cp_Len_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CP_Len_r12 }, + { &hf_lte_rrc_discPeriod_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_discPeriod_r12 }, + { &hf_lte_rrc_numRetx_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_numRepetition_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_50 }, + { &hf_lte_rrc_tf_ResourceConfig_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_ResourceConfig_r12 }, + { &hf_lte_rrc_txParameters_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_txParameters_r12_01 }, + { &hf_lte_rrc_rxParameters_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParameters_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscResourcePool_r12_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscResourcePool_r12_eag_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_DiscResourcePool_r12(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_lte_rrc_InterFreqCarrierFreqInfo_v1310, InterFreqCarrierFreqInfo_v1310_sequence); + ett_lte_rrc_SL_DiscResourcePool_r12, SL_DiscResourcePool_r12_sequence); return offset; } -static const per_sequence_t InterFreqCarrierFreqList_v1310_sequence_of[1] = { - { &hf_lte_rrc_InterFreqCarrierFreqList_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1310 }, -}; static int -dissect_lte_rrc_InterFreqCarrierFreqList_v1310(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_lte_rrc_InterFreqCarrierFreqList_v1310, InterFreqCarrierFreqList_v1310_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_INTEGER_1_200(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 200U, NULL, FALSE); return offset; } -static const per_sequence_t InterFreqCarrierFreqListExt_v1310_sequence_of[1] = { - { &hf_lte_rrc_InterFreqCarrierFreqListExt_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1310 }, +static const per_sequence_t SL_TF_IndexPair_r12_sequence[] = { + { &hf_lte_rrc_discSF_Index_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_200 }, + { &hf_lte_rrc_discPRB_Index_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_50 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqListExt_v1310(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_lte_rrc_InterFreqCarrierFreqListExt_v1310, InterFreqCarrierFreqListExt_v1310_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_SL_TF_IndexPair_r12(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_lte_rrc_SL_TF_IndexPair_r12, SL_TF_IndexPair_r12_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType5_eag_3_sequence[] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqList_v1310 }, - { &hf_lte_rrc_interFreqCarrierFreqListExt_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_v1310 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_TF_IndexPairList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_TF_IndexPairList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_IndexPair_r12 }, }; static int -dissect_lte_rrc_SystemInformationBlockType5_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_3_sequence); +dissect_lte_rrc_SL_TF_IndexPairList_r12(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_lte_rrc_SL_TF_IndexPairList_r12, SL_TF_IndexPairList_r12_sequence_of, + 1, maxSL_TF_IndexPair_r12, FALSE); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_v1350_sequence[] = { - { &hf_lte_rrc_cellSelectionInfoCE1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_c_r12_vals[] = { + { 0, "n1" }, + { 1, "n5" }, + { 0, NULL } }; + static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_v1350(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_lte_rrc_InterFreqCarrierFreqInfo_v1350, InterFreqCarrierFreqInfo_v1350_sequence); +dissect_lte_rrc_T_c_r12(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t InterFreqCarrierFreqList_v1350_sequence_of[1] = { - { &hf_lte_rrc_InterFreqCarrierFreqList_v1350_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1350 }, +static const per_sequence_t SL_HoppingConfigDisc_r12_sequence[] = { + { &hf_lte_rrc_a_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_200 }, + { &hf_lte_rrc_b_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_10 }, + { &hf_lte_rrc_c_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_c_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqList_v1350(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_lte_rrc_InterFreqCarrierFreqList_v1350, InterFreqCarrierFreqList_v1350_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_SL_HoppingConfigDisc_r12(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_lte_rrc_SL_HoppingConfigDisc_r12, SL_HoppingConfigDisc_r12_sequence); return offset; } -static const per_sequence_t InterFreqCarrierFreqListExt_v1350_sequence_of[1] = { - { &hf_lte_rrc_InterFreqCarrierFreqListExt_v1350_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1350 }, +static const per_sequence_t T_scheduled_r12_01_sequence[] = { + { &hf_lte_rrc_discTxConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscResourcePool_r12 }, + { &hf_lte_rrc_discTF_IndexList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TF_IndexPairList_r12 }, + { &hf_lte_rrc_discHoppingConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_HoppingConfigDisc_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqListExt_v1350(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_lte_rrc_InterFreqCarrierFreqListExt_v1350, InterFreqCarrierFreqListExt_v1350_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_scheduled_r12_01(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_lte_rrc_T_scheduled_r12_01, T_scheduled_r12_01_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType5_eag_4_sequence[] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v1350, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqList_v1350 }, - { &hf_lte_rrc_interFreqCarrierFreqListExt_v1350, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_v1350 }, +static const per_sequence_t SL_DiscTxPoolToAddMod_r12_sequence[] = { + { &hf_lte_rrc_poolIdentity_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolIdentity_r12 }, + { &hf_lte_rrc_pool_r12_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscResourcePool_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType5_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_4_sequence); +dissect_lte_rrc_SL_DiscTxPoolToAddMod_r12(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_lte_rrc_SL_DiscTxPoolToAddMod_r12, SL_DiscTxPoolToAddMod_r12_sequence); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_v1360_sequence[] = { - { &hf_lte_rrc_cellSelectionInfoCE1_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_v1360 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_DiscTxPoolToAddModList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_DiscTxPoolToAddModList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscTxPoolToAddMod_r12 }, }; static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_v1360(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_lte_rrc_InterFreqCarrierFreqInfo_v1360, InterFreqCarrierFreqInfo_v1360_sequence); +dissect_lte_rrc_SL_DiscTxPoolToAddModList_r12(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_lte_rrc_SL_DiscTxPoolToAddModList_r12, SL_DiscTxPoolToAddModList_r12_sequence_of, + 1, maxSL_TxPool_r12, FALSE); return offset; } -static const per_sequence_t InterFreqCarrierFreqListExt_v1360_sequence_of[1] = { - { &hf_lte_rrc_InterFreqCarrierFreqListExt_v1360_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1360 }, +static const per_sequence_t T_discTxPoolDedicated_r12_sequence[] = { + { &hf_lte_rrc_poolToReleaseList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToReleaseList_r12 }, + { &hf_lte_rrc_poolToAddModList_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPoolToAddModList_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqListExt_v1360(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_lte_rrc_InterFreqCarrierFreqListExt_v1360, InterFreqCarrierFreqListExt_v1360_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_discTxPoolDedicated_r12(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_lte_rrc_T_discTxPoolDedicated_r12, T_discTxPoolDedicated_r12_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType5_eag_5_sequence[] = { - { &hf_lte_rrc_interFreqCarrierFreqListExt_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_v1360 }, +static const per_sequence_t T_ue_Selected_r12_01_sequence[] = { + { &hf_lte_rrc_discTxPoolDedicated_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxPoolDedicated_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType5_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_5_sequence); +dissect_lte_rrc_T_ue_Selected_r12_01(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_lte_rrc_T_ue_Selected_r12_01, T_ue_Selected_r12_01_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType5_eag_6_sequence[] = { - { &hf_lte_rrc_scptm_FreqOffset_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_8 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_setup_158_vals[] = { + { 0, "scheduled-r12" }, + { 1, "ue-Selected-r12" }, + { 0, NULL } +}; + +static const per_choice_t T_setup_158_choice[] = { + { 0, &hf_lte_rrc_scheduled_r12_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scheduled_r12_01 }, + { 1, &hf_lte_rrc_ue_Selected_r12_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_r12_01 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType5_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_6_sequence); +dissect_lte_rrc_T_setup_158(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_lte_rrc_T_setup_158, T_setup_158_choice, + NULL); return offset; } -static const per_sequence_t SystemInformationBlockType5_sequence[] = { - { &hf_lte_rrc_interFreqCarrierFreqList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqList }, - { &hf_lte_rrc_lateNonCriticalExtension_09, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_08 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_5 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_6 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_discTxResources_r12_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } }; -static int -dissect_lte_rrc_SystemInformationBlockType5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB5"); +static const per_choice_t T_discTxResources_r12_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_181 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_158 }, + { 0, NULL, 0, NULL } +}; - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType5, SystemInformationBlockType5_sequence); +static int +dissect_lte_rrc_T_discTxResources_r12(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_lte_rrc_T_discTxResources_r12, T_discTxResources_r12_choice, + NULL); return offset; } @@ -46277,660 +50248,741 @@ dissect_lte_rrc_SystemInformationBlockType5(tvbuff_t *tvb _U_, int offset _U_, a static int -dissect_lte_rrc_INTEGER_M60_M13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_0_209(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -60, -13, NULL, FALSE); + 0U, 209U, NULL, FALSE); return offset; } +static const per_sequence_t SL_TF_IndexPair_r12b_sequence[] = { + { &hf_lte_rrc_discSF_Index_r12b, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_209 }, + { &hf_lte_rrc_discPRB_Index_r12b, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_49 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_M50_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -50, 33U, NULL, FALSE); +dissect_lte_rrc_SL_TF_IndexPair_r12b(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_lte_rrc_SL_TF_IndexPair_r12b, SL_TF_IndexPair_r12b_sequence); return offset; } +static const per_sequence_t SL_TF_IndexPairList_r12b_sequence_of[1] = { + { &hf_lte_rrc_SL_TF_IndexPairList_r12b_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_IndexPair_r12b }, +}; static int -dissect_lte_rrc_INTEGER_M24_0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -24, 0U, NULL, FALSE); +dissect_lte_rrc_SL_TF_IndexPairList_r12b(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_lte_rrc_SL_TF_IndexPairList_r12b, SL_TF_IndexPairList_r12b_sequence_of, + 1, maxSL_TF_IndexPair_r12, FALSE); return offset; } -static const per_sequence_t T_threshX_Q_r9_01_sequence[] = { - { &hf_lte_rrc_threshX_HighQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, - { &hf_lte_rrc_threshX_LowQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, +static const per_sequence_t T_setup_159_sequence[] = { + { &hf_lte_rrc_discTF_IndexList_r12b, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TF_IndexPairList_r12b }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_threshX_Q_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_159(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_lte_rrc_T_threshX_Q_r9_01, T_threshX_Q_r9_01_sequence); + ett_lte_rrc_T_setup_159, T_setup_159_sequence); return offset; } -static const per_sequence_t CarrierFreqUTRA_FDD_eag_1_sequence[] = { - { &hf_lte_rrc_threshX_Q_r9_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_threshX_Q_r9_01 }, +static const value_string lte_rrc_T_discTF_IndexList_v1260_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_discTF_IndexList_v1260_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_182 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_159 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_discTF_IndexList_v1260(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_lte_rrc_T_discTF_IndexList_v1260, T_discTF_IndexList_v1260_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SL_DiscConfig_r12_eag_1_sequence[] = { + { &hf_lte_rrc_discTF_IndexList_v1260, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTF_IndexList_v1260 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqUTRA_FDD_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CarrierFreqUTRA_FDD_eag_1_sequence); +dissect_lte_rrc_SL_DiscConfig_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_DiscConfig_r12_eag_1_sequence); return offset; } -static const per_sequence_t CarrierFreqUTRA_FDD_sequence[] = { - { &hf_lte_rrc_carrierFreq_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, - { &hf_lte_rrc_threshX_High, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_threshX_Low , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_q_RxLevMin_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_M13 }, - { &hf_lte_rrc_p_MaxUTRA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M50_33 }, - { &hf_lte_rrc_q_QualMin , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M24_0 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqUTRA_FDD_eag_1 }, +static const per_sequence_t SL_DiscTxConfigScheduled_r13_sequence[] = { + { &hf_lte_rrc_discTxConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscResourcePool_r12 }, + { &hf_lte_rrc_discTF_IndexList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_TF_IndexPairList_r12b }, + { &hf_lte_rrc_discHoppingConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_HoppingConfigDisc_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqUTRA_FDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_DiscTxConfigScheduled_r13(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_lte_rrc_CarrierFreqUTRA_FDD, CarrierFreqUTRA_FDD_sequence); + ett_lte_rrc_SL_DiscTxConfigScheduled_r13, SL_DiscTxConfigScheduled_r13_sequence); return offset; } -static const per_sequence_t CarrierFreqListUTRA_FDD_sequence_of[1] = { - { &hf_lte_rrc_CarrierFreqListUTRA_FDD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqUTRA_FDD }, +static const per_sequence_t SL_DiscTxPoolDedicated_r13_sequence[] = { + { &hf_lte_rrc_poolToReleaseList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToReleaseList_r12 }, + { &hf_lte_rrc_poolToAddModList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPoolToAddModList_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqListUTRA_FDD(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_lte_rrc_CarrierFreqListUTRA_FDD, CarrierFreqListUTRA_FDD_sequence_of, - 1, maxUTRA_FDD_Carrier, FALSE); +dissect_lte_rrc_SL_DiscTxPoolDedicated_r13(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_lte_rrc_SL_DiscTxPoolDedicated_r13, SL_DiscTxPoolDedicated_r13_sequence); return offset; } -static const per_sequence_t CarrierFreqUTRA_TDD_sequence[] = { - { &hf_lte_rrc_carrierFreq_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, - { &hf_lte_rrc_threshX_High, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_threshX_Low , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_q_RxLevMin_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_M13 }, - { &hf_lte_rrc_p_MaxUTRA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M50_33 }, +static const per_sequence_t T_ue_Selected_r13_sequence[] = { + { &hf_lte_rrc_discTxPoolPS_Dedicated_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscTxPoolDedicated_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqUTRA_TDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_Selected_r13(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_lte_rrc_CarrierFreqUTRA_TDD, CarrierFreqUTRA_TDD_sequence); + ett_lte_rrc_T_ue_Selected_r13, T_ue_Selected_r13_sequence); return offset; } -static const per_sequence_t CarrierFreqListUTRA_TDD_sequence_of[1] = { - { &hf_lte_rrc_CarrierFreqListUTRA_TDD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqUTRA_TDD }, +static const value_string lte_rrc_T_setup_160_vals[] = { + { 0, "scheduled-r13" }, + { 1, "ue-Selected-r13" }, + { 0, NULL } +}; + +static const per_choice_t T_setup_160_choice[] = { + { 0, &hf_lte_rrc_scheduled_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_DiscTxConfigScheduled_r13 }, + { 1, &hf_lte_rrc_ue_Selected_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_r13 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqListUTRA_TDD(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_lte_rrc_CarrierFreqListUTRA_TDD, CarrierFreqListUTRA_TDD_sequence_of, - 1, maxUTRA_TDD_Carrier, FALSE); +dissect_lte_rrc_T_setup_160(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_lte_rrc_T_setup_160, T_setup_160_choice, + NULL); return offset; } +static const value_string lte_rrc_T_discTxResourcesPS_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_discTxResourcesPS_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_183 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_160 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_lateNonCriticalExtension_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType6_v8h0_IEs_PDU); +dissect_lte_rrc_T_discTxResourcesPS_r13(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_lte_rrc_T_discTxResourcesPS_r13, T_discTxResourcesPS_r13_choice, + NULL); return offset; } -static const value_string lte_rrc_T_reducedMeasPerformance_r12_02_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_SL_DiscTxRefCarrierDedicated_r13_vals[] = { + { 0, "pCell" }, + { 1, "sCell" }, { 0, NULL } }; +static const per_choice_t SL_DiscTxRefCarrierDedicated_r13_choice[] = { + { 0, &hf_lte_rrc_pCell , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_sCell , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCellIndex_r10 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_reducedMeasPerformance_r12_02(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SL_DiscTxRefCarrierDedicated_r13(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_lte_rrc_SL_DiscTxRefCarrierDedicated_r13, SL_DiscTxRefCarrierDedicated_r13_choice, + NULL); return offset; } -static const per_sequence_t CarrierFreqInfoUTRA_v1250_sequence[] = { - { &hf_lte_rrc_reducedMeasPerformance_r12_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMeasPerformance_r12_02 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_setup_162_vals[] = { + { 0, "scheduled-r13" }, + { 1, "ue-Selected-r13" }, + { 0, NULL } +}; + +static const per_choice_t T_setup_162_choice[] = { + { 0, &hf_lte_rrc_scheduled_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_DiscTxConfigScheduled_r13 }, + { 1, &hf_lte_rrc_ue_Selected_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_DiscTxPoolDedicated_r13 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqInfoUTRA_v1250(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_lte_rrc_CarrierFreqInfoUTRA_v1250, CarrierFreqInfoUTRA_v1250_sequence); +dissect_lte_rrc_T_setup_162(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_lte_rrc_T_setup_162, T_setup_162_choice, + NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_v1250_sequence_of[1] = { - { &hf_lte_rrc_carrierFreqListUTRA_FDD_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqInfoUTRA_v1250 }, +static const value_string lte_rrc_SL_DiscTxResource_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t SL_DiscTxResource_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_187 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_162 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_v1250(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_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_v1250, SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_v1250_sequence_of, - 1, maxUTRA_FDD_Carrier, FALSE); +dissect_lte_rrc_SL_DiscTxResource_r13(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_lte_rrc_SL_DiscTxResource_r13, SL_DiscTxResource_r13_choice, + NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250_sequence_of[1] = { - { &hf_lte_rrc_carrierFreqListUTRA_TDD_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqInfoUTRA_v1250 }, +static const value_string lte_rrc_T_q_Hyst_r13_vals[] = { + { 0, "dB0" }, + { 1, "dB1" }, + { 2, "dB2" }, + { 3, "dB3" }, + { 4, "dB4" }, + { 5, "dB5" }, + { 6, "dB6" }, + { 7, "dB8" }, + { 8, "dB10" }, + { 9, "dB12" }, + { 10, "dB14" }, + { 11, "dB16" }, + { 12, "dB18" }, + { 13, "dB20" }, + { 14, "dB22" }, + { 15, "dB24" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250(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_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250, SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250_sequence_of, - 1, maxUTRA_TDD_Carrier, FALSE); +dissect_lte_rrc_T_q_Hyst_r13(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_threshX_Q_r12_01_sequence[] = { - { &hf_lte_rrc_threshX_HighQ_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, - { &hf_lte_rrc_threshX_LowQ_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, +static const per_sequence_t CellSelectionInfoNFreq_r13_sequence[] = { + { &hf_lte_rrc_q_RxLevMin_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_q_RxLevMinOffset, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_8 }, + { &hf_lte_rrc_q_Hyst_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_q_Hyst_r13 }, + { &hf_lte_rrc_q_RxLevMinReselection_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_t_ReselectionEUTRA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_threshX_Q_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellSelectionInfoNFreq_r13(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_lte_rrc_T_threshX_Q_r12_01, T_threshX_Q_r12_01_sequence); + ett_lte_rrc_CellSelectionInfoNFreq_r13, CellSelectionInfoNFreq_r13_sequence); return offset; } +static const per_sequence_t SL_DiscTxResourceInfoPerFreq_r13_sequence[] = { + { &hf_lte_rrc_discTxCarrierFreq_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_discTxResources_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxResource_r13 }, + { &hf_lte_rrc_discTxResourcesPS_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxResource_r13 }, + { &hf_lte_rrc_discTxRefCarrierDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxRefCarrierDedicated_r13 }, + { &hf_lte_rrc_discCellSelectionInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoNFreq_r13 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_FreqBandIndicator_UTRA_FDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 86U, NULL, FALSE); +dissect_lte_rrc_SL_DiscTxResourceInfoPerFreq_r13(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_lte_rrc_SL_DiscTxResourceInfoPerFreq_r13, SL_DiscTxResourceInfoPerFreq_r13_sequence); return offset; } -static const per_sequence_t FreqBandIndicator_UTRA_FDD_r12_sequence_of[1] = { - { &hf_lte_rrc_multiBandInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_UTRA_FDD }, +static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13_sequence_of[1] = { + { &hf_lte_rrc_discTxFreqToAddModList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscTxResourceInfoPerFreq_r13 }, }; static int -dissect_lte_rrc_FreqBandIndicator_UTRA_FDD_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13(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_lte_rrc_FreqBandIndicator_UTRA_FDD_r12, FreqBandIndicator_UTRA_FDD_r12_sequence_of, - 1, maxMultiBands, FALSE); + ett_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13, SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const value_string lte_rrc_T_reducedMeasPerformance_r12_03_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9_sequence_of[1] = { + { &hf_lte_rrc_discTxFreqToReleaseList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, }; - static int -dissect_lte_rrc_T_reducedMeasPerformance_r12_03(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9, SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t CarrierFreqUTRA_FDD_Ext_r12_sequence[] = { - { &hf_lte_rrc_carrierFreq_r12_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, - { &hf_lte_rrc_cellReselectionPriority_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, - { &hf_lte_rrc_threshX_High_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_threshX_Low_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_q_RxLevMin_r12_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_M13 }, - { &hf_lte_rrc_p_MaxUTRA_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M50_33 }, - { &hf_lte_rrc_q_QualMin_r12_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M24_0 }, - { &hf_lte_rrc_threshX_Q_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_threshX_Q_r12_01 }, - { &hf_lte_rrc_multiBandInfoList_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_UTRA_FDD_r12 }, - { &hf_lte_rrc_reducedMeasPerformance_r12_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMeasPerformance_r12_03 }, +static const per_sequence_t SL_DiscTxInfoInterFreqListAdd_r13_sequence[] = { + { &hf_lte_rrc_discTxFreqToAddModList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_SL_DiscTxResourceInfoPerFreq_r13 }, + { &hf_lte_rrc_discTxFreqToReleaseList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqUTRA_FDD_Ext_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_DiscTxInfoInterFreqListAdd_r13(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_lte_rrc_CarrierFreqUTRA_FDD_Ext_r12, CarrierFreqUTRA_FDD_Ext_r12_sequence); + ett_lte_rrc_SL_DiscTxInfoInterFreqListAdd_r13, SL_DiscTxInfoInterFreqListAdd_r13_sequence); return offset; } -static const per_sequence_t CarrierFreqListUTRA_FDD_Ext_r12_sequence_of[1] = { - { &hf_lte_rrc_CarrierFreqListUTRA_FDD_Ext_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqUTRA_FDD_Ext_r12 }, +static const per_sequence_t T_setup_161_sequence[] = { + { &hf_lte_rrc_discTxCarrierFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_discTxRefCarrierDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxRefCarrierDedicated_r13 }, + { &hf_lte_rrc_discTxInfoInterFreqListAdd_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxInfoInterFreqListAdd_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqListUTRA_FDD_Ext_r12(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_lte_rrc_CarrierFreqListUTRA_FDD_Ext_r12, CarrierFreqListUTRA_FDD_Ext_r12_sequence_of, - 1, maxUTRA_FDD_Carrier, FALSE); +dissect_lte_rrc_T_setup_161(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_lte_rrc_T_setup_161, T_setup_161_sequence); return offset; } -static const value_string lte_rrc_T_reducedMeasPerformance_r12_04_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_discTxInterFreqInfo_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t T_discTxInterFreqInfo_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_184 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_161 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_reducedMeasPerformance_r12_04(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_discTxInterFreqInfo_r13(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_lte_rrc_T_discTxInterFreqInfo_r13, T_discTxInterFreqInfo_r13_choice, + NULL); return offset; } -static const per_sequence_t CarrierFreqUTRA_TDD_r12_sequence[] = { - { &hf_lte_rrc_carrierFreq_r12_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, - { &hf_lte_rrc_cellReselectionPriority_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, - { &hf_lte_rrc_threshX_High_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_threshX_Low_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_q_RxLevMin_r12_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_M13 }, - { &hf_lte_rrc_p_MaxUTRA_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M50_33 }, - { &hf_lte_rrc_reducedMeasPerformance_r12_04, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMeasPerformance_r12_04 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_gapPeriod_r13_vals[] = { + { 0, "sf40" }, + { 1, "sf60" }, + { 2, "sf70" }, + { 3, "sf80" }, + { 4, "sf120" }, + { 5, "sf140" }, + { 6, "sf160" }, + { 7, "sf240" }, + { 8, "sf280" }, + { 9, "sf320" }, + { 10, "sf640" }, + { 11, "sf1280" }, + { 12, "sf2560" }, + { 13, "sf5120" }, + { 14, "sf10240" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CarrierFreqUTRA_TDD_r12(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_lte_rrc_CarrierFreqUTRA_TDD_r12, CarrierFreqUTRA_TDD_r12_sequence); +dissect_lte_rrc_T_gapPeriod_r13(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, + 15, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CarrierFreqListUTRA_TDD_Ext_r12_sequence_of[1] = { - { &hf_lte_rrc_CarrierFreqListUTRA_TDD_Ext_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqUTRA_TDD_r12 }, -}; static int -dissect_lte_rrc_CarrierFreqListUTRA_TDD_Ext_r12(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_lte_rrc_CarrierFreqListUTRA_TDD_Ext_r12, CarrierFreqListUTRA_TDD_Ext_r12_sequence_of, - 1, maxUTRA_TDD_Carrier, FALSE); +dissect_lte_rrc_BIT_STRING_SIZE_1_10240(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, + 1, 10240, FALSE, NULL, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType6_eag_1_sequence[] = { - { &hf_lte_rrc_carrierFreqListUTRA_FDD_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_v1250 }, - { &hf_lte_rrc_carrierFreqListUTRA_TDD_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250 }, - { &hf_lte_rrc_carrierFreqListUTRA_FDD_Ext_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListUTRA_FDD_Ext_r12 }, - { &hf_lte_rrc_carrierFreqListUTRA_TDD_Ext_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListUTRA_TDD_Ext_r12 }, +static const per_sequence_t SL_GapPattern_r13_sequence[] = { + { &hf_lte_rrc_gapPeriod_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_gapPeriod_r13 }, + { &hf_lte_rrc_gapOffset_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_OffsetIndicator_r12 }, + { &hf_lte_rrc_gapSubframeBitmap_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_1_10240 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType6_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType6_eag_1_sequence); +dissect_lte_rrc_SL_GapPattern_r13(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_lte_rrc_SL_GapPattern_r13, SL_GapPattern_r13_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType6_sequence[] = { - { &hf_lte_rrc_carrierFreqListUTRA_FDD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListUTRA_FDD }, - { &hf_lte_rrc_carrierFreqListUTRA_TDD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListUTRA_TDD }, - { &hf_lte_rrc_t_ReselectionUTRA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, - { &hf_lte_rrc_t_ReselectionUTRA_SF, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, - { &hf_lte_rrc_lateNonCriticalExtension_10, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_09 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType6_eag_1 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_GapPatternList_r13_sequence_of[1] = { + { &hf_lte_rrc_SL_GapPatternList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_GapPattern_r13 }, }; static int -dissect_lte_rrc_SystemInformationBlockType6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB6"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType6, SystemInformationBlockType6_sequence); +dissect_lte_rrc_SL_GapPatternList_r13(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_lte_rrc_SL_GapPatternList_r13, SL_GapPatternList_r13_sequence_of, + 1, maxSL_GP_r13, FALSE); return offset; } -static const per_sequence_t T_commonInfo_sequence[] = { - { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, - { &hf_lte_rrc_ncc_Permitted, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_8 }, - { &hf_lte_rrc_q_RxLevMin_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_45 }, - { &hf_lte_rrc_p_MaxGERAN , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_39 }, - { &hf_lte_rrc_threshX_High, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, - { &hf_lte_rrc_threshX_Low , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, +static const per_sequence_t SL_GapConfig_r13_sequence[] = { + { &hf_lte_rrc_gapPatternList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_GapPatternList_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_commonInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_GapConfig_r13(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_lte_rrc_T_commonInfo, T_commonInfo_sequence); + ett_lte_rrc_SL_GapConfig_r13, SL_GapConfig_r13_sequence); return offset; } -static const per_sequence_t CarrierFreqsInfoGERAN_sequence[] = { - { &hf_lte_rrc_carrierFreqs, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqsGERAN }, - { &hf_lte_rrc_commonInfo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_commonInfo }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_discRxGapConfig_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_discRxGapConfig_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_185 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_GapConfig_r13 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqsInfoGERAN(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_lte_rrc_CarrierFreqsInfoGERAN, CarrierFreqsInfoGERAN_sequence); +dissect_lte_rrc_T_discRxGapConfig_r13(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_lte_rrc_T_discRxGapConfig_r13, T_discRxGapConfig_r13_choice, + NULL); return offset; } -static const per_sequence_t CarrierFreqsInfoListGERAN_sequence_of[1] = { - { &hf_lte_rrc_CarrierFreqsInfoListGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqsInfoGERAN }, +static const value_string lte_rrc_T_discTxGapConfig_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_discTxGapConfig_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_185 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_GapConfig_r13 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqsInfoListGERAN(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_lte_rrc_CarrierFreqsInfoListGERAN, CarrierFreqsInfoListGERAN_sequence_of, - 1, maxGNFG, FALSE); +dissect_lte_rrc_T_discTxGapConfig_r13(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_lte_rrc_T_discTxGapConfig_r13, T_discTxGapConfig_r13_choice, + NULL); return offset; } -static const per_sequence_t SystemInformationBlockType7_sequence[] = { - { &hf_lte_rrc_t_ReselectionGERAN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, - { &hf_lte_rrc_t_ReselectionGERAN_SF, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, - { &hf_lte_rrc_carrierFreqsInfoList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqsInfoListGERAN }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_DiscSysInfoToReportFreqList_r13_sequence_of[1] = { + { &hf_lte_rrc_SL_DiscSysInfoToReportFreqList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, }; static int -dissect_lte_rrc_SystemInformationBlockType7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB7"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType7, SystemInformationBlockType7_sequence); +dissect_lte_rrc_SL_DiscSysInfoToReportFreqList_r13(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_lte_rrc_SL_DiscSysInfoToReportFreqList_r13, SL_DiscSysInfoToReportFreqList_r13_sequence_of, + 1, maxFreq, FALSE); return offset; } +static const value_string lte_rrc_T_discSysInfoToReportConfig_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_discSysInfoToReportConfig_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_186 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_DiscSysInfoToReportFreqList_r13 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_synchronousSystemTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *sync_system_time_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 39, 39, FALSE, &sync_system_time_tvb, NULL); +dissect_lte_rrc_T_discSysInfoToReportConfig_r13(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_lte_rrc_T_discSysInfoToReportConfig_r13, T_discSysInfoToReportConfig_r13_choice, + NULL); + return offset; +} - if (sync_system_time_tvb) { - guint64 bits; - nstime_t ts; - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_timeInfo); - bits = tvb_get_bits64(sync_system_time_tvb, 0, 39, ENC_BIG_ENDIAN); - ts.secs = (time_t)(bits/100) + 315964800; /* CDMA2000 epoch is 00:00:00 (midnight) UTC on 1980-01-06 */ - ts.nsecs = (int)(bits%100)*10000000; - proto_tree_add_time(subtree, hf_lte_rrc_cdma_time, sync_system_time_tvb, 0, 5, &ts); - proto_tree_add_time(subtree, hf_lte_rrc_local_time, sync_system_time_tvb, 0, 5, &ts); - } - - return offset; -} - - +static const per_sequence_t SL_DiscConfig_r12_eag_2_sequence[] = { + { &hf_lte_rrc_discTxResourcesPS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxResourcesPS_r13 }, + { &hf_lte_rrc_discTxInterFreqInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxInterFreqInfo_r13 }, + { &hf_lte_rrc_gapRequestsAllowedDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_discRxGapConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discRxGapConfig_r13 }, + { &hf_lte_rrc_discTxGapConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxGapConfig_r13 }, + { &hf_lte_rrc_discSysInfoToReportConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discSysInfoToReportConfig_r13 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_asynchronousSystemTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *async_system_time_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 49, 49, FALSE, &async_system_time_tvb, NULL); - - - - if (async_system_time_tvb) { - guint64 bits; - nstime_t ts; - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_timeInfo); - bits = tvb_get_bits64(async_system_time_tvb, 0, 49, ENC_BIG_ENDIAN); - ts.secs = (time_t)((bits*8)/1228800) + 315964800; /* CDMA2000 epoch is 00:00:00 (midnight) UTC on 1980-01-06 */ - ts.nsecs = (int)(((bits%153600)*8*1000000000)/1228800); - proto_tree_add_time(subtree, hf_lte_rrc_cdma_time, async_system_time_tvb, 0, 7, &ts); - proto_tree_add_time(subtree, hf_lte_rrc_local_time, async_system_time_tvb, 0, 7,&ts); - } +dissect_lte_rrc_SL_DiscConfig_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_DiscConfig_r12_eag_2_sequence); return offset; } -static const value_string lte_rrc_T_cdma_SystemTime_vals[] = { - { 0, "synchronousSystemTime" }, - { 1, "asynchronousSystemTime" }, - { 0, NULL } -}; - -static const per_choice_t T_cdma_SystemTime_choice[] = { - { 0, &hf_lte_rrc_synchronousSystemTime, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_synchronousSystemTime }, - { 1, &hf_lte_rrc_asynchronousSystemTime, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_asynchronousSystemTime }, - { 0, NULL, 0, NULL } +static const per_sequence_t SL_DiscConfig_r12_sequence[] = { + { &hf_lte_rrc_discTxResources_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxResources_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscConfig_r12_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscConfig_r12_eag_2 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cdma_SystemTime(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_lte_rrc_T_cdma_SystemTime, T_cdma_SystemTime_choice, - NULL); +dissect_lte_rrc_SL_DiscConfig_r12(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_lte_rrc_SL_DiscConfig_r12, SL_DiscConfig_r12_sequence); return offset; } -static const per_sequence_t SystemTimeInfoCDMA2000_sequence[] = { - { &hf_lte_rrc_cdma_EUTRA_Synchronisation, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_cdma_SystemTime, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cdma_SystemTime }, +static const per_sequence_t AS_Config_v1250_sequence[] = { + { &hf_lte_rrc_sourceWlan_OffloadConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_OffloadConfig_r12 }, + { &hf_lte_rrc_sourceSL_CommConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommConfig_r12 }, + { &hf_lte_rrc_sourceSL_DiscConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscConfig_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemTimeInfoCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AS_Config_v1250(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_lte_rrc_SystemTimeInfoCDMA2000, SystemTimeInfoCDMA2000_sequence); + ett_lte_rrc_AS_Config_v1250, AS_Config_v1250_sequence); return offset; } -static const per_sequence_t BandClassInfoCDMA2000_sequence[] = { - { &hf_lte_rrc_bandClass , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, - { &hf_lte_rrc_threshX_High_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, - { &hf_lte_rrc_threshX_Low_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, - { NULL, 0, 0, NULL } +static const per_sequence_t WLAN_Id_List_r12_sequence_of[1] = { + { &hf_lte_rrc_WLAN_Id_List_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Identifiers_r12 }, }; static int -dissect_lte_rrc_BandClassInfoCDMA2000(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_lte_rrc_BandClassInfoCDMA2000, BandClassInfoCDMA2000_sequence); +dissect_lte_rrc_WLAN_Id_List_r12(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_lte_rrc_WLAN_Id_List_r12, WLAN_Id_List_r12_sequence_of, + 1, maxWLAN_Id_r12, FALSE); return offset; } -static const per_sequence_t BandClassListCDMA2000_sequence_of[1] = { - { &hf_lte_rrc_BandClassListCDMA2000_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandClassInfoCDMA2000 }, +static const per_sequence_t T_steerToWLAN_r13_sequence[] = { + { &hf_lte_rrc_mobilityConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Id_List_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandClassListCDMA2000(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_lte_rrc_BandClassListCDMA2000, BandClassListCDMA2000_sequence_of, - 1, maxCDMA_BandClass, FALSE); +dissect_lte_rrc_T_steerToWLAN_r13(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_lte_rrc_T_steerToWLAN_r13, T_steerToWLAN_r13_sequence); return offset; } -static const per_sequence_t PhysCellIdListCDMA2000_sequence_of[1] = { - { &hf_lte_rrc_PhysCellIdListCDMA2000_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdCDMA2000 }, +static const value_string lte_rrc_T_command_vals[] = { + { 0, "steerToWLAN-r13" }, + { 1, "steerToLTE-r13" }, + { 0, NULL } +}; + +static const per_choice_t T_command_choice[] = { + { 0, &hf_lte_rrc_steerToWLAN_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_steerToWLAN_r13 }, + { 1, &hf_lte_rrc_steerToLTE_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_PhysCellIdListCDMA2000(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_lte_rrc_PhysCellIdListCDMA2000, PhysCellIdListCDMA2000_sequence_of, - 1, 16, FALSE); +dissect_lte_rrc_T_command(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_lte_rrc_T_command, T_command_choice, + NULL); return offset; } -static const per_sequence_t NeighCellsPerBandclassCDMA2000_sequence[] = { - { &hf_lte_rrc_arfcn , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueCDMA2000 }, - { &hf_lte_rrc_physCellIdList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdListCDMA2000 }, +static const per_sequence_t RCLWI_Config_r13_sequence[] = { + { &hf_lte_rrc_command , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_command }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NeighCellsPerBandclassCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RCLWI_Config_r13(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_lte_rrc_NeighCellsPerBandclassCDMA2000, NeighCellsPerBandclassCDMA2000_sequence); + ett_lte_rrc_RCLWI_Config_r13, RCLWI_Config_r13_sequence); return offset; } -static const per_sequence_t NeighCellsPerBandclassListCDMA2000_sequence_of[1] = { - { &hf_lte_rrc_NeighCellsPerBandclassListCDMA2000_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsPerBandclassCDMA2000 }, +static const per_sequence_t T_setup_103_sequence[] = { + { &hf_lte_rrc_rclwi_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RCLWI_Config_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NeighCellsPerBandclassListCDMA2000(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_lte_rrc_NeighCellsPerBandclassListCDMA2000, NeighCellsPerBandclassListCDMA2000_sequence_of, - 1, 16, FALSE); +dissect_lte_rrc_T_setup_103(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_lte_rrc_T_setup_103, T_setup_103_sequence); return offset; } -static const per_sequence_t NeighCellCDMA2000_sequence[] = { - { &hf_lte_rrc_bandClass , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, - { &hf_lte_rrc_neighCellsPerFreqList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsPerBandclassListCDMA2000 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_RCLWI_Configuration_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t RCLWI_Configuration_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_118 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_103 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_NeighCellCDMA2000(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_lte_rrc_NeighCellCDMA2000, NeighCellCDMA2000_sequence); +dissect_lte_rrc_RCLWI_Configuration_r13(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_lte_rrc_RCLWI_Configuration_r13, RCLWI_Configuration_r13_choice, + NULL); return offset; } -static const per_sequence_t NeighCellListCDMA2000_sequence_of[1] = { - { &hf_lte_rrc_NeighCellListCDMA2000_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellCDMA2000 }, +static const per_sequence_t AS_Config_v1320_sequence[] = { + { &hf_lte_rrc_sourceSCellConfigList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_r13 }, + { &hf_lte_rrc_sourceRCLWI_Configuration_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RCLWI_Configuration_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NeighCellListCDMA2000(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_lte_rrc_NeighCellListCDMA2000, NeighCellListCDMA2000_sequence_of, - 1, 16, FALSE); +dissect_lte_rrc_AS_Config_v1320(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_lte_rrc_AS_Config_v1320, AS_Config_v1320_sequence); return offset; } -static const per_sequence_t CellReselectionParametersCDMA2000_sequence[] = { - { &hf_lte_rrc_bandClassList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandClassListCDMA2000 }, - { &hf_lte_rrc_neighCellList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellListCDMA2000 }, - { &hf_lte_rrc_t_ReselectionCDMA2000, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, - { &hf_lte_rrc_t_ReselectionCDMA2000_SF, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_CellReselectionParametersCDMA2000(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_lte_rrc_CellReselectionParametersCDMA2000, CellReselectionParametersCDMA2000_sequence); +dissect_lte_rrc_T_wlanConnectionStatusReport_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_WLANConnectionStatusReport_r13_PDU); return offset; } -static const per_sequence_t T_parametersHRPD_sequence[] = { - { &hf_lte_rrc_preRegistrationInfoHRPD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PreRegistrationInfoHRPD }, - { &hf_lte_rrc_cellReselectionParametersHRPD, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000 }, +static const per_sequence_t AS_Context_v1320_sequence[] = { + { &hf_lte_rrc_wlanConnectionStatusReport_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlanConnectionStatusReport_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_parametersHRPD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AS_Context_v1320(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_lte_rrc_T_parametersHRPD, T_parametersHRPD_sequence); + ett_lte_rrc_AS_Context_v1320, AS_Context_v1320_sequence); return offset; } @@ -46938,9 +50990,9 @@ dissect_lte_rrc_T_parametersHRPD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int -dissect_lte_rrc_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BIT_STRING_SIZE_50(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, - 15, 15, FALSE, NULL, NULL); + 50, 50, FALSE, NULL, NULL); return offset; } @@ -46948,217 +51000,241 @@ dissect_lte_rrc_BIT_STRING_SIZE_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int -dissect_lte_rrc_BIT_STRING_SIZE_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BIT_STRING_SIZE_100(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, - 7, 7, FALSE, NULL, NULL); + 100, 100, FALSE, NULL, NULL); return offset; } -static const per_sequence_t CSFB_RegistrationParam1XRTT_sequence[] = { - { &hf_lte_rrc_sid , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_15 }, - { &hf_lte_rrc_nid , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { &hf_lte_rrc_multipleSID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_multipleNID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_homeReg , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_foreignSIDReg, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_foreignNIDReg, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_parameterReg, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_powerUpReg , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_registrationPeriod, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_7 }, - { &hf_lte_rrc_registrationZone, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_12 }, - { &hf_lte_rrc_totalZone , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_3 }, - { &hf_lte_rrc_zoneTimer , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_3 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_SubframeBitmapSL_r14_vals[] = { + { 0, "bs10-r14" }, + { 1, "bs16-r14" }, + { 2, "bs20-r14" }, + { 3, "bs30-r14" }, + { 4, "bs40-r14" }, + { 5, "bs50-r14" }, + { 6, "bs60-r14" }, + { 7, "bs100-r14" }, + { 0, NULL } +}; + +static const per_choice_t SubframeBitmapSL_r14_choice[] = { + { 0, &hf_lte_rrc_bs10_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { 1, &hf_lte_rrc_bs16_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { 2, &hf_lte_rrc_bs20_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_20 }, + { 3, &hf_lte_rrc_bs30_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_30 }, + { 4, &hf_lte_rrc_bs40_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_40 }, + { 5, &hf_lte_rrc_bs50_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_50 }, + { 6, &hf_lte_rrc_bs60_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_60 }, + { 7, &hf_lte_rrc_bs100_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_100 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_CSFB_RegistrationParam1XRTT(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_lte_rrc_CSFB_RegistrationParam1XRTT, CSFB_RegistrationParam1XRTT_sequence); +dissect_lte_rrc_SubframeBitmapSL_r14(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_lte_rrc_SubframeBitmapSL_r14, SubframeBitmapSL_r14_choice, + NULL); return offset; } -static const per_sequence_t T_parameters1XRTT_sequence[] = { - { &hf_lte_rrc_csfb_RegistrationParam1XRTT, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFB_RegistrationParam1XRTT }, - { &hf_lte_rrc_longCodeState1XRTT, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_42 }, - { &hf_lte_rrc_cellReselectionParameters1XRTT, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sizeSubchannel_r14_vals[] = { + { 0, "n4" }, + { 1, "n5" }, + { 2, "n6" }, + { 3, "n8" }, + { 4, "n9" }, + { 5, "n10" }, + { 6, "n12" }, + { 7, "n15" }, + { 8, "n16" }, + { 9, "n18" }, + { 10, "n20" }, + { 11, "n25" }, + { 12, "n30" }, + { 13, "n48" }, + { 14, "n50" }, + { 15, "n72" }, + { 16, "n75" }, + { 17, "n96" }, + { 18, "n100" }, + { 19, "spare13" }, + { 20, "spare12" }, + { 21, "spare11" }, + { 22, "spare10" }, + { 23, "spare9" }, + { 24, "spare8" }, + { 25, "spare7" }, + { 26, "spare6" }, + { 27, "spare5" }, + { 28, "spare4" }, + { 29, "spare3" }, + { 30, "spare2" }, + { 31, "spare1" }, + { 0, NULL } }; +static value_string_ext lte_rrc_T_sizeSubchannel_r14_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_sizeSubchannel_r14_vals); + + static int -dissect_lte_rrc_T_parameters1XRTT(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_lte_rrc_T_parameters1XRTT, T_parameters1XRTT_sequence); +dissect_lte_rrc_T_sizeSubchannel_r14(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, + 32, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PhysCellIdListCDMA2000_v920_sequence_of[1] = { - { &hf_lte_rrc_PhysCellIdListCDMA2000_v920_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdCDMA2000 }, +static const value_string lte_rrc_T_numSubchannel_r14_vals[] = { + { 0, "n1" }, + { 1, "n3" }, + { 2, "n5" }, + { 3, "n8" }, + { 4, "n10" }, + { 5, "n15" }, + { 6, "n20" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhysCellIdListCDMA2000_v920(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_lte_rrc_PhysCellIdListCDMA2000_v920, PhysCellIdListCDMA2000_v920_sequence_of, - 0, 24, FALSE); +dissect_lte_rrc_T_numSubchannel_r14(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t NeighCellsPerBandclassCDMA2000_v920_sequence[] = { - { &hf_lte_rrc_physCellIdList_v920, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdListCDMA2000_v920 }, +static const per_sequence_t T_rxParametersNCell_r14_sequence[] = { + { &hf_lte_rrc_tdd_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, + { &hf_lte_rrc_syncConfigIndex_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NeighCellsPerBandclassCDMA2000_v920(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rxParametersNCell_r14(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_lte_rrc_NeighCellsPerBandclassCDMA2000_v920, NeighCellsPerBandclassCDMA2000_v920_sequence); + ett_lte_rrc_T_rxParametersNCell_r14, T_rxParametersNCell_r14_sequence); return offset; } -static const per_sequence_t NeighCellsPerBandclassListCDMA2000_v920_sequence_of[1] = { - { &hf_lte_rrc_NeighCellsPerBandclassListCDMA2000_v920_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsPerBandclassCDMA2000_v920 }, -}; static int -dissect_lte_rrc_NeighCellsPerBandclassListCDMA2000_v920(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_lte_rrc_NeighCellsPerBandclassListCDMA2000_v920, NeighCellsPerBandclassListCDMA2000_v920_sequence_of, - 1, 16, FALSE); +dissect_lte_rrc_INTEGER_0_45(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 45U, NULL, FALSE); return offset; } -static const per_sequence_t NeighCellCDMA2000_v920_sequence[] = { - { &hf_lte_rrc_neighCellsPerFreqList_v920, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsPerBandclassListCDMA2000_v920 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_NeighCellCDMA2000_v920(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_lte_rrc_NeighCellCDMA2000_v920, NeighCellCDMA2000_v920_sequence); +dissect_lte_rrc_INTEGER_0_maxCBR_Level_1_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxCBR_Level_1_r14, NULL, FALSE); return offset; } -static const per_sequence_t NeighCellListCDMA2000_v920_sequence_of[1] = { - { &hf_lte_rrc_NeighCellListCDMA2000_v920_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellCDMA2000_v920 }, -}; static int -dissect_lte_rrc_NeighCellListCDMA2000_v920(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_lte_rrc_NeighCellListCDMA2000_v920, NeighCellListCDMA2000_v920_sequence_of, - 1, 16, FALSE); +dissect_lte_rrc_INTEGER_0_maxSL_V2X_CBRConfig_1_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxSL_V2X_CBRConfig_1_r14, NULL, FALSE); return offset; } -static const per_sequence_t CellReselectionParametersCDMA2000_v920_sequence[] = { - { &hf_lte_rrc_neighCellList_v920, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellListCDMA2000_v920 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_CellReselectionParametersCDMA2000_v920(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_lte_rrc_CellReselectionParametersCDMA2000_v920, CellReselectionParametersCDMA2000_v920_sequence); +dissect_lte_rrc_Tx_ConfigIndex_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxSL_V2X_TxConfig_1_r14, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_powerDownReg_r9_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14_sequence_of[1] = { + { &hf_lte_rrc_tx_ConfigIndexList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Tx_ConfigIndex_r14 }, }; - static int -dissect_lte_rrc_T_powerDownReg_r9(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14, SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14_sequence_of, + 1, maxCBR_Level_r14, FALSE); return offset; } -static const per_sequence_t CSFB_RegistrationParam1XRTT_v920_sequence[] = { - { &hf_lte_rrc_powerDownReg_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_powerDownReg_r9 }, +static const per_sequence_t SL_PPPP_TxConfigIndex_r14_sequence[] = { + { &hf_lte_rrc_priorityThreshold_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_Priority_r13 }, + { &hf_lte_rrc_defaultTxConfigIndex_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxCBR_Level_1_r14 }, + { &hf_lte_rrc_cbr_ConfigIndex_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxSL_V2X_CBRConfig_1_r14 }, + { &hf_lte_rrc_tx_ConfigIndexList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CSFB_RegistrationParam1XRTT_v920(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_PPPP_TxConfigIndex_r14(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_lte_rrc_CSFB_RegistrationParam1XRTT_v920, CSFB_RegistrationParam1XRTT_v920_sequence); + ett_lte_rrc_SL_PPPP_TxConfigIndex_r14, SL_PPPP_TxConfigIndex_r14_sequence); return offset; } -static const per_sequence_t AC_BarringConfig1XRTT_r9_sequence[] = { - { &hf_lte_rrc_ac_Barring0to9_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, - { &hf_lte_rrc_ac_Barring10_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_ac_Barring11_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_ac_Barring12_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_ac_Barring13_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_ac_Barring14_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_ac_Barring15_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_ac_BarringMsg_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_ac_BarringReg_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_ac_BarringEmg_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_CBR_PPPP_TxConfigList_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_CBR_PPPP_TxConfigList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PPPP_TxConfigIndex_r14 }, }; static int -dissect_lte_rrc_AC_BarringConfig1XRTT_r9(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_lte_rrc_AC_BarringConfig1XRTT_r9, AC_BarringConfig1XRTT_r9_sequence); +dissect_lte_rrc_SL_CBR_PPPP_TxConfigList_r14(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_lte_rrc_SL_CBR_PPPP_TxConfigList_r14, SL_CBR_PPPP_TxConfigList_r14_sequence_of, + 1, 8, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType8_eag_1_sequence[] = { - { &hf_lte_rrc_csfb_SupportForDualRxUEs_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_cellReselectionParametersHRPD_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000_v920 }, - { &hf_lte_rrc_cellReselectionParameters1XRTT_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000_v920 }, - { &hf_lte_rrc_csfb_RegistrationParam1XRTT_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFB_RegistrationParam1XRTT_v920 }, - { &hf_lte_rrc_ac_BarringConfig1XRTT_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig1XRTT_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_partialSensing_r14_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType8_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType8_eag_1_sequence); +dissect_lte_rrc_T_partialSensing_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_csfb_DualRxTxSupport_r10_vals[] = { +static const value_string lte_rrc_T_randomSelection_r14_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csfb_DualRxTxSupport_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_randomSelection_r14(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, 1, NULL, FALSE, 0, NULL); @@ -47166,421 +51242,389 @@ dissect_lte_rrc_T_csfb_DualRxTxSupport_r10(tvbuff_t *tvb _U_, int offset _U_, as } -static const per_sequence_t SystemInformationBlockType8_eag_2_sequence[] = { - { &hf_lte_rrc_csfb_DualRxTxSupport_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csfb_DualRxTxSupport_r10 }, +static const per_sequence_t SL_P2X_ResourceSelectionConfig_r14_sequence[] = { + { &hf_lte_rrc_partialSensing_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_partialSensing_r14 }, + { &hf_lte_rrc_randomSelection_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_randomSelection_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType8_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType8_eag_2_sequence); +dissect_lte_rrc_SL_P2X_ResourceSelectionConfig_r14(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_lte_rrc_SL_P2X_ResourceSelectionConfig_r14, SL_P2X_ResourceSelectionConfig_r14_sequence); return offset; } -static const value_string lte_rrc_T_systemTimeInfo_r11_vals[] = { - { 0, "explicitValue" }, - { 1, "defaultValue" }, +static const value_string lte_rrc_T_gnss_Sync_r14_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t T_systemTimeInfo_r11_choice[] = { - { 0, &hf_lte_rrc_explicitValue_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemTimeInfoCDMA2000 }, - { 1, &hf_lte_rrc_defaultValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_systemTimeInfo_r11(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_lte_rrc_T_systemTimeInfo_r11, T_systemTimeInfo_r11_choice, - NULL); +dissect_lte_rrc_T_gnss_Sync_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_40_OF_PhysCellIdCDMA2000_sequence_of[1] = { - { &hf_lte_rrc_physCellIdList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdCDMA2000 }, +static const value_string lte_rrc_T_enb_Sync_r14_vals[] = { + { 0, "true" }, + { 0, NULL } }; -static int -dissect_lte_rrc_SEQUENCE_SIZE_1_40_OF_PhysCellIdCDMA2000(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_lte_rrc_SEQUENCE_SIZE_1_40_OF_PhysCellIdCDMA2000, SEQUENCE_SIZE_1_40_OF_PhysCellIdCDMA2000_sequence_of, - 1, 40, FALSE); - - return offset; -} - - -static const per_sequence_t NeighCellsPerBandclassCDMA2000_r11_sequence[] = { - { &hf_lte_rrc_arfcn , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueCDMA2000 }, - { &hf_lte_rrc_physCellIdList_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_40_OF_PhysCellIdCDMA2000 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_NeighCellsPerBandclassCDMA2000_r11(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_lte_rrc_NeighCellsPerBandclassCDMA2000_r11, NeighCellsPerBandclassCDMA2000_r11_sequence); +dissect_lte_rrc_T_enb_Sync_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_16_OF_NeighCellsPerBandclassCDMA2000_r11_sequence_of[1] = { - { &hf_lte_rrc_neighFreqInfoList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsPerBandclassCDMA2000_r11 }, +static const value_string lte_rrc_T_ue_Sync_r14_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellsPerBandclassCDMA2000_r11(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_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellsPerBandclassCDMA2000_r11, SEQUENCE_SIZE_1_16_OF_NeighCellsPerBandclassCDMA2000_r11_sequence_of, - 1, 16, FALSE); +dissect_lte_rrc_T_ue_Sync_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t NeighCellCDMA2000_r11_sequence[] = { - { &hf_lte_rrc_bandClass , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, - { &hf_lte_rrc_neighFreqInfoList_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellsPerBandclassCDMA2000_r11 }, +static const per_sequence_t SL_SyncAllowed_r14_sequence[] = { + { &hf_lte_rrc_gnss_Sync_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gnss_Sync_r14 }, + { &hf_lte_rrc_enb_Sync_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enb_Sync_r14 }, + { &hf_lte_rrc_ue_Sync_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_Sync_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NeighCellCDMA2000_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_SyncAllowed_r14(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_lte_rrc_NeighCellCDMA2000_r11, NeighCellCDMA2000_r11_sequence); + ett_lte_rrc_SL_SyncAllowed_r14, SL_SyncAllowed_r14_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_16_OF_NeighCellCDMA2000_r11_sequence_of[1] = { - { &hf_lte_rrc_neighCellList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellCDMA2000_r11 }, -}; - -static int -dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellCDMA2000_r11(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_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellCDMA2000_r11, SEQUENCE_SIZE_1_16_OF_NeighCellCDMA2000_r11_sequence_of, - 1, 16, FALSE); - +static const value_string lte_rrc_SL_RestrictResourceReservationPeriod_r14_vals[] = { + { 0, "v0dot2" }, + { 1, "v0dot5" }, + { 2, "v1" }, + { 3, "v2" }, + { 4, "v3" }, + { 5, "v4" }, + { 6, "v5" }, + { 7, "v6" }, + { 8, "v7" }, + { 9, "v8" }, + { 10, "v9" }, + { 11, "v10" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_SL_RestrictResourceReservationPeriod_r14(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, + 16, NULL, FALSE, 0, NULL); + return offset; } -static const per_sequence_t CellReselectionParametersCDMA2000_r11_sequence[] = { - { &hf_lte_rrc_bandClassList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandClassListCDMA2000 }, - { &hf_lte_rrc_neighCellList_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellCDMA2000_r11 }, - { &hf_lte_rrc_t_ReselectionCDMA2000, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, - { &hf_lte_rrc_t_ReselectionCDMA2000_SF, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_RestrictResourceReservationPeriodList_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_RestrictResourceReservationPeriodList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_RestrictResourceReservationPeriod_r14 }, }; static int -dissect_lte_rrc_CellReselectionParametersCDMA2000_r11(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_lte_rrc_CellReselectionParametersCDMA2000_r11, CellReselectionParametersCDMA2000_r11_sequence); +dissect_lte_rrc_SL_RestrictResourceReservationPeriodList_r14(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_lte_rrc_SL_RestrictResourceReservationPeriodList_r14, SL_RestrictResourceReservationPeriodList_r14_sequence_of, + 1, maxReservationPeriod_r14, FALSE); return offset; } -static const per_sequence_t T_parametersHRPD_r11_sequence[] = { - { &hf_lte_rrc_preRegistrationInfoHRPD_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PreRegistrationInfoHRPD }, - { &hf_lte_rrc_cellReselectionParametersHRPD_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000_r11 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_parametersHRPD_r11(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_lte_rrc_T_parametersHRPD_r11, T_parametersHRPD_r11_sequence); +dissect_lte_rrc_INTEGER_10_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 10U, 20U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_csfb_DualRxTxSupport_r11_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SL_MinT2Value_r15_sequence[] = { + { &hf_lte_rrc_priorityList_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PriorityList_r13 }, + { &hf_lte_rrc_minT2Value_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_10_20 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_csfb_DualRxTxSupport_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SL_MinT2Value_r15(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_lte_rrc_SL_MinT2Value_r15, SL_MinT2Value_r15_sequence); return offset; } -static const per_sequence_t T_parameters1XRTT_r11_sequence[] = { - { &hf_lte_rrc_csfb_RegistrationParam1XRTT_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFB_RegistrationParam1XRTT }, - { &hf_lte_rrc_csfb_RegistrationParam1XRTT_Ext_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFB_RegistrationParam1XRTT_v920 }, - { &hf_lte_rrc_longCodeState1XRTT_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_42 }, - { &hf_lte_rrc_cellReselectionParameters1XRTT_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000_r11 }, - { &hf_lte_rrc_ac_BarringConfig1XRTT_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig1XRTT_r9 }, - { &hf_lte_rrc_csfb_SupportForDualRxUEs_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_csfb_DualRxTxSupport_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csfb_DualRxTxSupport_r11 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_MinT2ValueList_r15_sequence_of[1] = { + { &hf_lte_rrc_SL_MinT2ValueList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_MinT2Value_r15 }, }; static int -dissect_lte_rrc_T_parameters1XRTT_r11(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_lte_rrc_T_parameters1XRTT_r11, T_parameters1XRTT_r11_sequence); +dissect_lte_rrc_SL_MinT2ValueList_r15(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_lte_rrc_SL_MinT2ValueList_r15, SL_MinT2ValueList_r15_sequence_of, + 1, maxSL_Prio_r13, FALSE); return offset; } -static const per_sequence_t ParametersCDMA2000_r11_sequence[] = { - { &hf_lte_rrc_systemTimeInfo_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_systemTimeInfo_r11 }, - { &hf_lte_rrc_searchWindowSize_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, - { &hf_lte_rrc_parametersHRPD_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_parametersHRPD_r11 }, - { &hf_lte_rrc_parameters1XRTT_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_parameters1XRTT_r11 }, +static const per_sequence_t MCS_PSSCH_Range_r15_sequence[] = { + { &hf_lte_rrc_minMCS_PSSCH_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_maxMCS_PSSCH_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ParametersCDMA2000_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MCS_PSSCH_Range_r15(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_lte_rrc_ParametersCDMA2000_r11, ParametersCDMA2000_r11_sequence); + ett_lte_rrc_MCS_PSSCH_Range_r15, MCS_PSSCH_Range_r15_sequence); return offset; } -static const value_string lte_rrc_T_parametersCDMA2000_r11_vals[] = { - { 0, "explicitValue" }, - { 1, "defaultValue" }, - { 0, NULL } -}; - -static const per_choice_t T_parametersCDMA2000_r11_choice[] = { - { 0, &hf_lte_rrc_explicitValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ParametersCDMA2000_r11 }, - { 1, &hf_lte_rrc_defaultValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_MCS_PSSCH_Range_r15_sequence_of[1] = { + { &hf_lte_rrc_mcs_PSSCH_RangeList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MCS_PSSCH_Range_r15 }, }; static int -dissect_lte_rrc_T_parametersCDMA2000_r11(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_lte_rrc_T_parametersCDMA2000_r11, T_parametersCDMA2000_r11_choice, - NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_MCS_PSSCH_Range_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_MCS_PSSCH_Range_r15, SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_MCS_PSSCH_Range_r15_sequence_of, + 1, maxCBR_Level_r14, FALSE); return offset; } -static const per_sequence_t SIB8_PerPLMN_r11_sequence[] = { - { &hf_lte_rrc_plmn_Identity_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, - { &hf_lte_rrc_parametersCDMA2000_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_parametersCDMA2000_r11 }, +static const per_sequence_t SL_PPPP_TxConfigIndex_v1530_sequence[] = { + { &hf_lte_rrc_mcs_PSSCH_RangeList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_MCS_PSSCH_Range_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SIB8_PerPLMN_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_PPPP_TxConfigIndex_v1530(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_lte_rrc_SIB8_PerPLMN_r11, SIB8_PerPLMN_r11_sequence); + ett_lte_rrc_SL_PPPP_TxConfigIndex_v1530, SL_PPPP_TxConfigIndex_v1530_sequence); return offset; } -static const per_sequence_t SIB8_PerPLMN_List_r11_sequence_of[1] = { - { &hf_lte_rrc_SIB8_PerPLMN_List_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB8_PerPLMN_r11 }, +static const per_sequence_t SL_CBR_PPPP_TxConfigList_v1530_sequence_of[1] = { + { &hf_lte_rrc_SL_CBR_PPPP_TxConfigList_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PPPP_TxConfigIndex_v1530 }, }; static int -dissect_lte_rrc_SIB8_PerPLMN_List_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_CBR_PPPP_TxConfigList_v1530(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_lte_rrc_SIB8_PerPLMN_List_r11, SIB8_PerPLMN_List_r11_sequence_of, - 1, maxPLMN_r11, FALSE); + ett_lte_rrc_SL_CBR_PPPP_TxConfigList_v1530, SL_CBR_PPPP_TxConfigList_v1530_sequence_of, + 1, 8, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType8_eag_3_sequence[] = { - { &hf_lte_rrc_sib8_PerPLMN_List_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SIB8_PerPLMN_List_r11 }, +static const per_sequence_t SL_CommResourcePoolV2X_r14_eag_1_sequence[] = { + { &hf_lte_rrc_sl_MinT2ValueList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_MinT2ValueList_r15 }, + { &hf_lte_rrc_cbr_pssch_TxConfigList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_PPPP_TxConfigList_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType8_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType8_eag_3_sequence); +dissect_lte_rrc_SL_CommResourcePoolV2X_r14_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_CommResourcePoolV2X_r14_eag_1_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType8_sequence[] = { - { &hf_lte_rrc_systemTimeInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SystemTimeInfoCDMA2000 }, - { &hf_lte_rrc_searchWindowSize, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, - { &hf_lte_rrc_parametersHRPD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_parametersHRPD }, - { &hf_lte_rrc_parameters1XRTT, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_parameters1XRTT }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType8_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType8_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType8_eag_3 }, +static const per_sequence_t SL_CommResourcePoolV2X_r14_sequence[] = { + { &hf_lte_rrc_sl_OffsetIndicator_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicator_r12 }, + { &hf_lte_rrc_sl_Subframe_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SubframeBitmapSL_r14 }, + { &hf_lte_rrc_adjacencyPSCCH_PSSCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_sizeSubchannel_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sizeSubchannel_r14 }, + { &hf_lte_rrc_numSubchannel_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numSubchannel_r14 }, + { &hf_lte_rrc_startRB_Subchannel_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_99 }, + { &hf_lte_rrc_startRB_PSCCH_Pool_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_99 }, + { &hf_lte_rrc_rxParametersNCell_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParametersNCell_r14 }, + { &hf_lte_rrc_dataTxParameters_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxParameters_r12 }, + { &hf_lte_rrc_zoneID_r14 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_threshS_RSSI_CBR_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_45 }, + { &hf_lte_rrc_poolReportId_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_TxPoolReportIdentity_r14 }, + { &hf_lte_rrc_cbr_pssch_TxConfigList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_PPPP_TxConfigList_r14 }, + { &hf_lte_rrc_resourceSelectionConfigP2X_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_P2X_ResourceSelectionConfig_r14 }, + { &hf_lte_rrc_syncAllowed_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncAllowed_r14 }, + { &hf_lte_rrc_restrictResourceReservationPeriod_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_RestrictResourceReservationPeriodList_r14 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePoolV2X_r14_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB8"); - +dissect_lte_rrc_SL_CommResourcePoolV2X_r14(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_lte_rrc_SystemInformationBlockType8, SystemInformationBlockType8_sequence); + ett_lte_rrc_SL_CommResourcePoolV2X_r14, SL_CommResourcePoolV2X_r14_sequence); return offset; } +static const per_sequence_t T_scheduled_r14_sequence[] = { + { &hf_lte_rrc_sl_V_RNTI_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_mac_MainConfig_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfigSL_r12 }, + { &hf_lte_rrc_v2x_SchedulingPool_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, + { &hf_lte_rrc_mcs_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_logicalChGroupInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogicalChGroupInfoList_r13 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_hnb_Name(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *hnb_name_tvb = NULL; - - offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, - 1, 48, FALSE, &hnb_name_tvb); - - actx->created_item = proto_tree_add_item(tree, hf_index, hnb_name_tvb, 0, -1, ENC_UTF_8|ENC_NA); - +dissect_lte_rrc_T_scheduled_r14(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_lte_rrc_T_scheduled_r14, T_scheduled_r14_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType9_sequence[] = { - { &hf_lte_rrc_hnb_Name , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_hnb_Name }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SystemInformationBlockType9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB9"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType9, SystemInformationBlockType9_sequence); +dissect_lte_rrc_SL_V2X_TxPoolIdentity_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxSL_V2X_TxPool_r14, NULL, FALSE); return offset; } +static const per_sequence_t SL_TxPoolToReleaseListV2X_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_TxPoolToReleaseListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_TxPoolIdentity_r14 }, +}; static int -dissect_lte_rrc_T_messageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *msg_id_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &msg_id_tvb, NULL); - - - - if (msg_id_tvb) { - actx->created_item = proto_tree_add_item(tree, hf_index, msg_id_tvb, 0, 2, ENC_BIG_ENDIAN); - } +dissect_lte_rrc_SL_TxPoolToReleaseListV2X_r14(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_lte_rrc_SL_TxPoolToReleaseListV2X_r14, SL_TxPoolToReleaseListV2X_r14_sequence_of, + 1, maxSL_V2X_TxPool_r14, FALSE); return offset; } +static const per_sequence_t SL_TxPoolToAddMod_r14_sequence[] = { + { &hf_lte_rrc_poolIdentity_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_TxPoolIdentity_r14 }, + { &hf_lte_rrc_pool_r14 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_serialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *serial_nb_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &serial_nb_tvb, NULL); - - - - if (serial_nb_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_serialNumber); - proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_gs, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); - proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_msg_code, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); - proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_upd_nb, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); - } +dissect_lte_rrc_SL_TxPoolToAddMod_r14(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_lte_rrc_SL_TxPoolToAddMod_r14, SL_TxPoolToAddMod_r14_sequence); return offset; } +static const per_sequence_t SL_TxPoolToAddModListV2X_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_TxPoolToAddModListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxPoolToAddMod_r14 }, +}; static int -dissect_lte_rrc_T_warningType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *warning_type_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, &warning_type_tvb); - - - - if (warning_type_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_warningType); - proto_tree_add_item(subtree, hf_lte_rrc_warningType_value, warning_type_tvb, 0, 2, ENC_BIG_ENDIAN); - proto_tree_add_item(subtree, hf_lte_rrc_warningType_emergency_user_alert, warning_type_tvb, 0, 2, ENC_BIG_ENDIAN); - proto_tree_add_item(subtree, hf_lte_rrc_warningType_popup, warning_type_tvb, 0, 2, ENC_BIG_ENDIAN); - } +dissect_lte_rrc_SL_TxPoolToAddModListV2X_r14(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_lte_rrc_SL_TxPoolToAddModListV2X_r14, SL_TxPoolToAddModListV2X_r14_sequence_of, + 1, maxSL_V2X_TxPool_r14, FALSE); return offset; } +static const value_string lte_rrc_SL_TypeTxSync_r14_vals[] = { + { 0, "gnss" }, + { 1, "enb" }, + { 2, "ue" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_OCTET_STRING_SIZE_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 50, 50, FALSE, NULL); +dissect_lte_rrc_SL_TypeTxSync_r14(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType10_sequence[] = { - { &hf_lte_rrc_messageIdentifier, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messageIdentifier }, - { &hf_lte_rrc_serialNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_serialNumber }, - { &hf_lte_rrc_warningType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningType }, - { &hf_lte_rrc_dummy_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_50 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_thresUE_Speed_r14_vals[] = { + { 0, "kmph60" }, + { 1, "kmph80" }, + { 2, "kmph100" }, + { 3, "kmph120" }, + { 4, "kmph140" }, + { 5, "kmph160" }, + { 6, "kmph180" }, + { 7, "kmph200" }, + { 0, NULL } }; -static int -dissect_lte_rrc_SystemInformationBlockType10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB10"); - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType10, SystemInformationBlockType10_sequence); +static int +dissect_lte_rrc_T_thresUE_Speed_r14(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, + 8, NULL, FALSE, 0, NULL); return offset; } - -static int -dissect_lte_rrc_T_messageIdentifier_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *msg_id_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &msg_id_tvb, NULL); - +static const value_string lte_rrc_T_allowedRetxNumberPSSCH_r14_vals[] = { + { 0, "n0" }, + { 1, "n1" }, + { 2, "both" }, + { 3, "spare1" }, + { 0, NULL } +}; - if (msg_id_tvb) { - private_data_set_message_identifier(actx, tvb_get_ntohs(msg_id_tvb, 0) << 16); - actx->created_item = proto_tree_add_item(tree, hf_index, msg_id_tvb, 0, 2, ENC_BIG_ENDIAN); - } +static int +dissect_lte_rrc_T_allowedRetxNumberPSSCH_r14(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; } @@ -47588,150 +51632,111 @@ dissect_lte_rrc_T_messageIdentifier_01(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int -dissect_lte_rrc_T_serialNumber_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *serial_nb_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &serial_nb_tvb, NULL); - - - - if (serial_nb_tvb) { - proto_tree *subtree; - private_data_set_message_identifier(actx, - private_data_get_message_identifier(actx) | tvb_get_ntohs(serial_nb_tvb, 0)); - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_serialNumber); - proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_gs, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); - proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_msg_code, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); - proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_upd_nb, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); - } +dissect_lte_rrc_INTEGER_M41_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -41, 31U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_warningMessageSegmentType_vals[] = { - { 0, "notLastSegment" }, - { 1, "lastSegment" }, +static const value_string lte_rrc_SL_TxPower_r14_vals[] = { + { 0, "minusinfinity-r14" }, + { 1, "txPower-r14" }, { 0, NULL } }; +static const per_choice_t SL_TxPower_r14_choice[] = { + { 0, &hf_lte_rrc_minusinfinity_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_txPower_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_M41_31 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_warningMessageSegmentType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 segment_type; - offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 2, &segment_type, FALSE, 0, NULL); - - private_data_set_warning_message_segment_type(actx, (guint8)segment_type); - +dissect_lte_rrc_SL_TxPower_r14(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_lte_rrc_SL_TxPower_r14, SL_TxPower_r14_choice, + NULL); return offset; } +static const per_sequence_t SL_PSSCH_TxParameters_r14_sequence[] = { + { &hf_lte_rrc_minMCS_PSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_maxMCS_PSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_minSubChannel_NumberPSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_20 }, + { &hf_lte_rrc_maxSubchannel_NumberPSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_20 }, + { &hf_lte_rrc_allowedRetxNumberPSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_allowedRetxNumberPSSCH_r14 }, + { &hf_lte_rrc_maxTxPower_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPower_r14 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_warningMessageSegmentNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 segment_number; - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 63U, &segment_number, FALSE); - - private_data_set_warning_message_segment_number(actx, (guint8)segment_number); - +dissect_lte_rrc_SL_PSSCH_TxParameters_r14(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_lte_rrc_SL_PSSCH_TxParameters_r14, SL_PSSCH_TxParameters_r14_sequence); return offset; } +static const per_sequence_t SL_PSSCH_TxParameters_v1530_sequence[] = { + { &hf_lte_rrc_minMCS_PSSCH_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_maxMCS_PSSCH_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_warningMessageSegment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *warning_msg_seg_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &warning_msg_seg_tvb); - - - - if (warning_msg_seg_tvb) { - proto_tree *subtree; - tvbuff_t *frag_tvb; - gpointer p_dcs; - fragment_head *frag_data = fragment_add_seq_check(<e_rrc_sib11_reassembly_table, warning_msg_seg_tvb, 0, actx->pinfo, - private_data_get_message_identifier(actx), NULL, - private_data_get_warning_message_segment_number(actx), - tvb_reported_length(warning_msg_seg_tvb), - private_data_get_warning_message_segment_type(actx) ? FALSE : TRUE); - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_warningMessageSegment); - frag_tvb = process_reassembled_data(warning_msg_seg_tvb, 0, actx->pinfo, "Reassembled SIB11 warning message", - frag_data, <e_rrc_sib11_frag_items, NULL, subtree); - p_dcs = wmem_map_lookup(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx))); - if (frag_tvb && p_dcs) { - dissect_lte_rrc_warningMessageSegment(frag_tvb, subtree, actx->pinfo, GPOINTER_TO_UINT(p_dcs)); - } - } +dissect_lte_rrc_SL_PSSCH_TxParameters_v1530(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_lte_rrc_SL_PSSCH_TxParameters_v1530, SL_PSSCH_TxParameters_v1530_sequence); return offset; } +static const per_sequence_t SL_PSSCH_TxConfig_r14_eag_1_sequence[] = { + { &hf_lte_rrc_parametersAboveThres_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_PSSCH_TxParameters_v1530 }, + { &hf_lte_rrc_parametersBelowThres_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_PSSCH_TxParameters_v1530 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_dataCodingScheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *data_coding_scheme_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, &data_coding_scheme_tvb); - - - - if (data_coding_scheme_tvb) { - proto_tree *subtree; - guint32 dataCodingScheme; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_dataCodingScheme); - dataCodingScheme = dissect_cbs_data_coding_scheme(data_coding_scheme_tvb, actx->pinfo, subtree, 0); - wmem_map_insert(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx)), - GUINT_TO_POINTER(dataCodingScheme)); - } +dissect_lte_rrc_SL_PSSCH_TxConfig_r14_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_PSSCH_TxConfig_r14_eag_1_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType11_sequence[] = { - { &hf_lte_rrc_messageIdentifier_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messageIdentifier_01 }, - { &hf_lte_rrc_serialNumber_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_serialNumber_01 }, - { &hf_lte_rrc_warningMessageSegmentType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegmentType }, - { &hf_lte_rrc_warningMessageSegmentNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegmentNumber }, - { &hf_lte_rrc_warningMessageSegment, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegment }, - { &hf_lte_rrc_dataCodingScheme, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dataCodingScheme }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, +static const per_sequence_t SL_PSSCH_TxConfig_r14_sequence[] = { + { &hf_lte_rrc_typeTxSync_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_TypeTxSync_r14 }, + { &hf_lte_rrc_thresUE_Speed_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_thresUE_Speed_r14 }, + { &hf_lte_rrc_parametersAboveThres_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxParameters_r14 }, + { &hf_lte_rrc_parametersBelowThres_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxParameters_r14 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxConfig_r14_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB11"); - +dissect_lte_rrc_SL_PSSCH_TxConfig_r14(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_lte_rrc_SystemInformationBlockType11, SystemInformationBlockType11_sequence); + ett_lte_rrc_SL_PSSCH_TxConfig_r14, SL_PSSCH_TxConfig_r14_sequence); return offset; } +static const per_sequence_t SL_PSSCH_TxConfigList_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_PSSCH_TxConfigList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxConfig_r14 }, +}; static int -dissect_lte_rrc_T_messageIdentifier_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *msg_id_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 16, 16, FALSE, &msg_id_tvb, NULL); - - - - if (msg_id_tvb) { - private_data_set_message_identifier(actx, tvb_get_ntohs(msg_id_tvb, 0) << 16); - actx->created_item = proto_tree_add_item(tree, hf_index, msg_id_tvb, 0, 2, ENC_BIG_ENDIAN); - } +dissect_lte_rrc_SL_PSSCH_TxConfigList_r14(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_lte_rrc_SL_PSSCH_TxConfigList_r14, SL_PSSCH_TxConfigList_r14_sequence_of, + 1, maxPSSCH_TxConfig_r14, FALSE); return offset; } @@ -47739,42 +51744,45 @@ dissect_lte_rrc_T_messageIdentifier_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int -dissect_lte_rrc_T_serialNumber_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *serial_nb_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 16, 16, FALSE, &serial_nb_tvb, NULL); +dissect_lte_rrc_SL_ThresPSSCH_RSRP_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 66U, NULL, FALSE); + return offset; +} - if (serial_nb_tvb) { - proto_tree *subtree; - private_data_set_message_identifier(actx, - private_data_get_message_identifier(actx) | tvb_get_ntohs(serial_nb_tvb, 0)); - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_serialNumber); - proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_gs, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); - proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_msg_code, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); - proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_upd_nb, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); - } +static const per_sequence_t SL_ThresPSSCH_RSRP_List_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_ThresPSSCH_RSRP_List_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_ThresPSSCH_RSRP_r14 }, +}; + +static int +dissect_lte_rrc_SL_ThresPSSCH_RSRP_List_r14(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_lte_rrc_SL_ThresPSSCH_RSRP_List_r14, SL_ThresPSSCH_RSRP_List_r14_sequence_of, + 64, 64, FALSE); return offset; } -static const value_string lte_rrc_T_warningMessageSegmentType_r9_vals[] = { - { 0, "notLastSegment" }, - { 1, "lastSegment" }, +static const value_string lte_rrc_T_probResourceKeep_r14_vals[] = { + { 0, "v0" }, + { 1, "v0dot2" }, + { 2, "v0dot4" }, + { 3, "v0dot6" }, + { 4, "v0dot8" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_warningMessageSegmentType_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 segment_type; +dissect_lte_rrc_T_probResourceKeep_r14(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, &segment_type, FALSE, 0, NULL); - - private_data_set_warning_message_segment_type(actx, (guint8)segment_type); - + 8, NULL, FALSE, 0, NULL); return offset; } @@ -47782,257 +51790,269 @@ dissect_lte_rrc_T_warningMessageSegmentType_r9(tvbuff_t *tvb _U_, int offset _U_ static int -dissect_lte_rrc_T_warningMessageSegmentNumber_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 segment_number; +dissect_lte_rrc_INTEGER_1_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 63U, &segment_number, FALSE); - - private_data_set_warning_message_segment_number(actx, (guint8)segment_number); - + 1U, 13U, NULL, FALSE); return offset; } +static const per_sequence_t T_p2x_SensingConfig_r14_sequence[] = { + { &hf_lte_rrc_minNumCandidateSF_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_13 }, + { &hf_lte_rrc_gapCandidateSensing_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_warningMessageSegment_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *warning_msg_seg_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &warning_msg_seg_tvb); +dissect_lte_rrc_T_p2x_SensingConfig_r14(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_lte_rrc_T_p2x_SensingConfig_r14, T_p2x_SensingConfig_r14_sequence); + return offset; +} - if (warning_msg_seg_tvb) { - proto_tree *subtree; - tvbuff_t *frag_tvb; - gpointer p_dcs; - fragment_head *frag_data = fragment_add_seq_check(<e_rrc_sib12_reassembly_table, warning_msg_seg_tvb, 0, actx->pinfo, - private_data_get_message_identifier(actx), NULL, - private_data_get_warning_message_segment_number(actx), - tvb_reported_length(warning_msg_seg_tvb), - private_data_get_warning_message_segment_type(actx) ? FALSE : TRUE); - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_warningMessageSegment); - frag_tvb = process_reassembled_data(warning_msg_seg_tvb, 0, actx->pinfo, "Reassembled SIB12 warning message", - frag_data, <e_rrc_sib12_frag_items, NULL, subtree); - p_dcs = wmem_map_lookup(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx))); - if (frag_tvb && p_dcs) { - dissect_lte_rrc_warningMessageSegment(frag_tvb, subtree, actx->pinfo, GPOINTER_TO_UINT(p_dcs)); - } - } +static const value_string lte_rrc_T_sl_ReselectAfter_r14_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n7" }, + { 7, "n8" }, + { 8, "n9" }, + { 9, "spare7" }, + { 10, "spare6" }, + { 11, "spare5" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_sl_ReselectAfter_r14(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, + 16, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t SL_CommTxPoolSensingConfig_r14_sequence[] = { + { &hf_lte_rrc_pssch_TxConfigList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxConfigList_r14 }, + { &hf_lte_rrc_thresPSSCH_RSRP_List_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_ThresPSSCH_RSRP_List_r14 }, + { &hf_lte_rrc_restrictResourceReservationPeriod_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_RestrictResourceReservationPeriodList_r14 }, + { &hf_lte_rrc_probResourceKeep_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_probResourceKeep_r14 }, + { &hf_lte_rrc_p2x_SensingConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_p2x_SensingConfig_r14 }, + { &hf_lte_rrc_sl_ReselectAfter_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sl_ReselectAfter_r14 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_dataCodingScheme_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *data_coding_scheme_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, &data_coding_scheme_tvb); - - - - if (data_coding_scheme_tvb) { - proto_tree *subtree; - guint32 dataCodingScheme; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_dataCodingScheme); - dataCodingScheme = dissect_cbs_data_coding_scheme(data_coding_scheme_tvb, actx->pinfo, subtree, 0); - wmem_map_insert(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx)), - GUINT_TO_POINTER(dataCodingScheme)); - } +dissect_lte_rrc_SL_CommTxPoolSensingConfig_r14(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_lte_rrc_SL_CommTxPoolSensingConfig_r14, SL_CommTxPoolSensingConfig_r14_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType12_r9_sequence[] = { - { &hf_lte_rrc_messageIdentifier_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messageIdentifier_r9 }, - { &hf_lte_rrc_serialNumber_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_serialNumber_r9 }, - { &hf_lte_rrc_warningMessageSegmentType_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegmentType_r9 }, - { &hf_lte_rrc_warningMessageSegmentNumber_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegmentNumber_r9 }, - { &hf_lte_rrc_warningMessageSegment_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegment_r9 }, - { &hf_lte_rrc_dataCodingScheme_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dataCodingScheme_r9 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, +static const per_sequence_t T_v2x_CommTxPoolNormalDedicated_r14_sequence[] = { + { &hf_lte_rrc_poolToReleaseList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToReleaseListV2X_r14 }, + { &hf_lte_rrc_poolToAddModList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TxPoolToAddModListV2X_r14 }, + { &hf_lte_rrc_v2x_CommTxPoolSensingConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolSensingConfig_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType12_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB12"); - +dissect_lte_rrc_T_v2x_CommTxPoolNormalDedicated_r14(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_lte_rrc_SystemInformationBlockType12_r9, SystemInformationBlockType12_r9_sequence); + ett_lte_rrc_T_v2x_CommTxPoolNormalDedicated_r14, T_v2x_CommTxPoolNormalDedicated_r14_sequence); return offset; } +static const per_sequence_t T_ue_Selected_r14_sequence[] = { + { &hf_lte_rrc_v2x_CommTxPoolNormalDedicated_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_v2x_CommTxPoolNormalDedicated_r14 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_MBSFN_AreaId_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 255U, NULL, FALSE); +dissect_lte_rrc_T_ue_Selected_r14(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_lte_rrc_T_ue_Selected_r14, T_ue_Selected_r14_sequence); return offset; } -static const value_string lte_rrc_T_non_MBSFNregionLength_vals[] = { - { 0, "s1" }, - { 1, "s2" }, +static const value_string lte_rrc_T_setup_167_vals[] = { + { 0, "scheduled-r14" }, + { 1, "ue-Selected-r14" }, { 0, NULL } }; +static const per_choice_t T_setup_167_choice[] = { + { 0, &hf_lte_rrc_scheduled_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scheduled_r14 }, + { 1, &hf_lte_rrc_ue_Selected_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_r14 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_non_MBSFNregionLength(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, FALSE, 0, NULL); +dissect_lte_rrc_T_setup_167(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_lte_rrc_T_setup_167, T_setup_167_choice, + NULL); return offset; } -static const value_string lte_rrc_T_mcch_RepetitionPeriod_r9_vals[] = { - { 0, "rf32" }, - { 1, "rf64" }, - { 2, "rf128" }, - { 3, "rf256" }, +static const value_string lte_rrc_T_commTxResources_r14_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t T_commTxResources_r14_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_192 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_167 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_mcch_RepetitionPeriod_r9(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); +dissect_lte_rrc_T_commTxResources_r14(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_lte_rrc_T_commTxResources_r14, T_commTxResources_r14_choice, + NULL); return offset; } -static const value_string lte_rrc_T_mcch_ModificationPeriod_r9_vals[] = { - { 0, "rf512" }, - { 1, "rf1024" }, +static const value_string lte_rrc_T_sl_Bandwidth_r14_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mcch_ModificationPeriod_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sl_Bandwidth_r14(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, FALSE, 0, NULL); + 6, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_signallingMCS_r9_vals[] = { - { 0, "n2" }, - { 1, "n7" }, - { 2, "n13" }, - { 3, "n19" }, - { 0, NULL } -}; + +static int +dissect_lte_rrc_SL_OffsetIndicatorSync_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 39U, NULL, FALSE); + + return offset; +} + static int -dissect_lte_rrc_T_signallingMCS_r9(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); +dissect_lte_rrc_SLSSID_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 167U, NULL, FALSE); return offset; } -static const per_sequence_t T_mcch_Config_r9_sequence[] = { - { &hf_lte_rrc_mcch_RepetitionPeriod_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mcch_RepetitionPeriod_r9 }, - { &hf_lte_rrc_mcch_Offset_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10 }, - { &hf_lte_rrc_mcch_ModificationPeriod_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mcch_ModificationPeriod_r9 }, - { &hf_lte_rrc_sf_AllocInfo_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_6 }, - { &hf_lte_rrc_signallingMCS_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_signallingMCS_r9 }, +static const per_sequence_t T_asyncParameters_r13_sequence[] = { + { &hf_lte_rrc_syncCP_Len_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CP_Len_r12 }, + { &hf_lte_rrc_syncOffsetIndicator_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_OffsetIndicatorSync_r12 }, + { &hf_lte_rrc_slssid_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SLSSID_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_mcch_Config_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_asyncParameters_r13(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_lte_rrc_T_mcch_Config_r9, T_mcch_Config_r9_sequence); + ett_lte_rrc_T_asyncParameters_r13, T_asyncParameters_r13_sequence); return offset; } -static const value_string lte_rrc_T_mcch_RepetitionPeriod_v1430_vals[] = { - { 0, "rf1" }, - { 1, "rf2" }, - { 2, "rf4" }, - { 3, "rf8" }, - { 4, "rf16" }, - { 0, NULL } -}; + +static int +dissect_lte_rrc_RSRP_RangeSL_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 13U, NULL, FALSE); + + return offset; +} + static int -dissect_lte_rrc_T_mcch_RepetitionPeriod_v1430(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, - 5, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BIT_STRING_SIZE_19(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, + 19, 19, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_mcch_ModificationPeriod_v1430_vals[] = { - { 0, "rf1" }, - { 1, "rf2" }, - { 2, "rf4" }, - { 3, "rf8" }, - { 4, "rf16" }, - { 5, "rf32" }, - { 6, "rf64" }, - { 7, "rf128" }, - { 8, "rf256" }, - { 9, "spare7" }, +static const value_string lte_rrc_T_syncTxPeriodic_r13_01_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mcch_ModificationPeriod_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_syncTxPeriodic_r13_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, - 10, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_mcch_Config_r14_sequence[] = { - { &hf_lte_rrc_mcch_RepetitionPeriod_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mcch_RepetitionPeriod_v1430 }, - { &hf_lte_rrc_mcch_ModificationPeriod_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mcch_ModificationPeriod_v1430 }, +static const per_sequence_t T_txParameters_r13_sequence[] = { + { &hf_lte_rrc_syncTxParameters_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxParameters_r12 }, + { &hf_lte_rrc_syncTxThreshIC_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_RangeSL_r12 }, + { &hf_lte_rrc_syncInfoReserved_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_19 }, + { &hf_lte_rrc_syncTxPeriodic_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_syncTxPeriodic_r13_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_mcch_Config_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_txParameters_r13(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_lte_rrc_T_mcch_Config_r14, T_mcch_Config_r14_sequence); + ett_lte_rrc_T_txParameters_r13, T_txParameters_r13_sequence); return offset; } -static const value_string lte_rrc_T_subcarrierSpacingMBMS_r14_vals[] = { - { 0, "khz-7dot5" }, - { 1, "khz-1dot25" }, +static const value_string lte_rrc_T_discSyncWindow_r13_vals[] = { + { 0, "w1" }, + { 1, "w2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_subcarrierSpacingMBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_discSyncWindow_r13(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, FALSE, 0, NULL); @@ -48040,436 +52060,470 @@ dissect_lte_rrc_T_subcarrierSpacingMBMS_r14(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t MBSFN_AreaInfo_r9_eag_1_sequence[] = { - { &hf_lte_rrc_mcch_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mcch_Config_r14 }, - { &hf_lte_rrc_subcarrierSpacingMBMS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_subcarrierSpacingMBMS_r14 }, +static const per_sequence_t T_rxParameters_r13_sequence[] = { + { &hf_lte_rrc_discSyncWindow_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_discSyncWindow_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBSFN_AreaInfo_r9_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MBSFN_AreaInfo_r9_eag_1_sequence); +dissect_lte_rrc_T_rxParameters_r13(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_lte_rrc_T_rxParameters_r13, T_rxParameters_r13_sequence); return offset; } -static const per_sequence_t MBSFN_AreaInfo_r9_sequence[] = { - { &hf_lte_rrc_mbsfn_AreaId_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_AreaId_r12 }, - { &hf_lte_rrc_non_MBSFNregionLength, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_non_MBSFNregionLength }, - { &hf_lte_rrc_notificationIndicator_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_mcch_Config_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mcch_Config_r9 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_AreaInfo_r9_eag_1 }, + +static int +dissect_lte_rrc_SL_OffsetIndicatorSync_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 40U, 159U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_gnss_Sync_r14_02_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_gnss_Sync_r14_02(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SL_SyncConfigNFreq_r13_eag_1_sequence[] = { + { &hf_lte_rrc_syncOffsetIndicator_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_v1430 }, + { &hf_lte_rrc_gnss_Sync_r14_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gnss_Sync_r14_02 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBSFN_AreaInfo_r9(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_lte_rrc_MBSFN_AreaInfo_r9, MBSFN_AreaInfo_r9_sequence); +dissect_lte_rrc_SL_SyncConfigNFreq_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfigNFreq_r13_eag_1_sequence); return offset; } -static const per_sequence_t MBSFN_AreaInfoList_r9_sequence_of[1] = { - { &hf_lte_rrc_MBSFN_AreaInfoList_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_AreaInfo_r9 }, + +static int +dissect_lte_rrc_SL_OffsetIndicatorSync_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 159U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SL_SyncConfigNFreq_r13_eag_2_sequence[] = { + { &hf_lte_rrc_syncOffsetIndicator2_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_r14 }, + { &hf_lte_rrc_syncOffsetIndicator3_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_r14 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBSFN_AreaInfoList_r9(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_lte_rrc_MBSFN_AreaInfoList_r9, MBSFN_AreaInfoList_r9_sequence_of, - 1, maxMBSFN_Area, FALSE); +dissect_lte_rrc_SL_SyncConfigNFreq_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfigNFreq_r13_eag_2_sequence); return offset; } -static const value_string lte_rrc_T_notificationRepetitionCoeff_r9_vals[] = { - { 0, "n2" }, - { 1, "n4" }, +static const value_string lte_rrc_T_slss_TxDisabled_r15_01_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_notificationRepetitionCoeff_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_slss_TxDisabled_r15_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, - 2, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t SL_SyncConfigNFreq_r13_eag_3_sequence[] = { + { &hf_lte_rrc_slss_TxDisabled_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_slss_TxDisabled_r15_01 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_1_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 6U, NULL, FALSE); +dissect_lte_rrc_SL_SyncConfigNFreq_r13_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfigNFreq_r13_eag_3_sequence); return offset; } -static const per_sequence_t MBMS_NotificationConfig_r9_sequence[] = { - { &hf_lte_rrc_notificationRepetitionCoeff_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_notificationRepetitionCoeff_r9 }, - { &hf_lte_rrc_notificationOffset_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10 }, - { &hf_lte_rrc_notificationSF_Index_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_6 }, +static const per_sequence_t SL_SyncConfigNFreq_r13_sequence[] = { + { &hf_lte_rrc_asyncParameters_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_asyncParameters_r13 }, + { &hf_lte_rrc_txParameters_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_txParameters_r13 }, + { &hf_lte_rrc_rxParameters_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParameters_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfigNFreq_r13_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfigNFreq_r13_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfigNFreq_r13_eag_3 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMS_NotificationConfig_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_SyncConfigNFreq_r13(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_lte_rrc_MBMS_NotificationConfig_r9, MBMS_NotificationConfig_r9_sequence); + ett_lte_rrc_SL_SyncConfigNFreq_r13, SL_SyncConfigNFreq_r13_sequence); return offset; } +static const per_sequence_t SL_SyncConfigListNFreqV2X_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_SyncConfigListNFreqV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfigNFreq_r13 }, +}; static int -dissect_lte_rrc_INTEGER_7_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 7U, 10U, NULL, FALSE); +dissect_lte_rrc_SL_SyncConfigListNFreqV2X_r14(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_lte_rrc_SL_SyncConfigListNFreqV2X_r14, SL_SyncConfigListNFreqV2X_r14_sequence_of, + 1, maxSL_V2X_SyncConfig_r14, FALSE); return offset; } -static const per_sequence_t MBMS_NotificationConfig_v1430_sequence[] = { - { &hf_lte_rrc_notificationSF_Index_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_7_10 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_CommRxPoolListV2X_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_CommRxPoolListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, }; static int -dissect_lte_rrc_MBMS_NotificationConfig_v1430(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_lte_rrc_MBMS_NotificationConfig_v1430, MBMS_NotificationConfig_v1430_sequence); +dissect_lte_rrc_SL_CommRxPoolListV2X_r14(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_lte_rrc_SL_CommRxPoolListV2X_r14, SL_CommRxPoolListV2X_r14_sequence_of, + 1, maxSL_V2X_RxPool_r14, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType13_r9_eag_1_sequence[] = { - { &hf_lte_rrc_notificationConfig_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_NotificationConfig_v1430 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_CommTxPoolListV2X_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_CommTxPoolListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, }; static int -dissect_lte_rrc_SystemInformationBlockType13_r9_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType13_r9_eag_1_sequence); +dissect_lte_rrc_SL_CommTxPoolListV2X_r14(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_lte_rrc_SL_CommTxPoolListV2X_r14, SL_CommTxPoolListV2X_r14_sequence_of, + 1, maxSL_V2X_TxPool_r14, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType13_r9_sequence[] = { - { &hf_lte_rrc_mbsfn_AreaInfoList_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_AreaInfoList_r9 }, - { &hf_lte_rrc_notificationConfig_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_NotificationConfig_r9 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType13_r9_eag_1 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_zoneLength_r14_vals[] = { + { 0, "m5" }, + { 1, "m10" }, + { 2, "m20" }, + { 3, "m50" }, + { 4, "m100" }, + { 5, "m200" }, + { 6, "m500" }, + { 7, "spare1" }, + { 0, NULL } }; -static int -dissect_lte_rrc_SystemInformationBlockType13_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB13"); - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType13_r9, SystemInformationBlockType13_r9_sequence); +static int +dissect_lte_rrc_T_zoneLength_r14(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, + 8, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_zoneWidth_r14_vals[] = { + { 0, "m5" }, + { 1, "m10" }, + { 2, "m20" }, + { 3, "m50" }, + { 4, "m100" }, + { 5, "m200" }, + { 6, "m500" }, + { 7, "spare1" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_eab_Category_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_zoneWidth_r14(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, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t EAB_Config_r11_sequence[] = { - { &hf_lte_rrc_eab_Category_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eab_Category_r11 }, - { &hf_lte_rrc_eab_BarringBitmap_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, +static const per_sequence_t SL_ZoneConfig_r14_sequence[] = { + { &hf_lte_rrc_zoneLength_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_zoneLength_r14 }, + { &hf_lte_rrc_zoneWidth_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_zoneWidth_r14 }, + { &hf_lte_rrc_zoneIdLongiMod_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, + { &hf_lte_rrc_zoneIdLatiMod_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_EAB_Config_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_ZoneConfig_r14(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_lte_rrc_EAB_Config_r11, EAB_Config_r11_sequence); + ett_lte_rrc_SL_ZoneConfig_r14, SL_ZoneConfig_r14_sequence); return offset; } -static const per_sequence_t EAB_ConfigPLMN_r11_sequence[] = { - { &hf_lte_rrc_eab_Config_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_EAB_Config_r11 }, + +static int +dissect_lte_rrc_INTEGER_0_1000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SL_V2X_InterFreqUE_Config_r14_sequence[] = { + { &hf_lte_rrc_physCellIdList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysCellIdList_r13 }, + { &hf_lte_rrc_typeTxSync_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_TypeTxSync_r14 }, + { &hf_lte_rrc_v2x_SyncConfig_r14_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigListNFreqV2X_r14 }, + { &hf_lte_rrc_v2x_CommRxPool_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommRxPoolListV2X_r14 }, + { &hf_lte_rrc_v2x_CommTxPoolNormal_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolListV2X_r14 }, + { &hf_lte_rrc_p2x_CommTxPoolNormal_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolListV2X_r14 }, + { &hf_lte_rrc_v2x_CommTxPoolExceptional_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, + { &hf_lte_rrc_v2x_ResourceSelectionConfig_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolSensingConfig_r14 }, + { &hf_lte_rrc_zoneConfig_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_ZoneConfig_r14 }, + { &hf_lte_rrc_offsetDFN_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1000 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_EAB_ConfigPLMN_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_V2X_InterFreqUE_Config_r14(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_lte_rrc_EAB_ConfigPLMN_r11, EAB_ConfigPLMN_r11_sequence); + ett_lte_rrc_SL_V2X_InterFreqUE_Config_r14, SL_V2X_InterFreqUE_Config_r14_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11_sequence_of[1] = { - { &hf_lte_rrc_eab_PerPLMN_List_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_EAB_ConfigPLMN_r11 }, +static const per_sequence_t SL_V2X_UE_ConfigList_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_V2X_UE_ConfigList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_InterFreqUE_Config_r14 }, }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_V2X_UE_ConfigList_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11, SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11_sequence_of, - 1, maxPLMN_r11, FALSE); + ett_lte_rrc_SL_V2X_UE_ConfigList_r14, SL_V2X_UE_ConfigList_r14_sequence_of, + 1, maxCellIntra, FALSE); return offset; } -static const value_string lte_rrc_T_eab_Param_r11_vals[] = { - { 0, "eab-Common-r11" }, - { 1, "eab-PerPLMN-List-r11" }, +static const value_string lte_rrc_T_additionalSpectrumEmissionV2X_r14_vals[] = { + { 0, "additionalSpectrumEmission-r14" }, + { 1, "additionalSpectrumEmission-v1440" }, { 0, NULL } }; -static const per_choice_t T_eab_Param_r11_choice[] = { - { 0, &hf_lte_rrc_eab_Common_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_EAB_Config_r11 }, - { 1, &hf_lte_rrc_eab_PerPLMN_List_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11 }, +static const per_choice_t T_additionalSpectrumEmissionV2X_r14_choice[] = { + { 0, &hf_lte_rrc_additionalSpectrumEmission_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_AdditionalSpectrumEmission }, + { 1, &hf_lte_rrc_additionalSpectrumEmission_v1440, ASN1_NO_EXTENSIONS , dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_eab_Param_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_additionalSpectrumEmissionV2X_r14(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_lte_rrc_T_eab_Param_r11, T_eab_Param_r11_choice, + ett_lte_rrc_T_additionalSpectrumEmissionV2X_r14, T_additionalSpectrumEmissionV2X_r14_choice, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType14_r11_sequence[] = { - { &hf_lte_rrc_eab_Param_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_eab_Param_r11 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, +static const per_sequence_t SL_InterFreqInfoV2X_r14_eag_1_sequence[] = { + { &hf_lte_rrc_additionalSpectrumEmissionV2X_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_additionalSpectrumEmissionV2X_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType14_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB14"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType14_r11, SystemInformationBlockType14_r11_sequence); +dissect_lte_rrc_SL_InterFreqInfoV2X_r14_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_InterFreqInfoV2X_r14_eag_1_sequence); return offset; } +static const per_sequence_t SL_V2X_FreqSelectionConfig_r15_sequence[] = { + { &hf_lte_rrc_priorityList_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PriorityList_r13 }, + { &hf_lte_rrc_threshCBR_FreqReselection_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_r14 }, + { &hf_lte_rrc_threshCBR_FreqKeeping_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_r14 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_MBMS_SAI_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 65535U, NULL, FALSE); +dissect_lte_rrc_SL_V2X_FreqSelectionConfig_r15(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_lte_rrc_SL_V2X_FreqSelectionConfig_r15, SL_V2X_FreqSelectionConfig_r15_sequence); return offset; } -static const per_sequence_t MBMS_SAI_List_r11_sequence_of[1] = { - { &hf_lte_rrc_MBMS_SAI_List_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SAI_r11 }, +static const per_sequence_t SL_V2X_FreqSelectionConfigList_r15_sequence_of[1] = { + { &hf_lte_rrc_SL_V2X_FreqSelectionConfigList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_FreqSelectionConfig_r15 }, }; static int -dissect_lte_rrc_MBMS_SAI_List_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_V2X_FreqSelectionConfigList_r15(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_lte_rrc_MBMS_SAI_List_r11, MBMS_SAI_List_r11_sequence_of, - 1, maxSAI_MBMS_r11, FALSE); + ett_lte_rrc_SL_V2X_FreqSelectionConfigList_r15, SL_V2X_FreqSelectionConfigList_r15_sequence_of, + 1, 8, FALSE); return offset; } -static const per_sequence_t MBMS_SAI_InterFreq_r11_sequence[] = { - { &hf_lte_rrc_dl_CarrierFreq_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_mbms_SAI_List_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SAI_List_r11 }, +static const per_sequence_t SL_InterFreqInfoV2X_r14_eag_2_sequence[] = { + { &hf_lte_rrc_v2x_FreqSelectionConfigList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_FreqSelectionConfigList_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMS_SAI_InterFreq_r11(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_lte_rrc_MBMS_SAI_InterFreq_r11, MBMS_SAI_InterFreq_r11_sequence); +dissect_lte_rrc_SL_InterFreqInfoV2X_r14_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_InterFreqInfoV2X_r14_eag_2_sequence); return offset; } -static const per_sequence_t MBMS_SAI_InterFreqList_r11_sequence_of[1] = { - { &hf_lte_rrc_MBMS_SAI_InterFreqList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SAI_InterFreq_r11 }, -}; - -static int -dissect_lte_rrc_MBMS_SAI_InterFreqList_r11(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_lte_rrc_MBMS_SAI_InterFreqList_r11, MBMS_SAI_InterFreqList_r11_sequence_of, - 1, maxFreq, FALSE); - - return offset; -} - - -static const per_sequence_t MBMS_SAI_InterFreq_v1140_sequence[] = { - { &hf_lte_rrc_multiBandInfoList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_r11 }, +static const per_sequence_t SL_InterFreqInfoV2X_r14_sequence[] = { + { &hf_lte_rrc_plmn_IdentityList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList }, + { &hf_lte_rrc_v2x_CommCarrierFreq_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_sl_MaxTxPower_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_sl_Bandwidth_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_sl_Bandwidth_r14 }, + { &hf_lte_rrc_v2x_SchedulingPool_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, + { &hf_lte_rrc_v2x_UE_ConfigList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_UE_ConfigList_r14 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_InterFreqInfoV2X_r14_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_InterFreqInfoV2X_r14_eag_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMS_SAI_InterFreq_v1140(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_InterFreqInfoV2X_r14(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_lte_rrc_MBMS_SAI_InterFreq_v1140, MBMS_SAI_InterFreq_v1140_sequence); + ett_lte_rrc_SL_InterFreqInfoV2X_r14, SL_InterFreqInfoV2X_r14_sequence); return offset; } -static const per_sequence_t MBMS_SAI_InterFreqList_v1140_sequence_of[1] = { - { &hf_lte_rrc_MBMS_SAI_InterFreqList_v1140_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SAI_InterFreq_v1140 }, +static const per_sequence_t SL_InterFreqInfoListV2X_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_InterFreqInfoListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_InterFreqInfoV2X_r14 }, }; static int -dissect_lte_rrc_MBMS_SAI_InterFreqList_v1140(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_InterFreqInfoListV2X_r14(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_lte_rrc_MBMS_SAI_InterFreqList_v1140, MBMS_SAI_InterFreqList_v1140_sequence_of, - 1, maxFreq, FALSE); + ett_lte_rrc_SL_InterFreqInfoListV2X_r14, SL_InterFreqInfoListV2X_r14_sequence_of, + 0, maxFreqV2X_1_r14, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType15_r11_eag_1_sequence[] = { - { &hf_lte_rrc_mbms_SAI_InterFreqList_v1140, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_SAI_InterFreqList_v1140 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_CBR_Levels_Config_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_CBR_Levels_Config_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CBR_r14 }, }; static int -dissect_lte_rrc_SystemInformationBlockType15_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType15_r11_eag_1_sequence); +dissect_lte_rrc_SL_CBR_Levels_Config_r14(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_lte_rrc_SL_CBR_Levels_Config_r14, SL_CBR_Levels_Config_r14_sequence_of, + 1, maxCBR_Level_r14, FALSE); return offset; } -static const value_string lte_rrc_T_carrierType_r14_vals[] = { - { 0, "mbms" }, - { 1, "fembmsMixed" }, - { 2, "fembmsDedicated" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxSL_V2X_CBRConfig_r14_OF_SL_CBR_Levels_Config_r14_sequence_of[1] = { + { &hf_lte_rrc_cbr_RangeCommonConfigList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CBR_Levels_Config_r14 }, }; - static int -dissect_lte_rrc_T_carrierType_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_CBRConfig_r14_OF_SL_CBR_Levels_Config_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_CBRConfig_r14_OF_SL_CBR_Levels_Config_r14, SEQUENCE_SIZE_1_maxSL_V2X_CBRConfig_r14_OF_SL_CBR_Levels_Config_r14_sequence_of, + 1, maxSL_V2X_CBRConfig_r14, FALSE); return offset; } -static const per_sequence_t MBMS_CarrierType_r14_sequence[] = { - { &hf_lte_rrc_carrierType_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_carrierType_r14 }, - { &hf_lte_rrc_frameOffset_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_MBMS_CarrierType_r14(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_lte_rrc_MBMS_CarrierType_r14, MBMS_CarrierType_r14_sequence); +dissect_lte_rrc_INTEGER_0_10000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 10000U, NULL, FALSE); return offset; } -static const per_sequence_t MBMS_InterFreqCarrierTypeList_r14_sequence_of[1] = { - { &hf_lte_rrc_MBMS_InterFreqCarrierTypeList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_CarrierType_r14 }, +static const per_sequence_t SL_CBR_PSSCH_TxConfig_r14_sequence[] = { + { &hf_lte_rrc_cr_Limit_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10000 }, + { &hf_lte_rrc_tx_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PSSCH_TxParameters_r14 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMS_InterFreqCarrierTypeList_r14(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_lte_rrc_MBMS_InterFreqCarrierTypeList_r14, MBMS_InterFreqCarrierTypeList_r14_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_SL_CBR_PSSCH_TxConfig_r14(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_lte_rrc_SL_CBR_PSSCH_TxConfig_r14, SL_CBR_PSSCH_TxConfig_r14_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType15_r11_eag_2_sequence[] = { - { &hf_lte_rrc_mbms_IntraFreqCarrierType_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_CarrierType_r14 }, - { &hf_lte_rrc_mbms_InterFreqCarrierTypeList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_InterFreqCarrierTypeList_r14 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxSL_V2X_TxConfig_r14_OF_SL_CBR_PSSCH_TxConfig_r14_sequence_of[1] = { + { &hf_lte_rrc_sl_CBR_PSSCH_TxConfigList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CBR_PSSCH_TxConfig_r14 }, }; static int -dissect_lte_rrc_SystemInformationBlockType15_r11_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType15_r11_eag_2_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_TxConfig_r14_OF_SL_CBR_PSSCH_TxConfig_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_TxConfig_r14_OF_SL_CBR_PSSCH_TxConfig_r14, SEQUENCE_SIZE_1_maxSL_V2X_TxConfig_r14_OF_SL_CBR_PSSCH_TxConfig_r14_sequence_of, + 1, maxSL_V2X_TxConfig_r14, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType15_r11_sequence[] = { - { &hf_lte_rrc_mbms_SAI_IntraFreq_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_SAI_List_r11 }, - { &hf_lte_rrc_mbms_SAI_InterFreqList_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_SAI_InterFreqList_r11 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType15_r11_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType15_r11_eag_2 }, +static const per_sequence_t SL_CBR_CommonTxConfigList_r14_sequence[] = { + { &hf_lte_rrc_cbr_RangeCommonConfigList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_CBRConfig_r14_OF_SL_CBR_Levels_Config_r14 }, + { &hf_lte_rrc_sl_CBR_PSSCH_TxConfigList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxSL_V2X_TxConfig_r14_OF_SL_CBR_PSSCH_TxConfig_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType15_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB15"); - +dissect_lte_rrc_SL_CBR_CommonTxConfigList_r14(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_lte_rrc_SystemInformationBlockType15_r11, SystemInformationBlockType15_r11_sequence); - - return offset; -} - - - -static int -dissect_lte_rrc_T_timeInfoUTC_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint64 timeInfo; - proto_tree *subtree; - nstime_t ts; - guint32 old_offset = offset; - offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, - 0U, G_GUINT64_CONSTANT(549755813887), &timeInfo, FALSE); - - - - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_timeInfo); - ts.secs = (time_t)(timeInfo/100)-2208988800U; /* epoch is 00:00:00 (midnight) UTC on 1900-01-01 */ - ts.nsecs = (int)(timeInfo%100)*10000000; - proto_tree_add_time(subtree, hf_lte_rrc_utc_time, tvb, old_offset>>3, (old_offset&0x07) ? 6 : 5, &ts); - proto_tree_add_time(subtree, hf_lte_rrc_local_time, tvb, old_offset>>3, (old_offset&0x07) ? 6 : 5, &ts); + ett_lte_rrc_SL_CBR_CommonTxConfigList_r14, SL_CBR_CommonTxConfigList_r14_sequence); return offset; } @@ -48477,235 +52531,234 @@ dissect_lte_rrc_T_timeInfoUTC_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int -dissect_lte_rrc_T_dayLightSavingTime_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *daylight_saving_time_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 2, 2, FALSE, &daylight_saving_time_tvb, NULL); - - - - if (daylight_saving_time_tvb) { - guint bitvalue = tvb_get_bits8(daylight_saving_time_tvb, 0, 2); - actx->created_item = proto_tree_add_uint(tree, hf_index, daylight_saving_time_tvb, 0, 1, bitvalue); - } +dissect_lte_rrc_SL_Reliability_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 8U, NULL, FALSE); return offset; } +static const per_sequence_t SL_ReliabilityList_r15_sequence_of[1] = { + { &hf_lte_rrc_SL_ReliabilityList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_Reliability_r15 }, +}; static int -dissect_lte_rrc_INTEGER_M127_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -127, 128U, NULL, FALSE); +dissect_lte_rrc_SL_ReliabilityList_r15(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_lte_rrc_SL_ReliabilityList_r15, SL_ReliabilityList_r15_sequence_of, + 1, maxSL_Reliability_r15, FALSE); return offset; } +static const per_sequence_t LogicalChGroupInfoList_v1530_sequence_of[1] = { + { &hf_lte_rrc_LogicalChGroupInfoList_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_ReliabilityList_r15 }, +}; static int -dissect_lte_rrc_INTEGER_M63_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -63, 64U, NULL, FALSE); +dissect_lte_rrc_LogicalChGroupInfoList_v1530(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_lte_rrc_LogicalChGroupInfoList_v1530, LogicalChGroupInfoList_v1530_sequence_of, + 1, maxLCG_r13, FALSE); return offset; } -static const per_sequence_t T_timeInfo_r11_sequence[] = { - { &hf_lte_rrc_timeInfoUTC_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_timeInfoUTC_r11 }, - { &hf_lte_rrc_dayLightSavingTime_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dayLightSavingTime_r11 }, - { &hf_lte_rrc_leapSeconds_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M127_128 }, - { &hf_lte_rrc_localTimeOffset_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M63_64 }, +static const per_sequence_t T_scheduled_v1530_sequence[] = { + { &hf_lte_rrc_logicalChGroupInfoList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogicalChGroupInfoList_v1530 }, + { &hf_lte_rrc_mcs_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_timeInfo_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_scheduled_v1530(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_lte_rrc_T_timeInfo_r11, T_timeInfo_r11_sequence); + ett_lte_rrc_T_scheduled_v1530, T_scheduled_v1530_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType16_r11_sequence[] = { - { &hf_lte_rrc_timeInfo_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_timeInfo_r11 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, +static const per_sequence_t T_ue_Selected_v1530_sequence[] = { + { &hf_lte_rrc_v2x_FreqSelectionConfigList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_FreqSelectionConfigList_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType16_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB16"); - +dissect_lte_rrc_T_ue_Selected_v1530(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_lte_rrc_SystemInformationBlockType16_r11, SystemInformationBlockType16_r11_sequence); + ett_lte_rrc_T_ue_Selected_v1530, T_ue_Selected_v1530_sequence); return offset; } -static const per_sequence_t WLAN_OffloadInfoPerPLMN_r12_sequence[] = { - { &hf_lte_rrc_wlan_OffloadConfigCommon_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_OffloadConfig_r12 }, - { &hf_lte_rrc_wlan_Id_List_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_Id_List_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_setup_168_vals[] = { + { 0, "scheduled-v1530" }, + { 1, "ue-Selected-v1530" }, + { 0, NULL } +}; + +static const per_choice_t T_setup_168_choice[] = { + { 0, &hf_lte_rrc_scheduled_v1530, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_scheduled_v1530 }, + { 1, &hf_lte_rrc_ue_Selected_v1530, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ue_Selected_v1530 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_WLAN_OffloadInfoPerPLMN_r12(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_lte_rrc_WLAN_OffloadInfoPerPLMN_r12, WLAN_OffloadInfoPerPLMN_r12_sequence); +dissect_lte_rrc_T_setup_168(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_lte_rrc_T_setup_168, T_setup_168_choice, + NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxPLMN_r11_OF_WLAN_OffloadInfoPerPLMN_r12_sequence_of[1] = { - { &hf_lte_rrc_wlan_OffloadInfoPerPLMN_List_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_OffloadInfoPerPLMN_r12 }, +static const value_string lte_rrc_T_commTxResources_v1530_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_commTxResources_v1530_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_193 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_168 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_WLAN_OffloadInfoPerPLMN_r12(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_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_WLAN_OffloadInfoPerPLMN_r12, SEQUENCE_SIZE_1_maxPLMN_r11_OF_WLAN_OffloadInfoPerPLMN_r12_sequence_of, - 1, maxPLMN_r11, FALSE); +dissect_lte_rrc_T_commTxResources_v1530(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_lte_rrc_T_commTxResources_v1530, T_commTxResources_v1530_choice, + NULL); return offset; } -static const per_sequence_t SystemInformationBlockType17_r12_sequence[] = { - { &hf_lte_rrc_wlan_OffloadInfoPerPLMN_List_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_WLAN_OffloadInfoPerPLMN_r12 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SystemInformationBlockType17_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB17"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformationBlockType17_r12, SystemInformationBlockType17_r12_sequence); +dissect_lte_rrc_SL_DestinationIdentity_r12(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, + 24, 24, FALSE, NULL, NULL); return offset; } -static const per_sequence_t SL_CommRxPoolList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_CommRxPoolList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, +static const per_sequence_t SL_DestinationInfoList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_DestinationInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DestinationIdentity_r12 }, }; static int -dissect_lte_rrc_SL_CommRxPoolList_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_DestinationInfoList_r12(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_lte_rrc_SL_CommRxPoolList_r12, SL_CommRxPoolList_r12_sequence_of, - 1, maxSL_RxPool_r12, FALSE); + ett_lte_rrc_SL_DestinationInfoList_r12, SL_DestinationInfoList_r12_sequence_of, + 1, maxSL_Dest_r12, FALSE); return offset; } -static const per_sequence_t SL_CommTxPoolList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_CommTxPoolList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, +static const per_sequence_t SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9_sequence_of[1] = { + { &hf_lte_rrc_allowedCarrierFreqSet1_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, }; static int -dissect_lte_rrc_SL_CommTxPoolList_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9(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_lte_rrc_SL_CommTxPoolList_r12, SL_CommTxPoolList_r12_sequence_of, - 1, maxSL_TxPool_r12, FALSE); + ett_lte_rrc_SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9, SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9_sequence_of, + 1, maxFreqV2X_r14, FALSE); return offset; } -static const per_sequence_t T_txParameters_r12_02_sequence[] = { - { &hf_lte_rrc_syncTxParameters_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxParameters_r12 }, - { &hf_lte_rrc_syncTxThreshIC_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_RangeSL_r12 }, - { &hf_lte_rrc_syncInfoReserved_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_19 }, +static const per_sequence_t SL_AllowedCarrierFreqList_r15_sequence[] = { + { &hf_lte_rrc_allowedCarrierFreqSet1, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_allowedCarrierFreqSet2, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_txParameters_r12_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_AllowedCarrierFreqList_r15(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_lte_rrc_T_txParameters_r12_02, T_txParameters_r12_02_sequence); + ett_lte_rrc_SL_AllowedCarrierFreqList_r15, SL_AllowedCarrierFreqList_r15_sequence); return offset; } -static const value_string lte_rrc_T_discSyncWindow_r12_vals[] = { - { 0, "w1" }, - { 1, "w2" }, - { 0, NULL } +static const per_sequence_t SL_PPPR_Dest_CarrierFreq_sequence[] = { + { &hf_lte_rrc_destinationInfoList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DestinationInfoList_r12 }, + { &hf_lte_rrc_allowedCarrierFreqList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_AllowedCarrierFreqList_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_discSyncWindow_r12(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, FALSE, 0, NULL); +dissect_lte_rrc_SL_PPPR_Dest_CarrierFreq(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_lte_rrc_SL_PPPR_Dest_CarrierFreq, SL_PPPR_Dest_CarrierFreq_sequence); return offset; } -static const per_sequence_t T_rxParamsNCell_r12_sequence[] = { - { &hf_lte_rrc_physCellId_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_discSyncWindow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_discSyncWindow_r12 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_PPPR_Dest_CarrierFreqList_r15_sequence_of[1] = { + { &hf_lte_rrc_SL_PPPR_Dest_CarrierFreqList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PPPR_Dest_CarrierFreq }, }; static int -dissect_lte_rrc_T_rxParamsNCell_r12(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_lte_rrc_T_rxParamsNCell_r12, T_rxParamsNCell_r12_sequence); +dissect_lte_rrc_SL_PPPR_Dest_CarrierFreqList_r15(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_lte_rrc_SL_PPPR_Dest_CarrierFreqList_r15, SL_PPPR_Dest_CarrierFreqList_r15_sequence_of, + 1, maxSL_Dest_r12, FALSE); return offset; } -static const value_string lte_rrc_T_syncTxPeriodic_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SL_V2X_PacketDuplicationConfig_r15_sequence[] = { + { &hf_lte_rrc_threshSL_Reliability_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_Reliability_r15 }, + { &hf_lte_rrc_allowedCarrierFreqConfig_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_PPPR_Dest_CarrierFreqList_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_syncTxPeriodic_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SL_V2X_PacketDuplicationConfig_r15(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_lte_rrc_SL_V2X_PacketDuplicationConfig_r15, SL_V2X_PacketDuplicationConfig_r15_sequence); return offset; } -static const per_sequence_t SL_SyncConfig_r12_eag_1_sequence[] = { - { &hf_lte_rrc_syncTxPeriodic_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_syncTxPeriodic_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_V2X_SyncFreqList_r15_sequence_of[1] = { + { &hf_lte_rrc_SL_V2X_SyncFreqList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, }; static int -dissect_lte_rrc_SL_SyncConfig_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfig_r12_eag_1_sequence); +dissect_lte_rrc_SL_V2X_SyncFreqList_r15(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_lte_rrc_SL_V2X_SyncFreqList_r15, SL_V2X_SyncFreqList_r15_sequence_of, + 1, maxFreqV2X_r14, FALSE); return offset; } -static const value_string lte_rrc_T_gnss_Sync_r14_01_vals[] = { +static const value_string lte_rrc_T_slss_TxMultiFreq_r15_01_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_gnss_Sync_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_slss_TxMultiFreq_r15_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, 1, NULL, FALSE, 0, NULL); @@ -48713,969 +52766,806 @@ dissect_lte_rrc_T_gnss_Sync_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t SL_SyncConfig_r12_eag_2_sequence[] = { - { &hf_lte_rrc_syncOffsetIndicator_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_v1430 }, - { &hf_lte_rrc_gnss_Sync_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gnss_Sync_r14_01 }, +static const per_sequence_t SL_V2X_ConfigDedicated_r14_eag_1_sequence[] = { + { &hf_lte_rrc_commTxResources_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResources_v1530 }, + { &hf_lte_rrc_v2x_PacketDuplicationConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_PacketDuplicationConfig_r15 }, + { &hf_lte_rrc_syncFreqList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_SyncFreqList_r15 }, + { &hf_lte_rrc_slss_TxMultiFreq_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_slss_TxMultiFreq_r15_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_SyncConfig_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfig_r12_eag_2_sequence); +dissect_lte_rrc_SL_V2X_ConfigDedicated_r14_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_V2X_ConfigDedicated_r14_eag_1_sequence); return offset; } -static const per_sequence_t SL_SyncConfig_r12_eag_3_sequence[] = { - { &hf_lte_rrc_syncOffsetIndicator2_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_r14 }, - { &hf_lte_rrc_syncOffsetIndicator3_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_r14 }, +static const per_sequence_t SL_V2X_ConfigDedicated_r14_sequence[] = { + { &hf_lte_rrc_commTxResources_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResources_r14 }, + { &hf_lte_rrc_v2x_InterFreqInfoList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_InterFreqInfoListV2X_r14 }, + { &hf_lte_rrc_thresSL_TxPrioritization_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_Priority_r13 }, + { &hf_lte_rrc_typeTxSync_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_TypeTxSync_r14 }, + { &hf_lte_rrc_cbr_DedicatedTxConfigList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_CommonTxConfigList_r14 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_ConfigDedicated_r14_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_SyncConfig_r12_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfig_r12_eag_3_sequence); +dissect_lte_rrc_SL_V2X_ConfigDedicated_r14(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_lte_rrc_SL_V2X_ConfigDedicated_r14, SL_V2X_ConfigDedicated_r14_sequence); return offset; } -static const per_sequence_t SL_SyncConfig_r12_sequence[] = { - { &hf_lte_rrc_syncCP_Len_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CP_Len_r12 }, - { &hf_lte_rrc_syncOffsetIndicator_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_OffsetIndicatorSync_r12 }, - { &hf_lte_rrc_slssid_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SLSSID_r12 }, - { &hf_lte_rrc_txParameters_r12_02, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_txParameters_r12_02 }, - { &hf_lte_rrc_rxParamsNCell_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParamsNCell_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12_eag_3 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_associationTimer_r13_vals[] = { + { 0, "s10" }, + { 1, "s30" }, + { 2, "s60" }, + { 3, "s120" }, + { 4, "s240" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_SyncConfig_r12(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_lte_rrc_SL_SyncConfig_r12, SL_SyncConfig_r12_sequence); +dissect_lte_rrc_T_associationTimer_r13(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, + 5, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_SyncConfigList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_SyncConfigList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12 }, +static const value_string lte_rrc_T_successReportRequested_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_SyncConfigList_r12(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_lte_rrc_SL_SyncConfigList_r12, SL_SyncConfigList_r12_sequence_of, - 1, maxSL_SyncConfig_r12, FALSE); +dissect_lte_rrc_T_successReportRequested_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_commConfig_r12_sequence[] = { - { &hf_lte_rrc_commRxPool_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommRxPoolList_r12 }, - { &hf_lte_rrc_commTxPoolNormalCommon_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolList_r12 }, - { &hf_lte_rrc_commTxPoolExceptional_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolList_r12 }, - { &hf_lte_rrc_commSyncConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigList_r12 }, +static const per_sequence_t WLAN_SuspendConfig_r14_sequence[] = { + { &hf_lte_rrc_wlan_SuspendResumeAllowed_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_wlan_SuspendTriggersStatusReport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_commConfig_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_WLAN_SuspendConfig_r14(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_lte_rrc_T_commConfig_r12, T_commConfig_r12_sequence); + ett_lte_rrc_WLAN_SuspendConfig_r14, WLAN_SuspendConfig_r14_sequence); return offset; } -static const per_sequence_t SL_CommTxPoolListExt_r13_sequence_of[1] = { - { &hf_lte_rrc_SL_CommTxPoolListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, +static const per_sequence_t WLAN_MobilityConfig_r13_eag_1_sequence[] = { + { &hf_lte_rrc_wlan_SuspendConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_SuspendConfig_r14 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommTxPoolListExt_r13(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_lte_rrc_SL_CommTxPoolListExt_r13, SL_CommTxPoolListExt_r13_sequence_of, - 1, maxSL_TxPool_v1310, FALSE); +dissect_lte_rrc_WLAN_MobilityConfig_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, WLAN_MobilityConfig_r13_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_commTxResourceUC_ReqAllowed_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t WLAN_MobilityConfig_r13_sequence[] = { + { &hf_lte_rrc_wlan_ToReleaseList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_Id_List_r13 }, + { &hf_lte_rrc_wlan_ToAddList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_Id_List_r13 }, + { &hf_lte_rrc_associationTimer_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_associationTimer_r13 }, + { &hf_lte_rrc_successReportRequested_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_successReportRequested_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_MobilityConfig_r13_eag_1 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_commTxResourceUC_ReqAllowed_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_WLAN_MobilityConfig_r13(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_lte_rrc_WLAN_MobilityConfig_r13, WLAN_MobilityConfig_r13_sequence); return offset; } -static const value_string lte_rrc_T_commTxAllowRelayCommon_r13_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_commTxAllowRelayCommon_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_0_65535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 65535U, NULL, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType18_r12_eag_1_sequence[] = { - { &hf_lte_rrc_commTxPoolNormalCommonExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolListExt_r13 }, - { &hf_lte_rrc_commTxResourceUC_ReqAllowed_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResourceUC_ReqAllowed_r13 }, - { &hf_lte_rrc_commTxAllowRelayCommon_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxAllowRelayCommon_r13 }, +static const per_sequence_t LWA_Config_r13_eag_1_sequence[] = { + { &hf_lte_rrc_wt_MAC_Address_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_6 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType18_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType18_r12_eag_1_sequence); +dissect_lte_rrc_LWA_Config_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LWA_Config_r13_eag_1_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType18_r12_sequence[] = { - { &hf_lte_rrc_commConfig_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_commConfig_r12 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType18_r12_eag_1 }, +static const per_sequence_t LWA_Config_r13_sequence[] = { + { &hf_lte_rrc_lwa_MobilityConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_MobilityConfig_r13 }, + { &hf_lte_rrc_lwa_WT_Counter_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LWA_Config_r13_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType18_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB18"); - +dissect_lte_rrc_LWA_Config_r13(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_lte_rrc_SystemInformationBlockType18_r12, SystemInformationBlockType18_r12_sequence); + ett_lte_rrc_LWA_Config_r13, LWA_Config_r13_sequence); return offset; } -static const per_sequence_t SL_DiscRxPoolList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_DiscRxPoolList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscResourcePool_r12 }, -}; static int -dissect_lte_rrc_SL_DiscRxPoolList_r12(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_lte_rrc_SL_DiscRxPoolList_r12, SL_DiscRxPoolList_r12_sequence_of, - 1, maxSL_RxPool_r12, FALSE); +dissect_lte_rrc_INTEGER_0_31250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 31250U, NULL, FALSE); return offset; } -static const per_sequence_t SL_DiscTxPoolList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_DiscTxPoolList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscResourcePool_r12 }, +static const value_string lte_rrc_T_connectedWLAN_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_DiscTxPoolList_r12(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_lte_rrc_SL_DiscTxPoolList_r12, SL_DiscTxPoolList_r12_sequence_of, - 1, maxSL_TxPool_r12, FALSE); +dissect_lte_rrc_T_connectedWLAN_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_DiscTxPowerInfo_r12_sequence[] = { - { &hf_lte_rrc_discMaxTxPower_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_P_Max }, +static const per_sequence_t MeasResultWLAN_r13_sequence[] = { + { &hf_lte_rrc_wlan_Identifiers_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Identifiers_r12 }, + { &hf_lte_rrc_carrierInfoWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_CarrierInfo_r13 }, + { &hf_lte_rrc_bandWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_BandIndicator_r13 }, + { &hf_lte_rrc_rssiWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_RSSI_Range_r13 }, + { &hf_lte_rrc_availableAdmissionCapacityWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31250 }, + { &hf_lte_rrc_backhaulDL_BandwidthWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_backhaulRate_r12 }, + { &hf_lte_rrc_backhaulUL_BandwidthWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_backhaulRate_r12 }, + { &hf_lte_rrc_channelUtilizationWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_255 }, + { &hf_lte_rrc_stationCountWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, + { &hf_lte_rrc_connectedWLAN_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_connectedWLAN_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscTxPowerInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasResultWLAN_r13(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_lte_rrc_SL_DiscTxPowerInfo_r12, SL_DiscTxPowerInfo_r12_sequence); + ett_lte_rrc_MeasResultWLAN_r13, MeasResultWLAN_r13_sequence); return offset; } -static const per_sequence_t SL_DiscTxPowerInfoList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_DiscTxPowerInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscTxPowerInfo_r12 }, +static const per_sequence_t MeasResultListWLAN_r13_sequence_of[1] = { + { &hf_lte_rrc_MeasResultListWLAN_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultWLAN_r13 }, }; static int -dissect_lte_rrc_SL_DiscTxPowerInfoList_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasResultListWLAN_r13(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_lte_rrc_SL_DiscTxPowerInfoList_r12, SL_DiscTxPowerInfoList_r12_sequence_of, - maxSL_DiscPowerClass_r12, maxSL_DiscPowerClass_r12, FALSE); + ett_lte_rrc_MeasResultListWLAN_r13, MeasResultListWLAN_r13_sequence_of, + 1, maxCellReport, FALSE); return offset; } -static const per_sequence_t T_discConfig_r12_sequence[] = { - { &hf_lte_rrc_discRxPool_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscRxPoolList_r12 }, - { &hf_lte_rrc_discTxPoolCommon_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPoolList_r12 }, - { &hf_lte_rrc_discTxPowerInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPowerInfoList_r12 }, - { &hf_lte_rrc_discSyncConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigList_r12 }, +static const per_sequence_t AS_Config_v1430_sequence[] = { + { &hf_lte_rrc_sourceSL_V2X_CommConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_ConfigDedicated_r14 }, + { &hf_lte_rrc_sourceLWA_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWA_Config_r13 }, + { &hf_lte_rrc_sourceWLAN_MeasResult_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListWLAN_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_discConfig_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AS_Config_v1430(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_lte_rrc_T_discConfig_r12, T_discConfig_r12_sequence); + ett_lte_rrc_AS_Config_v1430, AS_Config_v1430_sequence); return offset; } -static const value_string lte_rrc_PLMN_IdentityInfo2_r12_vals[] = { - { 0, "plmn-Index-r12" }, - { 1, "plmnIdentity-r12" }, +static const value_string lte_rrc_T_makeBeforeBreakReq_r14_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t PLMN_IdentityInfo2_r12_choice[] = { - { 0, &hf_lte_rrc_plmn_Index_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, - { 1, &hf_lte_rrc_plmnIdentity_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_PLMN_Identity }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_PLMN_IdentityInfo2_r12(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_lte_rrc_PLMN_IdentityInfo2_r12, PLMN_IdentityInfo2_r12_choice, - NULL); +dissect_lte_rrc_T_makeBeforeBreakReq_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PLMN_IdentityList4_r12_sequence_of[1] = { - { &hf_lte_rrc_PLMN_IdentityList4_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityInfo2_r12 }, +static const per_sequence_t T_nonCriticalExtension_02_sequence[] = { + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PLMN_IdentityList4_r12(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_lte_rrc_PLMN_IdentityList4_r12, PLMN_IdentityList4_r12_sequence_of, - 1, maxPLMN_r11, FALSE); +dissect_lte_rrc_T_nonCriticalExtension_02(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_lte_rrc_T_nonCriticalExtension_02, T_nonCriticalExtension_02_sequence); return offset; } -static const per_sequence_t SL_CarrierFreqInfo_r12_sequence[] = { - { &hf_lte_rrc_carrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_plmn_IdentityList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList4_r12 }, +static const per_sequence_t HandoverPreparationInformation_v1430_IEs_sequence[] = { + { &hf_lte_rrc_as_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config_v1430 }, + { &hf_lte_rrc_makeBeforeBreakReq_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_makeBeforeBreakReq_r14 }, + { &hf_lte_rrc_nonCriticalExtension_10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_02 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CarrierFreqInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverPreparationInformation_v1430_IEs(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_lte_rrc_SL_CarrierFreqInfo_r12, SL_CarrierFreqInfo_r12_sequence); + ett_lte_rrc_HandoverPreparationInformation_v1430_IEs, HandoverPreparationInformation_v1430_IEs_sequence); return offset; } -static const per_sequence_t SL_CarrierFreqInfoList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_CarrierFreqInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CarrierFreqInfo_r12 }, -}; - -static int -dissect_lte_rrc_SL_CarrierFreqInfoList_r12(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_lte_rrc_SL_CarrierFreqInfoList_r12, SL_CarrierFreqInfoList_r12_sequence_of, - 1, maxFreq, FALSE); - - return offset; -} - - -static const value_string lte_rrc_SL_DiscTxResourcesInterFreq_r13_vals[] = { - { 0, "acquireSI-FromCarrier-r13" }, - { 1, "discTxPoolCommon-r13" }, - { 2, "requestDedicated-r13" }, - { 3, "noTxOnCarrier-r13" }, - { 0, NULL } -}; - -static const per_choice_t SL_DiscTxResourcesInterFreq_r13_choice[] = { - { 0, &hf_lte_rrc_acquireSI_FromCarrier_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_discTxPoolCommon_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_DiscTxPoolList_r12 }, - { 2, &hf_lte_rrc_requestDedicated_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_noTxOnCarrier_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t HandoverPreparationInformation_v1320_IEs_sequence[] = { + { &hf_lte_rrc_as_Config_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config_v1320 }, + { &hf_lte_rrc_as_Context_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Context_v1320 }, + { &hf_lte_rrc_nonCriticalExtension_09, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v1430_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscTxResourcesInterFreq_r13(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_lte_rrc_SL_DiscTxResourcesInterFreq_r13, SL_DiscTxResourcesInterFreq_r13_choice, - NULL); +dissect_lte_rrc_HandoverPreparationInformation_v1320_IEs(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_lte_rrc_HandoverPreparationInformation_v1320_IEs, HandoverPreparationInformation_v1320_IEs_sequence); return offset; } -static const per_sequence_t SL_ResourcesInterFreq_r13_sequence[] = { - { &hf_lte_rrc_discRxResourcesInterFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscRxPoolList_r12 }, - { &hf_lte_rrc_discTxResourcesInterFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxResourcesInterFreq_r13 }, +static const per_sequence_t HandoverPreparationInformation_v1250_IEs_sequence[] = { + { &hf_lte_rrc_ue_SupportedEARFCN_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_as_Config_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config_v1250 }, + { &hf_lte_rrc_nonCriticalExtension_08, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v1320_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_ResourcesInterFreq_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverPreparationInformation_v1250_IEs(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_lte_rrc_SL_ResourcesInterFreq_r13, SL_ResourcesInterFreq_r13_sequence); + ett_lte_rrc_HandoverPreparationInformation_v1250_IEs, HandoverPreparationInformation_v1250_IEs_sequence); return offset; } -static const value_string lte_rrc_T_refCarrierCommon_r13_vals[] = { - { 0, "pCell" }, - { 0, NULL } +static const per_sequence_t HandoverPreparationInformation_v1130_IEs_sequence[] = { + { &hf_lte_rrc_as_Context_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Context_v1130 }, + { &hf_lte_rrc_nonCriticalExtension_07, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v1250_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_refCarrierCommon_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_HandoverPreparationInformation_v1130_IEs(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_lte_rrc_HandoverPreparationInformation_v1130_IEs, HandoverPreparationInformation_v1130_IEs_sequence); return offset; } -static const per_sequence_t SL_SyncConfigListNFreq_r13_sequence_of[1] = { - { &hf_lte_rrc_SL_SyncConfigListNFreq_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfigNFreq_r13 }, +static const per_sequence_t HandoverPreparationInformation_v9e0_IEs_sequence[] = { + { &hf_lte_rrc_as_Config_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config_v9e0 }, + { &hf_lte_rrc_nonCriticalExtension_06, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v1130_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_SyncConfigListNFreq_r13(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_lte_rrc_SL_SyncConfigListNFreq_r13, SL_SyncConfigListNFreq_r13_sequence_of, - 1, maxSL_SyncConfig_r12, FALSE); +dissect_lte_rrc_HandoverPreparationInformation_v9e0_IEs(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_lte_rrc_HandoverPreparationInformation_v9e0_IEs, HandoverPreparationInformation_v9e0_IEs_sequence); return offset; } -static const per_sequence_t SL_DiscConfigOtherInterFreq_r13_sequence[] = { - { &hf_lte_rrc_txPowerInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPowerInfoList_r12 }, - { &hf_lte_rrc_refCarrierCommon_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_refCarrierCommon_r13 }, - { &hf_lte_rrc_discSyncConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigListNFreq_r13 }, - { &hf_lte_rrc_discCellSelectionInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoNFreq_r13 }, +static const per_sequence_t HandoverPreparationInformation_v9d0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension }, + { &hf_lte_rrc_nonCriticalExtension_03, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v9e0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscConfigOtherInterFreq_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverPreparationInformation_v9d0_IEs(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_lte_rrc_SL_DiscConfigOtherInterFreq_r13, SL_DiscConfigOtherInterFreq_r13_sequence); + ett_lte_rrc_HandoverPreparationInformation_v9d0_IEs, HandoverPreparationInformation_v9d0_IEs_sequence); return offset; } -static const per_sequence_t SL_CarrierFreqInfo_v1310_sequence[] = { - { &hf_lte_rrc_discResourcesNonPS_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_ResourcesInterFreq_r13 }, - { &hf_lte_rrc_discResourcesPS_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_ResourcesInterFreq_r13 }, - { &hf_lte_rrc_discConfigOther_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscConfigOtherInterFreq_r13 }, +static const per_sequence_t HandoverPreparationInformation_v920_IEs_sequence[] = { + { &hf_lte_rrc_ue_ConfigRelease_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_ConfigRelease_r9 }, + { &hf_lte_rrc_nonCriticalExtension_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v9d0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CarrierFreqInfo_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverPreparationInformation_v920_IEs(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_lte_rrc_SL_CarrierFreqInfo_v1310, SL_CarrierFreqInfo_v1310_sequence); + ett_lte_rrc_HandoverPreparationInformation_v920_IEs, HandoverPreparationInformation_v920_IEs_sequence); return offset; } -static const per_sequence_t SL_CarrierFreqInfoList_v1310_sequence_of[1] = { - { &hf_lte_rrc_SL_CarrierFreqInfoList_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CarrierFreqInfo_v1310 }, +static const per_sequence_t HandoverPreparationInformation_r8_IEs_sequence[] = { + { &hf_lte_rrc_ue_RadioAccessCapabilityInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_CapabilityRAT_ContainerList }, + { &hf_lte_rrc_as_Config , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config }, + { &hf_lte_rrc_rrm_Config , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRM_Config }, + { &hf_lte_rrc_as_Context , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Context }, + { &hf_lte_rrc_nonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v920_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CarrierFreqInfoList_v1310(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_lte_rrc_SL_CarrierFreqInfoList_v1310, SL_CarrierFreqInfoList_v1310_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_HandoverPreparationInformation_r8_IEs(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_lte_rrc_HandoverPreparationInformation_r8_IEs, HandoverPreparationInformation_r8_IEs_sequence); return offset; } -static const value_string lte_rrc_T_gapRequestsAllowedCommon_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_c1_01_vals[] = { + { 0, "handoverPreparationInformation-r8" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; +static const per_choice_t T_c1_01_choice[] = { + { 0, &hf_lte_rrc_handoverPreparationInformation_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_HandoverPreparationInformation_r8_IEs }, + { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_gapRequestsAllowedCommon(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_c1_01(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_lte_rrc_T_c1_01, T_c1_01_choice, + NULL); return offset; } -static const per_sequence_t T_discConfig_v1310_sequence[] = { - { &hf_lte_rrc_discInterFreqList_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CarrierFreqInfoList_v1310 }, - { &hf_lte_rrc_gapRequestsAllowedCommon, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gapRequestsAllowedCommon }, +static const per_sequence_t T_criticalExtensionsFuture_01_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_discConfig_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_01(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_lte_rrc_T_discConfig_v1310, T_discConfig_v1310_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_01, T_criticalExtensionsFuture_01_sequence); return offset; } +static const value_string lte_rrc_T_criticalExtensions_01_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_01_choice[] = { + { 0, &hf_lte_rrc_c1_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_01 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_01 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_RSRP_RangeSL4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 49U, NULL, FALSE); +dissect_lte_rrc_T_criticalExtensions_01(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_lte_rrc_T_criticalExtensions_01, T_criticalExtensions_01_choice, + NULL); return offset; } -static const value_string lte_rrc_T_hystMax_r13_vals[] = { - { 0, "dB0" }, - { 1, "dB3" }, - { 2, "dB6" }, - { 3, "dB9" }, - { 4, "dB12" }, - { 5, "dBinf" }, - { 0, NULL } +static const per_sequence_t HandoverPreparationInformation_sequence[] = { + { &hf_lte_rrc_criticalExtensions_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_01 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_hystMax_r13(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, - 6, NULL, FALSE, 0, NULL); +dissect_lte_rrc_HandoverPreparationInformation(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_lte_rrc_HandoverPreparationInformation, HandoverPreparationInformation_sequence); return offset; } -static const value_string lte_rrc_T_hystMin_r13_vals[] = { - { 0, "dB0" }, - { 1, "dB3" }, - { 2, "dB6" }, - { 3, "dB9" }, - { 4, "dB12" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_hystMin_r13(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, - 5, NULL, FALSE, 0, NULL); +dissect_lte_rrc_OCTET_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); return offset; } -static const per_sequence_t SL_DiscConfigRelayUE_r13_sequence[] = { - { &hf_lte_rrc_threshHigh_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_RangeSL4_r13 }, - { &hf_lte_rrc_threshLow_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_RangeSL4_r13 }, - { &hf_lte_rrc_hystMax_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hystMax_r13 }, - { &hf_lte_rrc_hystMin_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hystMin_r13 }, +static const per_sequence_t AS_Config_v10j0_sequence[] = { + { &hf_lte_rrc_antennaInfoDedicatedPCell_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscConfigRelayUE_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AS_Config_v10j0(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_lte_rrc_SL_DiscConfigRelayUE_r13, SL_DiscConfigRelayUE_r13_sequence); + ett_lte_rrc_AS_Config_v10j0, AS_Config_v10j0_sequence); return offset; } -static const value_string lte_rrc_T_hystMax_r13_01_vals[] = { - { 0, "dB0" }, - { 1, "dB3" }, - { 2, "dB6" }, - { 3, "dB9" }, - { 4, "dB12" }, - { 0, NULL } +static const per_sequence_t T_nonCriticalExtension_01_sequence[] = { + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_hystMax_r13_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, - 5, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_nonCriticalExtension_01(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_lte_rrc_T_nonCriticalExtension_01, T_nonCriticalExtension_01_sequence); return offset; } -static const value_string lte_rrc_T_minHyst_r13_vals[] = { - { 0, "dB0" }, - { 1, "dB3" }, - { 2, "dB6" }, - { 3, "dB9" }, - { 4, "dB12" }, - { 5, "dBinf" }, - { 0, NULL } +static const per_sequence_t HandoverPreparationInformation_v10j0_IEs_sequence[] = { + { &hf_lte_rrc_as_Config_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Config_v10j0 }, + { &hf_lte_rrc_nonCriticalExtension_05, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_01 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_minHyst_r13(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, - 6, NULL, FALSE, 0, NULL); +dissect_lte_rrc_HandoverPreparationInformation_v10j0_IEs(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_lte_rrc_HandoverPreparationInformation_v10j0_IEs, HandoverPreparationInformation_v10j0_IEs_sequence); return offset; } -static const per_sequence_t ReselectionInfoRelay_r13_sequence[] = { - { &hf_lte_rrc_q_RxLevMin_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_filterCoefficient_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FilterCoefficient }, - { &hf_lte_rrc_minHyst_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_minHyst_r13 }, +static const per_sequence_t HandoverPreparationInformation_v9j0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_04, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_v10j0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ReselectionInfoRelay_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverPreparationInformation_v9j0_IEs(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_lte_rrc_ReselectionInfoRelay_r13, ReselectionInfoRelay_r13_sequence); + ett_lte_rrc_HandoverPreparationInformation_v9j0_IEs, HandoverPreparationInformation_v9j0_IEs_sequence); return offset; } -static const per_sequence_t SL_DiscConfigRemoteUE_r13_sequence[] = { - { &hf_lte_rrc_threshHigh_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_RangeSL4_r13 }, - { &hf_lte_rrc_hystMax_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hystMax_r13_01 }, - { &hf_lte_rrc_reselectionInfoIC_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionInfoRelay_r13 }, +static const per_sequence_t PowerCoordinationInfo_r12_sequence[] = { + { &hf_lte_rrc_p_MeNB_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_16 }, + { &hf_lte_rrc_p_SeNB_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_16 }, + { &hf_lte_rrc_powerControlMode_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscConfigRemoteUE_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PowerCoordinationInfo_r12(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_lte_rrc_SL_DiscConfigRemoteUE_r13, SL_DiscConfigRemoteUE_r13_sequence); + ett_lte_rrc_PowerCoordinationInfo_r12, PowerCoordinationInfo_r12_sequence); return offset; } -static const per_sequence_t T_discConfigRelay_r13_sequence[] = { - { &hf_lte_rrc_relayUE_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscConfigRelayUE_r13 }, - { &hf_lte_rrc_remoteUE_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscConfigRemoteUE_r13 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_discConfigRelay_r13(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_lte_rrc_T_discConfigRelay_r13, T_discConfigRelay_r13_sequence); +dissect_lte_rrc_T_eutra_CapabilityInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UECapabilityInformation_PDU); return offset; } -static const per_sequence_t T_discConfigPS_13_sequence[] = { - { &hf_lte_rrc_discRxPoolPS_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscRxPoolList_r12 }, - { &hf_lte_rrc_discTxPoolPS_Common_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPoolList_r12 }, +static const per_sequence_t SCG_ConfigRestrictInfo_r12_sequence[] = { + { &hf_lte_rrc_maxSCH_TB_BitsDL_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_100 }, + { &hf_lte_rrc_maxSCH_TB_BitsUL_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_100 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_discConfigPS_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCG_ConfigRestrictInfo_r12(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_lte_rrc_T_discConfigPS_13, T_discConfigPS_13_sequence); + ett_lte_rrc_SCG_ConfigRestrictInfo_r12, SCG_ConfigRestrictInfo_r12_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType19_r12_eag_1_sequence[] = { - { &hf_lte_rrc_discConfig_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discConfig_v1310 }, - { &hf_lte_rrc_discConfigRelay_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discConfigRelay_r13 }, - { &hf_lte_rrc_discConfigPS_13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discConfigPS_13 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SystemInformationBlockType19_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType19_r12_eag_1_sequence); +dissect_lte_rrc_T_mbmsInterestIndication_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_MBMSInterestIndication_r11_PDU); return offset; } -static const per_sequence_t SystemInformationBlockType19_r12_sequence[] = { - { &hf_lte_rrc_discConfig_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_discConfig_r12 }, - { &hf_lte_rrc_discInterFreqList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CarrierFreqInfoList_r12 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType19_r12_eag_1 }, +static const per_sequence_t T_measResultSCell_r12_sequence[] = { + { &hf_lte_rrc_rsrpResultSCell_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResultSCell_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType19_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB19"); - +dissect_lte_rrc_T_measResultSCell_r12(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_lte_rrc_SystemInformationBlockType19_r12, SystemInformationBlockType19_r12_sequence); + ett_lte_rrc_T_measResultSCell_r12, T_measResultSCell_r12_sequence); return offset; } -static const value_string lte_rrc_T_sc_mcch_RepetitionPeriod_r13_vals[] = { - { 0, "rf2" }, - { 1, "rf4" }, - { 2, "rf8" }, - { 3, "rf16" }, - { 4, "rf32" }, - { 5, "rf64" }, - { 6, "rf128" }, - { 7, "rf256" }, - { 0, NULL } +static const per_sequence_t T_measResultSCell_v1310_sequence[] = { + { &hf_lte_rrc_rs_sinr_ResultSCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_SINR_Range_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_measResultSCell_v1310(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_lte_rrc_T_measResultSCell_v1310, T_measResultSCell_v1310_sequence); return offset; } +static const per_sequence_t MeasResultServCellSCG_r12_eag_1_sequence[] = { + { &hf_lte_rrc_servCellId_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ServCellIndex_r13 }, + { &hf_lte_rrc_measResultSCell_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultSCell_v1310 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_2_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 2U, 9U, NULL, FALSE); +dissect_lte_rrc_MeasResultServCellSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResultServCellSCG_r12_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_sc_mcch_ModificationPeriod_r13_vals[] = { - { 0, "rf2" }, - { 1, "rf4" }, - { 2, "rf8" }, - { 3, "rf16" }, - { 4, "rf32" }, - { 5, "rf64" }, - { 6, "rf128" }, - { 7, "rf256" }, - { 8, "rf512" }, - { 9, "rf1024" }, - { 10, "r2048" }, - { 11, "rf4096" }, - { 12, "rf8192" }, - { 13, "rf16384" }, - { 14, "rf32768" }, - { 15, "rf65536" }, - { 0, NULL } +static const per_sequence_t MeasResultServCellSCG_r12_sequence[] = { + { &hf_lte_rrc_servCellId_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r10 }, + { &hf_lte_rrc_measResultSCell_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultSCell_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServCellSCG_r12_eag_1 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_sc_mcch_ModificationPeriod_r13(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MeasResultServCellSCG_r12(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_lte_rrc_MeasResultServCellSCG_r12, MeasResultServCellSCG_r12_sequence); return offset; } -static const value_string lte_rrc_T_dummy_01_vals[] = { - { 0, "rf1" }, - { 0, NULL } +static const per_sequence_t MeasResultServCellListSCG_r12_sequence_of[1] = { + { &hf_lte_rrc_MeasResultServCellListSCG_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServCellSCG_r12 }, }; - static int -dissect_lte_rrc_T_dummy_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MeasResultServCellListSCG_r12(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_lte_rrc_MeasResultServCellListSCG_r12, MeasResultServCellListSCG_r12_sequence_of, + 1, maxServCell_r10, FALSE); return offset; } -static const value_string lte_rrc_T_dummy2_vals[] = { - { 0, "rf1" }, +static const value_string lte_rrc_T_drb_Type_r12_vals[] = { + { 0, "split" }, + { 1, "scg" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dummy2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_drb_Type_r12(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_mpdcch_NumRepetition_SC_MCCH_r14_vals[] = { - { 0, "r1" }, - { 1, "r2" }, - { 2, "r4" }, - { 3, "r8" }, - { 4, "r16" }, - { 5, "r32" }, - { 6, "r64" }, - { 7, "r128" }, - { 8, "r256" }, - { 0, NULL } +static const per_sequence_t DRB_InfoSCG_r12_sequence[] = { + { &hf_lte_rrc_eps_BearerIdentity_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_drb_Identity_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, + { &hf_lte_rrc_drb_Type_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_Type_r12 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_mpdcch_NumRepetition_SC_MCCH_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_DRB_InfoSCG_r12(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_lte_rrc_DRB_InfoSCG_r12, DRB_InfoSCG_r12_sequence); return offset; } -static const value_string lte_rrc_T_fdd_r14_vals[] = { - { 0, "v1" }, - { 1, "v1dot5" }, - { 2, "v2" }, - { 3, "v2dot5" }, - { 4, "v4" }, - { 5, "v5" }, - { 6, "v8" }, - { 7, "v10" }, - { 0, NULL } +static const per_sequence_t DRB_InfoListSCG_r12_sequence_of[1] = { + { &hf_lte_rrc_DRB_InfoListSCG_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_InfoSCG_r12 }, }; - static int -dissect_lte_rrc_T_fdd_r14(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_DRB_InfoListSCG_r12(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_lte_rrc_DRB_InfoListSCG_r12, DRB_InfoListSCG_r12_sequence_of, + 1, maxDRB, FALSE); return offset; } -static const value_string lte_rrc_T_tdd_r14_vals[] = { - { 0, "v1" }, - { 1, "v2" }, - { 2, "v4" }, - { 3, "v5" }, - { 4, "v8" }, - { 5, "v10" }, - { 6, "v20" }, - { 0, NULL } +static const per_sequence_t T_cellIdentification_r12_sequence[] = { + { &hf_lte_rrc_physCellId_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_dl_CarrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_tdd_r14(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, - 7, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_cellIdentification_r12(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_lte_rrc_T_cellIdentification_r12, T_cellIdentification_r12_sequence); return offset; } -static const value_string lte_rrc_T_mpdcch_StartSF_SC_MCCH_r14_vals[] = { - { 0, "fdd-r14" }, - { 1, "tdd-r14" }, - { 0, NULL } -}; - -static const per_choice_t T_mpdcch_StartSF_SC_MCCH_r14_choice[] = { - { 0, &hf_lte_rrc_fdd_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fdd_r14 }, - { 1, &hf_lte_rrc_tdd_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tdd_r14 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_measResultCellToAdd_r12_sequence[] = { + { &hf_lte_rrc_rsrpResult_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResult_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_mpdcch_StartSF_SC_MCCH_r14(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_lte_rrc_T_mpdcch_StartSF_SC_MCCH_r14, T_mpdcch_StartSF_SC_MCCH_r14_choice, - NULL); +dissect_lte_rrc_T_measResultCellToAdd_r12(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_lte_rrc_T_measResultCellToAdd_r12, T_measResultCellToAdd_r12_sequence); return offset; } -static const value_string lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MCCH_r14_vals[] = { - { 0, "off" }, - { 1, "ce-ModeA" }, - { 2, "ce-ModeB" }, - { 0, NULL } +static const per_sequence_t T_measResultCellToAdd_v1310_sequence[] = { + { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_SINR_Range_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MCCH_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_T_measResultCellToAdd_v1310(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_lte_rrc_T_measResultCellToAdd_v1310, T_measResultCellToAdd_v1310_sequence); return offset; } -static const value_string lte_rrc_T_sc_mcch_RepetitionPeriod_BR_r14_vals[] = { - { 0, "rf32" }, - { 1, "rf128" }, - { 2, "rf512" }, - { 3, "rf1024" }, - { 4, "rf2048" }, - { 5, "rf4096" }, - { 6, "rf8192" }, - { 7, "rf16384" }, - { 0, NULL } +static const per_sequence_t Cell_ToAddMod_r12_eag_1_sequence[] = { + { &hf_lte_rrc_sCellIndex_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellIndex_r13 }, + { &hf_lte_rrc_measResultCellToAdd_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultCellToAdd_v1310 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_BR_r14(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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_sc_mcch_ModificationPeriod_BR_r14_vals[] = { - { 0, "rf32" }, - { 1, "rf128" }, - { 2, "rf256" }, - { 3, "rf512" }, - { 4, "rf1024" }, - { 5, "rf2048" }, - { 6, "rf4096" }, - { 7, "rf8192" }, - { 8, "rf16384" }, - { 9, "rf32768" }, - { 10, "rf65536" }, - { 11, "rf131072" }, - { 12, "rf262144" }, - { 13, "rf524288" }, - { 14, "rf1048576" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_sc_mcch_ModificationPeriod_BR_r14(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, - 15, NULL, FALSE, 0, NULL); +dissect_lte_rrc_Cell_ToAddMod_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, Cell_ToAddMod_r12_eag_1_sequence); return offset; } -static const per_sequence_t T_br_BCCH_Config_r14_sequence[] = { - { &hf_lte_rrc_dummy_02 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dummy_01 }, - { &hf_lte_rrc_dummy2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dummy2 }, - { &hf_lte_rrc_mpdcch_Narrowband_SC_MCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, - { &hf_lte_rrc_mpdcch_NumRepetition_SC_MCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NumRepetition_SC_MCCH_r14 }, - { &hf_lte_rrc_mpdcch_StartSF_SC_MCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_StartSF_SC_MCCH_r14 }, - { &hf_lte_rrc_mpdcch_PDSCH_HoppingConfig_SC_MCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MCCH_r14 }, - { &hf_lte_rrc_sc_mcch_CarrierFreq_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_sc_mcch_Offset_BR_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10 }, - { &hf_lte_rrc_sc_mcch_RepetitionPeriod_BR_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_BR_r14 }, - { &hf_lte_rrc_sc_mcch_ModificationPeriod_BR_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sc_mcch_ModificationPeriod_BR_r14 }, +static const per_sequence_t Cell_ToAddMod_r12_sequence[] = { + { &hf_lte_rrc_sCellIndex_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellIndex_r10 }, + { &hf_lte_rrc_cellIdentification_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_cellIdentification_r12 }, + { &hf_lte_rrc_measResultCellToAdd_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultCellToAdd_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_Cell_ToAddMod_r12_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_br_BCCH_Config_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_Cell_ToAddMod_r12(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_lte_rrc_T_br_BCCH_Config_r14, T_br_BCCH_Config_r14_sequence); + ett_lte_rrc_Cell_ToAddMod_r12, Cell_ToAddMod_r12_sequence); return offset; } -static const value_string lte_rrc_T_onDurationTimerSCPTM_r14_vals[] = { - { 0, "psf10" }, - { 1, "psf20" }, - { 2, "psf100" }, - { 3, "psf300" }, - { 4, "psf500" }, - { 5, "psf1000" }, - { 6, "psf1200" }, - { 7, "psf1600" }, - { 0, NULL } +static const per_sequence_t SCellToAddModListSCG_r12_sequence_of[1] = { + { &hf_lte_rrc_SCellToAddModListSCG_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Cell_ToAddMod_r12 }, }; - static int -dissect_lte_rrc_T_onDurationTimerSCPTM_r14(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SCellToAddModListSCG_r12(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_lte_rrc_SCellToAddModListSCG_r12, SCellToAddModListSCG_r12_sequence_of, + 1, maxSCell_r10, FALSE); return offset; } -static const value_string lte_rrc_T_drx_InactivityTimerSCPTM_r14_vals[] = { - { 0, "psf0" }, - { 1, "psf1" }, - { 2, "psf2" }, - { 3, "psf4" }, - { 4, "psf8" }, - { 5, "psf16" }, - { 6, "psf32" }, - { 7, "psf64" }, - { 8, "psf128" }, - { 9, "psf256" }, - { 10, "ps512" }, - { 11, "psf1024" }, - { 12, "psf2048" }, - { 13, "psf4096" }, - { 14, "psf8192" }, - { 15, "psf16384" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r14(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_M5_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -5, 4U, NULL, FALSE); return offset; } @@ -49683,162 +53573,120 @@ dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r14(tvbuff_t *tvb _U_, int offset _U_ static int -dissect_lte_rrc_INTEGER_0_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_0_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 511U, NULL, FALSE); + 0U, 127U, NULL, FALSE); return offset; } +static const per_sequence_t MeasResultSSTD_r13_sequence[] = { + { &hf_lte_rrc_sfn_OffsetResult_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1023 }, + { &hf_lte_rrc_frameBoundaryOffsetResult_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M5_4 }, + { &hf_lte_rrc_subframeBoundaryOffsetResult_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_127 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 4095U, NULL, FALSE); +dissect_lte_rrc_MeasResultSSTD_r13(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_lte_rrc_MeasResultSSTD_r13, MeasResultSSTD_r13_sequence); return offset; } +static const per_sequence_t MeasResultServCellListSCG_Ext_r13_sequence_of[1] = { + { &hf_lte_rrc_MeasResultServCellListSCG_Ext_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServCellSCG_r12 }, +}; static int -dissect_lte_rrc_INTEGER_0_8191(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 8191U, NULL, FALSE); +dissect_lte_rrc_MeasResultServCellListSCG_Ext_r13(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_lte_rrc_MeasResultServCellListSCG_Ext_r13, MeasResultServCellListSCG_Ext_r13_sequence_of, + 1, maxServCell_r13, FALSE); return offset; } -static const value_string lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_vals[] = { - { 0, "sf10" }, - { 1, "sf20" }, - { 2, "sf32" }, - { 3, "sf40" }, - { 4, "sf64" }, - { 5, "sf80" }, - { 6, "sf128" }, - { 7, "sf160" }, - { 8, "sf256" }, - { 9, "sf320" }, - { 10, "sf512" }, - { 11, "sf640" }, - { 12, "sf1024" }, - { 13, "sf2048" }, - { 14, "sf4096" }, - { 15, "sf8192" }, - { 0, NULL } -}; - -static const per_choice_t T_schedulingPeriodStartOffsetSCPTM_r14_choice[] = { - { 0, &hf_lte_rrc_sf10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_9 }, - { 1, &hf_lte_rrc_sf20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_19 }, - { 2, &hf_lte_rrc_sf32 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_31 }, - { 3, &hf_lte_rrc_sf40 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_39 }, - { 4, &hf_lte_rrc_sf64 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_63 }, - { 5, &hf_lte_rrc_sf80 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_79 }, - { 6, &hf_lte_rrc_sf128 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_127 }, - { 7, &hf_lte_rrc_sf160 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_159 }, - { 8, &hf_lte_rrc_sf256 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_255 }, - { 9, &hf_lte_rrc_sf320 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, - { 10, &hf_lte_rrc_sf512 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_511 }, - { 11, &hf_lte_rrc_sf640 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, - { 12, &hf_lte_rrc_sf1024 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1023 }, - { 13, &hf_lte_rrc_sf2048 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_2047 }, - { 14, &hf_lte_rrc_sf4096 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_4095 }, - { 15, &hf_lte_rrc_sf8192 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_8191 }, - { 0, NULL, 0, NULL } +static const per_sequence_t SCellToAddModListSCG_Ext_r13_sequence_of[1] = { + { &hf_lte_rrc_SCellToAddModListSCG_Ext_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Cell_ToAddMod_r12 }, }; static int -dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14(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_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14, T_schedulingPeriodStartOffsetSCPTM_r14_choice, - NULL); +dissect_lte_rrc_SCellToAddModListSCG_Ext_r13(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_lte_rrc_SCellToAddModListSCG_Ext_r13, SCellToAddModListSCG_Ext_r13_sequence_of, + 1, maxSCell_r13, FALSE); return offset; } -static const per_sequence_t SC_MCCH_SchedulingInfo_r14_sequence[] = { - { &hf_lte_rrc_onDurationTimerSCPTM_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_onDurationTimerSCPTM_r14 }, - { &hf_lte_rrc_drx_InactivityTimerSCPTM_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r14 }, - { &hf_lte_rrc_schedulingPeriodStartOffsetSCPTM_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SC_MCCH_SchedulingInfo_r14(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_lte_rrc_SC_MCCH_SchedulingInfo_r14, SC_MCCH_SchedulingInfo_r14_sequence); +dissect_lte_rrc_INTEGER_0_100(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 100U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_SC_MTCH_r14_vals[] = { - { 0, "r16" }, - { 1, "r32" }, - { 0, NULL } +static const per_sequence_t MeasResultForRSSI_r13_sequence[] = { + { &hf_lte_rrc_rssi_Result_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSSI_Range_r13 }, + { &hf_lte_rrc_channelOccupancy_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_100 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_SC_MTCH_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_MeasResultForRSSI_r13(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_lte_rrc_MeasResultForRSSI_r13, MeasResultForRSSI_r13_sequence); return offset; } -static const value_string lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_SC_MTCH_r14_vals[] = { - { 0, "r192" }, - { 1, "r256" }, - { 2, "r384" }, - { 3, "r512" }, - { 4, "r768" }, - { 5, "r1024" }, - { 6, "r1536" }, - { 7, "r2048" }, - { 0, NULL } +static const per_sequence_t MeasResultRSSI_SCG_r13_sequence[] = { + { &hf_lte_rrc_servCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r13 }, + { &hf_lte_rrc_measResultForRSSI_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultForRSSI_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_SC_MTCH_r14(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MeasResultRSSI_SCG_r13(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_lte_rrc_MeasResultRSSI_SCG_r13, MeasResultRSSI_SCG_r13_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType20_r13_eag_1_sequence[] = { - { &hf_lte_rrc_br_BCCH_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_br_BCCH_Config_r14 }, - { &hf_lte_rrc_sc_mcch_SchedulingInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SC_MCCH_SchedulingInfo_r14 }, - { &hf_lte_rrc_pdsch_maxNumRepetitionCEmodeA_SC_MTCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_SC_MTCH_r14 }, - { &hf_lte_rrc_pdsch_maxNumRepetitionCEmodeB_SC_MTCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_SC_MTCH_r14 }, - { NULL, 0, 0, NULL } +static const per_sequence_t MeasResultListRSSI_SCG_r13_sequence_of[1] = { + { &hf_lte_rrc_MeasResultListRSSI_SCG_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultRSSI_SCG_r13 }, }; static int -dissect_lte_rrc_SystemInformationBlockType20_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType20_r13_eag_1_sequence); +dissect_lte_rrc_MeasResultListRSSI_SCG_r13(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_lte_rrc_MeasResultListRSSI_SCG_r13, MeasResultListRSSI_SCG_r13_sequence_of, + 1, maxServCell_r13, FALSE); return offset; } -static const value_string lte_rrc_T_sc_mcch_RepetitionPeriod_v1470_vals[] = { - { 0, "rf1" }, +static const value_string lte_rrc_T_makeBeforeBreakSCG_Req_r14_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_v1470(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_makeBeforeBreakSCG_Req_r14(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, 1, NULL, FALSE, 0, NULL); @@ -49846,473 +53694,447 @@ dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_v1470(tvbuff_t *tvb _U_, int offset _ } -static const value_string lte_rrc_T_sc_mcch_ModificationPeriod_v1470_vals[] = { - { 0, "rf1" }, - { 0, NULL } +static const per_sequence_t DRB_InfoListSCG_r15_sequence_of[1] = { + { &hf_lte_rrc_DRB_InfoListSCG_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_InfoSCG_r12 }, }; - static int -dissect_lte_rrc_T_sc_mcch_ModificationPeriod_v1470(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_DRB_InfoListSCG_r15(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_lte_rrc_DRB_InfoListSCG_r15, DRB_InfoListSCG_r15_sequence_of, + 1, maxDRB_r15, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType20_r13_eag_2_sequence[] = { - { &hf_lte_rrc_sc_mcch_RepetitionPeriod_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_v1470 }, - { &hf_lte_rrc_sc_mcch_ModificationPeriod_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sc_mcch_ModificationPeriod_v1470 }, +static const per_sequence_t T_nonCriticalExtension_04_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType20_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType20_r13_eag_2_sequence); +dissect_lte_rrc_T_nonCriticalExtension_04(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_lte_rrc_T_nonCriticalExtension_04, T_nonCriticalExtension_04_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType20_r13_sequence[] = { - { &hf_lte_rrc_sc_mcch_RepetitionPeriod_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_r13 }, - { &hf_lte_rrc_sc_mcch_Offset_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10 }, - { &hf_lte_rrc_sc_mcch_FirstSubframe_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_9 }, - { &hf_lte_rrc_sc_mcch_duration_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_9 }, - { &hf_lte_rrc_sc_mcch_ModificationPeriod_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sc_mcch_ModificationPeriod_r13 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType20_r13_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType20_r13_eag_2 }, +static const per_sequence_t SCG_ConfigInfo_v1530_IEs_sequence[] = { + { &hf_lte_rrc_drb_ToAddModListSCG_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_InfoListSCG_r15 }, + { &hf_lte_rrc_drb_ToReleaseListSCG_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToReleaseList_r15 }, + { &hf_lte_rrc_nonCriticalExtension_16, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_04 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType20_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB20"); - +dissect_lte_rrc_SCG_ConfigInfo_v1530_IEs(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_lte_rrc_SystemInformationBlockType20_r13, SystemInformationBlockType20_r13_sequence); + ett_lte_rrc_SCG_ConfigInfo_v1530_IEs, SCG_ConfigInfo_v1530_IEs_sequence); return offset; } -static const per_sequence_t SL_SyncConfigListV2X_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_SyncConfigListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12 }, +static const per_sequence_t SCG_ConfigInfo_v1430_IEs_sequence[] = { + { &hf_lte_rrc_makeBeforeBreakSCG_Req_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_makeBeforeBreakSCG_Req_r14 }, + { &hf_lte_rrc_measGapConfigPerCC_List, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasGapConfigPerCC_List_r14 }, + { &hf_lte_rrc_nonCriticalExtension_15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigInfo_v1530_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_SyncConfigListV2X_r14(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_lte_rrc_SL_SyncConfigListV2X_r14, SL_SyncConfigListV2X_r14_sequence_of, - 1, maxSL_V2X_SyncConfig_r14, FALSE); +dissect_lte_rrc_SCG_ConfigInfo_v1430_IEs(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_lte_rrc_SCG_ConfigInfo_v1430_IEs, SCG_ConfigInfo_v1430_IEs_sequence); return offset; } -static const per_sequence_t SL_AnchorCarrierFreqList_V2X_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_AnchorCarrierFreqList_V2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, +static const per_sequence_t SCG_ConfigInfo_v1330_IEs_sequence[] = { + { &hf_lte_rrc_measResultListRSSI_SCG_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListRSSI_SCG_r13 }, + { &hf_lte_rrc_nonCriticalExtension_14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigInfo_v1430_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_AnchorCarrierFreqList_V2X_r14(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_lte_rrc_SL_AnchorCarrierFreqList_V2X_r14, SL_AnchorCarrierFreqList_V2X_r14_sequence_of, - 1, maxFreqV2X_r14, FALSE); +dissect_lte_rrc_SCG_ConfigInfo_v1330_IEs(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_lte_rrc_SCG_ConfigInfo_v1330_IEs, SCG_ConfigInfo_v1330_IEs_sequence); return offset; } -static const per_sequence_t SL_V2X_ConfigCommon_r14_sequence[] = { - { &hf_lte_rrc_v2x_CommRxPool_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommRxPoolListV2X_r14 }, - { &hf_lte_rrc_v2x_CommTxPoolNormalCommon_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolListV2X_r14 }, - { &hf_lte_rrc_p2x_CommTxPoolNormalCommon_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolListV2X_r14 }, - { &hf_lte_rrc_v2x_CommTxPoolExceptional_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, - { &hf_lte_rrc_v2x_SyncConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigListV2X_r14 }, - { &hf_lte_rrc_v2x_InterFreqInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_InterFreqInfoListV2X_r14 }, - { &hf_lte_rrc_v2x_ResourceSelectionConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolSensingConfig_r14 }, - { &hf_lte_rrc_zoneConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_ZoneConfig_r14 }, - { &hf_lte_rrc_typeTxSync_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TypeTxSync_r14 }, - { &hf_lte_rrc_thresSL_TxPrioritization_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Priority_r13 }, - { &hf_lte_rrc_anchorCarrierFreqList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_AnchorCarrierFreqList_V2X_r14 }, - { &hf_lte_rrc_offsetDFN_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1000 }, - { &hf_lte_rrc_cbr_CommonTxConfigList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_CommonTxConfigList_r14 }, +static const per_sequence_t SCG_ConfigInfo_v1310_IEs_sequence[] = { + { &hf_lte_rrc_measResultSSTD_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultSSTD_r13 }, + { &hf_lte_rrc_sCellToAddModListMCG_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_r13 }, + { &hf_lte_rrc_measResultServCellListSCG_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServCellListSCG_Ext_r13 }, + { &hf_lte_rrc_sCellToAddModListSCG_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListSCG_Ext_r13 }, + { &hf_lte_rrc_sCellToReleaseListSCG_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseListExt_r13 }, + { &hf_lte_rrc_nonCriticalExtension_13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigInfo_v1330_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_V2X_ConfigCommon_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCG_ConfigInfo_v1310_IEs(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_lte_rrc_SL_V2X_ConfigCommon_r14, SL_V2X_ConfigCommon_r14_sequence); + ett_lte_rrc_SCG_ConfigInfo_v1310_IEs, SCG_ConfigInfo_v1310_IEs_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType21_r14_sequence[] = { - { &hf_lte_rrc_sl_V2X_ConfigCommon_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_ConfigCommon_r14 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, +static const per_sequence_t SCG_ConfigInfo_r12_IEs_sequence[] = { + { &hf_lte_rrc_radioResourceConfigDedMCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicated }, + { &hf_lte_rrc_sCellToAddModListMCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_r10 }, + { &hf_lte_rrc_measGapConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasGapConfig }, + { &hf_lte_rrc_powerCoordinationInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PowerCoordinationInfo_r12 }, + { &hf_lte_rrc_scg_RadioConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigPartSCG_r12 }, + { &hf_lte_rrc_eutra_CapabilityInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eutra_CapabilityInfo_r12 }, + { &hf_lte_rrc_scg_ConfigRestrictInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigRestrictInfo_r12 }, + { &hf_lte_rrc_mbmsInterestIndication_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbmsInterestIndication_r12 }, + { &hf_lte_rrc_measResultServCellListSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServCellListSCG_r12 }, + { &hf_lte_rrc_drb_ToAddModListSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_InfoListSCG_r12 }, + { &hf_lte_rrc_drb_ToReleaseListSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToReleaseList }, + { &hf_lte_rrc_sCellToAddModListSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListSCG_r12 }, + { &hf_lte_rrc_sCellToReleaseListSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseList_r10 }, + { &hf_lte_rrc_p_Max_r12 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_nonCriticalExtension_12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigInfo_v1310_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType21_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB21"); - +dissect_lte_rrc_SCG_ConfigInfo_r12_IEs(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_lte_rrc_SystemInformationBlockType21_r14, SystemInformationBlockType21_r14_sequence); + ett_lte_rrc_SCG_ConfigInfo_r12_IEs, SCG_ConfigInfo_r12_IEs_sequence); return offset; } -static const value_string lte_rrc_T_sib_TypeAndInfo_item_vals[] = { - { 0, "sib2" }, - { 1, "sib3" }, - { 2, "sib4" }, - { 3, "sib5" }, - { 4, "sib6" }, - { 5, "sib7" }, - { 6, "sib8" }, - { 7, "sib9" }, - { 8, "sib10" }, - { 9, "sib11" }, - { 10, "sib12-v920" }, - { 11, "sib13-v920" }, - { 12, "sib14-v1130" }, - { 13, "sib15-v1130" }, - { 14, "sib16-v1130" }, - { 15, "sib17-v1250" }, - { 16, "sib18-v1250" }, - { 17, "sib19-v1250" }, - { 18, "sib20-v1310" }, - { 19, "sib21-v1430" }, +static const value_string lte_rrc_T_c1_03_vals[] = { + { 0, "scg-ConfigInfo-r12" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; -static const per_choice_t T_sib_TypeAndInfo_item_choice[] = { - { 0, &hf_lte_rrc_sib2 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType2 }, - { 1, &hf_lte_rrc_sib3 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType3 }, - { 2, &hf_lte_rrc_sib4 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType4 }, - { 3, &hf_lte_rrc_sib5 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType5 }, - { 4, &hf_lte_rrc_sib6 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType6 }, - { 5, &hf_lte_rrc_sib7 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType7 }, - { 6, &hf_lte_rrc_sib8 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType8 }, - { 7, &hf_lte_rrc_sib9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType9 }, - { 8, &hf_lte_rrc_sib10 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType10 }, - { 9, &hf_lte_rrc_sib11 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType11 }, - { 10, &hf_lte_rrc_sib12_v920 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType12_r9 }, - { 11, &hf_lte_rrc_sib13_v920 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType13_r9 }, - { 12, &hf_lte_rrc_sib14_v1130 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType14_r11 }, - { 13, &hf_lte_rrc_sib15_v1130 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType15_r11 }, - { 14, &hf_lte_rrc_sib16_v1130 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType16_r11 }, - { 15, &hf_lte_rrc_sib17_v1250 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType17_r12 }, - { 16, &hf_lte_rrc_sib18_v1250 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType18_r12 }, - { 17, &hf_lte_rrc_sib19_v1250 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType19_r12 }, - { 18, &hf_lte_rrc_sib20_v1310 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType20_r13 }, - { 19, &hf_lte_rrc_sib21_v1430 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType21_r14 }, +static const per_choice_t T_c1_03_choice[] = { + { 0, &hf_lte_rrc_scg_ConfigInfo_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCG_ConfigInfo_r12_IEs }, + { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_sib_TypeAndInfo_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_03(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_lte_rrc_T_sib_TypeAndInfo_item, T_sib_TypeAndInfo_item_choice, + ett_lte_rrc_T_c1_03, T_c1_03_choice, NULL); return offset; } -static const per_sequence_t T_sib_TypeAndInfo_sequence_of[1] = { - { &hf_lte_rrc_sib_TypeAndInfo_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_TypeAndInfo_item }, +static const per_sequence_t T_criticalExtensionsFuture_03_sequence[] = { + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_sib_TypeAndInfo(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_lte_rrc_T_sib_TypeAndInfo, T_sib_TypeAndInfo_sequence_of, - 1, maxSIB, FALSE); +dissect_lte_rrc_T_criticalExtensionsFuture_03(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_lte_rrc_T_criticalExtensionsFuture_03, T_criticalExtensionsFuture_03_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_50_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_criticalExtensions_03_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_03_choice[] = { + { 0, &hf_lte_rrc_c1_03 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_03 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_03 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_50(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_lte_rrc_T_nonCriticalExtension_50, T_nonCriticalExtension_50_sequence); +dissect_lte_rrc_T_criticalExtensions_03(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_lte_rrc_T_criticalExtensions_03, T_criticalExtensions_03_choice, + NULL); return offset; } -static const per_sequence_t SystemInformation_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_139, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_50 }, +static const per_sequence_t SCG_ConfigInfo_r12_sequence[] = { + { &hf_lte_rrc_criticalExtensions_03, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_03 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformation_v8a0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCG_ConfigInfo_r12(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_lte_rrc_SystemInformation_v8a0_IEs, SystemInformation_v8a0_IEs_sequence); + ett_lte_rrc_SCG_ConfigInfo_r12, SCG_ConfigInfo_r12_sequence); return offset; } -static const per_sequence_t SystemInformation_r8_IEs_sequence[] = { - { &hf_lte_rrc_sib_TypeAndInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_TypeAndInfo }, - { &hf_lte_rrc_nonCriticalExtension_138, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformation_v8a0_IEs }, + +static int +dissect_lte_rrc_INTEGER_1_256(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 256U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_05_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformation_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_05(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_lte_rrc_SystemInformation_r8_IEs, SystemInformation_r8_IEs_sequence); + ett_lte_rrc_T_nonCriticalExtension_05, T_nonCriticalExtension_05_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_43_sequence[] = { +static const per_sequence_t UEPagingCoverageInformation_r13_IEs_sequence[] = { + { &hf_lte_rrc_mpdcch_NumRepetition_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_256 }, + { &hf_lte_rrc_nonCriticalExtension_17, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_05 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_43(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UEPagingCoverageInformation_r13_IEs(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_lte_rrc_T_criticalExtensionsFuture_43, T_criticalExtensionsFuture_43_sequence); + ett_lte_rrc_UEPagingCoverageInformation_r13_IEs, UEPagingCoverageInformation_r13_IEs_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_43_vals[] = { - { 0, "systemInformation-r8" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_c1_04_vals[] = { + { 0, "uePagingCoverageInformation-r13" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_43_choice[] = { - { 0, &hf_lte_rrc_systemInformation_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformation_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_43, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_43 }, +static const per_choice_t T_c1_04_choice[] = { + { 0, &hf_lte_rrc_uePagingCoverageInformation_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEPagingCoverageInformation_r13_IEs }, + { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_43(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_04(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_lte_rrc_T_criticalExtensions_43, T_criticalExtensions_43_choice, + ett_lte_rrc_T_c1_04, T_c1_04_choice, NULL); return offset; } -static const per_sequence_t SystemInformation_sequence[] = { - { &hf_lte_rrc_criticalExtensions_43, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_43 }, +static const per_sequence_t T_criticalExtensionsFuture_04_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - if (private_data_get_bcch_dl_sch_msg(actx) == FALSE) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformation ["); - } - - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SystemInformation, SystemInformation_sequence); - - if (private_data_get_bcch_dl_sch_msg(actx) == FALSE) { - col_append_str(actx->pinfo->cinfo, COL_INFO, " ]"); - } - +dissect_lte_rrc_T_criticalExtensionsFuture_04(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_lte_rrc_T_criticalExtensionsFuture_04, T_criticalExtensionsFuture_04_sequence); return offset; } -static const value_string lte_rrc_T_c1_07_vals[] = { - { 0, "systemInformation" }, - { 1, "systemInformationBlockType1" }, +static const value_string lte_rrc_T_criticalExtensions_04_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_c1_07_choice[] = { - { 0, &hf_lte_rrc_systemInformation, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformation }, - { 1, &hf_lte_rrc_systemInformationBlockType1, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformationBlockType1 }, +static const per_choice_t T_criticalExtensions_04_choice[] = { + { 0, &hf_lte_rrc_c1_04 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_04 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_04, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_04 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_04(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_lte_rrc_T_c1_07, T_c1_07_choice, + ett_lte_rrc_T_criticalExtensions_04, T_criticalExtensions_04_choice, NULL); return offset; } -static const per_sequence_t T_messageClassExtension_sequence[] = { +static const per_sequence_t UEPagingCoverageInformation_sequence[] = { + { &hf_lte_rrc_criticalExtensions_04, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_04 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_messageClassExtension(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UEPagingCoverageInformation(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_lte_rrc_T_messageClassExtension, T_messageClassExtension_sequence); + ett_lte_rrc_UEPagingCoverageInformation, UEPagingCoverageInformation_sequence); return offset; } -static const value_string lte_rrc_BCCH_DL_SCH_MessageType_vals[] = { - { 0, "c1" }, - { 1, "messageClassExtension" }, - { 0, NULL } -}; - -static const per_choice_t BCCH_DL_SCH_MessageType_choice[] = { - { 0, &hf_lte_rrc_c1_07 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_07 }, - { 1, &hf_lte_rrc_messageClassExtension, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_BCCH_DL_SCH_MessageType(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_lte_rrc_BCCH_DL_SCH_MessageType, BCCH_DL_SCH_MessageType_choice, - NULL); +dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UECapabilityInformation_PDU); return offset; } -static const per_sequence_t BCCH_DL_SCH_Message_sequence[] = { - { &hf_lte_rrc_message_02 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_DL_SCH_MessageType }, +static const per_sequence_t T_nonCriticalExtension_06_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BCCH_DL_SCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_06(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_lte_rrc_BCCH_DL_SCH_Message, BCCH_DL_SCH_Message_sequence); - - return offset; -} - - - -static int -dissect_lte_rrc_SystemInformation_BR_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - private_data_set_bcch_dl_sch_msg(actx, TRUE); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformation-BR-r13 ["); - - - offset = dissect_lte_rrc_SystemInformation(tvb, offset, actx, tree, hf_index); - - col_append_str(actx->pinfo->cinfo, COL_INFO, " ]"); - + ett_lte_rrc_T_nonCriticalExtension_06, T_nonCriticalExtension_06_sequence); return offset; } +static const per_sequence_t UERadioAccessCapabilityInformation_r8_IEs_sequence[] = { + { &hf_lte_rrc_ue_RadioAccessCapabilityInfo_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo }, + { &hf_lte_rrc_nonCriticalExtension_18, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_06 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_SystemInformationBlockType1_BR_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - private_data_set_bcch_dl_sch_msg(actx, TRUE); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformationBlockType1-BR-r13"); - - offset = dissect_lte_rrc_SystemInformationBlockType1(tvb, offset, actx, tree, hf_index); +dissect_lte_rrc_UERadioAccessCapabilityInformation_r8_IEs(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_lte_rrc_UERadioAccessCapabilityInformation_r8_IEs, UERadioAccessCapabilityInformation_r8_IEs_sequence); return offset; } -static const value_string lte_rrc_T_c1_08_vals[] = { - { 0, "systemInformation-BR-r13" }, - { 1, "systemInformationBlockType1-BR-r13" }, +static const value_string lte_rrc_T_c1_05_vals[] = { + { 0, "ueRadioAccessCapabilityInformation-r8" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; -static const per_choice_t T_c1_08_choice[] = { - { 0, &hf_lte_rrc_systemInformation_BR_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformation_BR_r13 }, - { 1, &hf_lte_rrc_systemInformationBlockType1_BR_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformationBlockType1_BR_r13 }, +static const per_choice_t T_c1_05_choice[] = { + { 0, &hf_lte_rrc_ueRadioAccessCapabilityInformation_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UERadioAccessCapabilityInformation_r8_IEs }, + { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_05(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_lte_rrc_T_c1_08, T_c1_08_choice, + ett_lte_rrc_T_c1_05, T_c1_05_choice, NULL); return offset; } -static const per_sequence_t T_messageClassExtension_01_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_05_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_messageClassExtension_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_05(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_lte_rrc_T_messageClassExtension_01, T_messageClassExtension_01_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_05, T_criticalExtensionsFuture_05_sequence); return offset; } -static const value_string lte_rrc_BCCH_DL_SCH_MessageType_BR_r13_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_05_vals[] = { { 0, "c1" }, - { 1, "messageClassExtension" }, + { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t BCCH_DL_SCH_MessageType_BR_r13_choice[] = { - { 0, &hf_lte_rrc_c1_08 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_08 }, - { 1, &hf_lte_rrc_messageClassExtension_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_01 }, +static const per_choice_t T_criticalExtensions_05_choice[] = { + { 0, &hf_lte_rrc_c1_05 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_05 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_05, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_05 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_BCCH_DL_SCH_MessageType_BR_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_05(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_lte_rrc_BCCH_DL_SCH_MessageType_BR_r13, BCCH_DL_SCH_MessageType_BR_r13_choice, + ett_lte_rrc_T_criticalExtensions_05, T_criticalExtensions_05_choice, NULL); return offset; } -static const per_sequence_t BCCH_DL_SCH_Message_BR_sequence[] = { - { &hf_lte_rrc_message_03 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_DL_SCH_MessageType_BR_r13 }, +static const per_sequence_t UERadioAccessCapabilityInformation_sequence[] = { + { &hf_lte_rrc_criticalExtensions_05, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_05 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BCCH_DL_SCH_Message_BR(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UERadioAccessCapabilityInformation(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_lte_rrc_BCCH_DL_SCH_Message_BR, BCCH_DL_SCH_Message_BR_sequence); + ett_lte_rrc_UERadioAccessCapabilityInformation, UERadioAccessCapabilityInformation_sequence); return offset; } @@ -50320,172 +54142,202 @@ dissect_lte_rrc_BCCH_DL_SCH_Message_BR(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int -dissect_lte_rrc_SystemInformation_MBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - private_data_set_bcch_dl_sch_msg(actx, TRUE); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformation-MBMS-r14 ["); +dissect_lte_rrc_T_ue_RadioPagingInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UE_RadioPagingInfo_r12_PDU); + return offset; +} - offset = dissect_lte_rrc_SystemInformation(tvb, offset, actx, tree, hf_index); - col_append_str(actx->pinfo->cinfo, COL_INFO, " ]"); +static int +dissect_lte_rrc_FreqBandIndicator_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxFBI2, NULL, FALSE); return offset; } -static const per_sequence_t PLMN_IdentityList_MBMS_r14_sequence_of[1] = { - { &hf_lte_rrc_PLMN_IdentityList_MBMS_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, +static const per_sequence_t SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11_sequence_of[1] = { + { &hf_lte_rrc_supportedBandListEUTRAForPaging_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, }; static int -dissect_lte_rrc_PLMN_IdentityList_MBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11(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_lte_rrc_PLMN_IdentityList_MBMS_r14, PLMN_IdentityList_MBMS_r14_sequence_of, - 1, maxPLMN_r11, FALSE); + ett_lte_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11, SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11_sequence_of, + 1, maxBands, FALSE); return offset; } -static const per_sequence_t T_cellAccessRelatedInfo_r14_sequence[] = { - { &hf_lte_rrc_plmn_IdentityList_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityList_MBMS_r14 }, - { &hf_lte_rrc_trackingAreaCode_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, - { &hf_lte_rrc_cellIdentity_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, +static const per_sequence_t T_nonCriticalExtension_07_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cellAccessRelatedInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_07(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_lte_rrc_T_cellAccessRelatedInfo_r14, T_cellAccessRelatedInfo_r14_sequence); + ett_lte_rrc_T_nonCriticalExtension_07, T_nonCriticalExtension_07_sequence); return offset; } -static const value_string lte_rrc_T_si_Periodicity_r14_vals[] = { - { 0, "rf16" }, - { 1, "rf32" }, - { 2, "rf64" }, - { 3, "rf128" }, - { 4, "rf256" }, - { 5, "rf512" }, - { 0, NULL } +static const per_sequence_t UERadioPagingInformation_v1310_IEs_sequence[] = { + { &hf_lte_rrc_supportedBandListEUTRAForPaging_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11 }, + { &hf_lte_rrc_nonCriticalExtension_20, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_07 }, + { NULL, 0, 0, NULL } }; +static int +dissect_lte_rrc_UERadioPagingInformation_v1310_IEs(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_lte_rrc_UERadioPagingInformation_v1310_IEs, UERadioPagingInformation_v1310_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UERadioPagingInformation_r12_IEs_sequence[] = { + { &hf_lte_rrc_ue_RadioPagingInfo_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_RadioPagingInfo_r12 }, + { &hf_lte_rrc_nonCriticalExtension_19, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UERadioPagingInformation_v1310_IEs }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_si_Periodicity_r14(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, - 6, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UERadioPagingInformation_r12_IEs(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_lte_rrc_UERadioPagingInformation_r12_IEs, UERadioPagingInformation_r12_IEs_sequence); return offset; } -static const value_string lte_rrc_SIB_Type_MBMS_r14_vals[] = { - { 0, "sibType10" }, - { 1, "sibType11" }, - { 2, "sibType12-v920" }, - { 3, "sibType13-v920" }, - { 4, "sibType15-v1130" }, - { 5, "sibType16-v1130" }, +static const value_string lte_rrc_T_c1_06_vals[] = { + { 0, "ueRadioPagingInformation-r12" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; +static const per_choice_t T_c1_06_choice[] = { + { 0, &hf_lte_rrc_ueRadioPagingInformation_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UERadioPagingInformation_r12_IEs }, + { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_SIB_Type_MBMS_r14(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, - 6, NULL, TRUE, 0, NULL); +dissect_lte_rrc_T_c1_06(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_lte_rrc_T_c1_06, T_c1_06_choice, + NULL); return offset; } -static const per_sequence_t SIB_MappingInfo_MBMS_r14_sequence_of[1] = { - { &hf_lte_rrc_SIB_MappingInfo_MBMS_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB_Type_MBMS_r14 }, +static const per_sequence_t T_criticalExtensionsFuture_06_sequence[] = { + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SIB_MappingInfo_MBMS_r14(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_lte_rrc_SIB_MappingInfo_MBMS_r14, SIB_MappingInfo_MBMS_r14_sequence_of, - 0, maxSIB_1, FALSE); +dissect_lte_rrc_T_criticalExtensionsFuture_06(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_lte_rrc_T_criticalExtensionsFuture_06, T_criticalExtensionsFuture_06_sequence); return offset; } -static const per_sequence_t SchedulingInfo_MBMS_r14_sequence[] = { - { &hf_lte_rrc_si_Periodicity_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_Periodicity_r14 }, - { &hf_lte_rrc_sib_MappingInfo_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB_MappingInfo_MBMS_r14 }, +static const value_string lte_rrc_T_criticalExtensions_06_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_06_choice[] = { + { 0, &hf_lte_rrc_c1_06 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_06 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_06, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_06 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_06(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_lte_rrc_T_criticalExtensions_06, T_criticalExtensions_06_choice, + NULL); + + return offset; +} + + +static const per_sequence_t UERadioPagingInformation_sequence[] = { + { &hf_lte_rrc_criticalExtensions_06, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_06 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SchedulingInfo_MBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UERadioPagingInformation(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_lte_rrc_SchedulingInfo_MBMS_r14, SchedulingInfo_MBMS_r14_sequence); + ett_lte_rrc_UERadioPagingInformation, UERadioPagingInformation_sequence); return offset; } -static const per_sequence_t SchedulingInfoList_MBMS_r14_sequence_of[1] = { - { &hf_lte_rrc_SchedulingInfoList_MBMS_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfo_MBMS_r14 }, -}; static int -dissect_lte_rrc_SchedulingInfoList_MBMS_r14(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_lte_rrc_SchedulingInfoList_MBMS_r14, SchedulingInfoList_MBMS_r14_sequence_of, - 1, maxSI_Message, FALSE); +dissect_lte_rrc_BCCH_BCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_MasterInformationBlock(tvb, offset, actx, tree, hf_index); return offset; } -static const value_string lte_rrc_T_si_WindowLength_r14_vals[] = { - { 0, "ms1" }, - { 1, "ms2" }, - { 2, "ms5" }, - { 3, "ms10" }, - { 4, "ms15" }, - { 5, "ms20" }, - { 6, "ms40" }, - { 7, "ms80" }, - { 0, NULL } +static const per_sequence_t BCCH_BCH_Message_sequence[] = { + { &hf_lte_rrc_message , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_BCH_MessageType }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_si_WindowLength_r14(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BCCH_BCH_Message(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_lte_rrc_BCCH_BCH_Message, BCCH_BCH_Message_sequence); return offset; } -static const value_string lte_rrc_T_radioFrameAllocationPeriod_r14_vals[] = { - { 0, "rf4" }, - { 1, "rf8" }, - { 2, "rf16" }, - { 3, "rf32" }, - { 4, "rf64" }, - { 5, "rf128" }, - { 6, "rf512" }, +static const value_string lte_rrc_T_dl_Bandwidth_MBMS_r14_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, { 0, NULL } }; static int -dissect_lte_rrc_T_radioFrameAllocationPeriod_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dl_Bandwidth_MBMS_r14(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, - 7, NULL, FALSE, 0, NULL); + 6, NULL, FALSE, 0, NULL); return offset; } @@ -50493,171 +54345,160 @@ dissect_lte_rrc_T_radioFrameAllocationPeriod_r14(tvbuff_t *tvb _U_, int offset _ static int -dissect_lte_rrc_BIT_STRING_SIZE_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BIT_STRING_SIZE_13(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, - 9, 9, FALSE, NULL, NULL); + 13, 13, FALSE, NULL, NULL); return offset; } -static const per_sequence_t NonMBSFN_SubframeConfig_r14_sequence[] = { - { &hf_lte_rrc_radioFrameAllocationPeriod_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_radioFrameAllocationPeriod_r14 }, - { &hf_lte_rrc_radioFrameAllocationOffset_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, - { &hf_lte_rrc_subframeAllocation_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_9 }, +static const per_sequence_t MasterInformationBlock_MBMS_r14_sequence[] = { + { &hf_lte_rrc_dl_Bandwidth_MBMS_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_Bandwidth_MBMS_r14 }, + { &hf_lte_rrc_systemFrameNumber_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_6 }, + { &hf_lte_rrc_additionalNonMBSFNSubframes_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_spare_02 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NonMBSFN_SubframeConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MasterInformationBlock_MBMS_r14(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_lte_rrc_NonMBSFN_SubframeConfig_r14, NonMBSFN_SubframeConfig_r14_sequence); + ett_lte_rrc_MasterInformationBlock_MBMS_r14, MasterInformationBlock_MBMS_r14_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_53_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_nonCriticalExtension_53(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_lte_rrc_T_nonCriticalExtension_53, T_nonCriticalExtension_53_sequence); +dissect_lte_rrc_BCCH_BCH_MessageType_MBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_MasterInformationBlock_MBMS_r14(tvb, offset, actx, tree, hf_index); return offset; } -static const per_sequence_t SystemInformationBlockType1_MBMS_r14_sequence[] = { - { &hf_lte_rrc_cellAccessRelatedInfo_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellAccessRelatedInfo_r14 }, - { &hf_lte_rrc_freqBandIndicator_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, - { &hf_lte_rrc_multiBandInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_r11 }, - { &hf_lte_rrc_schedulingInfoList_MBMS_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfoList_MBMS_r14 }, - { &hf_lte_rrc_si_WindowLength_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_WindowLength_r14 }, - { &hf_lte_rrc_systemInfoValueTag_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, - { &hf_lte_rrc_nonMBSFN_SubframeConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NonMBSFN_SubframeConfig_r14 }, - { &hf_lte_rrc_pdsch_ConfigCommon_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDSCH_ConfigCommon }, - { &hf_lte_rrc_systemInformationBlockType13_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType13_r9 }, - { &hf_lte_rrc_cellAccessRelatedInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14 }, - { &hf_lte_rrc_nonCriticalExtension_155, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_53 }, +static const per_sequence_t BCCH_BCH_Message_MBMS_sequence[] = { + { &hf_lte_rrc_message_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_BCH_MessageType_MBMS_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType1_MBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformationBlockType1-MBMS-r14"); - +dissect_lte_rrc_BCCH_BCH_Message_MBMS(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_lte_rrc_SystemInformationBlockType1_MBMS_r14, SystemInformationBlockType1_MBMS_r14_sequence); + ett_lte_rrc_BCCH_BCH_Message_MBMS, BCCH_BCH_Message_MBMS_sequence); return offset; } -static const value_string lte_rrc_T_c1_09_vals[] = { - { 0, "systemInformation-MBMS-r14" }, - { 1, "systemInformationBlockType1-MBMS-r14" }, +static const value_string lte_rrc_T_q_Hyst_vals[] = { + { 0, "dB0" }, + { 1, "dB1" }, + { 2, "dB2" }, + { 3, "dB3" }, + { 4, "dB4" }, + { 5, "dB5" }, + { 6, "dB6" }, + { 7, "dB8" }, + { 8, "dB10" }, + { 9, "dB12" }, + { 10, "dB14" }, + { 11, "dB16" }, + { 12, "dB18" }, + { 13, "dB20" }, + { 14, "dB22" }, + { 15, "dB24" }, { 0, NULL } }; -static const per_choice_t T_c1_09_choice[] = { - { 0, &hf_lte_rrc_systemInformation_MBMS_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformation_MBMS_r14 }, - { 1, &hf_lte_rrc_systemInformationBlockType1_MBMS_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformationBlockType1_MBMS_r14 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_09(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_lte_rrc_T_c1_09, T_c1_09_choice, - NULL); +dissect_lte_rrc_T_q_Hyst(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_messageClassExtension_02_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sf_Medium_vals[] = { + { 0, "dB-6" }, + { 1, "dB-4" }, + { 2, "dB-2" }, + { 3, "dB0" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_messageClassExtension_02(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_lte_rrc_T_messageClassExtension_02, T_messageClassExtension_02_sequence); +dissect_lte_rrc_T_sf_Medium(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 lte_rrc_BCCH_DL_SCH_MessageType_MBMS_r14_vals[] = { - { 0, "c1" }, - { 1, "messageClassExtension" }, +static const value_string lte_rrc_T_sf_High_vals[] = { + { 0, "dB-6" }, + { 1, "dB-4" }, + { 2, "dB-2" }, + { 3, "dB0" }, { 0, NULL } }; -static const per_choice_t BCCH_DL_SCH_MessageType_MBMS_r14_choice[] = { - { 0, &hf_lte_rrc_c1_09 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_09 }, - { 1, &hf_lte_rrc_messageClassExtension_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_02 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_BCCH_DL_SCH_MessageType_MBMS_r14(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_lte_rrc_BCCH_DL_SCH_MessageType_MBMS_r14, BCCH_DL_SCH_MessageType_MBMS_r14_choice, - NULL); +dissect_lte_rrc_T_sf_High(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 per_sequence_t BCCH_DL_SCH_Message_MBMS_sequence[] = { - { &hf_lte_rrc_message_04 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_DL_SCH_MessageType_MBMS_r14 }, +static const per_sequence_t T_q_HystSF_sequence[] = { + { &hf_lte_rrc_sf_Medium , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sf_Medium }, + { &hf_lte_rrc_sf_High , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sf_High }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BCCH_DL_SCH_Message_MBMS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_q_HystSF(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_lte_rrc_BCCH_DL_SCH_Message_MBMS, BCCH_DL_SCH_Message_MBMS_sequence); + ett_lte_rrc_T_q_HystSF, T_q_HystSF_sequence); return offset; } -static const per_sequence_t CommonSF_AllocPatternList_r9_sequence_of[1] = { - { &hf_lte_rrc_CommonSF_AllocPatternList_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfig }, +static const per_sequence_t T_speedStateReselectionPars_sequence[] = { + { &hf_lte_rrc_mobilityStateParameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityStateParameters }, + { &hf_lte_rrc_q_HystSF , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_q_HystSF }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CommonSF_AllocPatternList_r9(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_lte_rrc_CommonSF_AllocPatternList_r9, CommonSF_AllocPatternList_r9_sequence_of, - 1, maxMBSFN_Allocations, FALSE); +dissect_lte_rrc_T_speedStateReselectionPars(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_lte_rrc_T_speedStateReselectionPars, T_speedStateReselectionPars_sequence); return offset; } -static const value_string lte_rrc_T_commonSF_AllocPeriod_r9_vals[] = { - { 0, "rf4" }, - { 1, "rf8" }, - { 2, "rf16" }, - { 3, "rf32" }, - { 4, "rf64" }, - { 5, "rf128" }, - { 6, "rf256" }, - { 0, NULL } +static const per_sequence_t T_cellReselectionInfoCommon_sequence[] = { + { &hf_lte_rrc_q_Hyst , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_q_Hyst }, + { &hf_lte_rrc_speedStateReselectionPars, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_speedStateReselectionPars }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_commonSF_AllocPeriod_r9(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, - 7, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_cellReselectionInfoCommon(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_lte_rrc_T_cellReselectionInfoCommon, T_cellReselectionInfoCommon_sequence); return offset; } @@ -50665,69 +54506,66 @@ dissect_lte_rrc_T_commonSF_AllocPeriod_r9(tvbuff_t *tvb _U_, int offset _U_, asn static int -dissect_lte_rrc_INTEGER_0_1535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ReselectionThreshold(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 1535U, NULL, FALSE); + 0U, 31U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_mch_SchedulingPeriod_r9_vals[] = { - { 0, "rf8" }, - { 1, "rf16" }, - { 2, "rf32" }, - { 3, "rf64" }, - { 4, "rf128" }, - { 5, "rf256" }, - { 6, "rf512" }, - { 7, "rf1024" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_mch_SchedulingPeriod_r9(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CellReselectionPriority(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7U, NULL, FALSE); return offset; } -static const per_sequence_t PMCH_Config_r9_sequence[] = { - { &hf_lte_rrc_sf_AllocEnd_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1535 }, - { &hf_lte_rrc_dataMCS_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_28 }, - { &hf_lte_rrc_mch_SchedulingPeriod_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mch_SchedulingPeriod_r9 }, +static const per_sequence_t T_cellReselectionServingFreqInfo_sequence[] = { + { &hf_lte_rrc_s_NonIntraSearch, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_threshServingLow, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PMCH_Config_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cellReselectionServingFreqInfo(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_lte_rrc_PMCH_Config_r9, PMCH_Config_r9_sequence); + ett_lte_rrc_T_cellReselectionServingFreqInfo, T_cellReselectionServingFreqInfo_sequence); return offset; } -static const value_string lte_rrc_T_plmn_Id_r9_vals[] = { - { 0, "plmn-Index-r9" }, - { 1, "explicitValue-r9" }, - { 0, NULL } +static const per_sequence_t T_intraFreqCellReselectionInfo_sequence[] = { + { &hf_lte_rrc_q_RxLevMin , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_p_Max , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_s_IntraSearch, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_allowedMeasBandwidth, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AllowedMeasBandwidth }, + { &hf_lte_rrc_presenceAntennaPort1, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PresenceAntennaPort1 }, + { &hf_lte_rrc_neighCellConfig, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellConfig }, + { &hf_lte_rrc_t_ReselectionEUTRA, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, + { &hf_lte_rrc_t_ReselectionEUTRA_SF, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, + { NULL, 0, 0, NULL } }; -static const per_choice_t T_plmn_Id_r9_choice[] = { - { 0, &hf_lte_rrc_plmn_Index_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, - { 1, &hf_lte_rrc_explicitValue_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_PLMN_Identity }, - { 0, NULL, 0, NULL } -}; +static int +dissect_lte_rrc_T_intraFreqCellReselectionInfo(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_lte_rrc_T_intraFreqCellReselectionInfo, T_intraFreqCellReselectionInfo_sequence); + + return offset; +} + + static int -dissect_lte_rrc_T_plmn_Id_r9(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_lte_rrc_T_plmn_Id_r9, T_plmn_Id_r9_choice, - NULL); +dissect_lte_rrc_T_lateNonCriticalExtension_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType3_v10j0_IEs_PDU); return offset; } @@ -50735,103 +54573,113 @@ dissect_lte_rrc_T_plmn_Id_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int -dissect_lte_rrc_OCTET_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 3, 3, FALSE, NULL); +dissect_lte_rrc_ReselectionThresholdQ_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 31U, NULL, FALSE); return offset; } -static const per_sequence_t TMGI_r9_sequence[] = { - { &hf_lte_rrc_plmn_Id_r9 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_plmn_Id_r9 }, - { &hf_lte_rrc_serviceId_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_3 }, +static const per_sequence_t T_s_IntraSearch_v920_sequence[] = { + { &hf_lte_rrc_s_IntraSearchP_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_s_IntraSearchQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_TMGI_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_s_IntraSearch_v920(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_lte_rrc_TMGI_r9, TMGI_r9_sequence); + ett_lte_rrc_T_s_IntraSearch_v920, T_s_IntraSearch_v920_sequence); return offset; } +static const per_sequence_t T_s_NonIntraSearch_v920_sequence[] = { + { &hf_lte_rrc_s_NonIntraSearchP_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_s_NonIntraSearchQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_OCTET_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, NULL); +dissect_lte_rrc_T_s_NonIntraSearch_v920(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_lte_rrc_T_s_NonIntraSearch_v920, T_s_NonIntraSearch_v920_sequence); return offset; } +static const per_sequence_t SystemInformationBlockType3_eag_1_sequence[] = { + { &hf_lte_rrc_s_IntraSearch_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_s_IntraSearch_v920 }, + { &hf_lte_rrc_s_NonIntraSearch_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_s_NonIntraSearch_v920 }, + { &hf_lte_rrc_q_QualMin_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, + { &hf_lte_rrc_threshServingLowQ_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ReselectionThresholdQ_r9 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_maxSessionPerPMCH_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxSessionPerPMCH_1, NULL, FALSE); +dissect_lte_rrc_SystemInformationBlockType3_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_1_sequence); return offset; } -static const per_sequence_t MBMS_SessionInfo_r9_sequence[] = { - { &hf_lte_rrc_tmgi_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TMGI_r9 }, - { &hf_lte_rrc_sessionId_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_1 }, - { &hf_lte_rrc_logicalChannelIdentity_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxSessionPerPMCH_1 }, +static const per_sequence_t SystemInformationBlockType3_eag_2_sequence[] = { + { &hf_lte_rrc_q_QualMinWB_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMS_SessionInfo_r9(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_lte_rrc_MBMS_SessionInfo_r9, MBMS_SessionInfo_r9_sequence); +dissect_lte_rrc_SystemInformationBlockType3_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_2_sequence); return offset; } -static const per_sequence_t MBMS_SessionInfoList_r9_sequence_of[1] = { - { &hf_lte_rrc_MBMS_SessionInfoList_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SessionInfo_r9 }, +static const per_sequence_t SystemInformationBlockType3_eag_3_sequence[] = { + { &hf_lte_rrc_q_QualMinRSRQ_OnAllSymbols_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMS_SessionInfoList_r9(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_lte_rrc_MBMS_SessionInfoList_r9, MBMS_SessionInfoList_r9_sequence_of, - 0, maxSessionPerPMCH, FALSE); +dissect_lte_rrc_SystemInformationBlockType3_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_3_sequence); return offset; } -static const per_sequence_t PMCH_Info_r9_sequence[] = { - { &hf_lte_rrc_pmch_Config_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_Config_r9 }, - { &hf_lte_rrc_mbms_SessionInfoList_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SessionInfoList_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_CellReselectionSubPriority_r13_vals[] = { + { 0, "oDot2" }, + { 1, "oDot4" }, + { 2, "oDot6" }, + { 3, "oDot8" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PMCH_Info_r9(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_lte_rrc_PMCH_Info_r9, PMCH_Info_r9_sequence); +dissect_lte_rrc_CellReselectionSubPriority_r13(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 per_sequence_t PMCH_InfoList_r9_sequence_of[1] = { - { &hf_lte_rrc_PMCH_InfoList_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_Info_r9 }, +static const per_sequence_t CellReselectionServingFreqInfo_v1310_sequence[] = { + { &hf_lte_rrc_cellReselectionSubPriority_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionSubPriority_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PMCH_InfoList_r9(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_lte_rrc_PMCH_InfoList_r9, PMCH_InfoList_r9_sequence_of, - 0, maxPMCH_PerMBSFN, FALSE); +dissect_lte_rrc_CellReselectionServingFreqInfo_v1310(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_lte_rrc_CellReselectionServingFreqInfo_v1310, CellReselectionServingFreqInfo_v1310_sequence); return offset; } @@ -50839,3168 +54687,2975 @@ dissect_lte_rrc_PMCH_InfoList_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * static int -dissect_lte_rrc_INTEGER_0_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_0_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 27U, NULL, FALSE); + 0U, 10U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_dataMCS_r12_vals[] = { - { 0, "normal-r12" }, - { 1, "higerOrder-r12" }, +static const value_string lte_rrc_T_redistributionFactorCell_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t T_dataMCS_r12_choice[] = { - { 0, &hf_lte_rrc_normal_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_28 }, - { 1, &hf_lte_rrc_higerOrder_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_27 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_dataMCS_r12(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_lte_rrc_T_dataMCS_r12, T_dataMCS_r12_choice, - NULL); +dissect_lte_rrc_T_redistributionFactorCell_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_mch_SchedulingPeriod_r12_vals[] = { - { 0, "rf4" }, - { 1, "rf8" }, - { 2, "rf16" }, - { 3, "rf32" }, - { 4, "rf64" }, - { 5, "rf128" }, - { 6, "rf256" }, - { 7, "rf512" }, - { 8, "rf1024" }, +static const value_string lte_rrc_T_t360_r13_vals[] = { + { 0, "min4" }, + { 1, "min8" }, + { 2, "min16" }, + { 3, "min32" }, + { 4, "infinity" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mch_SchedulingPeriod_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t360_r13(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, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_mch_SchedulingPeriod_v1430_vals[] = { - { 0, "rf1" }, - { 1, "rf2" }, +static const value_string lte_rrc_T_redistrOnPagingOnly_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mch_SchedulingPeriod_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_redistrOnPagingOnly_r13(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PMCH_Config_r12_eag_1_sequence[] = { - { &hf_lte_rrc_mch_SchedulingPeriod_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mch_SchedulingPeriod_v1430 }, +static const per_sequence_t RedistributionServingInfo_r13_sequence[] = { + { &hf_lte_rrc_redistributionFactorServing_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10 }, + { &hf_lte_rrc_redistributionFactorCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_redistributionFactorCell_r13 }, + { &hf_lte_rrc_t360_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t360_r13 }, + { &hf_lte_rrc_redistrOnPagingOnly_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_redistrOnPagingOnly_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PMCH_Config_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PMCH_Config_r12_eag_1_sequence); +dissect_lte_rrc_RedistributionServingInfo_r13(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_lte_rrc_RedistributionServingInfo_r13, RedistributionServingInfo_r13_sequence); return offset; } -static const per_sequence_t PMCH_Config_r12_sequence[] = { - { &hf_lte_rrc_sf_AllocEnd_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1535 }, - { &hf_lte_rrc_dataMCS_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dataMCS_r12 }, - { &hf_lte_rrc_mch_SchedulingPeriod_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mch_SchedulingPeriod_r12 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_Config_r12_eag_1 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_PMCH_Config_r12(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_lte_rrc_PMCH_Config_r12, PMCH_Config_r12_sequence); +dissect_lte_rrc_T_ReselectionEUTRA_CE_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 15U, NULL, FALSE); return offset; } -static const per_sequence_t PMCH_InfoExt_r12_sequence[] = { - { &hf_lte_rrc_pmch_Config_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_Config_r12 }, - { &hf_lte_rrc_mbms_SessionInfoList_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SessionInfoList_r9 }, +static const per_sequence_t SystemInformationBlockType3_eag_4_sequence[] = { + { &hf_lte_rrc_cellReselectionServingFreqInfo_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionServingFreqInfo_v1310 }, + { &hf_lte_rrc_redistributionServingInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedistributionServingInfo_r13 }, + { &hf_lte_rrc_cellSelectionInfoCE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE_r13 }, + { &hf_lte_rrc_t_ReselectionEUTRA_CE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ReselectionEUTRA_CE_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PMCH_InfoExt_r12(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_lte_rrc_PMCH_InfoExt_r12, PMCH_InfoExt_r12_sequence); +dissect_lte_rrc_SystemInformationBlockType3_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_4_sequence); return offset; } -static const per_sequence_t PMCH_InfoListExt_r12_sequence_of[1] = { - { &hf_lte_rrc_PMCH_InfoListExt_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_InfoExt_r12 }, +static const per_sequence_t SystemInformationBlockType3_eag_5_sequence[] = { + { &hf_lte_rrc_cellSelectionInfoCE1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PMCH_InfoListExt_r12(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_lte_rrc_PMCH_InfoListExt_r12, PMCH_InfoListExt_r12_sequence_of, - 0, maxPMCH_PerMBSFN, FALSE); +dissect_lte_rrc_SystemInformationBlockType3_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_5_sequence); return offset; } -static const per_sequence_t CommonSF_AllocPatternList_r14_sequence_of[1] = { - { &hf_lte_rrc_CommonSF_AllocPatternList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfig_v1430 }, +static const per_sequence_t SystemInformationBlockType3_eag_6_sequence[] = { + { &hf_lte_rrc_cellSelectionInfoCE1_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_v1360 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CommonSF_AllocPatternList_r14(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_lte_rrc_CommonSF_AllocPatternList_r14, CommonSF_AllocPatternList_r14_sequence_of, - 1, maxMBSFN_Allocations, FALSE); +dissect_lte_rrc_SystemInformationBlockType3_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_6_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_20_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_s_SearchDeltaP_r14_vals[] = { + { 0, "dB6" }, + { 1, "dB9" }, + { 2, "dB12" }, + { 3, "dB15" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_20(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_lte_rrc_T_nonCriticalExtension_20, T_nonCriticalExtension_20_sequence); +dissect_lte_rrc_T_s_SearchDeltaP_r14(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 per_sequence_t MBSFNAreaConfiguration_v1430_IEs_sequence[] = { - { &hf_lte_rrc_commonSF_Alloc_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CommonSF_AllocPatternList_r14 }, - { &hf_lte_rrc_nonCriticalExtension_50, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_20 }, +static const per_sequence_t CellReselectionInfoCommon_v1460_sequence[] = { + { &hf_lte_rrc_s_SearchDeltaP_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_s_SearchDeltaP_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBSFNAreaConfiguration_v1430_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellReselectionInfoCommon_v1460(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_lte_rrc_MBSFNAreaConfiguration_v1430_IEs, MBSFNAreaConfiguration_v1430_IEs_sequence); + ett_lte_rrc_CellReselectionInfoCommon_v1460, CellReselectionInfoCommon_v1460_sequence); return offset; } -static const per_sequence_t MBSFNAreaConfiguration_v1250_IEs_sequence[] = { - { &hf_lte_rrc_pmch_InfoListExt_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PMCH_InfoListExt_r12 }, - { &hf_lte_rrc_nonCriticalExtension_49, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFNAreaConfiguration_v1430_IEs }, +static const per_sequence_t SystemInformationBlockType3_eag_7_sequence[] = { + { &hf_lte_rrc_cellReselectionInfoCommon_v1460, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionInfoCommon_v1460 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBSFNAreaConfiguration_v1250_IEs(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_lte_rrc_MBSFNAreaConfiguration_v1250_IEs, MBSFNAreaConfiguration_v1250_IEs_sequence); +dissect_lte_rrc_SystemInformationBlockType3_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_7_sequence); return offset; } -static const per_sequence_t MBSFNAreaConfiguration_v930_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_48, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFNAreaConfiguration_v1250_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_MBSFNAreaConfiguration_v930_IEs(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_lte_rrc_MBSFNAreaConfiguration_v930_IEs, MBSFNAreaConfiguration_v930_IEs_sequence); +dissect_lte_rrc_INTEGER_2_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 2U, 16U, NULL, FALSE); return offset; } -static const per_sequence_t MBSFNAreaConfiguration_r9_sequence[] = { - { &hf_lte_rrc_commonSF_Alloc_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CommonSF_AllocPatternList_r9 }, - { &hf_lte_rrc_commonSF_AllocPeriod_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_commonSF_AllocPeriod_r9 }, - { &hf_lte_rrc_pmch_InfoList_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_InfoList_r9 }, - { &hf_lte_rrc_nonCriticalExtension_47, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFNAreaConfiguration_v930_IEs }, +static const per_sequence_t CellReselectionInfoHSDN_r15_sequence[] = { + { &hf_lte_rrc_cellEquivalentSize_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_2_16 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBSFNAreaConfiguration_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBSFNAreaConfiguration-r9"); - +dissect_lte_rrc_CellReselectionInfoHSDN_r15(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_lte_rrc_MBSFNAreaConfiguration_r9, MBSFNAreaConfiguration_r9_sequence); + ett_lte_rrc_CellReselectionInfoHSDN_r15, CellReselectionInfoHSDN_r15_sequence); return offset; } -static const value_string lte_rrc_T_c1_10_vals[] = { - { 0, "mbsfnAreaConfiguration-r9" }, +static const value_string lte_rrc_T_crs_IntfMitigNeighCellsCE_r15_vals[] = { + { 0, "enabled" }, { 0, NULL } }; -static const per_choice_t T_c1_10_choice[] = { - { 0, &hf_lte_rrc_mbsfnAreaConfiguration_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBSFNAreaConfiguration_r9 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_10(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_lte_rrc_T_c1_10, T_c1_10_choice, - NULL); +dissect_lte_rrc_T_crs_IntfMitigNeighCellsCE_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CountingRequestInfo_r10_sequence[] = { - { &hf_lte_rrc_tmgi_r10 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TMGI_r9 }, +static const per_sequence_t SystemInformationBlockType3_eag_8_sequence[] = { + { &hf_lte_rrc_cellReselectionInfoHSDN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionInfoHSDN_r15 }, + { &hf_lte_rrc_cellSelectionInfoCE_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE_v1530 }, + { &hf_lte_rrc_crs_IntfMitigNeighCellsCE_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_IntfMitigNeighCellsCE_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CountingRequestInfo_r10(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_lte_rrc_CountingRequestInfo_r10, CountingRequestInfo_r10_sequence); +dissect_lte_rrc_SystemInformationBlockType3_eag_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_eag_8_sequence); return offset; } -static const per_sequence_t CountingRequestList_r10_sequence_of[1] = { - { &hf_lte_rrc_CountingRequestList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CountingRequestInfo_r10 }, +static const per_sequence_t SystemInformationBlockType3_sequence[] = { + { &hf_lte_rrc_cellReselectionInfoCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReselectionInfoCommon }, + { &hf_lte_rrc_cellReselectionServingFreqInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReselectionServingFreqInfo }, + { &hf_lte_rrc_intraFreqCellReselectionInfo, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_intraFreqCellReselectionInfo }, + { &hf_lte_rrc_lateNonCriticalExtension_08, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_07 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_7 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_eag_8 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CountingRequestList_r10(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_lte_rrc_CountingRequestList_r10, CountingRequestList_r10_sequence_of, - 1, maxServiceCount, FALSE); - - return offset; -} - +dissect_lte_rrc_SystemInformationBlockType3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -static const per_sequence_t T_nonCriticalExtension_17_sequence[] = { - { NULL, 0, 0, NULL } -}; + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB3"); -static int -dissect_lte_rrc_T_nonCriticalExtension_17(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_lte_rrc_T_nonCriticalExtension_17, T_nonCriticalExtension_17_sequence); + ett_lte_rrc_SystemInformationBlockType3, SystemInformationBlockType3_sequence); return offset; } -static const per_sequence_t MBMSCountingRequest_r10_sequence[] = { - { &hf_lte_rrc_countingRequestList_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CountingRequestList_r10 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_43, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_17 }, +static const per_sequence_t IntraFreqNeighCellInfo_sequence[] = { + { &hf_lte_rrc_physCellId_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_q_OffsetCell, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_OffsetRange }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMSCountingRequest_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBMSCountingRequest-r10"); - +dissect_lte_rrc_IntraFreqNeighCellInfo(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_lte_rrc_MBMSCountingRequest_r10, MBMSCountingRequest_r10_sequence); + ett_lte_rrc_IntraFreqNeighCellInfo, IntraFreqNeighCellInfo_sequence); return offset; } -static const value_string lte_rrc_T_c2_vals[] = { - { 0, "mbmsCountingRequest-r10" }, - { 0, NULL } -}; - -static const per_choice_t T_c2_choice[] = { - { 0, &hf_lte_rrc_mbmsCountingRequest_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBMSCountingRequest_r10 }, - { 0, NULL, 0, NULL } +static const per_sequence_t IntraFreqNeighCellList_sequence_of[1] = { + { &hf_lte_rrc_IntraFreqNeighCellList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IntraFreqNeighCellInfo }, }; static int -dissect_lte_rrc_T_c2(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_lte_rrc_T_c2, T_c2_choice, - NULL); +dissect_lte_rrc_IntraFreqNeighCellList(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_lte_rrc_IntraFreqNeighCellList, IntraFreqNeighCellList_sequence_of, + 1, maxCellIntra, FALSE); return offset; } -static const per_sequence_t T_messageClassExtension_03_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t IntraFreqBlackCellList_sequence_of[1] = { + { &hf_lte_rrc_IntraFreqBlackCellList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdRange }, }; static int -dissect_lte_rrc_T_messageClassExtension_03(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_lte_rrc_T_messageClassExtension_03, T_messageClassExtension_03_sequence); +dissect_lte_rrc_IntraFreqBlackCellList(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_lte_rrc_IntraFreqBlackCellList, IntraFreqBlackCellList_sequence_of, + 1, maxCellBlack, FALSE); return offset; } -static const value_string lte_rrc_T_later_vals[] = { - { 0, "c2" }, - { 1, "messageClassExtension" }, - { 0, NULL } -}; - -static const per_choice_t T_later_choice[] = { - { 0, &hf_lte_rrc_c2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c2 }, - { 1, &hf_lte_rrc_messageClassExtension_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_03 }, - { 0, NULL, 0, NULL } +static const per_sequence_t IntraFreqNeighHSDN_CellList_r15_sequence_of[1] = { + { &hf_lte_rrc_IntraFreqNeighHSDN_CellList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdRange }, }; static int -dissect_lte_rrc_T_later(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_lte_rrc_T_later, T_later_choice, - NULL); +dissect_lte_rrc_IntraFreqNeighHSDN_CellList_r15(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_lte_rrc_IntraFreqNeighHSDN_CellList_r15, IntraFreqNeighHSDN_CellList_r15_sequence_of, + 1, maxCellIntra, FALSE); return offset; } -static const value_string lte_rrc_MCCH_MessageType_vals[] = { - { 0, "c1" }, - { 1, "later" }, - { 0, NULL } -}; - -static const per_choice_t MCCH_MessageType_choice[] = { - { 0, &hf_lte_rrc_c1_10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_10 }, - { 1, &hf_lte_rrc_later , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_later }, - { 0, NULL, 0, NULL } +static const per_sequence_t SystemInformationBlockType4_eag_1_sequence[] = { + { &hf_lte_rrc_intraFreqNeighHSDN_CellList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IntraFreqNeighHSDN_CellList_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MCCH_MessageType(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_lte_rrc_MCCH_MessageType, MCCH_MessageType_choice, - NULL); +dissect_lte_rrc_SystemInformationBlockType4_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType4_eag_1_sequence); return offset; } -static const per_sequence_t MCCH_Message_sequence[] = { - { &hf_lte_rrc_message_05 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MCCH_MessageType }, +static const per_sequence_t SystemInformationBlockType4_sequence[] = { + { &hf_lte_rrc_intraFreqNeighCellList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IntraFreqNeighCellList }, + { &hf_lte_rrc_intraFreqBlackCellList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IntraFreqBlackCellList }, + { &hf_lte_rrc_csg_PhysCellIdRange, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysCellIdRange }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType4_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MCCH_Message(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_lte_rrc_MCCH_Message, MCCH_Message_sequence); - - return offset; -} - +dissect_lte_rrc_SystemInformationBlockType4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB4"); -static int -dissect_lte_rrc_MMEC(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, - 8, 8, FALSE, NULL, NULL); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformationBlockType4, SystemInformationBlockType4_sequence); return offset; } -static const per_sequence_t S_TMSI_sequence[] = { - { &hf_lte_rrc_mmec , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MMEC }, - { &hf_lte_rrc_m_TMSI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_32 }, +static const per_sequence_t InterFreqNeighCellInfo_sequence[] = { + { &hf_lte_rrc_physCellId_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_q_OffsetCell, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_OffsetRange }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_S_TMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_InterFreqNeighCellInfo(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_lte_rrc_S_TMSI, S_TMSI_sequence); + ett_lte_rrc_InterFreqNeighCellInfo, InterFreqNeighCellInfo_sequence); return offset; } +static const per_sequence_t InterFreqNeighCellList_sequence_of[1] = { + { &hf_lte_rrc_InterFreqNeighCellList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqNeighCellInfo }, +}; static int -dissect_lte_rrc_IMSI_Digit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 9U, NULL, FALSE); +dissect_lte_rrc_InterFreqNeighCellList(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_lte_rrc_InterFreqNeighCellList, InterFreqNeighCellList_sequence_of, + 1, maxCellInter, FALSE); return offset; } -static const per_sequence_t IMSI_sequence_of[1] = { - { &hf_lte_rrc_IMSI_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IMSI_Digit }, +static const per_sequence_t InterFreqBlackCellList_sequence_of[1] = { + { &hf_lte_rrc_InterFreqBlackCellList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdRange }, }; static int -dissect_lte_rrc_IMSI(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_InterFreqBlackCellList(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_lte_rrc_IMSI, IMSI_sequence_of, - 6, 21, FALSE); + ett_lte_rrc_InterFreqBlackCellList, InterFreqBlackCellList_sequence_of, + 1, maxCellBlack, FALSE); return offset; } -static const value_string lte_rrc_PagingUE_Identity_vals[] = { - { 0, "s-TMSI" }, - { 1, "imsi" }, - { 0, NULL } -}; - -static const per_choice_t PagingUE_Identity_choice[] = { - { 0, &hf_lte_rrc_s_TMSI , ASN1_EXTENSION_ROOT , dissect_lte_rrc_S_TMSI }, - { 1, &hf_lte_rrc_imsi , ASN1_EXTENSION_ROOT , dissect_lte_rrc_IMSI }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_threshX_Q_r9_sequence[] = { + { &hf_lte_rrc_threshX_HighQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, + { &hf_lte_rrc_threshX_LowQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PagingUE_Identity(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_lte_rrc_PagingUE_Identity, PagingUE_Identity_choice, - NULL); +dissect_lte_rrc_T_threshX_Q_r9(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_lte_rrc_T_threshX_Q_r9, T_threshX_Q_r9_sequence); return offset; } -static const value_string lte_rrc_T_cn_Domain_vals[] = { - { 0, "ps" }, - { 1, "cs" }, - { 0, NULL } +static const per_sequence_t InterFreqCarrierFreqInfo_eag_1_sequence[] = { + { &hf_lte_rrc_q_QualMin_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, + { &hf_lte_rrc_threshX_Q_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_threshX_Q_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_cn_Domain(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, FALSE, 0, NULL); +dissect_lte_rrc_InterFreqCarrierFreqInfo_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, InterFreqCarrierFreqInfo_eag_1_sequence); return offset; } -static const per_sequence_t PagingRecord_sequence[] = { - { &hf_lte_rrc_ue_Identity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PagingUE_Identity }, - { &hf_lte_rrc_cn_Domain , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cn_Domain }, +static const per_sequence_t InterFreqCarrierFreqInfo_eag_2_sequence[] = { + { &hf_lte_rrc_q_QualMinWB_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PagingRecord(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_lte_rrc_PagingRecord, PagingRecord_sequence); +dissect_lte_rrc_InterFreqCarrierFreqInfo_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, InterFreqCarrierFreqInfo_eag_2_sequence); return offset; } -static const per_sequence_t PagingRecordList_sequence_of[1] = { - { &hf_lte_rrc_PagingRecordList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PagingRecord }, +static const per_sequence_t InterFreqCarrierFreqInfo_sequence[] = { + { &hf_lte_rrc_dl_CarrierFreq, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &hf_lte_rrc_q_RxLevMin , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_p_Max , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_t_ReselectionEUTRA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, + { &hf_lte_rrc_t_ReselectionEUTRA_SF, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, + { &hf_lte_rrc_threshX_High, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_threshX_Low , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_allowedMeasBandwidth, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AllowedMeasBandwidth }, + { &hf_lte_rrc_presenceAntennaPort1, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PresenceAntennaPort1 }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_neighCellConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellConfig }, + { &hf_lte_rrc_q_OffsetFreq, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_OffsetRange }, + { &hf_lte_rrc_interFreqNeighCellList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqNeighCellList }, + { &hf_lte_rrc_interFreqBlackCellList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqBlackCellList }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_eag_2 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PagingRecordList(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_lte_rrc_PagingRecordList, PagingRecordList_sequence_of, - 1, maxPageRec, FALSE); +dissect_lte_rrc_InterFreqCarrierFreqInfo(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_lte_rrc_InterFreqCarrierFreqInfo, InterFreqCarrierFreqInfo_sequence); return offset; } +static const per_sequence_t InterFreqCarrierFreqList_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo }, +}; static int -dissect_lte_rrc_T_pagingRecordList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - /* Number of items is (last 3 bits of first byte and first bit of second) + 1 */ - guint16 number_of_records = ((tvb_get_ntohs(tvb, 0) >> 7) & 0x0f) + 1; - offset = dissect_lte_rrc_PagingRecordList(tvb, offset, actx, tree, hf_index); +dissect_lte_rrc_InterFreqCarrierFreqList(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_lte_rrc_InterFreqCarrierFreqList, InterFreqCarrierFreqList_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + - col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (%u PagingRecords)", number_of_records); +static int +dissect_lte_rrc_T_lateNonCriticalExtension_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType5_v8h0_IEs_PDU); return offset; } -static const value_string lte_rrc_T_systemInfoModification_vals[] = { +static const value_string lte_rrc_T_reducedMeasPerformance_r12_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_systemInfoModification(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_reducedMeasPerformance_r12(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, 1, NULL, FALSE, 0, NULL); - col_append_str(actx->pinfo->cinfo, COL_INFO, " (systemInfoModification)"); - expert_add_info(actx->pinfo, actx->created_item, &ei_lte_rrc_sibs_changing); - - return offset; } -static const value_string lte_rrc_T_etws_Indication_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t InterFreqCarrierFreqInfo_v1250_sequence[] = { + { &hf_lte_rrc_reducedMeasPerformance_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMeasPerformance_r12 }, + { &hf_lte_rrc_q_QualMinRSRQ_OnAllSymbols_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_etws_Indication(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, - 1, NULL, FALSE, 0, NULL); - - col_append_str(actx->pinfo->cinfo, COL_INFO, " (ETWS)"); - expert_add_info(actx->pinfo, actx->created_item, &ei_lte_rrc_earthquake_warning_sys); - +dissect_lte_rrc_InterFreqCarrierFreqInfo_v1250(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_lte_rrc_InterFreqCarrierFreqInfo_v1250, InterFreqCarrierFreqInfo_v1250_sequence); return offset; } -static const value_string lte_rrc_T_cmas_Indication_r9_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t InterFreqCarrierFreqList_v1250_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqList_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1250 }, }; - static int -dissect_lte_rrc_T_cmas_Indication_r9(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, - 1, NULL, FALSE, 0, NULL); - - col_append_str(actx->pinfo->cinfo, COL_INFO, " (CMAS)"); - expert_add_info(actx->pinfo, actx->created_item, &ei_lte_rrc_commercial_mobile_alert_sys); - +dissect_lte_rrc_InterFreqCarrierFreqList_v1250(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_lte_rrc_InterFreqCarrierFreqList_v1250, InterFreqCarrierFreqList_v1250_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const value_string lte_rrc_T_eab_ParamModification_r11_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_threshX_Q_r12_sequence[] = { + { &hf_lte_rrc_threshX_HighQ_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, + { &hf_lte_rrc_threshX_LowQ_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_eab_ParamModification_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_threshX_Q_r12(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_lte_rrc_T_threshX_Q_r12, T_threshX_Q_r12_sequence); return offset; } -static const value_string lte_rrc_T_redistributionIndication_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t MultiBandInfoList_r11_sequence_of[1] = { + { &hf_lte_rrc_MultiBandInfoList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, }; - static int -dissect_lte_rrc_T_redistributionIndication_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MultiBandInfoList_r11(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_lte_rrc_MultiBandInfoList_r11, MultiBandInfoList_r11_sequence_of, + 1, maxMultiBands, FALSE); return offset; } -static const value_string lte_rrc_T_systemInfoModification_eDRX_r13_vals[] = { +static const value_string lte_rrc_T_reducedMeasPerformance_r12_01_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_systemInfoModification_eDRX_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_reducedMeasPerformance_r12_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, 1, NULL, FALSE, 0, NULL); - col_append_str(actx->pinfo->cinfo, COL_INFO, " (systemInfoModification-eDRX-r13)"); - expert_add_info(actx->pinfo, actx->created_item, &ei_lte_rrc_sibs_changing_edrx); - - return offset; } -static const per_sequence_t T_nonCriticalExtension_24_sequence[] = { +static const per_sequence_t InterFreqCarrierFreqInfo_r12_sequence[] = { + { &hf_lte_rrc_dl_CarrierFreq_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_q_RxLevMin_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_p_Max_r12 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_t_ReselectionEUTRA_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, + { &hf_lte_rrc_t_ReselectionEUTRA_SF_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, + { &hf_lte_rrc_threshX_High_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_threshX_Low_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_allowedMeasBandwidth_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AllowedMeasBandwidth }, + { &hf_lte_rrc_presenceAntennaPort1_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PresenceAntennaPort1 }, + { &hf_lte_rrc_cellReselectionPriority_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_neighCellConfig_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellConfig }, + { &hf_lte_rrc_q_OffsetFreq_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_OffsetRange }, + { &hf_lte_rrc_interFreqNeighCellList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqNeighCellList }, + { &hf_lte_rrc_interFreqBlackCellList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqBlackCellList }, + { &hf_lte_rrc_q_QualMin_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, + { &hf_lte_rrc_threshX_Q_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_threshX_Q_r12 }, + { &hf_lte_rrc_q_QualMinWB_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, + { &hf_lte_rrc_multiBandInfoList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_r11 }, + { &hf_lte_rrc_reducedMeasPerformance_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMeasPerformance_r12_01 }, + { &hf_lte_rrc_q_QualMinRSRQ_OnAllSymbols_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_InterFreqCarrierFreqInfo_r12(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_lte_rrc_T_nonCriticalExtension_24, T_nonCriticalExtension_24_sequence); + ett_lte_rrc_InterFreqCarrierFreqInfo_r12, InterFreqCarrierFreqInfo_r12_sequence); return offset; } -static const per_sequence_t Paging_v1310_IEs_sequence[] = { - { &hf_lte_rrc_redistributionIndication_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_redistributionIndication_r13 }, - { &hf_lte_rrc_systemInfoModification_eDRX_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInfoModification_eDRX_r13 }, - { &hf_lte_rrc_nonCriticalExtension_63, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_24 }, - { NULL, 0, 0, NULL } +static const per_sequence_t InterFreqCarrierFreqListExt_r12_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqListExt_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_r12 }, }; static int -dissect_lte_rrc_Paging_v1310_IEs(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_lte_rrc_Paging_v1310_IEs, Paging_v1310_IEs_sequence); +dissect_lte_rrc_InterFreqCarrierFreqListExt_r12(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_lte_rrc_InterFreqCarrierFreqListExt_r12, InterFreqCarrierFreqListExt_r12_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t Paging_v1130_IEs_sequence[] = { - { &hf_lte_rrc_eab_ParamModification_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eab_ParamModification_r11 }, - { &hf_lte_rrc_nonCriticalExtension_62, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Paging_v1310_IEs }, +static const per_sequence_t SystemInformationBlockType5_eag_1_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqList_v1250 }, + { &hf_lte_rrc_interFreqCarrierFreqListExt_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_Paging_v1130_IEs(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_lte_rrc_Paging_v1130_IEs, Paging_v1130_IEs_sequence); +dissect_lte_rrc_SystemInformationBlockType5_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_1_sequence); return offset; } -static const per_sequence_t Paging_v920_IEs_sequence[] = { - { &hf_lte_rrc_cmas_Indication_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cmas_Indication_r9 }, - { &hf_lte_rrc_nonCriticalExtension_61, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Paging_v1130_IEs }, +static const per_sequence_t NS_PmaxValue_r10_sequence[] = { + { &hf_lte_rrc_additionalPmax_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_additionalSpectrumEmission, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_Paging_v920_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NS_PmaxValue_r10(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_lte_rrc_Paging_v920_IEs, Paging_v920_IEs_sequence); + ett_lte_rrc_NS_PmaxValue_r10, NS_PmaxValue_r10_sequence); return offset; } -static const per_sequence_t Paging_v890_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_60, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Paging_v920_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t NS_PmaxList_r10_sequence_of[1] = { + { &hf_lte_rrc_NS_PmaxList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NS_PmaxValue_r10 }, }; static int -dissect_lte_rrc_Paging_v890_IEs(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_lte_rrc_Paging_v890_IEs, Paging_v890_IEs_sequence); +dissect_lte_rrc_NS_PmaxList_r10(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_lte_rrc_NS_PmaxList_r10, NS_PmaxList_r10_sequence_of, + 1, maxNS_Pmax_r10, FALSE); return offset; } -static const per_sequence_t Paging_sequence[] = { - { &hf_lte_rrc_pagingRecordList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pagingRecordList }, - { &hf_lte_rrc_systemInfoModification, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInfoModification }, - { &hf_lte_rrc_etws_Indication, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_etws_Indication }, - { &hf_lte_rrc_nonCriticalExtension_59, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Paging_v890_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t MultiBandInfoList_v10j0_sequence_of[1] = { + { &hf_lte_rrc_MultiBandInfoList_v10j0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NS_PmaxList_r10 }, }; static int -dissect_lte_rrc_Paging(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MultiBandInfoList_v10j0(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_lte_rrc_MultiBandInfoList_v10j0, MultiBandInfoList_v10j0_sequence_of, + 1, maxMultiBands, FALSE); + + return offset; +} - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Paging"); +static const per_sequence_t InterFreqCarrierFreqInfo_v10j0_sequence[] = { + { &hf_lte_rrc_freqBandInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_r10 }, + { &hf_lte_rrc_multiBandInfoList_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10j0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InterFreqCarrierFreqInfo_v10j0(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_lte_rrc_Paging, Paging_sequence); + ett_lte_rrc_InterFreqCarrierFreqInfo_v10j0, InterFreqCarrierFreqInfo_v10j0_sequence); return offset; } -static const value_string lte_rrc_T_c1_11_vals[] = { - { 0, "paging" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_11_choice[] = { - { 0, &hf_lte_rrc_paging , ASN1_NO_EXTENSIONS , dissect_lte_rrc_Paging }, - { 0, NULL, 0, NULL } +static const per_sequence_t InterFreqCarrierFreqListExt_v1280_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqListExt_v1280_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v10j0 }, }; static int -dissect_lte_rrc_T_c1_11(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_lte_rrc_T_c1_11, T_c1_11_choice, - NULL); +dissect_lte_rrc_InterFreqCarrierFreqListExt_v1280(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_lte_rrc_InterFreqCarrierFreqListExt_v1280, InterFreqCarrierFreqListExt_v1280_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t T_messageClassExtension_04_sequence[] = { +static const per_sequence_t SystemInformationBlockType5_eag_2_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqListExt_v1280, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_v1280 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_messageClassExtension_04(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_lte_rrc_T_messageClassExtension_04, T_messageClassExtension_04_sequence); +dissect_lte_rrc_SystemInformationBlockType5_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_2_sequence); return offset; } -static const value_string lte_rrc_PCCH_MessageType_vals[] = { - { 0, "c1" }, - { 1, "messageClassExtension" }, - { 0, NULL } -}; - -static const per_choice_t PCCH_MessageType_choice[] = { - { 0, &hf_lte_rrc_c1_11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_11 }, - { 1, &hf_lte_rrc_messageClassExtension_04, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_04 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_PCCH_MessageType(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_lte_rrc_PCCH_MessageType, PCCH_MessageType_choice, - NULL); +dissect_lte_rrc_RedistributionFactor_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 10U, NULL, FALSE); return offset; } -static const per_sequence_t PCCH_Message_sequence[] = { - { &hf_lte_rrc_message_06 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PCCH_MessageType }, +static const per_sequence_t RedistributionNeighCell_r13_sequence[] = { + { &hf_lte_rrc_physCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_redistributionFactorCell_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RedistributionFactor_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RedistributionNeighCell_r13(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_lte_rrc_PCCH_Message, PCCH_Message_sequence); + ett_lte_rrc_RedistributionNeighCell_r13, RedistributionNeighCell_r13_sequence); return offset; } +static const per_sequence_t RedistributionNeighCellList_r13_sequence_of[1] = { + { &hf_lte_rrc_RedistributionNeighCellList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RedistributionNeighCell_r13 }, +}; static int -dissect_lte_rrc_RRC_TransactionIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 3U, NULL, FALSE); +dissect_lte_rrc_RedistributionNeighCellList_r13(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_lte_rrc_RedistributionNeighCellList_r13, RedistributionNeighCellList_r13_sequence_of, + 1, maxCellInter, FALSE); return offset; } +static const per_sequence_t RedistributionInterFreqInfo_r13_sequence[] = { + { &hf_lte_rrc_redistributionFactorFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedistributionFactor_r13 }, + { &hf_lte_rrc_redistributionNeighCellList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedistributionNeighCellList_r13 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_NextHopChainingCount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 7U, NULL, FALSE); +dissect_lte_rrc_RedistributionInterFreqInfo_r13(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_lte_rrc_RedistributionInterFreqInfo_r13, RedistributionInterFreqInfo_r13_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_31_sequence[] = { +static const per_sequence_t InterFreqCarrierFreqInfo_v1310_sequence[] = { + { &hf_lte_rrc_cellReselectionSubPriority_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionSubPriority_r13 }, + { &hf_lte_rrc_redistributionInterFreqInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedistributionInterFreqInfo_r13 }, + { &hf_lte_rrc_cellSelectionInfoCE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE_r13 }, + { &hf_lte_rrc_t_ReselectionEUTRA_CE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ReselectionEUTRA_CE_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_InterFreqCarrierFreqInfo_v1310(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_lte_rrc_T_nonCriticalExtension_31, T_nonCriticalExtension_31_sequence); + ett_lte_rrc_InterFreqCarrierFreqInfo_v1310, InterFreqCarrierFreqInfo_v1310_sequence); return offset; } -static const per_sequence_t RRCConnectionReestablishment_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_90, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_31 }, - { NULL, 0, 0, NULL } +static const per_sequence_t InterFreqCarrierFreqList_v1310_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqList_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1310 }, }; static int -dissect_lte_rrc_RRCConnectionReestablishment_v8a0_IEs(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_lte_rrc_RRCConnectionReestablishment_v8a0_IEs, RRCConnectionReestablishment_v8a0_IEs_sequence); +dissect_lte_rrc_InterFreqCarrierFreqList_v1310(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_lte_rrc_InterFreqCarrierFreqList_v1310, InterFreqCarrierFreqList_v1310_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t RRCConnectionReestablishment_r8_IEs_sequence[] = { - { &hf_lte_rrc_radioResourceConfigDedicated, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated }, - { &hf_lte_rrc_nextHopChainingCount, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NextHopChainingCount }, - { &hf_lte_rrc_nonCriticalExtension_89, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishment_v8a0_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t InterFreqCarrierFreqListExt_v1310_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqListExt_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1310 }, }; static int -dissect_lte_rrc_RRCConnectionReestablishment_r8_IEs(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_lte_rrc_RRCConnectionReestablishment_r8_IEs, RRCConnectionReestablishment_r8_IEs_sequence); +dissect_lte_rrc_InterFreqCarrierFreqListExt_v1310(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_lte_rrc_InterFreqCarrierFreqListExt_v1310, InterFreqCarrierFreqListExt_v1310_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const value_string lte_rrc_T_c1_31_vals[] = { - { 0, "rrcConnectionReestablishment-r8" }, - { 1, "spare7" }, - { 2, "spare6" }, - { 3, "spare5" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_31_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionReestablishment_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishment_r8_IEs }, - { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t SystemInformationBlockType5_eag_3_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqList_v1310 }, + { &hf_lte_rrc_interFreqCarrierFreqListExt_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_v1310 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_31(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_lte_rrc_T_c1_31, T_c1_31_choice, - NULL); +dissect_lte_rrc_SystemInformationBlockType5_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_3_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_25_sequence[] = { +static const per_sequence_t InterFreqCarrierFreqInfo_v1350_sequence[] = { + { &hf_lte_rrc_cellSelectionInfoCE1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_InterFreqCarrierFreqInfo_v1350(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_lte_rrc_T_criticalExtensionsFuture_25, T_criticalExtensionsFuture_25_sequence); + ett_lte_rrc_InterFreqCarrierFreqInfo_v1350, InterFreqCarrierFreqInfo_v1350_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_25_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } +static const per_sequence_t InterFreqCarrierFreqList_v1350_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqList_v1350_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1350 }, }; -static const per_choice_t T_criticalExtensions_25_choice[] = { - { 0, &hf_lte_rrc_c1_31 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_31 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_25, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_25 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_InterFreqCarrierFreqList_v1350(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_lte_rrc_InterFreqCarrierFreqList_v1350, InterFreqCarrierFreqList_v1350_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t InterFreqCarrierFreqListExt_v1350_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqListExt_v1350_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1350 }, }; static int -dissect_lte_rrc_T_criticalExtensions_25(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_lte_rrc_T_criticalExtensions_25, T_criticalExtensions_25_choice, - NULL); +dissect_lte_rrc_InterFreqCarrierFreqListExt_v1350(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_lte_rrc_InterFreqCarrierFreqListExt_v1350, InterFreqCarrierFreqListExt_v1350_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t RRCConnectionReestablishment_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_25, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_25 }, +static const per_sequence_t SystemInformationBlockType5_eag_4_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v1350, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqList_v1350 }, + { &hf_lte_rrc_interFreqCarrierFreqListExt_v1350, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_v1350 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReestablishment"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionReestablishment, RRCConnectionReestablishment_sequence); +dissect_lte_rrc_SystemInformationBlockType5_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_4_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_33_sequence[] = { +static const per_sequence_t InterFreqCarrierFreqInfo_v1360_sequence[] = { + { &hf_lte_rrc_cellSelectionInfoCE1_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE1_v1360 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_InterFreqCarrierFreqInfo_v1360(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_lte_rrc_T_nonCriticalExtension_33, T_nonCriticalExtension_33_sequence); + ett_lte_rrc_InterFreqCarrierFreqInfo_v1360, InterFreqCarrierFreqInfo_v1360_sequence); return offset; } -static const per_sequence_t RRCConnectionReestablishmentReject_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_98, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_33 }, - { NULL, 0, 0, NULL } +static const per_sequence_t InterFreqCarrierFreqListExt_v1360_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqListExt_v1360_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1360 }, }; static int -dissect_lte_rrc_RRCConnectionReestablishmentReject_v8a0_IEs(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_lte_rrc_RRCConnectionReestablishmentReject_v8a0_IEs, RRCConnectionReestablishmentReject_v8a0_IEs_sequence); +dissect_lte_rrc_InterFreqCarrierFreqListExt_v1360(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_lte_rrc_InterFreqCarrierFreqListExt_v1360, InterFreqCarrierFreqListExt_v1360_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t RRCConnectionReestablishmentReject_r8_IEs_sequence[] = { - { &hf_lte_rrc_nonCriticalExtension_97, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentReject_v8a0_IEs }, +static const per_sequence_t SystemInformationBlockType5_eag_5_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqListExt_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_v1360 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishmentReject_r8_IEs(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_lte_rrc_RRCConnectionReestablishmentReject_r8_IEs, RRCConnectionReestablishmentReject_r8_IEs_sequence); +dissect_lte_rrc_SystemInformationBlockType5_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_5_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_27_sequence[] = { +static const per_sequence_t SystemInformationBlockType5_eag_6_sequence[] = { + { &hf_lte_rrc_scptm_FreqOffset_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_8 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_27(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_lte_rrc_T_criticalExtensionsFuture_27, T_criticalExtensionsFuture_27_sequence); +dissect_lte_rrc_SystemInformationBlockType5_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_6_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_27_vals[] = { - { 0, "rrcConnectionReestablishmentReject-r8" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_27_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionReestablishmentReject_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentReject_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_27, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_27 }, - { 0, NULL, 0, NULL } +static const per_sequence_t InterFreqNeighHSDN_CellList_r15_sequence_of[1] = { + { &hf_lte_rrc_InterFreqNeighHSDN_CellList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdRange }, }; static int -dissect_lte_rrc_T_criticalExtensions_27(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_lte_rrc_T_criticalExtensions_27, T_criticalExtensions_27_choice, - NULL); +dissect_lte_rrc_InterFreqNeighHSDN_CellList_r15(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_lte_rrc_InterFreqNeighHSDN_CellList_r15, InterFreqNeighHSDN_CellList_r15_sequence_of, + 1, maxCellInter, FALSE); return offset; } -static const per_sequence_t RRCConnectionReestablishmentReject_sequence[] = { - { &hf_lte_rrc_criticalExtensions_27, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_27 }, +static const per_sequence_t InterFreqCarrierFreqInfo_v1530_sequence[] = { + { &hf_lte_rrc_hsdn_Indication_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_interFreqNeighHSDN_CellList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqNeighHSDN_CellList_r15 }, + { &hf_lte_rrc_cellSelectionInfoCE_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoCE_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishmentReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReestablishmentReject"); - +dissect_lte_rrc_InterFreqCarrierFreqInfo_v1530(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_lte_rrc_RRCConnectionReestablishmentReject, RRCConnectionReestablishmentReject_sequence); + ett_lte_rrc_InterFreqCarrierFreqInfo_v1530, InterFreqCarrierFreqInfo_v1530_sequence); return offset; } +static const per_sequence_t InterFreqCarrierFreqList_v1530_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqList_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1530 }, +}; static int -dissect_lte_rrc_INTEGER_1_1800(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 1800U, NULL, FALSE); +dissect_lte_rrc_InterFreqCarrierFreqList_v1530(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_lte_rrc_InterFreqCarrierFreqList_v1530, InterFreqCarrierFreqList_v1530_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const value_string lte_rrc_T_deprioritisationType_r11_vals[] = { - { 0, "frequency" }, - { 1, "e-utra" }, - { 0, NULL } +static const per_sequence_t InterFreqCarrierFreqListExt_v1530_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqListExt_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1530 }, }; +static int +dissect_lte_rrc_InterFreqCarrierFreqListExt_v1530(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_lte_rrc_InterFreqCarrierFreqListExt_v1530, InterFreqCarrierFreqListExt_v1530_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t CellList_r15_sequence_of[1] = { + { &hf_lte_rrc_CellList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdRange }, +}; static int -dissect_lte_rrc_T_deprioritisationType_r11(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, FALSE, 0, NULL); +dissect_lte_rrc_CellList_r15(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_lte_rrc_CellList_r15, CellList_r15_sequence_of, + 1, maxCellMeasIdle_r15, FALSE); return offset; } -static const value_string lte_rrc_T_deprioritisationTimer_r11_vals[] = { - { 0, "min5" }, - { 1, "min10" }, - { 2, "min15" }, - { 3, "min30" }, +static const value_string lte_rrc_T_reportQuantities_vals[] = { + { 0, "rsrp" }, + { 1, "rsrq" }, + { 2, "both" }, { 0, NULL } }; static int -dissect_lte_rrc_T_deprioritisationTimer_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_reportQuantities(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); + 3, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_deprioritisationReq_r11_sequence[] = { - { &hf_lte_rrc_deprioritisationType_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deprioritisationType_r11 }, - { &hf_lte_rrc_deprioritisationTimer_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deprioritisationTimer_r11 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_deprioritisationReq_r11(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_lte_rrc_T_deprioritisationReq_r11, T_deprioritisationReq_r11_sequence); +dissect_lte_rrc_RSRQ_Range_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -30, 46U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_rrc_SuspendIndication_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_qualityThreshold_r15_sequence[] = { + { &hf_lte_rrc_idleRSRP_Threshold_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_idleRSRQ_Threshold_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_rrc_SuspendIndication_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_qualityThreshold_r15(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_lte_rrc_T_qualityThreshold_r15, T_qualityThreshold_r15_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_34_sequence[] = { +static const per_sequence_t MeasIdleCarrierEUTRA_r15_sequence[] = { + { &hf_lte_rrc_carrierFreq_r15_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_allowedMeasBandwidth_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AllowedMeasBandwidth }, + { &hf_lte_rrc_validityArea_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellList_r15 }, + { &hf_lte_rrc_measCellList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellList_r15 }, + { &hf_lte_rrc_reportQuantities, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_reportQuantities }, + { &hf_lte_rrc_qualityThreshold_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_qualityThreshold_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasIdleCarrierEUTRA_r15(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_lte_rrc_T_nonCriticalExtension_34, T_nonCriticalExtension_34_sequence); + ett_lte_rrc_MeasIdleCarrierEUTRA_r15, MeasIdleCarrierEUTRA_r15_sequence); return offset; } -static const per_sequence_t RRCConnectionReject_v1320_IEs_sequence[] = { - { &hf_lte_rrc_rrc_SuspendIndication_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rrc_SuspendIndication_r13 }, - { &hf_lte_rrc_nonCriticalExtension_103, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_34 }, - { NULL, 0, 0, NULL } +static const per_sequence_t EUTRA_CarrierList_r15_sequence_of[1] = { + { &hf_lte_rrc_EUTRA_CarrierList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasIdleCarrierEUTRA_r15 }, }; static int -dissect_lte_rrc_RRCConnectionReject_v1320_IEs(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_lte_rrc_RRCConnectionReject_v1320_IEs, RRCConnectionReject_v1320_IEs_sequence); +dissect_lte_rrc_EUTRA_CarrierList_r15(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_lte_rrc_EUTRA_CarrierList_r15, EUTRA_CarrierList_r15_sequence_of, + 1, maxFreqIdle_r15, FALSE); return offset; } -static const per_sequence_t RRCConnectionReject_v1130_IEs_sequence[] = { - { &hf_lte_rrc_deprioritisationReq_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deprioritisationReq_r11 }, - { &hf_lte_rrc_nonCriticalExtension_102, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReject_v1320_IEs }, +static const per_sequence_t MeasIdleConfigSIB_r15_sequence[] = { + { &hf_lte_rrc_measIdleCarrierListEUTRA_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_EUTRA_CarrierList_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReject_v1130_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasIdleConfigSIB_r15(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_lte_rrc_RRCConnectionReject_v1130_IEs, RRCConnectionReject_v1130_IEs_sequence); + ett_lte_rrc_MeasIdleConfigSIB_r15, MeasIdleConfigSIB_r15_sequence); return offset; } -static const per_sequence_t RRCConnectionReject_v1020_IEs_sequence[] = { - { &hf_lte_rrc_extendedWaitTime_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_1800 }, - { &hf_lte_rrc_nonCriticalExtension_101, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReject_v1130_IEs }, +static const per_sequence_t SystemInformationBlockType5_eag_7_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqList_v1530 }, + { &hf_lte_rrc_interFreqCarrierFreqListExt_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqListExt_v1530 }, + { &hf_lte_rrc_measIdleConfigSIB_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasIdleConfigSIB_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReject_v1020_IEs(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_lte_rrc_RRCConnectionReject_v1020_IEs, RRCConnectionReject_v1020_IEs_sequence); +dissect_lte_rrc_SystemInformationBlockType5_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType5_eag_7_sequence); return offset; } -static const per_sequence_t RRCConnectionReject_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_100, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReject_v1020_IEs }, +static const per_sequence_t SystemInformationBlockType5_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqList, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqList }, + { &hf_lte_rrc_lateNonCriticalExtension_09, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_08 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType5_eag_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReject_v8a0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB5"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionReject_v8a0_IEs, RRCConnectionReject_v8a0_IEs_sequence); + ett_lte_rrc_SystemInformationBlockType5, SystemInformationBlockType5_sequence); return offset; } -static const per_sequence_t RRCConnectionReject_r8_IEs_sequence[] = { - { &hf_lte_rrc_waitTime , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_16 }, - { &hf_lte_rrc_nonCriticalExtension_99, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReject_v8a0_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RRCConnectionReject_r8_IEs(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_lte_rrc_RRCConnectionReject_r8_IEs, RRCConnectionReject_r8_IEs_sequence); +dissect_lte_rrc_INTEGER_M60_M13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -60, -13, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_c1_32_vals[] = { - { 0, "rrcConnectionReject-r8" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_32_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionReject_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReject_r8_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_32(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_lte_rrc_T_c1_32, T_c1_32_choice, - NULL); +dissect_lte_rrc_INTEGER_M50_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -50, 33U, NULL, FALSE); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_29_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensionsFuture_29(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_lte_rrc_T_criticalExtensionsFuture_29, T_criticalExtensionsFuture_29_sequence); +dissect_lte_rrc_INTEGER_M24_0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -24, 0U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_criticalExtensions_29_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_29_choice[] = { - { 0, &hf_lte_rrc_c1_32 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_32 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_29, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_29 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_threshX_Q_r9_01_sequence[] = { + { &hf_lte_rrc_threshX_HighQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, + { &hf_lte_rrc_threshX_LowQ_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_29(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_lte_rrc_T_criticalExtensions_29, T_criticalExtensions_29_choice, - NULL); +dissect_lte_rrc_T_threshX_Q_r9_01(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_lte_rrc_T_threshX_Q_r9_01, T_threshX_Q_r9_01_sequence); return offset; } -static const per_sequence_t RRCConnectionReject_sequence[] = { - { &hf_lte_rrc_criticalExtensions_29, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_29 }, +static const per_sequence_t CarrierFreqUTRA_FDD_eag_1_sequence[] = { + { &hf_lte_rrc_threshX_Q_r9_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_threshX_Q_r9_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReject"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionReject, RRCConnectionReject_sequence); +dissect_lte_rrc_CarrierFreqUTRA_FDD_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, CarrierFreqUTRA_FDD_eag_1_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_39_sequence[] = { +static const per_sequence_t CarrierFreqUTRA_FDD_sequence[] = { + { &hf_lte_rrc_carrierFreq_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_threshX_High, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_threshX_Low , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_q_RxLevMin_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_M13 }, + { &hf_lte_rrc_p_MaxUTRA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M50_33 }, + { &hf_lte_rrc_q_QualMin , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M24_0 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqUTRA_FDD_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_39(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CarrierFreqUTRA_FDD(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_lte_rrc_T_nonCriticalExtension_39, T_nonCriticalExtension_39_sequence); + ett_lte_rrc_CarrierFreqUTRA_FDD, CarrierFreqUTRA_FDD_sequence); return offset; } -static const per_sequence_t RRCConnectionSetup_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_113, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_39 }, - { NULL, 0, 0, NULL } +static const per_sequence_t CarrierFreqListUTRA_FDD_sequence_of[1] = { + { &hf_lte_rrc_CarrierFreqListUTRA_FDD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqUTRA_FDD }, }; static int -dissect_lte_rrc_RRCConnectionSetup_v8a0_IEs(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_lte_rrc_RRCConnectionSetup_v8a0_IEs, RRCConnectionSetup_v8a0_IEs_sequence); +dissect_lte_rrc_CarrierFreqListUTRA_FDD(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_lte_rrc_CarrierFreqListUTRA_FDD, CarrierFreqListUTRA_FDD_sequence_of, + 1, maxUTRA_FDD_Carrier, FALSE); return offset; } -static const per_sequence_t RRCConnectionSetup_r8_IEs_sequence[] = { - { &hf_lte_rrc_radioResourceConfigDedicated, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated }, - { &hf_lte_rrc_nonCriticalExtension_112, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetup_v8a0_IEs }, +static const per_sequence_t CarrierFreqUTRA_TDD_sequence[] = { + { &hf_lte_rrc_carrierFreq_02, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_threshX_High, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_threshX_Low , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_q_RxLevMin_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_M13 }, + { &hf_lte_rrc_p_MaxUTRA , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M50_33 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionSetup_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CarrierFreqUTRA_TDD(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_lte_rrc_RRCConnectionSetup_r8_IEs, RRCConnectionSetup_r8_IEs_sequence); + ett_lte_rrc_CarrierFreqUTRA_TDD, CarrierFreqUTRA_TDD_sequence); return offset; } -static const value_string lte_rrc_T_c1_35_vals[] = { - { 0, "rrcConnectionSetup-r8" }, - { 1, "spare7" }, - { 2, "spare6" }, - { 3, "spare5" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_35_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionSetup_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionSetup_r8_IEs }, - { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t CarrierFreqListUTRA_TDD_sequence_of[1] = { + { &hf_lte_rrc_CarrierFreqListUTRA_TDD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqUTRA_TDD }, }; static int -dissect_lte_rrc_T_c1_35(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_lte_rrc_T_c1_35, T_c1_35_choice, - NULL); +dissect_lte_rrc_CarrierFreqListUTRA_TDD(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_lte_rrc_CarrierFreqListUTRA_TDD, CarrierFreqListUTRA_TDD_sequence_of, + 1, maxUTRA_TDD_Carrier, FALSE); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_35_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensionsFuture_35(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_lte_rrc_T_criticalExtensionsFuture_35, T_criticalExtensionsFuture_35_sequence); +dissect_lte_rrc_T_lateNonCriticalExtension_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType6_v8h0_IEs_PDU); return offset; } -static const value_string lte_rrc_T_criticalExtensions_35_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_reducedMeasPerformance_r12_02_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_35_choice[] = { - { 0, &hf_lte_rrc_c1_35 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_35 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_35, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_35 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_35(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_lte_rrc_T_criticalExtensions_35, T_criticalExtensions_35_choice, - NULL); +dissect_lte_rrc_T_reducedMeasPerformance_r12_02(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionSetup_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_35, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_35 }, +static const per_sequence_t CarrierFreqInfoUTRA_v1250_sequence[] = { + { &hf_lte_rrc_reducedMeasPerformance_r12_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMeasPerformance_r12_02 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionSetup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - mac_lte_info* p_mac_lte_info; - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionSetup"); - - /* Look for UE identifier */ - p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0); - if (p_mac_lte_info != NULL) { - /* If found, tell MAC to release DRX config coming from a previous RRC connection */ - /* We do release the configuration here instead of RRC Connection Release message */ - /* as the UE could have locally dropped the previous RRC Connection */ - set_mac_lte_drx_config_release(p_mac_lte_info->ueid, actx->pinfo); - /* Also tell MAC to release extended BSR sizes configuration */ - set_mac_lte_extended_bsr_sizes(p_mac_lte_info->ueid, FALSE, actx->pinfo); - /* Also tell MAC to release simutaneous PUCCH/PUSCH configuration */ - set_mac_lte_simult_pucch_pusch(p_mac_lte_info->ueid, SIMULT_PUCCH_PUSCH_PCELL, FALSE, actx->pinfo); - set_mac_lte_simult_pucch_pusch(p_mac_lte_info->ueid, SIMULT_PUCCH_PUSCH_PSCELL, FALSE, actx->pinfo); - /* TODO: also release PDCP security config here */ - } +dissect_lte_rrc_CarrierFreqInfoUTRA_v1250(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_lte_rrc_RRCConnectionSetup, RRCConnectionSetup_sequence); + ett_lte_rrc_CarrierFreqInfoUTRA_v1250, CarrierFreqInfoUTRA_v1250_sequence); + + return offset; +} +static const per_sequence_t SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_v1250_sequence_of[1] = { + { &hf_lte_rrc_carrierFreqListUTRA_FDD_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqInfoUTRA_v1250 }, +}; +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_v1250(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_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_v1250, SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_v1250_sequence_of, + 1, maxUTRA_FDD_Carrier, FALSE); return offset; } -static const value_string lte_rrc_T_c1_12_vals[] = { - { 0, "rrcConnectionReestablishment" }, - { 1, "rrcConnectionReestablishmentReject" }, - { 2, "rrcConnectionReject" }, - { 3, "rrcConnectionSetup" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_12_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionReestablishment, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishment }, - { 1, &hf_lte_rrc_rrcConnectionReestablishmentReject, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentReject }, - { 2, &hf_lte_rrc_rrcConnectionReject, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReject }, - { 3, &hf_lte_rrc_rrcConnectionSetup, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionSetup }, - { 0, NULL, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250_sequence_of[1] = { + { &hf_lte_rrc_carrierFreqListUTRA_TDD_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqInfoUTRA_v1250 }, }; static int -dissect_lte_rrc_T_c1_12(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_lte_rrc_T_c1_12, T_c1_12_choice, - NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250(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_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250, SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250_sequence_of, + 1, maxUTRA_TDD_Carrier, FALSE); return offset; } -static const per_sequence_t T_messageClassExtension_05_sequence[] = { +static const per_sequence_t T_threshX_Q_r12_01_sequence[] = { + { &hf_lte_rrc_threshX_HighQ_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, + { &hf_lte_rrc_threshX_LowQ_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_messageClassExtension_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_threshX_Q_r12_01(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_lte_rrc_T_messageClassExtension_05, T_messageClassExtension_05_sequence); + ett_lte_rrc_T_threshX_Q_r12_01, T_threshX_Q_r12_01_sequence); return offset; } -static const value_string lte_rrc_DL_CCCH_MessageType_vals[] = { - { 0, "c1" }, - { 1, "messageClassExtension" }, - { 0, NULL } -}; - -static const per_choice_t DL_CCCH_MessageType_choice[] = { - { 0, &hf_lte_rrc_c1_12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_12 }, - { 1, &hf_lte_rrc_messageClassExtension_05, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_05 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_DL_CCCH_MessageType(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_lte_rrc_DL_CCCH_MessageType, DL_CCCH_MessageType_choice, - NULL); +dissect_lte_rrc_FreqBandIndicator_UTRA_FDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 86U, NULL, FALSE); return offset; } -static const per_sequence_t DL_CCCH_Message_sequence[] = { - { &hf_lte_rrc_message_07 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CCCH_MessageType }, - { NULL, 0, 0, NULL } +static const per_sequence_t FreqBandIndicator_UTRA_FDD_r12_sequence_of[1] = { + { &hf_lte_rrc_multiBandInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_UTRA_FDD }, }; static int -dissect_lte_rrc_DL_CCCH_Message(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_lte_rrc_DL_CCCH_Message, DL_CCCH_Message_sequence); +dissect_lte_rrc_FreqBandIndicator_UTRA_FDD_r12(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_lte_rrc_FreqBandIndicator_UTRA_FDD_r12, FreqBandIndicator_UTRA_FDD_r12_sequence_of, + 1, maxMultiBands, FALSE); return offset; } +static const value_string lte_rrc_T_reducedMeasPerformance_r12_03_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_RAND_CDMA2000(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, - 32, 32, FALSE, NULL, NULL); +dissect_lte_rrc_T_reducedMeasPerformance_r12_03(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t CarrierFreqUTRA_FDD_Ext_r12_sequence[] = { + { &hf_lte_rrc_carrierFreq_r12_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, + { &hf_lte_rrc_cellReselectionPriority_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_threshX_High_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_threshX_Low_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_q_RxLevMin_r12_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_M13 }, + { &hf_lte_rrc_p_MaxUTRA_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M50_33 }, + { &hf_lte_rrc_q_QualMin_r12_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M24_0 }, + { &hf_lte_rrc_threshX_Q_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_threshX_Q_r12_01 }, + { &hf_lte_rrc_multiBandInfoList_r12_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_UTRA_FDD_r12 }, + { &hf_lte_rrc_reducedMeasPerformance_r12_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMeasPerformance_r12_03 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_MobilityParametersCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL); +dissect_lte_rrc_CarrierFreqUTRA_FDD_Ext_r12(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_lte_rrc_CarrierFreqUTRA_FDD_Ext_r12, CarrierFreqUTRA_FDD_Ext_r12_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_11_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t CarrierFreqListUTRA_FDD_Ext_r12_sequence_of[1] = { + { &hf_lte_rrc_CarrierFreqListUTRA_FDD_Ext_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqUTRA_FDD_Ext_r12 }, }; static int -dissect_lte_rrc_T_nonCriticalExtension_11(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_lte_rrc_T_nonCriticalExtension_11, T_nonCriticalExtension_11_sequence); +dissect_lte_rrc_CarrierFreqListUTRA_FDD_Ext_r12(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_lte_rrc_CarrierFreqListUTRA_FDD_Ext_r12, CarrierFreqListUTRA_FDD_Ext_r12_sequence_of, + 1, maxUTRA_FDD_Carrier, FALSE); return offset; } -static const per_sequence_t CSFBParametersResponseCDMA2000_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_27, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_11 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_reducedMeasPerformance_r12_04_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CSFBParametersResponseCDMA2000_v8a0_IEs(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_lte_rrc_CSFBParametersResponseCDMA2000_v8a0_IEs, CSFBParametersResponseCDMA2000_v8a0_IEs_sequence); +dissect_lte_rrc_T_reducedMeasPerformance_r12_04(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CSFBParametersResponseCDMA2000_r8_IEs_sequence[] = { - { &hf_lte_rrc_rand , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RAND_CDMA2000 }, - { &hf_lte_rrc_mobilityParameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityParametersCDMA2000 }, - { &hf_lte_rrc_nonCriticalExtension_26, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFBParametersResponseCDMA2000_v8a0_IEs }, +static const per_sequence_t CarrierFreqUTRA_TDD_r12_sequence[] = { + { &hf_lte_rrc_carrierFreq_r12_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, + { &hf_lte_rrc_cellReselectionPriority_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_threshX_High_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_threshX_Low_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_q_RxLevMin_r12_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_M13 }, + { &hf_lte_rrc_p_MaxUTRA_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M50_33 }, + { &hf_lte_rrc_reducedMeasPerformance_r12_04, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMeasPerformance_r12_04 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CSFBParametersResponseCDMA2000_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CarrierFreqUTRA_TDD_r12(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_lte_rrc_CSFBParametersResponseCDMA2000_r8_IEs, CSFBParametersResponseCDMA2000_r8_IEs_sequence); + ett_lte_rrc_CarrierFreqUTRA_TDD_r12, CarrierFreqUTRA_TDD_r12_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_10_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t CarrierFreqListUTRA_TDD_Ext_r12_sequence_of[1] = { + { &hf_lte_rrc_CarrierFreqListUTRA_TDD_Ext_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqUTRA_TDD_r12 }, }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_10(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_lte_rrc_T_criticalExtensionsFuture_10, T_criticalExtensionsFuture_10_sequence); +dissect_lte_rrc_CarrierFreqListUTRA_TDD_Ext_r12(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_lte_rrc_CarrierFreqListUTRA_TDD_Ext_r12, CarrierFreqListUTRA_TDD_Ext_r12_sequence_of, + 1, maxUTRA_TDD_Carrier, FALSE); return offset; } -static const value_string lte_rrc_T_criticalExtensions_10_vals[] = { - { 0, "csfbParametersResponseCDMA2000-r8" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_10_choice[] = { - { 0, &hf_lte_rrc_csfbParametersResponseCDMA2000_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSFBParametersResponseCDMA2000_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_10 }, - { 0, NULL, 0, NULL } +static const per_sequence_t SystemInformationBlockType6_eag_1_sequence[] = { + { &hf_lte_rrc_carrierFreqListUTRA_FDD_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_v1250 }, + { &hf_lte_rrc_carrierFreqListUTRA_TDD_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250 }, + { &hf_lte_rrc_carrierFreqListUTRA_FDD_Ext_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListUTRA_FDD_Ext_r12 }, + { &hf_lte_rrc_carrierFreqListUTRA_TDD_Ext_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListUTRA_TDD_Ext_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_10(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_lte_rrc_T_criticalExtensions_10, T_criticalExtensions_10_choice, - NULL); +dissect_lte_rrc_SystemInformationBlockType6_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType6_eag_1_sequence); return offset; } -static const per_sequence_t CSFBParametersResponseCDMA2000_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_10 }, +static const per_sequence_t SystemInformationBlockType6_sequence[] = { + { &hf_lte_rrc_carrierFreqListUTRA_FDD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListUTRA_FDD }, + { &hf_lte_rrc_carrierFreqListUTRA_TDD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListUTRA_TDD }, + { &hf_lte_rrc_t_ReselectionUTRA, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, + { &hf_lte_rrc_t_ReselectionUTRA_SF, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, + { &hf_lte_rrc_lateNonCriticalExtension_10, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_09 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType6_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CSFBParametersResponseCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CSFBParametersResponseCDMA2000"); + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB6"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_CSFBParametersResponseCDMA2000, CSFBParametersResponseCDMA2000_sequence); + ett_lte_rrc_SystemInformationBlockType6, SystemInformationBlockType6_sequence); return offset; } +static const per_sequence_t T_commonInfo_sequence[] = { + { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_ncc_Permitted, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_8 }, + { &hf_lte_rrc_q_RxLevMin_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_45 }, + { &hf_lte_rrc_p_MaxGERAN , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_39 }, + { &hf_lte_rrc_threshX_High, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_threshX_Low , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_DedicatedInfoNAS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *nas_eps_tvb=NULL; - proto_tree *subtree; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &nas_eps_tvb); - - if ((nas_eps_tvb)&&(nas_eps_handle)) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_dedicatedInfoNAS); - lte_rrc_call_dissector(nas_eps_handle, nas_eps_tvb, actx->pinfo, subtree); - } - +dissect_lte_rrc_T_commonInfo(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_lte_rrc_T_commonInfo, T_commonInfo_sequence); return offset; } +static const per_sequence_t CarrierFreqsInfoGERAN_sequence[] = { + { &hf_lte_rrc_carrierFreqs, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqsGERAN }, + { &hf_lte_rrc_commonInfo , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_commonInfo }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_DedicatedInfoCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, NULL); +dissect_lte_rrc_CarrierFreqsInfoGERAN(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_lte_rrc_CarrierFreqsInfoGERAN, CarrierFreqsInfoGERAN_sequence); return offset; } -static const value_string lte_rrc_T_dedicatedInfoType_vals[] = { - { 0, "dedicatedInfoNAS" }, - { 1, "dedicatedInfoCDMA2000-1XRTT" }, - { 2, "dedicatedInfoCDMA2000-HRPD" }, - { 0, NULL } -}; - -static const per_choice_t T_dedicatedInfoType_choice[] = { - { 0, &hf_lte_rrc_dedicatedInfoNAS, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoNAS }, - { 1, &hf_lte_rrc_dedicatedInfoCDMA2000_1XRTT, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoCDMA2000 }, - { 2, &hf_lte_rrc_dedicatedInfoCDMA2000_HRPD, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoCDMA2000 }, - { 0, NULL, 0, NULL } +static const per_sequence_t CarrierFreqsInfoListGERAN_sequence_of[1] = { + { &hf_lte_rrc_CarrierFreqsInfoListGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqsInfoGERAN }, }; static int -dissect_lte_rrc_T_dedicatedInfoType(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_lte_rrc_T_dedicatedInfoType, T_dedicatedInfoType_choice, - NULL); +dissect_lte_rrc_CarrierFreqsInfoListGERAN(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_lte_rrc_CarrierFreqsInfoListGERAN, CarrierFreqsInfoListGERAN_sequence_of, + 1, maxGNFG, FALSE); return offset; } -static const per_sequence_t T_nonCriticalExtension_12_sequence[] = { +static const per_sequence_t SystemInformationBlockType7_sequence[] = { + { &hf_lte_rrc_t_ReselectionGERAN, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, + { &hf_lte_rrc_t_ReselectionGERAN_SF, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, + { &hf_lte_rrc_carrierFreqsInfoList, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqsInfoListGERAN }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB7"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_nonCriticalExtension_12, T_nonCriticalExtension_12_sequence); + ett_lte_rrc_SystemInformationBlockType7, SystemInformationBlockType7_sequence); return offset; } -static const per_sequence_t DLInformationTransfer_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_29, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_12 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_DLInformationTransfer_v8a0_IEs(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_lte_rrc_DLInformationTransfer_v8a0_IEs, DLInformationTransfer_v8a0_IEs_sequence); +dissect_lte_rrc_T_synchronousSystemTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *sync_system_time_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 39, 39, FALSE, &sync_system_time_tvb, NULL); + + + + if (sync_system_time_tvb) { + guint64 bits; + nstime_t ts; + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_timeInfo); + bits = tvb_get_bits64(sync_system_time_tvb, 0, 39, ENC_BIG_ENDIAN); + ts.secs = (time_t)(bits/100) + 315964800; /* CDMA2000 epoch is 00:00:00 (midnight) UTC on 1980-01-06 */ + ts.nsecs = (int)(bits%100)*10000000; + proto_tree_add_time(subtree, hf_lte_rrc_cdma_time, sync_system_time_tvb, 0, 5, &ts); + proto_tree_add_time(subtree, hf_lte_rrc_local_time, sync_system_time_tvb, 0, 5, &ts); + } return offset; } -static const per_sequence_t DLInformationTransfer_r8_IEs_sequence[] = { - { &hf_lte_rrc_dedicatedInfoType, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dedicatedInfoType }, - { &hf_lte_rrc_nonCriticalExtension_28, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DLInformationTransfer_v8a0_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_DLInformationTransfer_r8_IEs(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_lte_rrc_DLInformationTransfer_r8_IEs, DLInformationTransfer_r8_IEs_sequence); +dissect_lte_rrc_T_asynchronousSystemTime(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *async_system_time_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 49, 49, FALSE, &async_system_time_tvb, NULL); + + + + if (async_system_time_tvb) { + guint64 bits; + nstime_t ts; + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_timeInfo); + bits = tvb_get_bits64(async_system_time_tvb, 0, 49, ENC_BIG_ENDIAN); + ts.secs = (time_t)((bits*8)/1228800) + 315964800; /* CDMA2000 epoch is 00:00:00 (midnight) UTC on 1980-01-06 */ + ts.nsecs = (int)(((bits%153600)*8*1000000000)/1228800); + proto_tree_add_time(subtree, hf_lte_rrc_cdma_time, async_system_time_tvb, 0, 7, &ts); + proto_tree_add_time(subtree, hf_lte_rrc_local_time, async_system_time_tvb, 0, 7,&ts); + } return offset; } -static const value_string lte_rrc_T_c1_18_vals[] = { - { 0, "dlInformationTransfer-r8" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_cdma_SystemTime_vals[] = { + { 0, "synchronousSystemTime" }, + { 1, "asynchronousSystemTime" }, { 0, NULL } }; -static const per_choice_t T_c1_18_choice[] = { - { 0, &hf_lte_rrc_dlInformationTransfer_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DLInformationTransfer_r8_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t T_cdma_SystemTime_choice[] = { + { 0, &hf_lte_rrc_synchronousSystemTime, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_synchronousSystemTime }, + { 1, &hf_lte_rrc_asynchronousSystemTime, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_asynchronousSystemTime }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cdma_SystemTime(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_lte_rrc_T_c1_18, T_c1_18_choice, + ett_lte_rrc_T_cdma_SystemTime, T_cdma_SystemTime_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_11_sequence[] = { +static const per_sequence_t SystemTimeInfoCDMA2000_sequence[] = { + { &hf_lte_rrc_cdma_EUTRA_Synchronisation, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_cdma_SystemTime, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cdma_SystemTime }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemTimeInfoCDMA2000(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_lte_rrc_T_criticalExtensionsFuture_11, T_criticalExtensionsFuture_11_sequence); + ett_lte_rrc_SystemTimeInfoCDMA2000, SystemTimeInfoCDMA2000_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_11_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } +static const per_sequence_t BandClassInfoCDMA2000_sequence[] = { + { &hf_lte_rrc_bandClass , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_threshX_High_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, + { &hf_lte_rrc_threshX_Low_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, + { NULL, 0, 0, NULL } }; -static const per_choice_t T_criticalExtensions_11_choice[] = { - { 0, &hf_lte_rrc_c1_18 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_18 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_11 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_BandClassInfoCDMA2000(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_lte_rrc_BandClassInfoCDMA2000, BandClassInfoCDMA2000_sequence); + + return offset; +} + + +static const per_sequence_t BandClassListCDMA2000_sequence_of[1] = { + { &hf_lte_rrc_BandClassListCDMA2000_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandClassInfoCDMA2000 }, }; static int -dissect_lte_rrc_T_criticalExtensions_11(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_lte_rrc_T_criticalExtensions_11, T_criticalExtensions_11_choice, - NULL); +dissect_lte_rrc_BandClassListCDMA2000(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_lte_rrc_BandClassListCDMA2000, BandClassListCDMA2000_sequence_of, + 1, maxCDMA_BandClass, FALSE); return offset; } -static const per_sequence_t DLInformationTransfer_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_11 }, - { NULL, 0, 0, NULL } +static const per_sequence_t PhysCellIdListCDMA2000_sequence_of[1] = { + { &hf_lte_rrc_PhysCellIdListCDMA2000_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdCDMA2000 }, }; static int -dissect_lte_rrc_DLInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhysCellIdListCDMA2000(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_lte_rrc_PhysCellIdListCDMA2000, PhysCellIdListCDMA2000_sequence_of, + 1, 16, FALSE); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DLInformationTransfer"); + return offset; +} + + +static const per_sequence_t NeighCellsPerBandclassCDMA2000_sequence[] = { + { &hf_lte_rrc_arfcn , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueCDMA2000 }, + { &hf_lte_rrc_physCellIdList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdListCDMA2000 }, + { NULL, 0, 0, NULL } +}; +static int +dissect_lte_rrc_NeighCellsPerBandclassCDMA2000(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_lte_rrc_DLInformationTransfer, DLInformationTransfer_sequence); + ett_lte_rrc_NeighCellsPerBandclassCDMA2000, NeighCellsPerBandclassCDMA2000_sequence); return offset; } -static const value_string lte_rrc_T_dualRxTxRedirectIndicator_r10_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t NeighCellsPerBandclassListCDMA2000_sequence_of[1] = { + { &hf_lte_rrc_NeighCellsPerBandclassListCDMA2000_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsPerBandclassCDMA2000 }, }; - static int -dissect_lte_rrc_T_dualRxTxRedirectIndicator_r10(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_NeighCellsPerBandclassListCDMA2000(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_lte_rrc_NeighCellsPerBandclassListCDMA2000, NeighCellsPerBandclassListCDMA2000_sequence_of, + 1, 16, FALSE); return offset; } -static const per_sequence_t T_nonCriticalExtension_13_sequence[] = { +static const per_sequence_t NeighCellCDMA2000_sequence[] = { + { &hf_lte_rrc_bandClass , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, + { &hf_lte_rrc_neighCellsPerFreqList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsPerBandclassListCDMA2000 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NeighCellCDMA2000(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_lte_rrc_T_nonCriticalExtension_13, T_nonCriticalExtension_13_sequence); + ett_lte_rrc_NeighCellCDMA2000, NeighCellCDMA2000_sequence); return offset; } -static const per_sequence_t HandoverFromEUTRAPreparationRequest_v1020_IEs_sequence[] = { - { &hf_lte_rrc_dualRxTxRedirectIndicator_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dualRxTxRedirectIndicator_r10 }, - { &hf_lte_rrc_redirectCarrierCDMA2000_1XRTT_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqCDMA2000 }, - { &hf_lte_rrc_nonCriticalExtension_33, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t NeighCellListCDMA2000_sequence_of[1] = { + { &hf_lte_rrc_NeighCellListCDMA2000_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellCDMA2000 }, }; static int -dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v1020_IEs(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_lte_rrc_HandoverFromEUTRAPreparationRequest_v1020_IEs, HandoverFromEUTRAPreparationRequest_v1020_IEs_sequence); +dissect_lte_rrc_NeighCellListCDMA2000(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_lte_rrc_NeighCellListCDMA2000, NeighCellListCDMA2000_sequence_of, + 1, 16, FALSE); return offset; } -static const per_sequence_t HandoverFromEUTRAPreparationRequest_v920_IEs_sequence[] = { - { &hf_lte_rrc_concurrPrepCDMA2000_HRPD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_nonCriticalExtension_32, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v1020_IEs }, +static const per_sequence_t CellReselectionParametersCDMA2000_sequence[] = { + { &hf_lte_rrc_bandClassList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandClassListCDMA2000 }, + { &hf_lte_rrc_neighCellList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellListCDMA2000 }, + { &hf_lte_rrc_t_ReselectionCDMA2000, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, + { &hf_lte_rrc_t_ReselectionCDMA2000_SF, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v920_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellReselectionParametersCDMA2000(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_lte_rrc_HandoverFromEUTRAPreparationRequest_v920_IEs, HandoverFromEUTRAPreparationRequest_v920_IEs_sequence); + ett_lte_rrc_CellReselectionParametersCDMA2000, CellReselectionParametersCDMA2000_sequence); return offset; } -static const per_sequence_t HandoverFromEUTRAPreparationRequest_v890_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_31, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v920_IEs }, +static const per_sequence_t T_parametersHRPD_sequence[] = { + { &hf_lte_rrc_preRegistrationInfoHRPD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PreRegistrationInfoHRPD }, + { &hf_lte_rrc_cellReselectionParametersHRPD, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v890_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_parametersHRPD(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_lte_rrc_HandoverFromEUTRAPreparationRequest_v890_IEs, HandoverFromEUTRAPreparationRequest_v890_IEs_sequence); + ett_lte_rrc_T_parametersHRPD, T_parametersHRPD_sequence); return offset; } -static const per_sequence_t HandoverFromEUTRAPreparationRequest_r8_IEs_sequence[] = { - { &hf_lte_rrc_cdma2000_Type, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CDMA2000_Type }, - { &hf_lte_rrc_rand , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RAND_CDMA2000 }, - { &hf_lte_rrc_mobilityParameters, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityParametersCDMA2000 }, - { &hf_lte_rrc_nonCriticalExtension_30, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v890_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_r8_IEs(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_lte_rrc_HandoverFromEUTRAPreparationRequest_r8_IEs, HandoverFromEUTRAPreparationRequest_r8_IEs_sequence); +dissect_lte_rrc_BIT_STRING_SIZE_15(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, + 15, 15, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_c1_19_vals[] = { - { 0, "handoverFromEUTRAPreparationRequest-r8" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_19_choice[] = { - { 0, &hf_lte_rrc_handoverFromEUTRAPreparationRequest_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_r8_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t CSFB_RegistrationParam1XRTT_sequence[] = { + { &hf_lte_rrc_sid , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_15 }, + { &hf_lte_rrc_nid , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { &hf_lte_rrc_multipleSID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_multipleNID , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_homeReg , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_foreignSIDReg, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_foreignNIDReg, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_parameterReg, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_powerUpReg , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_registrationPeriod, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_7 }, + { &hf_lte_rrc_registrationZone, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_12 }, + { &hf_lte_rrc_totalZone , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_3 }, + { &hf_lte_rrc_zoneTimer , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_3 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_19(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_lte_rrc_T_c1_19, T_c1_19_choice, - NULL); +dissect_lte_rrc_CSFB_RegistrationParam1XRTT(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_lte_rrc_CSFB_RegistrationParam1XRTT, CSFB_RegistrationParam1XRTT_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_12_sequence[] = { +static const per_sequence_t T_parameters1XRTT_sequence[] = { + { &hf_lte_rrc_csfb_RegistrationParam1XRTT, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFB_RegistrationParam1XRTT }, + { &hf_lte_rrc_longCodeState1XRTT, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_42 }, + { &hf_lte_rrc_cellReselectionParameters1XRTT, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_parameters1XRTT(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_lte_rrc_T_criticalExtensionsFuture_12, T_criticalExtensionsFuture_12_sequence); + ett_lte_rrc_T_parameters1XRTT, T_parameters1XRTT_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_12_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_12_choice[] = { - { 0, &hf_lte_rrc_c1_19 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_19 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_12 }, - { 0, NULL, 0, NULL } +static const per_sequence_t PhysCellIdListCDMA2000_v920_sequence_of[1] = { + { &hf_lte_rrc_PhysCellIdListCDMA2000_v920_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdCDMA2000 }, }; static int -dissect_lte_rrc_T_criticalExtensions_12(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_lte_rrc_T_criticalExtensions_12, T_criticalExtensions_12_choice, - NULL); +dissect_lte_rrc_PhysCellIdListCDMA2000_v920(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_lte_rrc_PhysCellIdListCDMA2000_v920, PhysCellIdListCDMA2000_v920_sequence_of, + 0, 24, FALSE); return offset; } -static const per_sequence_t HandoverFromEUTRAPreparationRequest_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_12 }, +static const per_sequence_t NeighCellsPerBandclassCDMA2000_v920_sequence[] = { + { &hf_lte_rrc_physCellIdList_v920, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdListCDMA2000_v920 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverFromEUTRAPreparationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverFromEUTRAPreparationRequest"); - +dissect_lte_rrc_NeighCellsPerBandclassCDMA2000_v920(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_lte_rrc_HandoverFromEUTRAPreparationRequest, HandoverFromEUTRAPreparationRequest_sequence); + ett_lte_rrc_NeighCellsPerBandclassCDMA2000_v920, NeighCellsPerBandclassCDMA2000_v920_sequence); return offset; } -static const value_string lte_rrc_T_targetRAT_Type_vals[] = { - { T_targetRAT_Type_utra, "utra" }, - { T_targetRAT_Type_geran, "geran" }, - { T_targetRAT_Type_cdma2000_1XRTT, "cdma2000-1XRTT" }, - { T_targetRAT_Type_cdma2000_HRPD, "cdma2000-HRPD" }, - { T_targetRAT_Type_spare4, "spare4" }, - { T_targetRAT_Type_spare3, "spare3" }, - { T_targetRAT_Type_spare2, "spare2" }, - { T_targetRAT_Type_spare1, "spare1" }, - { 0, NULL } +static const per_sequence_t NeighCellsPerBandclassListCDMA2000_v920_sequence_of[1] = { + { &hf_lte_rrc_NeighCellsPerBandclassListCDMA2000_v920_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsPerBandclassCDMA2000_v920 }, }; - static int -dissect_lte_rrc_T_targetRAT_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 target_rat_type; - offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 8, &target_rat_type, TRUE, 0, NULL); - - private_data_set_rat_target_type(actx, (guint8)target_rat_type); - +dissect_lte_rrc_NeighCellsPerBandclassListCDMA2000_v920(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_lte_rrc_NeighCellsPerBandclassListCDMA2000_v920, NeighCellsPerBandclassListCDMA2000_v920_sequence_of, + 1, 16, FALSE); return offset; } +static const per_sequence_t NeighCellCDMA2000_v920_sequence[] = { + { &hf_lte_rrc_neighCellsPerFreqList_v920, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsPerBandclassListCDMA2000_v920 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_targetRAT_MessageContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *target_rat_msg_cont_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &target_rat_msg_cont_tvb); - - if(target_rat_msg_cont_tvb){ - guint8 byte; - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_targetRAT_MessageContainer); - switch (private_data_get_rat_target_type(actx)){ - case T_targetRAT_Type_utra: - /* utra */ - if (rrc_irat_ho_to_utran_cmd_handle) - lte_rrc_call_dissector(rrc_irat_ho_to_utran_cmd_handle, target_rat_msg_cont_tvb, actx->pinfo, subtree); - break; - case T_targetRAT_Type_geran: - /* geran */ - byte = tvb_get_guint8(target_rat_msg_cont_tvb, 0); - if (byte == 0x06) { - if (gsm_a_dtap_handle) { - lte_rrc_call_dissector(gsm_a_dtap_handle, target_rat_msg_cont_tvb, actx->pinfo, subtree); - } - } else { - if (gsm_rlcmac_dl_handle) { - tvbuff_t *gsm_rlcmac_dl_tvb = tvb_new_composite(); - guint8 *pd = (guint8 *) wmem_alloc(actx->pinfo->pool, 1); - pd[0] = 0x40; - tvb_composite_append(gsm_rlcmac_dl_tvb, tvb_new_real_data(pd, 1, 1)); - tvb_composite_append(gsm_rlcmac_dl_tvb, target_rat_msg_cont_tvb); - tvb_composite_finalize(gsm_rlcmac_dl_tvb); - add_new_data_source(actx->pinfo, gsm_rlcmac_dl_tvb, "GPRS DL control block"); - lte_rrc_call_dissector(gsm_rlcmac_dl_handle, gsm_rlcmac_dl_tvb, actx->pinfo, subtree); - } - } - break; - case T_targetRAT_Type_cdma2000_1XRTT: - /* cdma2000-1XRTT */ - break; - case T_targetRAT_Type_cdma2000_HRPD: - /* cdma2000-HRPD */ - break; - default: - break; - } - } - +dissect_lte_rrc_NeighCellCDMA2000_v920(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_lte_rrc_NeighCellCDMA2000_v920, NeighCellCDMA2000_v920_sequence); return offset; } +static const per_sequence_t NeighCellListCDMA2000_v920_sequence_of[1] = { + { &hf_lte_rrc_NeighCellListCDMA2000_v920_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellCDMA2000_v920 }, +}; static int -dissect_lte_rrc_T_nas_SecurityParamFromEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *nas_sec_param_from_eutra_tvb = NULL; - guint32 length; - proto_tree *subtree; +dissect_lte_rrc_NeighCellListCDMA2000_v920(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_lte_rrc_NeighCellListCDMA2000_v920, NeighCellListCDMA2000_v920_sequence_of, + 1, 16, FALSE); - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 1, 1, FALSE, &nas_sec_param_from_eutra_tvb); + return offset; +} - if (nas_sec_param_from_eutra_tvb) { - length = tvb_reported_length(nas_sec_param_from_eutra_tvb); - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nas_SecurityParam); - de_emm_sec_par_from_eutra(nas_sec_param_from_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0); - } +static const per_sequence_t CellReselectionParametersCDMA2000_v920_sequence[] = { + { &hf_lte_rrc_neighCellList_v920, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellListCDMA2000_v920 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CellReselectionParametersCDMA2000_v920(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_lte_rrc_CellReselectionParametersCDMA2000_v920, CellReselectionParametersCDMA2000_v920_sequence); return offset; } +static const value_string lte_rrc_T_powerDownReg_r9_vals[] = { + { 0, "true" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_SystemInfoListGERAN_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *sys_info_list_tvb = NULL; - proto_tree *subtree; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 1, 23, FALSE, &sys_info_list_tvb); - - if (sys_info_list_tvb) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_siPsiSibContainer); - switch (private_data_get_si_or_psi_geran(actx)) { - case SI_OrPSI_GERAN_si: - /* SI message */ - if (gsm_a_dtap_handle) { - tvbuff_t *si_tvb = tvb_new_composite(); - guint8 *pd = (guint8 *) wmem_alloc(actx->pinfo->pool, 1); - pd[0] = 0x06; - tvb_composite_append(si_tvb, tvb_new_real_data(pd, 1, 1)); - tvb_composite_append(si_tvb, sys_info_list_tvb); - tvb_composite_finalize(si_tvb); - add_new_data_source(actx->pinfo, si_tvb, "System Information"); - lte_rrc_call_dissector(gsm_a_dtap_handle, si_tvb, actx->pinfo, subtree); - } - break; - case SI_OrPSI_GERAN_psi: - /* PSI message */ - if (gsm_rlcmac_dl_handle) { - tvbuff_t *gsm_rlcmac_dl_tvb = tvb_new_composite(); - guint8 *pd = (guint8 *) wmem_alloc(actx->pinfo->pool, 1); - pd[0] = 0x40; - tvb_composite_append(gsm_rlcmac_dl_tvb, tvb_new_real_data(pd, 1, 1)); - tvb_composite_append(gsm_rlcmac_dl_tvb, sys_info_list_tvb); - tvb_composite_finalize(gsm_rlcmac_dl_tvb); - add_new_data_source(actx->pinfo, gsm_rlcmac_dl_tvb, "GPRS DL control block"); - lte_rrc_call_dissector(gsm_rlcmac_dl_handle, sys_info_list_tvb, actx->pinfo, subtree); - } - break; - default: - break; - } - } +static int +dissect_lte_rrc_T_powerDownReg_r9(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInfoListGERAN_sequence_of[1] = { - { &hf_lte_rrc_SystemInfoListGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInfoListGERAN_item }, +static const per_sequence_t CSFB_RegistrationParam1XRTT_v920_sequence[] = { + { &hf_lte_rrc_powerDownReg_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_powerDownReg_r9 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInfoListGERAN(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_lte_rrc_SystemInfoListGERAN, SystemInfoListGERAN_sequence_of, - 1, maxGERAN_SI, FALSE); +dissect_lte_rrc_CSFB_RegistrationParam1XRTT_v920(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_lte_rrc_CSFB_RegistrationParam1XRTT_v920, CSFB_RegistrationParam1XRTT_v920_sequence); return offset; } +static const per_sequence_t AC_BarringConfig1XRTT_r9_sequence[] = { + { &hf_lte_rrc_ac_Barring0to9_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, + { &hf_lte_rrc_ac_Barring10_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_ac_Barring11_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_ac_Barring12_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_ac_Barring13_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_ac_Barring14_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_ac_Barring15_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_ac_BarringMsg_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_ac_BarringReg_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_ac_BarringEmg_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_si(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - private_data_set_si_or_psi_geran(actx, (guint8)SI_OrPSI_GERAN_si); /* SI message */ - offset = dissect_lte_rrc_SystemInfoListGERAN(tvb, offset, actx, tree, hf_index); - - +dissect_lte_rrc_AC_BarringConfig1XRTT_r9(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_lte_rrc_AC_BarringConfig1XRTT_r9, AC_BarringConfig1XRTT_r9_sequence); return offset; } +static const per_sequence_t SystemInformationBlockType8_eag_1_sequence[] = { + { &hf_lte_rrc_csfb_SupportForDualRxUEs_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_cellReselectionParametersHRPD_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000_v920 }, + { &hf_lte_rrc_cellReselectionParameters1XRTT_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000_v920 }, + { &hf_lte_rrc_csfb_RegistrationParam1XRTT_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFB_RegistrationParam1XRTT_v920 }, + { &hf_lte_rrc_ac_BarringConfig1XRTT_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig1XRTT_r9 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_psi(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - private_data_set_si_or_psi_geran(actx, (guint8)SI_OrPSI_GERAN_psi); /* PSI message */ - offset = dissect_lte_rrc_SystemInfoListGERAN(tvb, offset, actx, tree, hf_index); - - +dissect_lte_rrc_SystemInformationBlockType8_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType8_eag_1_sequence); return offset; } -static const value_string lte_rrc_SI_OrPSI_GERAN_vals[] = { - { SI_OrPSI_GERAN_si, "si" }, - { SI_OrPSI_GERAN_psi, "psi" }, +static const value_string lte_rrc_T_csfb_DualRxTxSupport_r10_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t SI_OrPSI_GERAN_choice[] = { - { SI_OrPSI_GERAN_si, &hf_lte_rrc_si , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_si }, - { SI_OrPSI_GERAN_psi, &hf_lte_rrc_psi , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_psi }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_SI_OrPSI_GERAN(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_lte_rrc_SI_OrPSI_GERAN, SI_OrPSI_GERAN_choice, - NULL); +dissect_lte_rrc_T_csfb_DualRxTxSupport_r10(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t Handover_sequence[] = { - { &hf_lte_rrc_targetRAT_Type, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_targetRAT_Type }, - { &hf_lte_rrc_targetRAT_MessageContainer, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_targetRAT_MessageContainer }, - { &hf_lte_rrc_nas_SecurityParamFromEUTRA, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nas_SecurityParamFromEUTRA }, - { &hf_lte_rrc_systemInformation_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SI_OrPSI_GERAN }, +static const per_sequence_t SystemInformationBlockType8_eag_2_sequence[] = { + { &hf_lte_rrc_csfb_DualRxTxSupport_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csfb_DualRxTxSupport_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_Handover(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - /* Initialise to invalid value */ - private_data_set_rat_target_type(actx, 0xFF); - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_Handover, Handover_sequence); - - +dissect_lte_rrc_SystemInformationBlockType8_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType8_eag_2_sequence); return offset; } -static const value_string lte_rrc_T_t304_vals[] = { - { 0, "ms100" }, - { 1, "ms200" }, - { 2, "ms500" }, - { 3, "ms1000" }, - { 4, "ms2000" }, - { 5, "ms4000" }, - { 6, "ms8000" }, - { 7, "ms10000-v1310" }, +static const value_string lte_rrc_T_systemTimeInfo_r11_vals[] = { + { 0, "explicitValue" }, + { 1, "defaultValue" }, { 0, NULL } }; +static const per_choice_t T_systemTimeInfo_r11_choice[] = { + { 0, &hf_lte_rrc_explicitValue_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemTimeInfoCDMA2000 }, + { 1, &hf_lte_rrc_defaultValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_t304(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_systemTimeInfo_r11(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_lte_rrc_T_systemTimeInfo_r11, T_systemTimeInfo_r11_choice, + NULL); return offset; } -static const per_sequence_t CarrierFreqGERAN_sequence[] = { - { &hf_lte_rrc_arfcn_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueGERAN }, - { &hf_lte_rrc_bandIndicator, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandIndicatorGERAN }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_40_OF_PhysCellIdCDMA2000_sequence_of[1] = { + { &hf_lte_rrc_physCellIdList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdCDMA2000 }, }; static int -dissect_lte_rrc_CarrierFreqGERAN(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_lte_rrc_CarrierFreqGERAN, CarrierFreqGERAN_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_40_OF_PhysCellIdCDMA2000(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_lte_rrc_SEQUENCE_SIZE_1_40_OF_PhysCellIdCDMA2000, SEQUENCE_SIZE_1_40_OF_PhysCellIdCDMA2000_sequence_of, + 1, 40, FALSE); return offset; } -static const per_sequence_t T_geran_sequence[] = { - { &hf_lte_rrc_physCellId , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdGERAN }, - { &hf_lte_rrc_carrierFreq , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqGERAN }, - { &hf_lte_rrc_networkControlOrder, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_2 }, - { &hf_lte_rrc_systemInformation_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SI_OrPSI_GERAN }, +static const per_sequence_t NeighCellsPerBandclassCDMA2000_r11_sequence[] = { + { &hf_lte_rrc_arfcn , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueCDMA2000 }, + { &hf_lte_rrc_physCellIdList_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_40_OF_PhysCellIdCDMA2000 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_geran(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NeighCellsPerBandclassCDMA2000_r11(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_lte_rrc_T_geran, T_geran_sequence); + ett_lte_rrc_NeighCellsPerBandclassCDMA2000_r11, NeighCellsPerBandclassCDMA2000_r11_sequence); return offset; } -static const value_string lte_rrc_T_targetRAT_Type_01_vals[] = { - { 0, "geran" }, - { 0, NULL } -}; - -static const per_choice_t T_targetRAT_Type_01_choice[] = { - { 0, &hf_lte_rrc_geran , ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_geran }, - { 0, NULL, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_NeighCellsPerBandclassCDMA2000_r11_sequence_of[1] = { + { &hf_lte_rrc_neighFreqInfoList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellsPerBandclassCDMA2000_r11 }, }; static int -dissect_lte_rrc_T_targetRAT_Type_01(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_lte_rrc_T_targetRAT_Type_01, T_targetRAT_Type_01_choice, - NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellsPerBandclassCDMA2000_r11(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_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellsPerBandclassCDMA2000_r11, SEQUENCE_SIZE_1_16_OF_NeighCellsPerBandclassCDMA2000_r11_sequence_of, + 1, 16, FALSE); return offset; } -static const per_sequence_t CellChangeOrder_sequence[] = { - { &hf_lte_rrc_t304 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t304 }, - { &hf_lte_rrc_targetRAT_Type_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_targetRAT_Type_01 }, +static const per_sequence_t NeighCellCDMA2000_r11_sequence[] = { + { &hf_lte_rrc_bandClass , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, + { &hf_lte_rrc_neighFreqInfoList_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellsPerBandclassCDMA2000_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellChangeOrder(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NeighCellCDMA2000_r11(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_lte_rrc_CellChangeOrder, CellChangeOrder_sequence); + ett_lte_rrc_NeighCellCDMA2000_r11, NeighCellCDMA2000_r11_sequence); return offset; } -static const value_string lte_rrc_T_purpose_vals[] = { - { 0, "handover" }, - { 1, "cellChangeOrder" }, - { 0, NULL } -}; - -static const per_choice_t T_purpose_choice[] = { - { 0, &hf_lte_rrc_handover , ASN1_NO_EXTENSIONS , dissect_lte_rrc_Handover }, - { 1, &hf_lte_rrc_cellChangeOrder, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CellChangeOrder }, - { 0, NULL, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_NeighCellCDMA2000_r11_sequence_of[1] = { + { &hf_lte_rrc_neighCellList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellCDMA2000_r11 }, }; static int -dissect_lte_rrc_T_purpose(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_lte_rrc_T_purpose, T_purpose_choice, - NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellCDMA2000_r11(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_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellCDMA2000_r11, SEQUENCE_SIZE_1_16_OF_NeighCellCDMA2000_r11_sequence_of, + 1, 16, FALSE); return offset; } -static const per_sequence_t T_nonCriticalExtension_22_sequence[] = { +static const per_sequence_t CellReselectionParametersCDMA2000_r11_sequence[] = { + { &hf_lte_rrc_bandClassList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandClassListCDMA2000 }, + { &hf_lte_rrc_neighCellList_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_NeighCellCDMA2000_r11 }, + { &hf_lte_rrc_t_ReselectionCDMA2000, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, + { &hf_lte_rrc_t_ReselectionCDMA2000_SF, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellReselectionParametersCDMA2000_r11(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_lte_rrc_T_nonCriticalExtension_22, T_nonCriticalExtension_22_sequence); + ett_lte_rrc_CellReselectionParametersCDMA2000_r11, CellReselectionParametersCDMA2000_r11_sequence); return offset; } -static const per_sequence_t MobilityFromEUTRACommand_v8d0_IEs_sequence[] = { - { &hf_lte_rrc_bandIndicator, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandIndicatorGERAN }, - { &hf_lte_rrc_nonCriticalExtension_55, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_22 }, +static const per_sequence_t T_parametersHRPD_r11_sequence[] = { + { &hf_lte_rrc_preRegistrationInfoHRPD_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PreRegistrationInfoHRPD }, + { &hf_lte_rrc_cellReselectionParametersHRPD_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MobilityFromEUTRACommand_v8d0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_parametersHRPD_r11(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_lte_rrc_MobilityFromEUTRACommand_v8d0_IEs, MobilityFromEUTRACommand_v8d0_IEs_sequence); + ett_lte_rrc_T_parametersHRPD_r11, T_parametersHRPD_r11_sequence); return offset; } -static const per_sequence_t MobilityFromEUTRACommand_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_54, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityFromEUTRACommand_v8d0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_csfb_DualRxTxSupport_r11_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MobilityFromEUTRACommand_v8a0_IEs(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_lte_rrc_MobilityFromEUTRACommand_v8a0_IEs, MobilityFromEUTRACommand_v8a0_IEs_sequence); +dissect_lte_rrc_T_csfb_DualRxTxSupport_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MobilityFromEUTRACommand_r8_IEs_sequence[] = { - { &hf_lte_rrc_cs_FallbackIndicator, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_purpose , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_purpose }, - { &hf_lte_rrc_nonCriticalExtension_53, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityFromEUTRACommand_v8a0_IEs }, +static const per_sequence_t T_parameters1XRTT_r11_sequence[] = { + { &hf_lte_rrc_csfb_RegistrationParam1XRTT_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFB_RegistrationParam1XRTT }, + { &hf_lte_rrc_csfb_RegistrationParam1XRTT_Ext_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFB_RegistrationParam1XRTT_v920 }, + { &hf_lte_rrc_longCodeState1XRTT_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_42 }, + { &hf_lte_rrc_cellReselectionParameters1XRTT_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionParametersCDMA2000_r11 }, + { &hf_lte_rrc_ac_BarringConfig1XRTT_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AC_BarringConfig1XRTT_r9 }, + { &hf_lte_rrc_csfb_SupportForDualRxUEs_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_csfb_DualRxTxSupport_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csfb_DualRxTxSupport_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MobilityFromEUTRACommand_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_parameters1XRTT_r11(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_lte_rrc_MobilityFromEUTRACommand_r8_IEs, MobilityFromEUTRACommand_r8_IEs_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_mobilityCDMA2000_HRPD_r9_vals[] = { - { 0, "handover" }, - { 1, "redirection" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_mobilityCDMA2000_HRPD_r9(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, FALSE, 0, NULL); + ett_lte_rrc_T_parameters1XRTT_r11, T_parameters1XRTT_r11_sequence); return offset; } -static const per_sequence_t E_CSFB_r9_sequence[] = { - { &hf_lte_rrc_messageContCDMA2000_1XRTT_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_mobilityCDMA2000_HRPD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityCDMA2000_HRPD_r9 }, - { &hf_lte_rrc_messageContCDMA2000_HRPD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_redirectCarrierCDMA2000_HRPD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqCDMA2000 }, +static const per_sequence_t ParametersCDMA2000_r11_sequence[] = { + { &hf_lte_rrc_systemTimeInfo_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_systemTimeInfo_r11 }, + { &hf_lte_rrc_searchWindowSize_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_parametersHRPD_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_parametersHRPD_r11 }, + { &hf_lte_rrc_parameters1XRTT_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_parameters1XRTT_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_E_CSFB_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ParametersCDMA2000_r11(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_lte_rrc_E_CSFB_r9, E_CSFB_r9_sequence); + ett_lte_rrc_ParametersCDMA2000_r11, ParametersCDMA2000_r11_sequence); return offset; } -static const value_string lte_rrc_T_purpose_01_vals[] = { - { 0, "handover" }, - { 1, "cellChangeOrder" }, - { 2, "e-CSFB-r9" }, +static const value_string lte_rrc_T_parametersCDMA2000_r11_vals[] = { + { 0, "explicitValue" }, + { 1, "defaultValue" }, { 0, NULL } }; -static const per_choice_t T_purpose_01_choice[] = { - { 0, &hf_lte_rrc_handover , ASN1_EXTENSION_ROOT , dissect_lte_rrc_Handover }, - { 1, &hf_lte_rrc_cellChangeOrder, ASN1_EXTENSION_ROOT , dissect_lte_rrc_CellChangeOrder }, - { 2, &hf_lte_rrc_e_CSFB_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_E_CSFB_r9 }, +static const per_choice_t T_parametersCDMA2000_r11_choice[] = { + { 0, &hf_lte_rrc_explicitValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ParametersCDMA2000_r11 }, + { 1, &hf_lte_rrc_defaultValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_purpose_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_parametersCDMA2000_r11(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_lte_rrc_T_purpose_01, T_purpose_01_choice, + ett_lte_rrc_T_parametersCDMA2000_r11, T_parametersCDMA2000_r11_choice, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_23_sequence[] = { +static const per_sequence_t SIB8_PerPLMN_r11_sequence[] = { + { &hf_lte_rrc_plmn_Identity_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { &hf_lte_rrc_parametersCDMA2000_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_parametersCDMA2000_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_23(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SIB8_PerPLMN_r11(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_lte_rrc_T_nonCriticalExtension_23, T_nonCriticalExtension_23_sequence); + ett_lte_rrc_SIB8_PerPLMN_r11, SIB8_PerPLMN_r11_sequence); return offset; } -static const per_sequence_t MobilityFromEUTRACommand_v960_IEs_sequence[] = { - { &hf_lte_rrc_bandIndicator, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandIndicatorGERAN }, - { &hf_lte_rrc_nonCriticalExtension_58, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_23 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SIB8_PerPLMN_List_r11_sequence_of[1] = { + { &hf_lte_rrc_SIB8_PerPLMN_List_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB8_PerPLMN_r11 }, }; static int -dissect_lte_rrc_MobilityFromEUTRACommand_v960_IEs(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_lte_rrc_MobilityFromEUTRACommand_v960_IEs, MobilityFromEUTRACommand_v960_IEs_sequence); +dissect_lte_rrc_SIB8_PerPLMN_List_r11(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_lte_rrc_SIB8_PerPLMN_List_r11, SIB8_PerPLMN_List_r11_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const per_sequence_t MobilityFromEUTRACommand_v930_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_57, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityFromEUTRACommand_v960_IEs }, +static const per_sequence_t SystemInformationBlockType8_eag_3_sequence[] = { + { &hf_lte_rrc_sib8_PerPLMN_List_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SIB8_PerPLMN_List_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MobilityFromEUTRACommand_v930_IEs(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_lte_rrc_MobilityFromEUTRACommand_v930_IEs, MobilityFromEUTRACommand_v930_IEs_sequence); +dissect_lte_rrc_SystemInformationBlockType8_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType8_eag_3_sequence); return offset; } -static const per_sequence_t MobilityFromEUTRACommand_r9_IEs_sequence[] = { - { &hf_lte_rrc_cs_FallbackIndicator, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_purpose_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_purpose_01 }, - { &hf_lte_rrc_nonCriticalExtension_56, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityFromEUTRACommand_v930_IEs }, +static const per_sequence_t SystemInformationBlockType8_sequence[] = { + { &hf_lte_rrc_systemTimeInfo, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SystemTimeInfoCDMA2000 }, + { &hf_lte_rrc_searchWindowSize, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_parametersHRPD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_parametersHRPD }, + { &hf_lte_rrc_parameters1XRTT, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_parameters1XRTT }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType8_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType8_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType8_eag_3 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MobilityFromEUTRACommand_r9_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB8"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_MobilityFromEUTRACommand_r9_IEs, MobilityFromEUTRACommand_r9_IEs_sequence); + ett_lte_rrc_SystemInformationBlockType8, SystemInformationBlockType8_sequence); return offset; } -static const value_string lte_rrc_T_c1_26_vals[] = { - { 0, "mobilityFromEUTRACommand-r8" }, - { 1, "mobilityFromEUTRACommand-r9" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_26_choice[] = { - { 0, &hf_lte_rrc_mobilityFromEUTRACommand_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MobilityFromEUTRACommand_r8_IEs }, - { 1, &hf_lte_rrc_mobilityFromEUTRACommand_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MobilityFromEUTRACommand_r9_IEs }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_26(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_lte_rrc_T_c1_26, T_c1_26_choice, - NULL); +dissect_lte_rrc_T_hnb_Name(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *hnb_name_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, -1, + 1, 48, FALSE, &hnb_name_tvb); + + actx->created_item = proto_tree_add_item(tree, hf_index, hnb_name_tvb, 0, -1, ENC_UTF_8|ENC_NA); + return offset; } -static const per_sequence_t T_criticalExtensionsFuture_19_sequence[] = { +static const per_sequence_t SystemInformationBlockType9_sequence[] = { + { &hf_lte_rrc_hnb_Name , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_hnb_Name }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB9"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_criticalExtensionsFuture_19, T_criticalExtensionsFuture_19_sequence); + ett_lte_rrc_SystemInformationBlockType9, SystemInformationBlockType9_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_19_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_19_choice[] = { - { 0, &hf_lte_rrc_c1_26 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_26 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_19, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_19 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_19(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_lte_rrc_T_criticalExtensions_19, T_criticalExtensions_19_choice, - NULL); +dissect_lte_rrc_T_messageIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *msg_id_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, + 16, 16, FALSE, &msg_id_tvb, NULL); + + + + if (msg_id_tvb) { + actx->created_item = proto_tree_add_item(tree, hf_index, msg_id_tvb, 0, 2, ENC_BIG_ENDIAN); + } return offset; } -static const per_sequence_t MobilityFromEUTRACommand_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_19, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_19 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_MobilityFromEUTRACommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_serialNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *serial_nb_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 16, 16, FALSE, &serial_nb_tvb, NULL); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MobilityFromEUTRACommand"); - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_MobilityFromEUTRACommand, MobilityFromEUTRACommand_sequence); + + if (serial_nb_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_serialNumber); + proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_gs, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); + proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_msg_code, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); + proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_upd_nb, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); + } return offset; } -static const per_sequence_t CarrierFreqEUTRA_sequence[] = { - { &hf_lte_rrc_dl_CarrierFreq, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &hf_lte_rrc_ul_CarrierFreq, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_CarrierFreqEUTRA(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_lte_rrc_CarrierFreqEUTRA, CarrierFreqEUTRA_sequence); - - return offset; -} - +dissect_lte_rrc_T_warningType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *warning_type_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 2, 2, FALSE, &warning_type_tvb); -static const value_string lte_rrc_T_dl_Bandwidth_01_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, - { 6, "spare10" }, - { 7, "spare9" }, - { 8, "spare8" }, - { 9, "spare7" }, - { 10, "spare6" }, - { 11, "spare5" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } -}; -static int -dissect_lte_rrc_T_dl_Bandwidth_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, - 16, NULL, FALSE, 0, NULL); + if (warning_type_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_warningType); + proto_tree_add_item(subtree, hf_lte_rrc_warningType_value, warning_type_tvb, 0, 2, ENC_BIG_ENDIAN); + proto_tree_add_item(subtree, hf_lte_rrc_warningType_emergency_user_alert, warning_type_tvb, 0, 2, ENC_BIG_ENDIAN); + proto_tree_add_item(subtree, hf_lte_rrc_warningType_popup, warning_type_tvb, 0, 2, ENC_BIG_ENDIAN); + } return offset; } -static const value_string lte_rrc_T_ul_Bandwidth_01_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, - { 6, "spare10" }, - { 7, "spare9" }, - { 8, "spare8" }, - { 9, "spare7" }, - { 10, "spare6" }, - { 11, "spare5" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_ul_Bandwidth_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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_OCTET_STRING_SIZE_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 50, 50, FALSE, NULL); return offset; } -static const per_sequence_t CarrierBandwidthEUTRA_sequence[] = { - { &hf_lte_rrc_dl_Bandwidth_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_Bandwidth_01 }, - { &hf_lte_rrc_ul_Bandwidth_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth_01 }, +static const per_sequence_t SystemInformationBlockType10_sequence[] = { + { &hf_lte_rrc_messageIdentifier, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messageIdentifier }, + { &hf_lte_rrc_serialNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_serialNumber }, + { &hf_lte_rrc_warningType , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningType }, + { &hf_lte_rrc_dummy_01 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_50 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CarrierBandwidthEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB10"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_CarrierBandwidthEUTRA, CarrierBandwidthEUTRA_sequence); + ett_lte_rrc_SystemInformationBlockType10, SystemInformationBlockType10_sequence); return offset; } -static const value_string lte_rrc_T_t304_01_vals[] = { - { 0, "ms50" }, - { 1, "ms100" }, - { 2, "ms150" }, - { 3, "ms200" }, - { 4, "ms500" }, - { 5, "ms1000" }, - { 6, "ms2000" }, - { 7, "ms10000-v1310" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_t304_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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} +dissect_lte_rrc_T_messageIdentifier_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *msg_id_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, + 16, 16, FALSE, &msg_id_tvb, NULL); -static const per_sequence_t RadioResourceConfigCommon_eag_1_sequence[] = { - { &hf_lte_rrc_uplinkPowerControlCommon_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1020 }, - { NULL, 0, 0, NULL } -}; -static int -dissect_lte_rrc_RadioResourceConfigCommon_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_1_sequence); + if (msg_id_tvb) { + private_data_set_message_identifier(actx, tvb_get_ntohs(msg_id_tvb, 0) << 16); + actx->created_item = proto_tree_add_item(tree, hf_index, msg_id_tvb, 0, 2, ENC_BIG_ENDIAN); + } return offset; } -static const per_sequence_t RadioResourceConfigCommon_eag_2_sequence[] = { - { &hf_lte_rrc_tdd_Config_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1130 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RadioResourceConfigCommon_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_2_sequence); - - return offset; -} +dissect_lte_rrc_T_serialNumber_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *serial_nb_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 16, 16, FALSE, &serial_nb_tvb, NULL); -static const per_sequence_t RadioResourceConfigCommon_eag_3_sequence[] = { - { &hf_lte_rrc_pusch_ConfigCommon_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigCommon_v1270 }, - { NULL, 0, 0, NULL } -}; -static int -dissect_lte_rrc_RadioResourceConfigCommon_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_3_sequence); + if (serial_nb_tvb) { + proto_tree *subtree; + private_data_set_message_identifier(actx, + private_data_get_message_identifier(actx) | tvb_get_ntohs(serial_nb_tvb, 0)); + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_serialNumber); + proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_gs, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); + proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_msg_code, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); + proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_upd_nb, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); + } return offset; } -static const value_string lte_rrc_T_fdd_r13_02_vals[] = { - { 0, "v1" }, - { 1, "v1dot5" }, - { 2, "v2" }, - { 3, "v2dot5" }, - { 4, "v4" }, - { 5, "v5" }, - { 6, "v8" }, - { 7, "v10" }, +static const value_string lte_rrc_T_warningMessageSegmentType_vals[] = { + { 0, "notLastSegment" }, + { 1, "lastSegment" }, { 0, NULL } }; static int -dissect_lte_rrc_T_fdd_r13_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_warningMessageSegmentType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 segment_type; offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 8, NULL, FALSE, 0, NULL); + 2, &segment_type, FALSE, 0, NULL); + + private_data_set_warning_message_segment_type(actx, (guint8)segment_type); + return offset; } -static const value_string lte_rrc_T_tdd_r13_02_vals[] = { - { 0, "v1" }, - { 1, "v2" }, - { 2, "v4" }, - { 3, "v5" }, - { 4, "v8" }, - { 5, "v10" }, - { 6, "v20" }, - { 7, "spare" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_tdd_r13_02(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_warningMessageSegmentNumber(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 segment_number; + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, &segment_number, FALSE); + + private_data_set_warning_message_segment_number(actx, (guint8)segment_number); + return offset; } -static const value_string lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01_vals[] = { - { 0, "fdd-r13" }, - { 1, "tdd-r13" }, - { 0, NULL } -}; - -static const per_choice_t T_mpdcch_startSF_CSS_RA_r13_01_choice[] = { - { 0, &hf_lte_rrc_fdd_r13_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fdd_r13_02 }, - { 1, &hf_lte_rrc_tdd_r13_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tdd_r13_02 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01(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_lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01, T_mpdcch_startSF_CSS_RA_r13_01_choice, - NULL); +dissect_lte_rrc_T_warningMessageSegment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *warning_msg_seg_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &warning_msg_seg_tvb); + + + + if (warning_msg_seg_tvb) { + proto_tree *subtree; + tvbuff_t *frag_tvb; + gpointer p_dcs; + fragment_head *frag_data = fragment_add_seq_check(<e_rrc_sib11_reassembly_table, warning_msg_seg_tvb, 0, actx->pinfo, + private_data_get_message_identifier(actx), NULL, + private_data_get_warning_message_segment_number(actx), + tvb_reported_length(warning_msg_seg_tvb), + private_data_get_warning_message_segment_type(actx) ? FALSE : TRUE); + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_warningMessageSegment); + frag_tvb = process_reassembled_data(warning_msg_seg_tvb, 0, actx->pinfo, "Reassembled SIB11 warning message", + frag_data, <e_rrc_sib11_frag_items, NULL, subtree); + p_dcs = wmem_map_lookup(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx))); + if (frag_tvb && p_dcs) { + dissect_lte_rrc_warningMessageSegment(frag_tvb, subtree, actx->pinfo, GPOINTER_TO_UINT(p_dcs)); + } + } return offset; } -static const per_sequence_t PRACH_Config_v1310_sequence[] = { - { &hf_lte_rrc_rsrp_ThresholdsPrachInfoList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_ThresholdsPrachInfoList_r13 }, - { &hf_lte_rrc_mpdcch_startSF_CSS_RA_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01 }, - { &hf_lte_rrc_prach_HoppingOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_94 }, - { &hf_lte_rrc_prach_ParametersListCE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ParametersListCE_r13 }, - { &hf_lte_rrc_initial_CE_level_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_PRACH_Config_v1310(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_lte_rrc_PRACH_Config_v1310, PRACH_Config_v1310_sequence); +dissect_lte_rrc_T_dataCodingScheme(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *data_coding_scheme_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 1, FALSE, &data_coding_scheme_tvb); + + + + if (data_coding_scheme_tvb) { + proto_tree *subtree; + guint32 dataCodingScheme; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_dataCodingScheme); + dataCodingScheme = dissect_cbs_data_coding_scheme(data_coding_scheme_tvb, actx->pinfo, subtree, 0); + wmem_map_insert(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx)), + GUINT_TO_POINTER(dataCodingScheme)); + } return offset; } -static const per_sequence_t RadioResourceConfigCommon_eag_4_sequence[] = { - { &hf_lte_rrc_prach_Config_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_Config_v1310 }, - { &hf_lte_rrc_freqHoppingParameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqHoppingParameters_r13 }, - { &hf_lte_rrc_pdsch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigCommon_v1310 }, - { &hf_lte_rrc_pucch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon_v1310 }, - { &hf_lte_rrc_pusch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigCommon_v1310 }, - { &hf_lte_rrc_uplinkPowerControlCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1310 }, +static const per_sequence_t SystemInformationBlockType11_sequence[] = { + { &hf_lte_rrc_messageIdentifier_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messageIdentifier_01 }, + { &hf_lte_rrc_serialNumber_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_serialNumber_01 }, + { &hf_lte_rrc_warningMessageSegmentType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegmentType }, + { &hf_lte_rrc_warningMessageSegmentNumber, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegmentNumber }, + { &hf_lte_rrc_warningMessageSegment, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegment }, + { &hf_lte_rrc_dataCodingScheme, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dataCodingScheme }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NOT_EXTENSION_ROOT, ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommon_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_4_sequence); +dissect_lte_rrc_SystemInformationBlockType11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB11"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformationBlockType11, SystemInformationBlockType11_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommon_eag_5_sequence[] = { - { &hf_lte_rrc_highSpeedConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HighSpeedConfig_r14 }, - { &hf_lte_rrc_prach_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_Config_v1430 }, - { &hf_lte_rrc_pucch_ConfigCommon_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon_v1430 }, - { &hf_lte_rrc_tdd_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1430 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RadioResourceConfigCommon_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_5_sequence); +dissect_lte_rrc_T_messageIdentifier_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *msg_id_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, + 16, 16, FALSE, &msg_id_tvb, NULL); + + + + if (msg_id_tvb) { + private_data_set_message_identifier(actx, tvb_get_ntohs(msg_id_tvb, 0) << 16); + actx->created_item = proto_tree_add_item(tree, hf_index, msg_id_tvb, 0, 2, ENC_BIG_ENDIAN); + } return offset; } -static const per_sequence_t RadioResourceConfigCommon_eag_6_sequence[] = { - { &hf_lte_rrc_tdd_Config_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1450 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RadioResourceConfigCommon_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_6_sequence); +dissect_lte_rrc_T_serialNumber_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *serial_nb_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 16, 16, FALSE, &serial_nb_tvb, NULL); + + + + if (serial_nb_tvb) { + proto_tree *subtree; + private_data_set_message_identifier(actx, + private_data_get_message_identifier(actx) | tvb_get_ntohs(serial_nb_tvb, 0)); + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_serialNumber); + proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_gs, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); + proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_msg_code, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); + proto_tree_add_item(subtree, hf_lte_rrc_serialNumber_upd_nb, serial_nb_tvb, 0, 2, ENC_BIG_ENDIAN); + } return offset; } -static const per_sequence_t RadioResourceConfigCommon_sequence[] = { - { &hf_lte_rrc_rach_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RACH_ConfigCommon }, - { &hf_lte_rrc_prach_Config_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PRACH_Config }, - { &hf_lte_rrc_pdsch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigCommon }, - { &hf_lte_rrc_pusch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PUSCH_ConfigCommon }, - { &hf_lte_rrc_phich_Config, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PHICH_Config }, - { &hf_lte_rrc_pucch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon }, - { &hf_lte_rrc_soundingRS_UL_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigCommon }, - { &hf_lte_rrc_uplinkPowerControlCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon }, - { &hf_lte_rrc_antennaInfoCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoCommon }, - { &hf_lte_rrc_p_Max , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_tdd_Config , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, - { &hf_lte_rrc_ul_CyclicPrefixLength, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CyclicPrefixLength }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_5 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_6 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_warningMessageSegmentType_r9_vals[] = { + { 0, "notLastSegment" }, + { 1, "lastSegment" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RadioResourceConfigCommon(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_lte_rrc_RadioResourceConfigCommon, RadioResourceConfigCommon_sequence); +dissect_lte_rrc_T_warningMessageSegmentType_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 segment_type; + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 2, &segment_type, FALSE, 0, NULL); + + private_data_set_warning_message_segment_type(actx, (guint8)segment_type); + return offset; } -static const per_sequence_t CarrierFreqEUTRA_v9e0_sequence[] = { - { &hf_lte_rrc_dl_CarrierFreq_v9e0_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_ul_CarrierFreq_v9e0_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_CarrierFreqEUTRA_v9e0(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_lte_rrc_CarrierFreqEUTRA_v9e0, CarrierFreqEUTRA_v9e0_sequence); +dissect_lte_rrc_T_warningMessageSegmentNumber_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 segment_number; + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 63U, &segment_number, FALSE); + + private_data_set_warning_message_segment_number(actx, (guint8)segment_number); + return offset; } -static const per_sequence_t MobilityControlInfo_eag_1_sequence[] = { - { &hf_lte_rrc_carrierFreq_v9e0_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqEUTRA_v9e0 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_MobilityControlInfo_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MobilityControlInfo_eag_1_sequence); +dissect_lte_rrc_T_warningMessageSegment_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *warning_msg_seg_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &warning_msg_seg_tvb); + + + + if (warning_msg_seg_tvb) { + proto_tree *subtree; + tvbuff_t *frag_tvb; + gpointer p_dcs; + fragment_head *frag_data = fragment_add_seq_check(<e_rrc_sib12_reassembly_table, warning_msg_seg_tvb, 0, actx->pinfo, + private_data_get_message_identifier(actx), NULL, + private_data_get_warning_message_segment_number(actx), + tvb_reported_length(warning_msg_seg_tvb), + private_data_get_warning_message_segment_type(actx) ? FALSE : TRUE); + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_warningMessageSegment); + frag_tvb = process_reassembled_data(warning_msg_seg_tvb, 0, actx->pinfo, "Reassembled SIB12 warning message", + frag_data, <e_rrc_sib12_frag_items, NULL, subtree); + p_dcs = wmem_map_lookup(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx))); + if (frag_tvb && p_dcs) { + dissect_lte_rrc_warningMessageSegment(frag_tvb, subtree, actx->pinfo, GPOINTER_TO_UINT(p_dcs)); + } + } return offset; } -static const value_string lte_rrc_T_drb_ContinueROHC_r11_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_drb_ContinueROHC_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_dataCodingScheme_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *data_coding_scheme_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 1, FALSE, &data_coding_scheme_tvb); + + + + if (data_coding_scheme_tvb) { + proto_tree *subtree; + guint32 dataCodingScheme; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_dataCodingScheme); + dataCodingScheme = dissect_cbs_data_coding_scheme(data_coding_scheme_tvb, actx->pinfo, subtree, 0); + wmem_map_insert(lte_rrc_etws_cmas_dcs_hash, GUINT_TO_POINTER((guint)private_data_get_message_identifier(actx)), + GUINT_TO_POINTER(dataCodingScheme)); + } return offset; } -static const per_sequence_t MobilityControlInfo_eag_2_sequence[] = { - { &hf_lte_rrc_drb_ContinueROHC_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_ContinueROHC_r11 }, +static const per_sequence_t SystemInformationBlockType12_r9_eag_1_sequence[] = { + { &hf_lte_rrc_warningAreaCoordinatesSegment_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MobilityControlInfo_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MobilityControlInfo_eag_2_sequence); +dissect_lte_rrc_SystemInformationBlockType12_r9_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType12_r9_eag_1_sequence); return offset; } -static const per_sequence_t MobilityControlInfoV2X_r14_sequence[] = { - { &hf_lte_rrc_v2x_CommTxPoolExceptional_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, - { &hf_lte_rrc_v2x_CommRxPool_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommRxPoolListV2X_r14 }, - { &hf_lte_rrc_v2x_CommSyncConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigListV2X_r14 }, - { &hf_lte_rrc_cbr_MobilityTxConfigList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_CommonTxConfigList_r14 }, +static const per_sequence_t SystemInformationBlockType12_r9_sequence[] = { + { &hf_lte_rrc_messageIdentifier_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messageIdentifier_r9 }, + { &hf_lte_rrc_serialNumber_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_serialNumber_r9 }, + { &hf_lte_rrc_warningMessageSegmentType_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegmentType_r9 }, + { &hf_lte_rrc_warningMessageSegmentNumber_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegmentNumber_r9 }, + { &hf_lte_rrc_warningMessageSegment_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_warningMessageSegment_r9 }, + { &hf_lte_rrc_dataCodingScheme_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dataCodingScheme_r9 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType12_r9_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MobilityControlInfoV2X_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType12_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB12"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_MobilityControlInfoV2X_r14, MobilityControlInfoV2X_r14_sequence); + ett_lte_rrc_SystemInformationBlockType12_r9, SystemInformationBlockType12_r9_sequence); return offset; } -static const value_string lte_rrc_T_handoverWithoutWT_Change_r14_vals[] = { - { 0, "keepLWA-Config" }, - { 1, "sendEndMarker" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_handoverWithoutWT_Change_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_MBSFN_AreaId_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 255U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_makeBeforeBreak_r14_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_non_MBSFNregionLength_vals[] = { + { 0, "s1" }, + { 1, "s2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_makeBeforeBreak_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_non_MBSFNregionLength(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_sameSFN_Indication_r14_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_mcch_RepetitionPeriod_r9_vals[] = { + { 0, "rf32" }, + { 1, "rf64" }, + { 2, "rf128" }, + { 3, "rf256" }, { 0, NULL } }; static int -dissect_lte_rrc_T_sameSFN_Indication_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mcch_RepetitionPeriod_r9(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, - 1, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MobilityControlInfo_eag_3_sequence[] = { - { &hf_lte_rrc_mobilityControlInfoV2X_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityControlInfoV2X_r14 }, - { &hf_lte_rrc_handoverWithoutWT_Change_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_handoverWithoutWT_Change_r14 }, - { &hf_lte_rrc_makeBeforeBreak_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_makeBeforeBreak_r14 }, - { &hf_lte_rrc_rach_Skip_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_Skip_r14 }, - { &hf_lte_rrc_sameSFN_Indication_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sameSFN_Indication_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mcch_ModificationPeriod_r9_vals[] = { + { 0, "rf512" }, + { 1, "rf1024" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MobilityControlInfo_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MobilityControlInfo_eag_3_sequence); +dissect_lte_rrc_T_mcch_ModificationPeriod_r9(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t MobilityControlInfo_eag_4_sequence[] = { - { &hf_lte_rrc_mib_RepetitionStatus_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_schedulingInfoSIB1_BR_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_signallingMCS_r9_vals[] = { + { 0, "n2" }, + { 1, "n7" }, + { 2, "n13" }, + { 3, "n19" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MobilityControlInfo_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MobilityControlInfo_eag_4_sequence); +dissect_lte_rrc_T_signallingMCS_r9(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 per_sequence_t MobilityControlInfo_sequence[] = { - { &hf_lte_rrc_targetPhysCellId, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_carrierFreq_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqEUTRA }, - { &hf_lte_rrc_carrierBandwidth, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierBandwidthEUTRA }, - { &hf_lte_rrc_additionalSpectrumEmission, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSpectrumEmission }, - { &hf_lte_rrc_t304_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t304_01 }, - { &hf_lte_rrc_newUE_Identity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, - { &hf_lte_rrc_radioResourceConfigCommon_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon }, - { &hf_lte_rrc_rach_ConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RACH_ConfigDedicated }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityControlInfo_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityControlInfo_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityControlInfo_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityControlInfo_eag_4 }, +static const per_sequence_t T_mcch_Config_r9_sequence[] = { + { &hf_lte_rrc_mcch_RepetitionPeriod_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mcch_RepetitionPeriod_r9 }, + { &hf_lte_rrc_mcch_Offset_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10 }, + { &hf_lte_rrc_mcch_ModificationPeriod_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mcch_ModificationPeriod_r9 }, + { &hf_lte_rrc_sf_AllocInfo_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_6 }, + { &hf_lte_rrc_signallingMCS_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_signallingMCS_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MobilityControlInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mcch_Config_r9(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_lte_rrc_MobilityControlInfo, MobilityControlInfo_sequence); + ett_lte_rrc_T_mcch_Config_r9, T_mcch_Config_r9_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS_sequence_of[1] = { - { &hf_lte_rrc_dedicatedInfoNASList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoNAS }, +static const value_string lte_rrc_T_mcch_RepetitionPeriod_v1430_vals[] = { + { 0, "rf1" }, + { 1, "rf2" }, + { 2, "rf4" }, + { 3, "rf8" }, + { 4, "rf16" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS(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_lte_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS, SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS_sequence_of, - 1, maxDRB, FALSE); +dissect_lte_rrc_T_mcch_RepetitionPeriod_v1430(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, + 5, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_intraLTE_sequence[] = { - { &hf_lte_rrc_securityAlgorithmConfig, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityAlgorithmConfig }, - { &hf_lte_rrc_keyChangeIndicator, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_nextHopChainingCount, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NextHopChainingCount }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mcch_ModificationPeriod_v1430_vals[] = { + { 0, "rf1" }, + { 1, "rf2" }, + { 2, "rf4" }, + { 3, "rf8" }, + { 4, "rf16" }, + { 5, "rf32" }, + { 6, "rf64" }, + { 7, "rf128" }, + { 8, "rf256" }, + { 9, "spare7" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_intraLTE(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_lte_rrc_T_intraLTE, T_intraLTE_sequence); +dissect_lte_rrc_T_mcch_ModificationPeriod_v1430(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, + 10, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t T_mcch_Config_r14_sequence[] = { + { &hf_lte_rrc_mcch_RepetitionPeriod_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mcch_RepetitionPeriod_v1430 }, + { &hf_lte_rrc_mcch_ModificationPeriod_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mcch_ModificationPeriod_v1430 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_nas_SecurityParamToEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *nas_sec_param_to_eutra_tvb = NULL; - guint32 length; - proto_tree *subtree; - - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 6, 6, FALSE, &nas_sec_param_to_eutra_tvb); - - if (nas_sec_param_to_eutra_tvb) { - length = tvb_reported_length(nas_sec_param_to_eutra_tvb); - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nas_SecurityParam); - de_emm_sec_par_to_eutra(nas_sec_param_to_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0); - } - +dissect_lte_rrc_T_mcch_Config_r14(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_lte_rrc_T_mcch_Config_r14, T_mcch_Config_r14_sequence); return offset; } -static const per_sequence_t T_interRAT_sequence[] = { - { &hf_lte_rrc_securityAlgorithmConfig, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityAlgorithmConfig }, - { &hf_lte_rrc_nas_SecurityParamToEUTRA, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nas_SecurityParamToEUTRA }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_subcarrierSpacingMBMS_r14_vals[] = { + { 0, "khz-7dot5" }, + { 1, "khz-1dot25" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_interRAT(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_lte_rrc_T_interRAT, T_interRAT_sequence); +dissect_lte_rrc_T_subcarrierSpacingMBMS_r14(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_handoverType_vals[] = { - { 0, "intraLTE" }, - { 1, "interRAT" }, - { 0, NULL } -}; - -static const per_choice_t T_handoverType_choice[] = { - { 0, &hf_lte_rrc_intraLTE , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_intraLTE }, - { 1, &hf_lte_rrc_interRAT , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interRAT }, - { 0, NULL, 0, NULL } +static const per_sequence_t MBSFN_AreaInfo_r9_eag_1_sequence[] = { + { &hf_lte_rrc_mcch_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mcch_Config_r14 }, + { &hf_lte_rrc_subcarrierSpacingMBMS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_subcarrierSpacingMBMS_r14 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_handoverType(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_lte_rrc_T_handoverType, T_handoverType_choice, - NULL); +dissect_lte_rrc_MBSFN_AreaInfo_r9_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MBSFN_AreaInfo_r9_eag_1_sequence); return offset; } -static const per_sequence_t SecurityConfigHO_sequence[] = { - { &hf_lte_rrc_handoverType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_handoverType }, +static const per_sequence_t MBSFN_AreaInfo_r9_sequence[] = { + { &hf_lte_rrc_mbsfn_AreaId_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_AreaId_r12 }, + { &hf_lte_rrc_non_MBSFNregionLength, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_non_MBSFNregionLength }, + { &hf_lte_rrc_notificationIndicator_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_mcch_Config_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mcch_Config_r9 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_AreaInfo_r9_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SecurityConfigHO(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBSFN_AreaInfo_r9(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_lte_rrc_SecurityConfigHO, SecurityConfigHO_sequence); + ett_lte_rrc_MBSFN_AreaInfo_r9, MBSFN_AreaInfo_r9_sequence); return offset; } +static const per_sequence_t MBSFN_AreaInfoList_r9_sequence_of[1] = { + { &hf_lte_rrc_MBSFN_AreaInfoList_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_AreaInfo_r9 }, +}; static int -dissect_lte_rrc_T_lateNonCriticalExtension_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_RRCConnectionReconfiguration_v8m0_IEs_PDU); +dissect_lte_rrc_MBSFN_AreaInfoList_r9(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_lte_rrc_MBSFN_AreaInfoList_r9, MBSFN_AreaInfoList_r9_sequence_of, + 1, maxMBSFN_Area, FALSE); return offset; } -static const value_string lte_rrc_T_fullConfig_r9_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_notificationRepetitionCoeff_r9_vals[] = { + { 0, "n2" }, + { 1, "n4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_fullConfig_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_notificationRepetitionCoeff_r9(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } @@ -54008,377 +57663,382 @@ dissect_lte_rrc_T_fullConfig_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int -dissect_lte_rrc_T_systemInformationBlockType1Dedicated_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType1_PDU); +dissect_lte_rrc_INTEGER_1_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 6U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_t350_r12_vals[] = { - { 0, "min5" }, - { 1, "min10" }, - { 2, "min20" }, - { 3, "min30" }, - { 4, "min60" }, - { 5, "min120" }, - { 6, "min180" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t MBMS_NotificationConfig_r9_sequence[] = { + { &hf_lte_rrc_notificationRepetitionCoeff_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_notificationRepetitionCoeff_r9 }, + { &hf_lte_rrc_notificationOffset_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10 }, + { &hf_lte_rrc_notificationSF_Index_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_6 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_t350_r12(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MBMS_NotificationConfig_r9(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_lte_rrc_MBMS_NotificationConfig_r9, MBMS_NotificationConfig_r9_sequence); return offset; } -static const per_sequence_t T_setup_sequence[] = { - { &hf_lte_rrc_wlan_OffloadConfigDedicated_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_OffloadConfig_r12 }, - { &hf_lte_rrc_t350_r12 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t350_r12 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_setup(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_lte_rrc_T_setup, T_setup_sequence); +dissect_lte_rrc_INTEGER_7_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 7U, 10U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_wlan_OffloadInfo_r12_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t T_wlan_OffloadInfo_r12_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup }, - { 0, NULL, 0, NULL } +static const per_sequence_t MBMS_NotificationConfig_v1430_sequence[] = { + { &hf_lte_rrc_notificationSF_Index_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_7_10 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_wlan_OffloadInfo_r12(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_lte_rrc_T_wlan_OffloadInfo_r12, T_wlan_OffloadInfo_r12_choice, - NULL); +dissect_lte_rrc_MBMS_NotificationConfig_v1430(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_lte_rrc_MBMS_NotificationConfig_v1430, MBMS_NotificationConfig_v1430_sequence); return offset; } -static const per_sequence_t T_scg_ConfigPartMCG_r12_sequence[] = { - { &hf_lte_rrc_scg_Counter_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, - { &hf_lte_rrc_powerCoordinationInfo_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PowerCoordinationInfo_r12 }, +static const per_sequence_t SystemInformationBlockType13_r9_eag_1_sequence[] = { + { &hf_lte_rrc_notificationConfig_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_NotificationConfig_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_scg_ConfigPartMCG_r12(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_lte_rrc_T_scg_ConfigPartMCG_r12, T_scg_ConfigPartMCG_r12_sequence); +dissect_lte_rrc_SystemInformationBlockType13_r9_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType13_r9_eag_1_sequence); return offset; } -static const per_sequence_t T_setup_03_sequence[] = { - { &hf_lte_rrc_scg_ConfigPartMCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scg_ConfigPartMCG_r12 }, - { &hf_lte_rrc_scg_ConfigPartSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigPartSCG_r12 }, +static const per_sequence_t SystemInformationBlockType13_r9_sequence[] = { + { &hf_lte_rrc_mbsfn_AreaInfoList_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_AreaInfoList_r9 }, + { &hf_lte_rrc_notificationConfig_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_NotificationConfig_r9 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType13_r9_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType13_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB13"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_setup_03, T_setup_03_sequence); + ett_lte_rrc_SystemInformationBlockType13_r9, SystemInformationBlockType13_r9_sequence); return offset; } -static const value_string lte_rrc_SCG_Configuration_r12_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t SCG_Configuration_r12_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_03 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_03 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_SCG_Configuration_r12(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_lte_rrc_SCG_Configuration_r12, SCG_Configuration_r12_choice, - NULL); +dissect_lte_rrc_T_eab_Category_r11(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_networkControlledSyncTx_r12_vals[] = { - { 0, "on" }, - { 1, "off" }, - { 0, NULL } +static const per_sequence_t EAB_Config_r11_sequence[] = { + { &hf_lte_rrc_eab_Category_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eab_Category_r11 }, + { &hf_lte_rrc_eab_BarringBitmap_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_networkControlledSyncTx_r12(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, FALSE, 0, NULL); +dissect_lte_rrc_EAB_Config_r11(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_lte_rrc_EAB_Config_r11, EAB_Config_r11_sequence); return offset; } -static const per_sequence_t SL_SyncTxControl_r12_sequence[] = { - { &hf_lte_rrc_networkControlledSyncTx_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_networkControlledSyncTx_r12 }, +static const per_sequence_t EAB_ConfigPLMN_r11_sequence[] = { + { &hf_lte_rrc_eab_Config_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_EAB_Config_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_SyncTxControl_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_EAB_ConfigPLMN_r11(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_lte_rrc_SL_SyncTxControl_r12, SL_SyncTxControl_r12_sequence); + ett_lte_rrc_EAB_ConfigPLMN_r11, EAB_ConfigPLMN_r11_sequence); return offset; } -static const per_sequence_t T_setup_34_sequence[] = { - { &hf_lte_rrc_lwa_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LWA_Config_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11_sequence_of[1] = { + { &hf_lte_rrc_eab_PerPLMN_List_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_EAB_ConfigPLMN_r11 }, }; static int -dissect_lte_rrc_T_setup_34(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_lte_rrc_T_setup_34, T_setup_34_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11(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_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11, SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const value_string lte_rrc_LWA_Configuration_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_eab_Param_r11_vals[] = { + { 0, "eab-Common-r11" }, + { 1, "eab-PerPLMN-List-r11" }, { 0, NULL } }; -static const per_choice_t LWA_Configuration_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_41 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_34 }, +static const per_choice_t T_eab_Param_r11_choice[] = { + { 0, &hf_lte_rrc_eab_Common_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_EAB_Config_r11 }, + { 1, &hf_lte_rrc_eab_PerPLMN_List_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_EAB_ConfigPLMN_r11 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_LWA_Configuration_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_eab_Param_r11(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_lte_rrc_LWA_Configuration_r13, LWA_Configuration_r13_choice, + ett_lte_rrc_T_eab_Param_r11, T_eab_Param_r11_choice, NULL); return offset; } +static const value_string lte_rrc_T_eab_PerRSRP_r15_vals[] = { + { 0, "thresh0" }, + { 1, "thresh1" }, + { 2, "thresh2" }, + { 3, "thresh3" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_ipv4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *ipv4_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 32, 32, FALSE, &ipv4_tvb, NULL); +dissect_lte_rrc_T_eab_PerRSRP_r15(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; +} - if (ipv4_tvb) { - actx->created_item = proto_tree_add_item(tree, hf_index, ipv4_tvb, 0, 4, ENC_BIG_ENDIAN); - } +static const per_sequence_t SystemInformationBlockType14_r11_eag_1_sequence[] = { + { &hf_lte_rrc_eab_PerRSRP_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eab_PerRSRP_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType14_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType14_r11_eag_1_sequence); return offset; } +static const per_sequence_t SystemInformationBlockType14_r11_sequence[] = { + { &hf_lte_rrc_eab_Param_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_eab_Param_r11 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType14_r11_eag_1 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_ipv6_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *ipv6_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 128, 128, FALSE, &ipv6_tvb, NULL); +dissect_lte_rrc_SystemInformationBlockType14_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - if (ipv6_tvb) { - actx->created_item = proto_tree_add_item(tree, hf_index, ipv6_tvb, 0, 16, ENC_BIG_ENDIAN); - } + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB14"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformationBlockType14_r11, SystemInformationBlockType14_r11_sequence); return offset; } -static const value_string lte_rrc_IP_Address_r13_vals[] = { - { 0, "ipv4-r13" }, - { 1, "ipv6-r13" }, - { 0, NULL } -}; -static const per_choice_t IP_Address_r13_choice[] = { - { 0, &hf_lte_rrc_ipv4_r13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ipv4_r13 }, - { 1, &hf_lte_rrc_ipv6_r13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ipv6_r13 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_MBMS_SAI_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 65535U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t MBMS_SAI_List_r11_sequence_of[1] = { + { &hf_lte_rrc_MBMS_SAI_List_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SAI_r11 }, }; static int -dissect_lte_rrc_IP_Address_r13(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_lte_rrc_IP_Address_r13, IP_Address_r13_choice, - NULL); +dissect_lte_rrc_MBMS_SAI_List_r11(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_lte_rrc_MBMS_SAI_List_r11, MBMS_SAI_List_r11_sequence_of, + 1, maxSAI_MBMS_r11, FALSE); return offset; } -static const per_sequence_t IKE_Identity_r13_sequence[] = { - { &hf_lte_rrc_idI_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING }, +static const per_sequence_t MBMS_SAI_InterFreq_r11_sequence[] = { + { &hf_lte_rrc_dl_CarrierFreq_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_mbms_SAI_List_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SAI_List_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IKE_Identity_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBMS_SAI_InterFreq_r11(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_lte_rrc_IKE_Identity_r13, IKE_Identity_r13_sequence); + ett_lte_rrc_MBMS_SAI_InterFreq_r11, MBMS_SAI_InterFreq_r11_sequence); return offset; } -static const per_sequence_t TunnelConfigLWIP_r13_eag_1_sequence[] = { - { &hf_lte_rrc_lwip_Counter_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, - { NULL, 0, 0, NULL } +static const per_sequence_t MBMS_SAI_InterFreqList_r11_sequence_of[1] = { + { &hf_lte_rrc_MBMS_SAI_InterFreqList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SAI_InterFreq_r11 }, }; static int -dissect_lte_rrc_TunnelConfigLWIP_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, TunnelConfigLWIP_r13_eag_1_sequence); +dissect_lte_rrc_MBMS_SAI_InterFreqList_r11(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_lte_rrc_MBMS_SAI_InterFreqList_r11, MBMS_SAI_InterFreqList_r11_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t TunnelConfigLWIP_r13_sequence[] = { - { &hf_lte_rrc_ip_Address_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IP_Address_r13 }, - { &hf_lte_rrc_ike_Identity_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IKE_Identity_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_TunnelConfigLWIP_r13_eag_1 }, +static const per_sequence_t MBMS_SAI_InterFreq_v1140_sequence[] = { + { &hf_lte_rrc_multiBandInfoList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_TunnelConfigLWIP_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBMS_SAI_InterFreq_v1140(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_lte_rrc_TunnelConfigLWIP_r13, TunnelConfigLWIP_r13_sequence); + ett_lte_rrc_MBMS_SAI_InterFreq_v1140, MBMS_SAI_InterFreq_v1140_sequence); return offset; } -static const per_sequence_t LWIP_Config_r13_sequence[] = { - { &hf_lte_rrc_lwip_MobilityConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_MobilityConfig_r13 }, - { &hf_lte_rrc_tunnelConfigLWIP_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TunnelConfigLWIP_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t MBMS_SAI_InterFreqList_v1140_sequence_of[1] = { + { &hf_lte_rrc_MBMS_SAI_InterFreqList_v1140_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SAI_InterFreq_v1140 }, }; static int -dissect_lte_rrc_LWIP_Config_r13(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_lte_rrc_LWIP_Config_r13, LWIP_Config_r13_sequence); +dissect_lte_rrc_MBMS_SAI_InterFreqList_v1140(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_lte_rrc_MBMS_SAI_InterFreqList_v1140, MBMS_SAI_InterFreqList_v1140_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t T_setup_35_sequence[] = { - { &hf_lte_rrc_lwip_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LWIP_Config_r13 }, +static const per_sequence_t SystemInformationBlockType15_r11_eag_1_sequence[] = { + { &hf_lte_rrc_mbms_SAI_InterFreqList_v1140, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_SAI_InterFreqList_v1140 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_35(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_lte_rrc_T_setup_35, T_setup_35_sequence); +dissect_lte_rrc_SystemInformationBlockType15_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType15_r11_eag_1_sequence); return offset; } -static const value_string lte_rrc_LWIP_Configuration_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_carrierType_r14_vals[] = { + { 0, "mbms" }, + { 1, "fembmsMixed" }, + { 2, "fembmsDedicated" }, { 0, NULL } }; -static const per_choice_t LWIP_Configuration_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_42 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_35 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_LWIP_Configuration_r13(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_lte_rrc_LWIP_Configuration_r13, LWIP_Configuration_r13_choice, - NULL); +dissect_lte_rrc_T_carrierType_r14(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCellToAddModExt_v1430_sequence[] = { - { &hf_lte_rrc_srs_SwitchFromServCellIndex_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, +static const per_sequence_t MBMS_CarrierType_r14_sequence[] = { + { &hf_lte_rrc_carrierType_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_carrierType_r14 }, + { &hf_lte_rrc_frameOffset_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCellToAddModExt_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBMS_CarrierType_r14(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_lte_rrc_SCellToAddModExt_v1430, SCellToAddModExt_v1430_sequence); + ett_lte_rrc_MBMS_CarrierType_r14, MBMS_CarrierType_r14_sequence); return offset; } -static const per_sequence_t SCellToAddModListExt_v1430_sequence_of[1] = { - { &hf_lte_rrc_SCellToAddModListExt_v1430_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddModExt_v1430 }, +static const per_sequence_t MBMS_InterFreqCarrierTypeList_r14_sequence_of[1] = { + { &hf_lte_rrc_MBMS_InterFreqCarrierTypeList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_CarrierType_r14 }, }; static int -dissect_lte_rrc_SCellToAddModListExt_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBMS_InterFreqCarrierTypeList_r14(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_lte_rrc_SCellToAddModListExt_v1430, SCellToAddModListExt_v1430_sequence_of, - 1, maxSCell_r13, FALSE); + ett_lte_rrc_MBMS_InterFreqCarrierTypeList_r14, MBMS_InterFreqCarrierTypeList_r14_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const value_string lte_rrc_T_perCC_GapIndicationRequest_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SystemInformationBlockType15_r11_eag_2_sequence[] = { + { &hf_lte_rrc_mbms_IntraFreqCarrierType_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_CarrierType_r14 }, + { &hf_lte_rrc_mbms_InterFreqCarrierTypeList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_InterFreqCarrierTypeList_r14 }, + { NULL, 0, 0, NULL } }; +static int +dissect_lte_rrc_SystemInformationBlockType15_r11_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType15_r11_eag_2_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType15_r11_sequence[] = { + { &hf_lte_rrc_mbms_SAI_IntraFreq_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_SAI_List_r11 }, + { &hf_lte_rrc_mbms_SAI_InterFreqList_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_SAI_InterFreqList_r11 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType15_r11_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType15_r11_eag_2 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_perCC_GapIndicationRequest_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SystemInformationBlockType15_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB15"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformationBlockType15_r11, SystemInformationBlockType15_r11_sequence); return offset; } @@ -54386,9 +58046,21 @@ dissect_lte_rrc_T_perCC_GapIndicationRequest_r14(tvbuff_t *tvb _U_, int offset _ static int -dissect_lte_rrc_T_systemInformationBlockType2Dedicated_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType2_PDU); +dissect_lte_rrc_T_timeInfoUTC_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint64 timeInfo; + proto_tree *subtree; + nstime_t ts; + guint32 old_offset = offset; + offset = dissect_per_constrained_integer_64b(tvb, offset, actx, tree, hf_index, + 0U, G_GUINT64_CONSTANT(549755813887), &timeInfo, FALSE); + + + + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_timeInfo); + ts.secs = (time_t)(timeInfo/100)-2208988800U; /* epoch is 00:00:00 (midnight) UTC on 1900-01-01 */ + ts.nsecs = (int)(timeInfo%100)*10000000; + proto_tree_add_time(subtree, hf_lte_rrc_utc_time, tvb, old_offset>>3, (old_offset&0x07) ? 6 : 5, &ts); + proto_tree_add_time(subtree, hf_lte_rrc_local_time, tvb, old_offset>>3, (old_offset&0x07) ? 6 : 5, &ts); return offset; } @@ -54396,77 +58068,64 @@ dissect_lte_rrc_T_systemInformationBlockType2Dedicated_r14(tvbuff_t *tvb _U_, in static int -dissect_lte_rrc_T_nr_SecondaryCellGroupConfig_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *rrc_reconfiguration_tvb = NULL; +dissect_lte_rrc_T_dayLightSavingTime_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *daylight_saving_time_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, + 2, 2, FALSE, &daylight_saving_time_tvb, NULL); - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &rrc_reconfiguration_tvb); - if (rrc_reconfiguration_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nr_SecondaryCellGroupConfig_r15); - dissect_nr_rrc_RRCReconfiguration_PDU(rrc_reconfiguration_tvb, actx->pinfo, subtree, NULL); + if (daylight_saving_time_tvb) { + guint bitvalue = tvb_get_bits8(daylight_saving_time_tvb, 0, 2); + actx->created_item = proto_tree_add_uint(tree, hf_index, daylight_saving_time_tvb, 0, 1, bitvalue); } - return offset; } -static const per_sequence_t T_setup_01_sequence[] = { - { &hf_lte_rrc_endc_ReleaseAndAdd_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_nr_SecondaryCellGroupConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_SecondaryCellGroupConfig_r15 }, - { &hf_lte_rrc_p_MaxEUTRA_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_setup_01(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_lte_rrc_T_setup_01, T_setup_01_sequence); +dissect_lte_rrc_INTEGER_M127_128(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -127, 128U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_nr_Config_r15_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t T_nr_Config_r15_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_01 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_nr_Config_r15(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_lte_rrc_T_nr_Config_r15, T_nr_Config_r15_choice, - NULL); +dissect_lte_rrc_INTEGER_M63_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -63, 64U, NULL, FALSE); return offset; } +static const per_sequence_t T_timeInfo_r11_sequence[] = { + { &hf_lte_rrc_timeInfoUTC_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_timeInfoUTC_r11 }, + { &hf_lte_rrc_dayLightSavingTime_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dayLightSavingTime_r11 }, + { &hf_lte_rrc_leapSeconds_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M127_128 }, + { &hf_lte_rrc_localTimeOffset_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M63_64 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_nr_RadioBearerConfig1_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *radio_bearer_config_tvb = NULL; +dissect_lte_rrc_T_timeInfo_r11(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_lte_rrc_T_timeInfo_r11, T_timeInfo_r11_sequence); - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); + return offset; +} - if (radio_bearer_config_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nr_RadioBearerConfig_r15); - dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); - } +static int +dissect_lte_rrc_INTEGER_0_72999(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 72999U, NULL, FALSE); return offset; } @@ -54474,1334 +58133,1435 @@ dissect_lte_rrc_T_nr_RadioBearerConfig1_r15(tvbuff_t *tvb _U_, int offset _U_, a static int -dissect_lte_rrc_T_nr_RadioBearerConfig2_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *radio_bearer_config_tvb = NULL; +dissect_lte_rrc_INTEGER_0_86399(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 86399U, NULL, FALSE); - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); + return offset; +} - if (radio_bearer_config_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nr_RadioBearerConfigS_r15); - dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); - } +static int +dissect_lte_rrc_INTEGER_0_999(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 999U, NULL, FALSE); return offset; } -static const value_string lte_rrc_SubframeAssignment_r15_vals[] = { - { 0, "sa0" }, - { 1, "sa1" }, - { 2, "sa2" }, - { 3, "sa3" }, - { 4, "sa4" }, - { 5, "sa5" }, - { 6, "sa6" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_SubframeAssignment_r15(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, - 7, NULL, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_0_3999(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3999U, NULL, FALSE); return offset; } -static const per_sequence_t T_setup_02_sequence[] = { - { &hf_lte_rrc_subframeAssignment_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SubframeAssignment_r15 }, - { &hf_lte_rrc_harq_Offset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_9 }, +static const per_sequence_t ReferenceTime_r15_sequence[] = { + { &hf_lte_rrc_refDays_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_72999 }, + { &hf_lte_rrc_refSeconds_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_86399 }, + { &hf_lte_rrc_refMilliSeconds_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_999 }, + { &hf_lte_rrc_refQuarterMicroSeconds_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3999 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ReferenceTime_r15(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_lte_rrc_T_setup_02, T_setup_02_sequence); + ett_lte_rrc_ReferenceTime_r15, ReferenceTime_r15_sequence); return offset; } -static const value_string lte_rrc_T_tdm_PatternConfig_r15_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_timeInfoType_r15_vals[] = { + { 0, "localClock" }, { 0, NULL } }; -static const per_choice_t T_tdm_PatternConfig_r15_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_02 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_tdm_PatternConfig_r15(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_lte_rrc_T_tdm_PatternConfig_r15, T_tdm_PatternConfig_r15_choice, - NULL); +dissect_lte_rrc_T_timeInfoType_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_29_sequence[] = { +static const per_sequence_t TimeReferenceInfo_r15_sequence[] = { + { &hf_lte_rrc_time_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReferenceTime_r15 }, + { &hf_lte_rrc_uncertainty_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_12 }, + { &hf_lte_rrc_timeInfoType_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_timeInfoType_r15 }, + { &hf_lte_rrc_referenceSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1023 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_TimeReferenceInfo_r15(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_lte_rrc_T_nonCriticalExtension_29, T_nonCriticalExtension_29_sequence); + ett_lte_rrc_TimeReferenceInfo_r15, TimeReferenceInfo_r15_sequence); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v1510_IEs_sequence[] = { - { &hf_lte_rrc_nr_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_Config_r15 }, - { &hf_lte_rrc_sk_Counter_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, - { &hf_lte_rrc_nr_RadioBearerConfig1_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_RadioBearerConfig1_r15 }, - { &hf_lte_rrc_nr_RadioBearerConfig2_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_RadioBearerConfig2_r15 }, - { &hf_lte_rrc_tdm_PatternConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdm_PatternConfig_r15 }, - { &hf_lte_rrc_nonCriticalExtension_81, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_29 }, +static const per_sequence_t SystemInformationBlockType16_r11_eag_1_sequence[] = { + { &hf_lte_rrc_timeReferenceInfo_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TimeReferenceInfo_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfiguration_v1510_IEs(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_lte_rrc_RRCConnectionReconfiguration_v1510_IEs, RRCConnectionReconfiguration_v1510_IEs_sequence); +dissect_lte_rrc_SystemInformationBlockType16_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType16_r11_eag_1_sequence); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v1430_IEs_sequence[] = { - { &hf_lte_rrc_sl_V2X_ConfigDedicated_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_ConfigDedicated_r14 }, - { &hf_lte_rrc_sCellToAddModListExt_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_v1430 }, - { &hf_lte_rrc_perCC_GapIndicationRequest_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_perCC_GapIndicationRequest_r14 }, - { &hf_lte_rrc_systemInformationBlockType2Dedicated_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInformationBlockType2Dedicated_r14 }, - { &hf_lte_rrc_nonCriticalExtension_80, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1510_IEs }, +static const per_sequence_t SystemInformationBlockType16_r11_sequence[] = { + { &hf_lte_rrc_timeInfo_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_timeInfo_r11 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType16_r11_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfiguration_v1430_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType16_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB16"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionReconfiguration_v1430_IEs, RRCConnectionReconfiguration_v1430_IEs_sequence); + ett_lte_rrc_SystemInformationBlockType16_r11, SystemInformationBlockType16_r11_sequence); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v1310_IEs_sequence[] = { - { &hf_lte_rrc_sCellToReleaseListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseListExt_r13 }, - { &hf_lte_rrc_sCellToAddModListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_r13 }, - { &hf_lte_rrc_lwa_Configuration_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWA_Configuration_r13 }, - { &hf_lte_rrc_lwip_Configuration_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWIP_Configuration_r13 }, - { &hf_lte_rrc_rclwi_Configuration_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RCLWI_Configuration_r13 }, - { &hf_lte_rrc_nonCriticalExtension_79, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1430_IEs }, +static const per_sequence_t WLAN_OffloadInfoPerPLMN_r12_sequence[] = { + { &hf_lte_rrc_wlan_OffloadConfigCommon_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_OffloadConfig_r12 }, + { &hf_lte_rrc_wlan_Id_List_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_Id_List_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfiguration_v1310_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_WLAN_OffloadInfoPerPLMN_r12(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_lte_rrc_RRCConnectionReconfiguration_v1310_IEs, RRCConnectionReconfiguration_v1310_IEs_sequence); + ett_lte_rrc_WLAN_OffloadInfoPerPLMN_r12, WLAN_OffloadInfoPerPLMN_r12_sequence); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v1250_IEs_sequence[] = { - { &hf_lte_rrc_wlan_OffloadInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_OffloadInfo_r12 }, - { &hf_lte_rrc_scg_Configuration_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_Configuration_r12 }, - { &hf_lte_rrc_sl_SyncTxControl_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncTxControl_r12 }, - { &hf_lte_rrc_sl_DiscConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscConfig_r12 }, - { &hf_lte_rrc_sl_CommConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommConfig_r12 }, - { &hf_lte_rrc_nonCriticalExtension_78, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1310_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxPLMN_r11_OF_WLAN_OffloadInfoPerPLMN_r12_sequence_of[1] = { + { &hf_lte_rrc_wlan_OffloadInfoPerPLMN_List_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_OffloadInfoPerPLMN_r12 }, }; static int -dissect_lte_rrc_RRCConnectionReconfiguration_v1250_IEs(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_lte_rrc_RRCConnectionReconfiguration_v1250_IEs, RRCConnectionReconfiguration_v1250_IEs_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_WLAN_OffloadInfoPerPLMN_r12(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_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_WLAN_OffloadInfoPerPLMN_r12, SEQUENCE_SIZE_1_maxPLMN_r11_OF_WLAN_OffloadInfoPerPLMN_r12_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v1130_IEs_sequence[] = { - { &hf_lte_rrc_systemInformationBlockType1Dedicated_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInformationBlockType1Dedicated_r11 }, - { &hf_lte_rrc_nonCriticalExtension_77, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1250_IEs }, +static const per_sequence_t SystemInformationBlockType17_r12_sequence[] = { + { &hf_lte_rrc_wlan_OffloadInfoPerPLMN_List_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_WLAN_OffloadInfoPerPLMN_r12 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfiguration_v1130_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType17_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB17"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionReconfiguration_v1130_IEs, RRCConnectionReconfiguration_v1130_IEs_sequence); + ett_lte_rrc_SystemInformationBlockType17_r12, SystemInformationBlockType17_r12_sequence); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v1020_IEs_sequence[] = { - { &hf_lte_rrc_sCellToReleaseList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseList_r10 }, - { &hf_lte_rrc_sCellToAddModList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_r10 }, - { &hf_lte_rrc_nonCriticalExtension_76, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1130_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_CommRxPoolList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_CommRxPoolList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, }; static int -dissect_lte_rrc_RRCConnectionReconfiguration_v1020_IEs(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_lte_rrc_RRCConnectionReconfiguration_v1020_IEs, RRCConnectionReconfiguration_v1020_IEs_sequence); +dissect_lte_rrc_SL_CommRxPoolList_r12(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_lte_rrc_SL_CommRxPoolList_r12, SL_CommRxPoolList_r12_sequence_of, + 1, maxSL_RxPool_r12, FALSE); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v920_IEs_sequence[] = { - { &hf_lte_rrc_otherConfig_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OtherConfig_r9 }, - { &hf_lte_rrc_fullConfig_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fullConfig_r9 }, - { &hf_lte_rrc_nonCriticalExtension_75, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1020_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_CommTxPoolList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_CommTxPoolList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, }; static int -dissect_lte_rrc_RRCConnectionReconfiguration_v920_IEs(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_lte_rrc_RRCConnectionReconfiguration_v920_IEs, RRCConnectionReconfiguration_v920_IEs_sequence); +dissect_lte_rrc_SL_CommTxPoolList_r12(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_lte_rrc_SL_CommTxPoolList_r12, SL_CommTxPoolList_r12_sequence_of, + 1, maxSL_TxPool_r12, FALSE); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v890_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_01 }, - { &hf_lte_rrc_nonCriticalExtension_69, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v920_IEs }, +static const per_sequence_t T_txParameters_r12_02_sequence[] = { + { &hf_lte_rrc_syncTxParameters_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_TxParameters_r12 }, + { &hf_lte_rrc_syncTxThreshIC_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_RangeSL_r12 }, + { &hf_lte_rrc_syncInfoReserved_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_19 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfiguration_v890_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_txParameters_r12_02(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_lte_rrc_RRCConnectionReconfiguration_v890_IEs, RRCConnectionReconfiguration_v890_IEs_sequence); + ett_lte_rrc_T_txParameters_r12_02, T_txParameters_r12_02_sequence); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_r8_IEs_sequence[] = { - { &hf_lte_rrc_measConfig , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasConfig }, - { &hf_lte_rrc_mobilityControlInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityControlInfo }, - { &hf_lte_rrc_dedicatedInfoNASList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS }, - { &hf_lte_rrc_radioResourceConfigDedicated, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicated }, - { &hf_lte_rrc_securityConfigHO, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityConfigHO }, - { &hf_lte_rrc_nonCriticalExtension_68, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v890_IEs }, +static const value_string lte_rrc_T_discSyncWindow_r12_vals[] = { + { 0, "w1" }, + { 1, "w2" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_discSyncWindow_r12(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_rxParamsNCell_r12_sequence[] = { + { &hf_lte_rrc_physCellId_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_discSyncWindow_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_discSyncWindow_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfiguration_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rxParamsNCell_r12(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_lte_rrc_RRCConnectionReconfiguration_r8_IEs, RRCConnectionReconfiguration_r8_IEs_sequence); + ett_lte_rrc_T_rxParamsNCell_r12, T_rxParamsNCell_r12_sequence); return offset; } -static const value_string lte_rrc_T_c1_30_vals[] = { - { 0, "rrcConnectionReconfiguration-r8" }, - { 1, "spare7" }, - { 2, "spare6" }, - { 3, "spare5" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_syncTxPeriodic_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t T_c1_30_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionReconfiguration_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReconfiguration_r8_IEs }, - { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_30(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_lte_rrc_T_c1_30, T_c1_30_choice, - NULL); +dissect_lte_rrc_T_syncTxPeriodic_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_23_sequence[] = { +static const per_sequence_t SL_SyncConfig_r12_eag_1_sequence[] = { + { &hf_lte_rrc_syncTxPeriodic_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_syncTxPeriodic_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_23(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_lte_rrc_T_criticalExtensionsFuture_23, T_criticalExtensionsFuture_23_sequence); +dissect_lte_rrc_SL_SyncConfig_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfig_r12_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_23_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_gnss_Sync_r14_01_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_23_choice[] = { - { 0, &hf_lte_rrc_c1_30 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_30 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_23, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_23 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_23(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_lte_rrc_T_criticalExtensions_23, T_criticalExtensions_23_choice, - NULL); +dissect_lte_rrc_T_gnss_Sync_r14_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_23, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_23 }, +static const per_sequence_t SL_SyncConfig_r12_eag_2_sequence[] = { + { &hf_lte_rrc_syncOffsetIndicator_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_v1430 }, + { &hf_lte_rrc_gnss_Sync_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gnss_Sync_r14_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_SyncConfig_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfig_r12_eag_2_sequence); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReconfiguration"); + return offset; +} - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionReconfiguration, RRCConnectionReconfiguration_sequence); + +static const per_sequence_t SL_SyncConfig_r12_eag_3_sequence[] = { + { &hf_lte_rrc_syncOffsetIndicator2_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_r14 }, + { &hf_lte_rrc_syncOffsetIndicator3_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_OffsetIndicatorSync_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SL_SyncConfig_r12_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfig_r12_eag_3_sequence); return offset; } -static const value_string lte_rrc_ReleaseCause_vals[] = { - { 0, "loadBalancingTAUrequired" }, - { 1, "other" }, - { 2, "cs-FallbackHighPriority-v1020" }, - { 3, "rrc-Suspend-v1320" }, +static const value_string lte_rrc_T_slss_TxDisabled_r15_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_ReleaseCause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 value; +dissect_lte_rrc_T_slss_TxDisabled_r15(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, &value, FALSE, 0, NULL); - - col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [cause=%s]", - val_to_str(value, lte_rrc_ReleaseCause_vals, "Unknown")); - + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CarrierFreqListUTRA_TDD_r10_sequence_of[1] = { - { &hf_lte_rrc_CarrierFreqListUTRA_TDD_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, +static const per_sequence_t SL_SyncConfig_r12_eag_4_sequence[] = { + { &hf_lte_rrc_slss_TxDisabled_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_slss_TxDisabled_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreqListUTRA_TDD_r10(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_lte_rrc_CarrierFreqListUTRA_TDD_r10, CarrierFreqListUTRA_TDD_r10_sequence_of, - 1, maxFreqUTRA_TDD_r10, FALSE); +dissect_lte_rrc_SL_SyncConfig_r12_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_SyncConfig_r12_eag_4_sequence); return offset; } -static const value_string lte_rrc_RedirectedCarrierInfo_vals[] = { - { 0, "eutra" }, - { 1, "geran" }, - { 2, "utra-FDD" }, - { 3, "utra-TDD" }, - { 4, "cdma2000-HRPD" }, - { 5, "cdma2000-1xRTT" }, - { 6, "utra-TDD-r10" }, - { 0, NULL } +static const per_sequence_t SL_SyncConfig_r12_sequence[] = { + { &hf_lte_rrc_syncCP_Len_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CP_Len_r12 }, + { &hf_lte_rrc_syncOffsetIndicator_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_OffsetIndicatorSync_r12 }, + { &hf_lte_rrc_slssid_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SLSSID_r12 }, + { &hf_lte_rrc_txParameters_r12_02, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_txParameters_r12_02 }, + { &hf_lte_rrc_rxParamsNCell_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rxParamsNCell_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12_eag_4 }, + { NULL, 0, 0, NULL } }; -static const per_choice_t RedirectedCarrierInfo_choice[] = { - { 0, &hf_lte_rrc_eutra , ASN1_EXTENSION_ROOT , dissect_lte_rrc_ARFCN_ValueEUTRA }, - { 1, &hf_lte_rrc_geran_01 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_CarrierFreqsGERAN }, - { 2, &hf_lte_rrc_utra_FDD , ASN1_EXTENSION_ROOT , dissect_lte_rrc_ARFCN_ValueUTRA }, - { 3, &hf_lte_rrc_utra_TDD , ASN1_EXTENSION_ROOT , dissect_lte_rrc_ARFCN_ValueUTRA }, - { 4, &hf_lte_rrc_cdma2000_HRPD, ASN1_EXTENSION_ROOT , dissect_lte_rrc_CarrierFreqCDMA2000 }, - { 5, &hf_lte_rrc_cdma2000_1xRTT, ASN1_EXTENSION_ROOT , dissect_lte_rrc_CarrierFreqCDMA2000 }, - { 6, &hf_lte_rrc_utra_TDD_r10_01, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_CarrierFreqListUTRA_TDD_r10 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_SL_SyncConfig_r12(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_lte_rrc_SL_SyncConfig_r12, SL_SyncConfig_r12_sequence); + + return offset; +} + + +static const per_sequence_t SL_SyncConfigList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_SyncConfigList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12 }, }; static int -dissect_lte_rrc_RedirectedCarrierInfo(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_lte_rrc_RedirectedCarrierInfo, RedirectedCarrierInfo_choice, - NULL); +dissect_lte_rrc_SL_SyncConfigList_r12(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_lte_rrc_SL_SyncConfigList_r12, SL_SyncConfigList_r12_sequence_of, + 1, maxSL_SyncConfig_r12, FALSE); return offset; } -static const per_sequence_t FreqPriorityEUTRA_sequence[] = { - { &hf_lte_rrc_carrierFreq_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, +static const per_sequence_t T_commConfig_r12_sequence[] = { + { &hf_lte_rrc_commRxPool_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommRxPoolList_r12 }, + { &hf_lte_rrc_commTxPoolNormalCommon_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolList_r12 }, + { &hf_lte_rrc_commTxPoolExceptional_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolList_r12 }, + { &hf_lte_rrc_commSyncConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigList_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FreqPriorityEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_commConfig_r12(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_lte_rrc_FreqPriorityEUTRA, FreqPriorityEUTRA_sequence); + ett_lte_rrc_T_commConfig_r12, T_commConfig_r12_sequence); return offset; } -static const per_sequence_t FreqPriorityListEUTRA_sequence_of[1] = { - { &hf_lte_rrc_FreqPriorityListEUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityEUTRA }, +static const per_sequence_t SL_CommTxPoolListExt_r13_sequence_of[1] = { + { &hf_lte_rrc_SL_CommTxPoolListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CommResourcePool_r12 }, }; static int -dissect_lte_rrc_FreqPriorityListEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_CommTxPoolListExt_r13(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_lte_rrc_FreqPriorityListEUTRA, FreqPriorityListEUTRA_sequence_of, - 1, maxFreq, FALSE); + ett_lte_rrc_SL_CommTxPoolListExt_r13, SL_CommTxPoolListExt_r13_sequence_of, + 1, maxSL_TxPool_v1310, FALSE); return offset; } -static const per_sequence_t FreqsPriorityGERAN_sequence[] = { - { &hf_lte_rrc_carrierFreqs, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqsGERAN }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_commTxResourceUC_ReqAllowed_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_FreqsPriorityGERAN(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_lte_rrc_FreqsPriorityGERAN, FreqsPriorityGERAN_sequence); +dissect_lte_rrc_T_commTxResourceUC_ReqAllowed_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t FreqsPriorityListGERAN_sequence_of[1] = { - { &hf_lte_rrc_FreqsPriorityListGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqsPriorityGERAN }, +static const value_string lte_rrc_T_commTxAllowRelayCommon_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_FreqsPriorityListGERAN(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_lte_rrc_FreqsPriorityListGERAN, FreqsPriorityListGERAN_sequence_of, - 1, maxGNFG, FALSE); +dissect_lte_rrc_T_commTxAllowRelayCommon_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t FreqPriorityUTRA_FDD_sequence[] = { - { &hf_lte_rrc_carrierFreq_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, +static const per_sequence_t SystemInformationBlockType18_r12_eag_1_sequence[] = { + { &hf_lte_rrc_commTxPoolNormalCommonExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolListExt_r13 }, + { &hf_lte_rrc_commTxResourceUC_ReqAllowed_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResourceUC_ReqAllowed_r13 }, + { &hf_lte_rrc_commTxAllowRelayCommon_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxAllowRelayCommon_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FreqPriorityUTRA_FDD(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_lte_rrc_FreqPriorityUTRA_FDD, FreqPriorityUTRA_FDD_sequence); +dissect_lte_rrc_SystemInformationBlockType18_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType18_r12_eag_1_sequence); return offset; } -static const per_sequence_t FreqPriorityListUTRA_FDD_sequence_of[1] = { - { &hf_lte_rrc_FreqPriorityListUTRA_FDD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityUTRA_FDD }, +static const per_sequence_t SystemInformationBlockType18_r12_sequence[] = { + { &hf_lte_rrc_commConfig_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_commConfig_r12 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType18_r12_eag_1 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FreqPriorityListUTRA_FDD(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_lte_rrc_FreqPriorityListUTRA_FDD, FreqPriorityListUTRA_FDD_sequence_of, - 1, maxUTRA_FDD_Carrier, FALSE); +dissect_lte_rrc_SystemInformationBlockType18_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB18"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformationBlockType18_r12, SystemInformationBlockType18_r12_sequence); return offset; } -static const per_sequence_t FreqPriorityUTRA_TDD_sequence[] = { - { &hf_lte_rrc_carrierFreq_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_DiscRxPoolList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_DiscRxPoolList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscResourcePool_r12 }, }; static int -dissect_lte_rrc_FreqPriorityUTRA_TDD(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_lte_rrc_FreqPriorityUTRA_TDD, FreqPriorityUTRA_TDD_sequence); +dissect_lte_rrc_SL_DiscRxPoolList_r12(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_lte_rrc_SL_DiscRxPoolList_r12, SL_DiscRxPoolList_r12_sequence_of, + 1, maxSL_RxPool_r12, FALSE); return offset; } -static const per_sequence_t FreqPriorityListUTRA_TDD_sequence_of[1] = { - { &hf_lte_rrc_FreqPriorityListUTRA_TDD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityUTRA_TDD }, +static const per_sequence_t SL_DiscTxPoolList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_DiscTxPoolList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscResourcePool_r12 }, }; static int -dissect_lte_rrc_FreqPriorityListUTRA_TDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_DiscTxPoolList_r12(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_lte_rrc_FreqPriorityListUTRA_TDD, FreqPriorityListUTRA_TDD_sequence_of, - 1, maxUTRA_TDD_Carrier, FALSE); + ett_lte_rrc_SL_DiscTxPoolList_r12, SL_DiscTxPoolList_r12_sequence_of, + 1, maxSL_TxPool_r12, FALSE); return offset; } -static const per_sequence_t BandClassPriorityHRPD_sequence[] = { - { &hf_lte_rrc_bandClass , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, +static const per_sequence_t SL_DiscTxPowerInfo_r12_sequence[] = { + { &hf_lte_rrc_discMaxTxPower_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_P_Max }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandClassPriorityHRPD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_DiscTxPowerInfo_r12(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_lte_rrc_BandClassPriorityHRPD, BandClassPriorityHRPD_sequence); + ett_lte_rrc_SL_DiscTxPowerInfo_r12, SL_DiscTxPowerInfo_r12_sequence); return offset; } -static const per_sequence_t BandClassPriorityListHRPD_sequence_of[1] = { - { &hf_lte_rrc_BandClassPriorityListHRPD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandClassPriorityHRPD }, +static const per_sequence_t SL_DiscTxPowerInfoList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_DiscTxPowerInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscTxPowerInfo_r12 }, }; static int -dissect_lte_rrc_BandClassPriorityListHRPD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_DiscTxPowerInfoList_r12(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_lte_rrc_BandClassPriorityListHRPD, BandClassPriorityListHRPD_sequence_of, - 1, maxCDMA_BandClass, FALSE); + ett_lte_rrc_SL_DiscTxPowerInfoList_r12, SL_DiscTxPowerInfoList_r12_sequence_of, + maxSL_DiscPowerClass_r12, maxSL_DiscPowerClass_r12, FALSE); return offset; } -static const per_sequence_t BandClassPriority1XRTT_sequence[] = { - { &hf_lte_rrc_bandClass , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, - { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, +static const per_sequence_t T_discConfig_r12_sequence[] = { + { &hf_lte_rrc_discRxPool_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscRxPoolList_r12 }, + { &hf_lte_rrc_discTxPoolCommon_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPoolList_r12 }, + { &hf_lte_rrc_discTxPowerInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPowerInfoList_r12 }, + { &hf_lte_rrc_discSyncConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigList_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandClassPriority1XRTT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_discConfig_r12(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_lte_rrc_BandClassPriority1XRTT, BandClassPriority1XRTT_sequence); + ett_lte_rrc_T_discConfig_r12, T_discConfig_r12_sequence); return offset; } -static const per_sequence_t BandClassPriorityList1XRTT_sequence_of[1] = { - { &hf_lte_rrc_BandClassPriorityList1XRTT_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandClassPriority1XRTT }, +static const value_string lte_rrc_PLMN_IdentityInfo2_r12_vals[] = { + { 0, "plmn-Index-r12" }, + { 1, "plmnIdentity-r12" }, + { 0, NULL } +}; + +static const per_choice_t PLMN_IdentityInfo2_r12_choice[] = { + { 0, &hf_lte_rrc_plmn_Index_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { 1, &hf_lte_rrc_plmnIdentity_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_PLMN_Identity }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_BandClassPriorityList1XRTT(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_lte_rrc_BandClassPriorityList1XRTT, BandClassPriorityList1XRTT_sequence_of, - 1, maxCDMA_BandClass, FALSE); +dissect_lte_rrc_PLMN_IdentityInfo2_r12(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_lte_rrc_PLMN_IdentityInfo2_r12, PLMN_IdentityInfo2_r12_choice, + NULL); return offset; } -static const value_string lte_rrc_T_t320_vals[] = { - { 0, "min5" }, - { 1, "min10" }, - { 2, "min20" }, - { 3, "min30" }, - { 4, "min60" }, - { 5, "min120" }, - { 6, "min180" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t PLMN_IdentityList4_r12_sequence_of[1] = { + { &hf_lte_rrc_PLMN_IdentityList4_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityInfo2_r12 }, }; - static int -dissect_lte_rrc_T_t320(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PLMN_IdentityList4_r12(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_lte_rrc_PLMN_IdentityList4_r12, PLMN_IdentityList4_r12_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const per_sequence_t FreqPriorityEUTRA_r12_sequence[] = { +static const per_sequence_t SL_CarrierFreqInfo_r12_sequence[] = { { &hf_lte_rrc_carrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_cellReselectionPriority_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_plmn_IdentityList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList4_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FreqPriorityEUTRA_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_CarrierFreqInfo_r12(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_lte_rrc_FreqPriorityEUTRA_r12, FreqPriorityEUTRA_r12_sequence); + ett_lte_rrc_SL_CarrierFreqInfo_r12, SL_CarrierFreqInfo_r12_sequence); return offset; } -static const per_sequence_t FreqPriorityListExtEUTRA_r12_sequence_of[1] = { - { &hf_lte_rrc_FreqPriorityListExtEUTRA_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityEUTRA_r12 }, +static const per_sequence_t SL_CarrierFreqInfoList_r12_sequence_of[1] = { + { &hf_lte_rrc_SL_CarrierFreqInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CarrierFreqInfo_r12 }, }; static int -dissect_lte_rrc_FreqPriorityListExtEUTRA_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_CarrierFreqInfoList_r12(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_lte_rrc_FreqPriorityListExtEUTRA_r12, FreqPriorityListExtEUTRA_r12_sequence_of, + ett_lte_rrc_SL_CarrierFreqInfoList_r12, SL_CarrierFreqInfoList_r12_sequence_of, 1, maxFreq, FALSE); return offset; } -static const per_sequence_t IdleModeMobilityControlInfo_eag_1_sequence[] = { - { &hf_lte_rrc_freqPriorityListExtEUTRA_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListExtEUTRA_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_SL_DiscTxResourcesInterFreq_r13_vals[] = { + { 0, "acquireSI-FromCarrier-r13" }, + { 1, "discTxPoolCommon-r13" }, + { 2, "requestDedicated-r13" }, + { 3, "noTxOnCarrier-r13" }, + { 0, NULL } +}; + +static const per_choice_t SL_DiscTxResourcesInterFreq_r13_choice[] = { + { 0, &hf_lte_rrc_acquireSI_FromCarrier_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_discTxPoolCommon_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SL_DiscTxPoolList_r12 }, + { 2, &hf_lte_rrc_requestDedicated_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_noTxOnCarrier_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_IdleModeMobilityControlInfo_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, IdleModeMobilityControlInfo_eag_1_sequence); +dissect_lte_rrc_SL_DiscTxResourcesInterFreq_r13(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_lte_rrc_SL_DiscTxResourcesInterFreq_r13, SL_DiscTxResourcesInterFreq_r13_choice, + NULL); return offset; } -static const per_sequence_t FreqPriorityEUTRA_v1310_sequence[] = { - { &hf_lte_rrc_cellReselectionSubPriority_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionSubPriority_r13 }, +static const per_sequence_t SL_ResourcesInterFreq_r13_sequence[] = { + { &hf_lte_rrc_discRxResourcesInterFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscRxPoolList_r12 }, + { &hf_lte_rrc_discTxResourcesInterFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxResourcesInterFreq_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FreqPriorityEUTRA_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_ResourcesInterFreq_r13(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_lte_rrc_FreqPriorityEUTRA_v1310, FreqPriorityEUTRA_v1310_sequence); + ett_lte_rrc_SL_ResourcesInterFreq_r13, SL_ResourcesInterFreq_r13_sequence); return offset; } -static const per_sequence_t FreqPriorityListEUTRA_v1310_sequence_of[1] = { - { &hf_lte_rrc_FreqPriorityListEUTRA_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityEUTRA_v1310 }, +static const value_string lte_rrc_T_refCarrierCommon_r13_vals[] = { + { 0, "pCell" }, + { 0, NULL } }; + static int -dissect_lte_rrc_FreqPriorityListEUTRA_v1310(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_lte_rrc_FreqPriorityListEUTRA_v1310, FreqPriorityListEUTRA_v1310_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_refCarrierCommon_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t FreqPriorityListExtEUTRA_v1310_sequence_of[1] = { - { &hf_lte_rrc_FreqPriorityListExtEUTRA_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityEUTRA_v1310 }, +static const per_sequence_t SL_SyncConfigListNFreq_r13_sequence_of[1] = { + { &hf_lte_rrc_SL_SyncConfigListNFreq_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfigNFreq_r13 }, }; static int -dissect_lte_rrc_FreqPriorityListExtEUTRA_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_SyncConfigListNFreq_r13(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_lte_rrc_FreqPriorityListExtEUTRA_v1310, FreqPriorityListExtEUTRA_v1310_sequence_of, - 1, maxFreq, FALSE); + ett_lte_rrc_SL_SyncConfigListNFreq_r13, SL_SyncConfigListNFreq_r13_sequence_of, + 1, maxSL_SyncConfig_r12, FALSE); return offset; } -static const per_sequence_t IdleModeMobilityControlInfo_eag_2_sequence[] = { - { &hf_lte_rrc_freqPriorityListEUTRA_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListEUTRA_v1310 }, - { &hf_lte_rrc_freqPriorityListExtEUTRA_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListExtEUTRA_v1310 }, +static const per_sequence_t SL_DiscConfigOtherInterFreq_r13_sequence[] = { + { &hf_lte_rrc_txPowerInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPowerInfoList_r12 }, + { &hf_lte_rrc_refCarrierCommon_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_refCarrierCommon_r13 }, + { &hf_lte_rrc_discSyncConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigListNFreq_r13 }, + { &hf_lte_rrc_discCellSelectionInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfoNFreq_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IdleModeMobilityControlInfo_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, IdleModeMobilityControlInfo_eag_2_sequence); +dissect_lte_rrc_SL_DiscConfigOtherInterFreq_r13(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_lte_rrc_SL_DiscConfigOtherInterFreq_r13, SL_DiscConfigOtherInterFreq_r13_sequence); return offset; } -static const per_sequence_t IdleModeMobilityControlInfo_sequence[] = { - { &hf_lte_rrc_freqPriorityListEUTRA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListEUTRA }, - { &hf_lte_rrc_freqPriorityListGERAN, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqsPriorityListGERAN }, - { &hf_lte_rrc_freqPriorityListUTRA_FDD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListUTRA_FDD }, - { &hf_lte_rrc_freqPriorityListUTRA_TDD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListUTRA_TDD }, - { &hf_lte_rrc_bandClassPriorityListHRPD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BandClassPriorityListHRPD }, - { &hf_lte_rrc_bandClassPriorityList1XRTT, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BandClassPriorityList1XRTT }, - { &hf_lte_rrc_t320 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_t320 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_IdleModeMobilityControlInfo_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_IdleModeMobilityControlInfo_eag_2 }, +static const per_sequence_t SL_CarrierFreqInfo_v1310_sequence[] = { + { &hf_lte_rrc_discResourcesNonPS_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_ResourcesInterFreq_r13 }, + { &hf_lte_rrc_discResourcesPS_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_ResourcesInterFreq_r13 }, + { &hf_lte_rrc_discConfigOther_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscConfigOtherInterFreq_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IdleModeMobilityControlInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_CarrierFreqInfo_v1310(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_lte_rrc_IdleModeMobilityControlInfo, IdleModeMobilityControlInfo_sequence); + ett_lte_rrc_SL_CarrierFreqInfo_v1310, SL_CarrierFreqInfo_v1310_sequence); return offset; } +static const per_sequence_t SL_CarrierFreqInfoList_v1310_sequence_of[1] = { + { &hf_lte_rrc_SL_CarrierFreqInfoList_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CarrierFreqInfo_v1310 }, +}; static int -dissect_lte_rrc_T_lateNonCriticalExtension_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_RRCConnectionRelease_v9e0_IEs_PDU); +dissect_lte_rrc_SL_CarrierFreqInfoList_v1310(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_lte_rrc_SL_CarrierFreqInfoList_v1310, SL_CarrierFreqInfoList_v1310_sequence_of, + 1, maxFreq, FALSE); return offset; } - -static int -dissect_lte_rrc_T_systemInformation_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - private_data_set_si_or_psi_geran(actx, (guint8)SI_OrPSI_GERAN_si); /* SI message */ - offset = dissect_lte_rrc_SystemInfoListGERAN(tvb, offset, actx, tree, hf_index); +static const value_string lte_rrc_T_gapRequestsAllowedCommon_vals[] = { + { 0, "true" }, + { 0, NULL } +}; +static int +dissect_lte_rrc_T_gapRequestsAllowedCommon(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CellInfoGERAN_r9_sequence[] = { - { &hf_lte_rrc_physCellId_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdGERAN }, - { &hf_lte_rrc_carrierFreq_r9_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqGERAN }, - { &hf_lte_rrc_systemInformation_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_systemInformation_r9 }, +static const per_sequence_t T_discConfig_v1310_sequence[] = { + { &hf_lte_rrc_discInterFreqList_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CarrierFreqInfoList_v1310 }, + { &hf_lte_rrc_gapRequestsAllowedCommon, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gapRequestsAllowedCommon }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellInfoGERAN_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_discConfig_v1310(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_lte_rrc_CellInfoGERAN_r9, CellInfoGERAN_r9_sequence); + ett_lte_rrc_T_discConfig_v1310, T_discConfig_v1310_sequence); return offset; } -static const per_sequence_t CellInfoListGERAN_r9_sequence_of[1] = { - { &hf_lte_rrc_CellInfoListGERAN_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellInfoGERAN_r9 }, -}; static int -dissect_lte_rrc_CellInfoListGERAN_r9(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_lte_rrc_CellInfoListGERAN_r9, CellInfoListGERAN_r9_sequence_of, - 1, maxCellInfoGERAN_r9, FALSE); +dissect_lte_rrc_RSRP_RangeSL4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 49U, NULL, FALSE); return offset; } +static const value_string lte_rrc_T_hystMax_r13_vals[] = { + { 0, "dB0" }, + { 1, "dB3" }, + { 2, "dB6" }, + { 3, "dB9" }, + { 4, "dB12" }, + { 5, "dBinf" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_utra_BCCH_Container_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *utra_bcch_cont_tvb = NULL; - proto_tree *subtree; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &utra_bcch_cont_tvb); +dissect_lte_rrc_T_hystMax_r13(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, + 6, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_hystMin_r13_vals[] = { + { 0, "dB0" }, + { 1, "dB3" }, + { 2, "dB6" }, + { 3, "dB9" }, + { 4, "dB12" }, + { 0, NULL } +}; - if (utra_bcch_cont_tvb && rrc_sys_info_cont_handle) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_siPsiSibContainer); - lte_rrc_call_dissector(rrc_sys_info_cont_handle, utra_bcch_cont_tvb, actx->pinfo, subtree); - } +static int +dissect_lte_rrc_T_hystMin_r13(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, + 5, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CellInfoUTRA_FDD_r9_sequence[] = { - { &hf_lte_rrc_physCellId_r9_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdUTRA_FDD }, - { &hf_lte_rrc_utra_BCCH_Container_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_utra_BCCH_Container_r9 }, +static const per_sequence_t SL_DiscConfigRelayUE_r13_sequence[] = { + { &hf_lte_rrc_threshHigh_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_RangeSL4_r13 }, + { &hf_lte_rrc_threshLow_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_RangeSL4_r13 }, + { &hf_lte_rrc_hystMax_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hystMax_r13 }, + { &hf_lte_rrc_hystMin_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hystMin_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellInfoUTRA_FDD_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_DiscConfigRelayUE_r13(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_lte_rrc_CellInfoUTRA_FDD_r9, CellInfoUTRA_FDD_r9_sequence); + ett_lte_rrc_SL_DiscConfigRelayUE_r13, SL_DiscConfigRelayUE_r13_sequence); return offset; } -static const per_sequence_t CellInfoListUTRA_FDD_r9_sequence_of[1] = { - { &hf_lte_rrc_CellInfoListUTRA_FDD_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellInfoUTRA_FDD_r9 }, +static const value_string lte_rrc_T_hystMax_r13_01_vals[] = { + { 0, "dB0" }, + { 1, "dB3" }, + { 2, "dB6" }, + { 3, "dB9" }, + { 4, "dB12" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CellInfoListUTRA_FDD_r9(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_lte_rrc_CellInfoListUTRA_FDD_r9, CellInfoListUTRA_FDD_r9_sequence_of, - 1, maxCellInfoUTRA_r9, FALSE); +dissect_lte_rrc_T_hystMax_r13_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, + 5, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_minHyst_r13_vals[] = { + { 0, "dB0" }, + { 1, "dB3" }, + { 2, "dB6" }, + { 3, "dB9" }, + { 4, "dB12" }, + { 5, "dBinf" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_utra_BCCH_Container_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *utra_bcch_cont_tvb = NULL; - proto_tree *subtree; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &utra_bcch_cont_tvb); - - if (utra_bcch_cont_tvb && rrc_sys_info_cont_handle) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_siPsiSibContainer); - lte_rrc_call_dissector(rrc_sys_info_cont_handle, utra_bcch_cont_tvb, actx->pinfo, subtree); - } +static int +dissect_lte_rrc_T_minHyst_r13(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, + 6, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CellInfoUTRA_TDD_r9_sequence[] = { - { &hf_lte_rrc_physCellId_r9_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdUTRA_TDD }, - { &hf_lte_rrc_utra_BCCH_Container_r9_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_utra_BCCH_Container_r9_01 }, +static const per_sequence_t ReselectionInfoRelay_r13_sequence[] = { + { &hf_lte_rrc_q_RxLevMin_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_filterCoefficient_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FilterCoefficient }, + { &hf_lte_rrc_minHyst_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_minHyst_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellInfoUTRA_TDD_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ReselectionInfoRelay_r13(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_lte_rrc_CellInfoUTRA_TDD_r9, CellInfoUTRA_TDD_r9_sequence); + ett_lte_rrc_ReselectionInfoRelay_r13, ReselectionInfoRelay_r13_sequence); return offset; } -static const per_sequence_t CellInfoListUTRA_TDD_r9_sequence_of[1] = { - { &hf_lte_rrc_CellInfoListUTRA_TDD_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellInfoUTRA_TDD_r9 }, +static const per_sequence_t SL_DiscConfigRemoteUE_r13_sequence[] = { + { &hf_lte_rrc_threshHigh_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_RangeSL4_r13 }, + { &hf_lte_rrc_hystMax_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hystMax_r13_01 }, + { &hf_lte_rrc_reselectionInfoIC_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionInfoRelay_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellInfoListUTRA_TDD_r9(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_lte_rrc_CellInfoListUTRA_TDD_r9, CellInfoListUTRA_TDD_r9_sequence_of, - 1, maxCellInfoUTRA_r9, FALSE); +dissect_lte_rrc_SL_DiscConfigRemoteUE_r13(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_lte_rrc_SL_DiscConfigRemoteUE_r13, SL_DiscConfigRemoteUE_r13_sequence); return offset; } +static const per_sequence_t T_discConfigRelay_r13_sequence[] = { + { &hf_lte_rrc_relayUE_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscConfigRelayUE_r13 }, + { &hf_lte_rrc_remoteUE_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscConfigRemoteUE_r13 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_utra_BCCH_Container_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *utra_bcch_cont_tvb = NULL; - proto_tree *subtree; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &utra_bcch_cont_tvb); - - if (utra_bcch_cont_tvb && rrc_sys_info_cont_handle) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_siPsiSibContainer); - lte_rrc_call_dissector(rrc_sys_info_cont_handle, utra_bcch_cont_tvb, actx->pinfo, subtree); - } - +dissect_lte_rrc_T_discConfigRelay_r13(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_lte_rrc_T_discConfigRelay_r13, T_discConfigRelay_r13_sequence); return offset; } -static const per_sequence_t CellInfoUTRA_TDD_r10_sequence[] = { - { &hf_lte_rrc_physCellId_r10_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdUTRA_TDD }, - { &hf_lte_rrc_carrierFreq_r10_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, - { &hf_lte_rrc_utra_BCCH_Container_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_utra_BCCH_Container_r10 }, +static const per_sequence_t T_discConfigPS_13_sequence[] = { + { &hf_lte_rrc_discRxPoolPS_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscRxPoolList_r12 }, + { &hf_lte_rrc_discTxPoolPS_Common_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPoolList_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellInfoUTRA_TDD_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_discConfigPS_13(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_lte_rrc_CellInfoUTRA_TDD_r10, CellInfoUTRA_TDD_r10_sequence); + ett_lte_rrc_T_discConfigPS_13, T_discConfigPS_13_sequence); return offset; } -static const per_sequence_t CellInfoListUTRA_TDD_r10_sequence_of[1] = { - { &hf_lte_rrc_CellInfoListUTRA_TDD_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellInfoUTRA_TDD_r10 }, +static const per_sequence_t SystemInformationBlockType19_r12_eag_1_sequence[] = { + { &hf_lte_rrc_discConfig_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discConfig_v1310 }, + { &hf_lte_rrc_discConfigRelay_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discConfigRelay_r13 }, + { &hf_lte_rrc_discConfigPS_13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discConfigPS_13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellInfoListUTRA_TDD_r10(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_lte_rrc_CellInfoListUTRA_TDD_r10, CellInfoListUTRA_TDD_r10_sequence_of, - 1, maxCellInfoUTRA_r9, FALSE); +dissect_lte_rrc_SystemInformationBlockType19_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType19_r12_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_cellInfoList_r9_vals[] = { - { 0, "geran-r9" }, - { 1, "utra-FDD-r9" }, - { 2, "utra-TDD-r9" }, - { 3, "utra-TDD-r10" }, - { 0, NULL } -}; - -static const per_choice_t T_cellInfoList_r9_choice[] = { - { 0, &hf_lte_rrc_geran_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_CellInfoListGERAN_r9 }, - { 1, &hf_lte_rrc_utra_FDD_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_CellInfoListUTRA_FDD_r9 }, - { 2, &hf_lte_rrc_utra_TDD_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_CellInfoListUTRA_TDD_r9 }, - { 3, &hf_lte_rrc_utra_TDD_r10, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_CellInfoListUTRA_TDD_r10 }, - { 0, NULL, 0, NULL } +static const per_sequence_t SystemInformationBlockType19_r12_sequence[] = { + { &hf_lte_rrc_discConfig_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_discConfig_r12 }, + { &hf_lte_rrc_discInterFreqList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CarrierFreqInfoList_r12 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType19_r12_eag_1 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cellInfoList_r9(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_lte_rrc_T_cellInfoList_r9, T_cellInfoList_r9_choice, - NULL); - - return offset; -} - +dissect_lte_rrc_SystemInformationBlockType19_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB19"); -static int -dissect_lte_rrc_ResumeIdentity_r13(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, - 40, 40, FALSE, NULL, NULL); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformationBlockType19_r12, SystemInformationBlockType19_r12_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_36_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sc_mcch_RepetitionPeriod_r13_vals[] = { + { 0, "rf2" }, + { 1, "rf4" }, + { 2, "rf8" }, + { 3, "rf16" }, + { 4, "rf32" }, + { 5, "rf64" }, + { 6, "rf128" }, + { 7, "rf256" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_36(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_lte_rrc_T_nonCriticalExtension_36, T_nonCriticalExtension_36_sequence); +dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionRelease_v1320_IEs_sequence[] = { - { &hf_lte_rrc_resumeIdentity_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ResumeIdentity_r13 }, - { &hf_lte_rrc_nonCriticalExtension_109, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_36 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RRCConnectionRelease_v1320_IEs(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_lte_rrc_RRCConnectionRelease_v1320_IEs, RRCConnectionRelease_v1320_IEs_sequence); +dissect_lte_rrc_INTEGER_2_9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 2U, 9U, NULL, FALSE); return offset; } -static const per_sequence_t RRCConnectionRelease_v1020_IEs_sequence[] = { - { &hf_lte_rrc_extendedWaitTime_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_1800 }, - { &hf_lte_rrc_nonCriticalExtension_108, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_v1320_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sc_mcch_ModificationPeriod_r13_vals[] = { + { 0, "rf2" }, + { 1, "rf4" }, + { 2, "rf8" }, + { 3, "rf16" }, + { 4, "rf32" }, + { 5, "rf64" }, + { 6, "rf128" }, + { 7, "rf256" }, + { 8, "rf512" }, + { 9, "rf1024" }, + { 10, "r2048" }, + { 11, "rf4096" }, + { 12, "rf8192" }, + { 13, "rf16384" }, + { 14, "rf32768" }, + { 15, "rf65536" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRCConnectionRelease_v1020_IEs(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_lte_rrc_RRCConnectionRelease_v1020_IEs, RRCConnectionRelease_v1020_IEs_sequence); +dissect_lte_rrc_T_sc_mcch_ModificationPeriod_r13(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionRelease_v920_IEs_sequence[] = { - { &hf_lte_rrc_cellInfoList_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cellInfoList_r9 }, - { &hf_lte_rrc_nonCriticalExtension_107, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_v1020_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dummy_01_vals[] = { + { 0, "rf1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRCConnectionRelease_v920_IEs(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_lte_rrc_RRCConnectionRelease_v920_IEs, RRCConnectionRelease_v920_IEs_sequence); +dissect_lte_rrc_T_dummy_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionRelease_v890_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_03, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_02 }, - { &hf_lte_rrc_nonCriticalExtension_105, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_v920_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dummy2_vals[] = { + { 0, "rf1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRCConnectionRelease_v890_IEs(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_lte_rrc_RRCConnectionRelease_v890_IEs, RRCConnectionRelease_v890_IEs_sequence); +dissect_lte_rrc_T_dummy2(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionRelease_r8_IEs_sequence[] = { - { &hf_lte_rrc_releaseCause, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReleaseCause }, - { &hf_lte_rrc_redirectedCarrierInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedirectedCarrierInfo }, - { &hf_lte_rrc_idleModeMobilityControlInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IdleModeMobilityControlInfo }, - { &hf_lte_rrc_nonCriticalExtension_104, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_v890_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mpdcch_NumRepetition_SC_MCCH_r14_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "r128" }, + { 8, "r256" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRCConnectionRelease_r8_IEs(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_lte_rrc_RRCConnectionRelease_r8_IEs, RRCConnectionRelease_r8_IEs_sequence); +dissect_lte_rrc_T_mpdcch_NumRepetition_SC_MCCH_r14(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_c1_33_vals[] = { - { 0, "rrcConnectionRelease-r8" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_fdd_r14_vals[] = { + { 0, "v1" }, + { 1, "v1dot5" }, + { 2, "v2" }, + { 3, "v2dot5" }, + { 4, "v4" }, + { 5, "v5" }, + { 6, "v8" }, + { 7, "v10" }, { 0, NULL } }; -static const per_choice_t T_c1_33_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionRelease_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionRelease_r8_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_33(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_lte_rrc_T_c1_33, T_c1_33_choice, - NULL); +dissect_lte_rrc_T_fdd_r14(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_30_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_tdd_r14_vals[] = { + { 0, "v1" }, + { 1, "v2" }, + { 2, "v4" }, + { 3, "v5" }, + { 4, "v8" }, + { 5, "v10" }, + { 6, "v20" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_criticalExtensionsFuture_30(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_lte_rrc_T_criticalExtensionsFuture_30, T_criticalExtensionsFuture_30_sequence); +dissect_lte_rrc_T_tdd_r14(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, + 7, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_criticalExtensions_30_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_mpdcch_StartSF_SC_MCCH_r14_vals[] = { + { 0, "fdd-r14" }, + { 1, "tdd-r14" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_30_choice[] = { - { 0, &hf_lte_rrc_c1_33 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_33 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_30, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_30 }, +static const per_choice_t T_mpdcch_StartSF_SC_MCCH_r14_choice[] = { + { 0, &hf_lte_rrc_fdd_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fdd_r14 }, + { 1, &hf_lte_rrc_tdd_r14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tdd_r14 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mpdcch_StartSF_SC_MCCH_r14(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_lte_rrc_T_criticalExtensions_30, T_criticalExtensions_30_choice, + ett_lte_rrc_T_mpdcch_StartSF_SC_MCCH_r14, T_mpdcch_StartSF_SC_MCCH_r14_choice, NULL); return offset; } -static const per_sequence_t RRCConnectionRelease_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_30, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_30 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MCCH_r14_vals[] = { + { 0, "off" }, + { 1, "ce-ModeA" }, + { 2, "ce-ModeB" }, + { 0, NULL } }; -static int -dissect_lte_rrc_RRCConnectionRelease(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionRelease"); - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionRelease, RRCConnectionRelease_sequence); +static int +dissect_lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MCCH_r14(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SecurityConfigSMC_sequence[] = { - { &hf_lte_rrc_securityAlgorithmConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityAlgorithmConfig }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sc_mcch_RepetitionPeriod_BR_r14_vals[] = { + { 0, "rf32" }, + { 1, "rf128" }, + { 2, "rf512" }, + { 3, "rf1024" }, + { 4, "rf2048" }, + { 5, "rf4096" }, + { 6, "rf8192" }, + { 7, "rf16384" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SecurityConfigSMC(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_lte_rrc_SecurityConfigSMC, SecurityConfigSMC_sequence); +dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_BR_r14(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_46_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sc_mcch_ModificationPeriod_BR_r14_vals[] = { + { 0, "rf32" }, + { 1, "rf128" }, + { 2, "rf256" }, + { 3, "rf512" }, + { 4, "rf1024" }, + { 5, "rf2048" }, + { 6, "rf4096" }, + { 7, "rf8192" }, + { 8, "rf16384" }, + { 9, "rf32768" }, + { 10, "rf65536" }, + { 11, "rf131072" }, + { 12, "rf262144" }, + { 13, "rf524288" }, + { 14, "rf1048576" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_46(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_lte_rrc_T_nonCriticalExtension_46, T_nonCriticalExtension_46_sequence); +dissect_lte_rrc_T_sc_mcch_ModificationPeriod_BR_r14(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, + 15, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SecurityModeCommand_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_46 }, +static const per_sequence_t T_br_BCCH_Config_r14_sequence[] = { + { &hf_lte_rrc_dummy_02 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dummy_01 }, + { &hf_lte_rrc_dummy2 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dummy2 }, + { &hf_lte_rrc_mpdcch_Narrowband_SC_MCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, + { &hf_lte_rrc_mpdcch_NumRepetition_SC_MCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NumRepetition_SC_MCCH_r14 }, + { &hf_lte_rrc_mpdcch_StartSF_SC_MCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_StartSF_SC_MCCH_r14 }, + { &hf_lte_rrc_mpdcch_PDSCH_HoppingConfig_SC_MCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MCCH_r14 }, + { &hf_lte_rrc_sc_mcch_CarrierFreq_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_sc_mcch_Offset_BR_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10 }, + { &hf_lte_rrc_sc_mcch_RepetitionPeriod_BR_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_BR_r14 }, + { &hf_lte_rrc_sc_mcch_ModificationPeriod_BR_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sc_mcch_ModificationPeriod_BR_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SecurityModeCommand_v8a0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_br_BCCH_Config_r14(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_lte_rrc_SecurityModeCommand_v8a0_IEs, SecurityModeCommand_v8a0_IEs_sequence); + ett_lte_rrc_T_br_BCCH_Config_r14, T_br_BCCH_Config_r14_sequence); return offset; } -static const per_sequence_t SecurityModeCommand_r8_IEs_sequence[] = { - { &hf_lte_rrc_securityConfigSMC, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityConfigSMC }, - { &hf_lte_rrc_nonCriticalExtension_129, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityModeCommand_v8a0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_onDurationTimerSCPTM_r14_vals[] = { + { 0, "psf10" }, + { 1, "psf20" }, + { 2, "psf100" }, + { 3, "psf300" }, + { 4, "psf500" }, + { 5, "psf1000" }, + { 6, "psf1200" }, + { 7, "psf1600" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SecurityModeCommand_r8_IEs(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_lte_rrc_SecurityModeCommand_r8_IEs, SecurityModeCommand_r8_IEs_sequence); +dissect_lte_rrc_T_onDurationTimerSCPTM_r14(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_c1_39_vals[] = { - { 0, "securityModeCommand-r8" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_drx_InactivityTimerSCPTM_r14_vals[] = { + { 0, "psf0" }, + { 1, "psf1" }, + { 2, "psf2" }, + { 3, "psf4" }, + { 4, "psf8" }, + { 5, "psf16" }, + { 6, "psf32" }, + { 7, "psf64" }, + { 8, "psf128" }, + { 9, "psf256" }, + { 10, "ps512" }, + { 11, "psf1024" }, + { 12, "psf2048" }, + { 13, "psf4096" }, + { 14, "psf8192" }, + { 15, "psf16384" }, { 0, NULL } }; -static const per_choice_t T_c1_39_choice[] = { - { 0, &hf_lte_rrc_securityModeCommand_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeCommand_r8_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_39(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_lte_rrc_T_c1_39, T_c1_39_choice, - NULL); +dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r14(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_39_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensionsFuture_39(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_lte_rrc_T_criticalExtensionsFuture_39, T_criticalExtensionsFuture_39_sequence); +dissect_lte_rrc_INTEGER_0_511(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 511U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_criticalExtensions_39_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_39_choice[] = { - { 0, &hf_lte_rrc_c1_39 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_39 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_39, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_39 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_39(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_lte_rrc_T_criticalExtensions_39, T_criticalExtensions_39_choice, - NULL); +dissect_lte_rrc_INTEGER_0_4095(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4095U, NULL, FALSE); return offset; } -static const per_sequence_t SecurityModeCommand_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_39, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_39 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SecurityModeCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecurityModeCommand"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SecurityModeCommand, SecurityModeCommand_sequence); +dissect_lte_rrc_INTEGER_0_8191(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 8191U, NULL, FALSE); return offset; } -static const per_sequence_t UE_CapabilityRequest_sequence_of[1] = { - { &hf_lte_rrc_UE_CapabilityRequest_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RAT_Type }, +static const value_string lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_vals[] = { + { 0, "sf10" }, + { 1, "sf20" }, + { 2, "sf32" }, + { 3, "sf40" }, + { 4, "sf64" }, + { 5, "sf80" }, + { 6, "sf128" }, + { 7, "sf160" }, + { 8, "sf256" }, + { 9, "sf320" }, + { 10, "sf512" }, + { 11, "sf640" }, + { 12, "sf1024" }, + { 13, "sf2048" }, + { 14, "sf4096" }, + { 15, "sf8192" }, + { 0, NULL } +}; + +static const per_choice_t T_schedulingPeriodStartOffsetSCPTM_r14_choice[] = { + { 0, &hf_lte_rrc_sf10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_9 }, + { 1, &hf_lte_rrc_sf20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_19 }, + { 2, &hf_lte_rrc_sf32 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_31 }, + { 3, &hf_lte_rrc_sf40 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_39 }, + { 4, &hf_lte_rrc_sf64 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_63 }, + { 5, &hf_lte_rrc_sf80 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_79 }, + { 6, &hf_lte_rrc_sf128 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_127 }, + { 7, &hf_lte_rrc_sf160 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_159 }, + { 8, &hf_lte_rrc_sf256 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_255 }, + { 9, &hf_lte_rrc_sf320 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, + { 10, &hf_lte_rrc_sf512 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_511 }, + { 11, &hf_lte_rrc_sf640 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, + { 12, &hf_lte_rrc_sf1024 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1023 }, + { 13, &hf_lte_rrc_sf2048 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_2047 }, + { 14, &hf_lte_rrc_sf4096 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_4095 }, + { 15, &hf_lte_rrc_sf8192 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_8191 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_UE_CapabilityRequest(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_lte_rrc_UE_CapabilityRequest, UE_CapabilityRequest_sequence_of, - 1, maxRAT_Capabilities, FALSE); +dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14(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_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14, T_schedulingPeriodStartOffsetSCPTM_r14_choice, + NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11_sequence_of[1] = { - { &hf_lte_rrc_requestedFrequencyBands_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, +static const per_sequence_t SC_MCCH_SchedulingInfo_r14_sequence[] = { + { &hf_lte_rrc_onDurationTimerSCPTM_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_onDurationTimerSCPTM_r14 }, + { &hf_lte_rrc_drx_InactivityTimerSCPTM_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r14 }, + { &hf_lte_rrc_schedulingPeriodStartOffsetSCPTM_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11(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_lte_rrc_SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11, SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11_sequence_of, - 1, 16, FALSE); +dissect_lte_rrc_SC_MCCH_SchedulingInfo_r14(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_lte_rrc_SC_MCCH_SchedulingInfo_r14, SC_MCCH_SchedulingInfo_r14_sequence); return offset; } -static const value_string lte_rrc_T_requestReducedFormat_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_SC_MTCH_r14_vals[] = { + { 0, "r16" }, + { 1, "r32" }, { 0, NULL } }; static int -dissect_lte_rrc_T_requestReducedFormat_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_SC_MTCH_r14(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_requestSkipFallbackComb_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_SC_MTCH_r14_vals[] = { + { 0, "r192" }, + { 1, "r256" }, + { 2, "r384" }, + { 3, "r512" }, + { 4, "r768" }, + { 5, "r1024" }, + { 6, "r1536" }, + { 7, "r2048" }, { 0, NULL } }; static int -dissect_lte_rrc_T_requestSkipFallbackComb_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_SC_MTCH_r14(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t SystemInformationBlockType20_r13_eag_1_sequence[] = { + { &hf_lte_rrc_br_BCCH_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_br_BCCH_Config_r14 }, + { &hf_lte_rrc_sc_mcch_SchedulingInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SC_MCCH_SchedulingInfo_r14 }, + { &hf_lte_rrc_pdsch_maxNumRepetitionCEmodeA_SC_MTCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeA_SC_MTCH_r14 }, + { &hf_lte_rrc_pdsch_maxNumRepetitionCEmodeB_SC_MTCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_maxNumRepetitionCEmodeB_SC_MTCH_r14 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_2_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 2U, 32U, NULL, FALSE); +dissect_lte_rrc_SystemInformationBlockType20_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType20_r13_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_requestReducedIntNonContComb_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_sc_mcch_RepetitionPeriod_v1470_vals[] = { + { 0, "rf1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_requestReducedIntNonContComb_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_v1470(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, 1, NULL, FALSE, 0, NULL); @@ -55809,268 +59569,284 @@ dissect_lte_rrc_T_requestReducedIntNonContComb_r13(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_CA_BandwidthClass_r10_vals[] = { - { 0, "a" }, - { 1, "b" }, - { 2, "c" }, - { 3, "d" }, - { 4, "e" }, - { 5, "f" }, +static const value_string lte_rrc_T_sc_mcch_ModificationPeriod_v1470_vals[] = { + { 0, "rf1" }, { 0, NULL } }; static int -dissect_lte_rrc_CA_BandwidthClass_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sc_mcch_ModificationPeriod_v1470(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, - 6, NULL, TRUE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandIndication_r14_sequence[] = { - { &hf_lte_rrc_bandEUTRA_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, - { &hf_lte_rrc_ca_BandwidthClassDL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_BandwidthClass_r10 }, - { &hf_lte_rrc_ca_BandwidthClassUL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CA_BandwidthClass_r10 }, +static const per_sequence_t SystemInformationBlockType20_r13_eag_2_sequence[] = { + { &hf_lte_rrc_sc_mcch_RepetitionPeriod_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_v1470 }, + { &hf_lte_rrc_sc_mcch_ModificationPeriod_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sc_mcch_ModificationPeriod_v1470 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandIndication_r14(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_lte_rrc_BandIndication_r14, BandIndication_r14_sequence); +dissect_lte_rrc_SystemInformationBlockType20_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType20_r13_eag_2_sequence); return offset; } -static const per_sequence_t BandCombination_r14_sequence_of[1] = { - { &hf_lte_rrc_BandCombination_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandIndication_r14 }, +static const per_sequence_t SystemInformationBlockType20_r13_sequence[] = { + { &hf_lte_rrc_sc_mcch_RepetitionPeriod_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sc_mcch_RepetitionPeriod_r13 }, + { &hf_lte_rrc_sc_mcch_Offset_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10 }, + { &hf_lte_rrc_sc_mcch_FirstSubframe_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_9 }, + { &hf_lte_rrc_sc_mcch_duration_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_9 }, + { &hf_lte_rrc_sc_mcch_ModificationPeriod_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sc_mcch_ModificationPeriod_r13 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType20_r13_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType20_r13_eag_2 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombination_r14(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_lte_rrc_BandCombination_r14, BandCombination_r14_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_SystemInformationBlockType20_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB20"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformationBlockType20_r13, SystemInformationBlockType20_r13_sequence); return offset; } -static const per_sequence_t BandCombinationList_r14_sequence_of[1] = { - { &hf_lte_rrc_BandCombinationList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombination_r14 }, +static const per_sequence_t SL_SyncConfigListV2X_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_SyncConfigListV2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_SyncConfig_r12 }, }; static int -dissect_lte_rrc_BandCombinationList_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_SyncConfigListV2X_r14(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_lte_rrc_BandCombinationList_r14, BandCombinationList_r14_sequence_of, - 1, maxBandComb_r13, FALSE); + ett_lte_rrc_SL_SyncConfigListV2X_r14, SL_SyncConfigListV2X_r14_sequence_of, + 1, maxSL_V2X_SyncConfig_r14, FALSE); return offset; } +static const per_sequence_t SL_AnchorCarrierFreqList_V2X_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_AnchorCarrierFreqList_V2X_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, +}; static int -dissect_lte_rrc_T_requestedFreqBandsNR_MRDC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *freq_band_list_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &freq_band_list_tvb); - - if (freq_band_list_tvb) { - proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_requestedFreqBandsNR_MRDC_r15); - dissect_nr_rrc_FreqBandList_PDU(freq_band_list_tvb, actx->pinfo, subtree, NULL); - } - +dissect_lte_rrc_SL_AnchorCarrierFreqList_V2X_r14(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_lte_rrc_SL_AnchorCarrierFreqList_V2X_r14, SL_AnchorCarrierFreqList_V2X_r14_sequence_of, + 1, maxFreqV2X_r14, FALSE); return offset; } -static const per_sequence_t T_nonCriticalExtension_55_sequence[] = { +static const per_sequence_t SL_V2X_ConfigCommon_r14_sequence[] = { + { &hf_lte_rrc_v2x_CommRxPool_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommRxPoolListV2X_r14 }, + { &hf_lte_rrc_v2x_CommTxPoolNormalCommon_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolListV2X_r14 }, + { &hf_lte_rrc_p2x_CommTxPoolNormalCommon_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolListV2X_r14 }, + { &hf_lte_rrc_v2x_CommTxPoolExceptional_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, + { &hf_lte_rrc_v2x_SyncConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigListV2X_r14 }, + { &hf_lte_rrc_v2x_InterFreqInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_InterFreqInfoListV2X_r14 }, + { &hf_lte_rrc_v2x_ResourceSelectionConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxPoolSensingConfig_r14 }, + { &hf_lte_rrc_zoneConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_ZoneConfig_r14 }, + { &hf_lte_rrc_typeTxSync_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TypeTxSync_r14 }, + { &hf_lte_rrc_thresSL_TxPrioritization_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Priority_r13 }, + { &hf_lte_rrc_anchorCarrierFreqList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_AnchorCarrierFreqList_V2X_r14 }, + { &hf_lte_rrc_offsetDFN_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1000 }, + { &hf_lte_rrc_cbr_CommonTxConfigList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_CommonTxConfigList_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_55(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_V2X_ConfigCommon_r14(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_lte_rrc_T_nonCriticalExtension_55, T_nonCriticalExtension_55_sequence); + ett_lte_rrc_SL_V2X_ConfigCommon_r14, SL_V2X_ConfigCommon_r14_sequence); return offset; } -static const per_sequence_t UECapabilityEnquiry_v1510_IEs_sequence[] = { - { &hf_lte_rrc_requestedFreqBandsNR_MRDC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_requestedFreqBandsNR_MRDC_r15 }, - { &hf_lte_rrc_nonCriticalExtension_164, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_55 }, +static const per_sequence_t SystemInformationBlockType21_r14_sequence[] = { + { &hf_lte_rrc_sl_V2X_ConfigCommon_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_ConfigCommon_r14 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UECapabilityEnquiry_v1510_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType21_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB21"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_UECapabilityEnquiry_v1510_IEs, UECapabilityEnquiry_v1510_IEs_sequence); + ett_lte_rrc_SystemInformationBlockType21_r14, SystemInformationBlockType21_r14_sequence); return offset; } -static const per_sequence_t UECapabilityEnquiry_v1430_IEs_sequence[] = { - { &hf_lte_rrc_requestDiffFallbackCombList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandCombinationList_r14 }, - { &hf_lte_rrc_nonCriticalExtension_163, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v1510_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_subcarrierSpacingSSB_r15_01_vals[] = { + { 0, "kHz15" }, + { 1, "kHz30" }, + { 2, "kHz120" }, + { 3, "kHz240" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UECapabilityEnquiry_v1430_IEs(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_lte_rrc_UECapabilityEnquiry_v1430_IEs, UECapabilityEnquiry_v1430_IEs_sequence); +dissect_lte_rrc_T_subcarrierSpacingSSB_r15_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 per_sequence_t UECapabilityEnquiry_v1310_IEs_sequence[] = { - { &hf_lte_rrc_requestReducedFormat_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_requestReducedFormat_r13 }, - { &hf_lte_rrc_requestSkipFallbackComb_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_requestSkipFallbackComb_r13 }, - { &hf_lte_rrc_requestedMaxCCsDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_32 }, - { &hf_lte_rrc_requestedMaxCCsUL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_32 }, - { &hf_lte_rrc_requestReducedIntNonContComb_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_requestReducedIntNonContComb_r13 }, - { &hf_lte_rrc_nonCriticalExtension_162, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v1430_IEs }, +static const per_sequence_t T_threshX_Q_r15_sequence[] = { + { &hf_lte_rrc_threshX_HighQ_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, + { &hf_lte_rrc_threshX_LowQ_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThresholdQ_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UECapabilityEnquiry_v1310_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_threshX_Q_r15(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_lte_rrc_UECapabilityEnquiry_v1310_IEs, UECapabilityEnquiry_v1310_IEs_sequence); + ett_lte_rrc_T_threshX_Q_r15, T_threshX_Q_r15_sequence); return offset; } -static const per_sequence_t UECapabilityEnquiry_v1180_IEs_sequence[] = { - { &hf_lte_rrc_requestedFrequencyBands_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11 }, - { &hf_lte_rrc_nonCriticalExtension_161, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v1310_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UECapabilityEnquiry_v1180_IEs(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_lte_rrc_UECapabilityEnquiry_v1180_IEs, UECapabilityEnquiry_v1180_IEs_sequence); +dissect_lte_rrc_INTEGER_M70_M22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -70, -22, NULL, FALSE); return offset; } -static const per_sequence_t UECapabilityEnquiry_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_160, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v1180_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UECapabilityEnquiry_v8a0_IEs(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_lte_rrc_UECapabilityEnquiry_v8a0_IEs, UECapabilityEnquiry_v8a0_IEs_sequence); +dissect_lte_rrc_P_MaxNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -30, 33U, NULL, FALSE); return offset; } -static const per_sequence_t UECapabilityEnquiry_r8_IEs_sequence[] = { - { &hf_lte_rrc_ue_CapabilityRequest, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_CapabilityRequest }, - { &hf_lte_rrc_nonCriticalExtension_159, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v8a0_IEs }, + +static int +dissect_lte_rrc_AdditionalSpectrumEmissionNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t NS_PmaxValueNR_r15_sequence[] = { + { &hf_lte_rrc_additionalPmaxNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_MaxNR_r15 }, + { &hf_lte_rrc_additionalSpectrumEmissionNR_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmissionNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UECapabilityEnquiry_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NS_PmaxValueNR_r15(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_lte_rrc_UECapabilityEnquiry_r8_IEs, UECapabilityEnquiry_r8_IEs_sequence); + ett_lte_rrc_NS_PmaxValueNR_r15, NS_PmaxValueNR_r15_sequence); return offset; } -static const value_string lte_rrc_T_c1_42_vals[] = { - { 0, "ueCapabilityEnquiry-r8" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_42_choice[] = { - { 0, &hf_lte_rrc_ueCapabilityEnquiry_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UECapabilityEnquiry_r8_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t NS_PmaxListNR_r15_sequence_of[1] = { + { &hf_lte_rrc_NS_PmaxListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NS_PmaxValueNR_r15 }, }; static int -dissect_lte_rrc_T_c1_42(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_lte_rrc_T_c1_42, T_c1_42_choice, - NULL); +dissect_lte_rrc_NS_PmaxListNR_r15(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_lte_rrc_NS_PmaxListNR_r15, NS_PmaxListNR_r15_sequence_of, + 1, 8, FALSE); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_45_sequence[] = { +static const per_sequence_t CarrierFreqNR_r15_sequence[] = { + { &hf_lte_rrc_carrierFreq_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueNR_r15 }, + { &hf_lte_rrc_multiBandInfoList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MultiFrequencyBandListNR_r15 }, + { &hf_lte_rrc_multiBandInfoListSUL_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MultiFrequencyBandListNR_r15 }, + { &hf_lte_rrc_measTimingConfig_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MTC_SSB_NR_r15 }, + { &hf_lte_rrc_subcarrierSpacingSSB_r15_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subcarrierSpacingSSB_r15_01 }, + { &hf_lte_rrc_ss_RSSI_Measurement_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SS_RSSI_Measurement_r15 }, + { &hf_lte_rrc_cellReselectionPriority_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_cellReselectionSubPriority_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionSubPriority_r13 }, + { &hf_lte_rrc_threshX_High_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_threshX_Low_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReselectionThreshold }, + { &hf_lte_rrc_threshX_Q_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_threshX_Q_r15 }, + { &hf_lte_rrc_q_RxLevMin_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M70_M22 }, + { &hf_lte_rrc_q_RxLevMinSUL_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M70_M22 }, + { &hf_lte_rrc_p_MaxNR_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_P_MaxNR_r15 }, + { &hf_lte_rrc_ns_PmaxListNR_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxListNR_r15 }, + { &hf_lte_rrc_q_QualMin_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Q_QualMin_r9 }, + { &hf_lte_rrc_deriveSSB_IndexFromCell_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_maxRS_IndexCellQual_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MaxRS_IndexCellQualNR_r15 }, + { &hf_lte_rrc_threshRS_Index_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_ThresholdListNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_45(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CarrierFreqNR_r15(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_lte_rrc_T_criticalExtensionsFuture_45, T_criticalExtensionsFuture_45_sequence); + ett_lte_rrc_CarrierFreqNR_r15, CarrierFreqNR_r15_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_45_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_45_choice[] = { - { 0, &hf_lte_rrc_c1_42 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_42 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_45, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_45 }, - { 0, NULL, 0, NULL } +static const per_sequence_t CarrierFreqListNR_r15_sequence_of[1] = { + { &hf_lte_rrc_CarrierFreqListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqNR_r15 }, }; static int -dissect_lte_rrc_T_criticalExtensions_45(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_lte_rrc_T_criticalExtensions_45, T_criticalExtensions_45_choice, - NULL); +dissect_lte_rrc_CarrierFreqListNR_r15(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_lte_rrc_CarrierFreqListNR_r15, CarrierFreqListNR_r15_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t UECapabilityEnquiry_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_45, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_45 }, +static const per_sequence_t SystemInformationBlockType24_r15_sequence[] = { + { &hf_lte_rrc_carrierFreqListNR_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListNR_r15 }, + { &hf_lte_rrc_t_ReselectionNR_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, + { &hf_lte_rrc_t_ReselectionNR_SF_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SpeedStateScaleFactors }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UECapabilityEnquiry(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType24_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UECapabilityEnquiry"); + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB24"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_UECapabilityEnquiry, UECapabilityEnquiry_sequence); + ett_lte_rrc_SystemInformationBlockType24_r15, SystemInformationBlockType24_r15_sequence); return offset; } @@ -56078,773 +59854,847 @@ dissect_lte_rrc_UECapabilityEnquiry(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int -dissect_lte_rrc_INTEGER_0_33554431(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_INTEGER_1_maxAccessCat_1_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 33554431U, NULL, FALSE); + 1U, maxAccessCat_1_r15, NULL, FALSE); return offset; } -static const per_sequence_t DRB_CountMSB_Info_sequence[] = { - { &hf_lte_rrc_drb_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, - { &hf_lte_rrc_countMSB_Uplink, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_33554431 }, - { &hf_lte_rrc_countMSB_Downlink, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_33554431 }, + +static int +dissect_lte_rrc_UAC_BarringInfoSetIndex_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxBarringInfoSet_r15, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t UAC_BarringPerCat_r15_sequence[] = { + { &hf_lte_rrc_accessCategory_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAccessCat_1_r15 }, + { &hf_lte_rrc_uac_barringInfoSetIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UAC_BarringInfoSetIndex_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DRB_CountMSB_Info(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UAC_BarringPerCat_r15(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_lte_rrc_DRB_CountMSB_Info, DRB_CountMSB_Info_sequence); + ett_lte_rrc_UAC_BarringPerCat_r15, UAC_BarringPerCat_r15_sequence); return offset; } -static const per_sequence_t DRB_CountMSB_InfoList_sequence_of[1] = { - { &hf_lte_rrc_DRB_CountMSB_InfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_CountMSB_Info }, +static const per_sequence_t UAC_BarringPerCatList_r15_sequence_of[1] = { + { &hf_lte_rrc_UAC_BarringPerCatList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UAC_BarringPerCat_r15 }, }; static int -dissect_lte_rrc_DRB_CountMSB_InfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UAC_BarringPerCatList_r15(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_lte_rrc_DRB_CountMSB_InfoList, DRB_CountMSB_InfoList_sequence_of, - 1, maxDRB, FALSE); + ett_lte_rrc_UAC_BarringPerCatList_r15, UAC_BarringPerCatList_r15_sequence_of, + 1, maxAccessCat_1_r15, FALSE); return offset; } -static const per_sequence_t T_nonCriticalExtension_08_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_maxAccessCat_1_r15_OF_UAC_BarringInfoSetIndex_r15_sequence_of[1] = { + { &hf_lte_rrc_uac_ImplicitAC_BarringList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UAC_BarringInfoSetIndex_r15 }, }; static int -dissect_lte_rrc_T_nonCriticalExtension_08(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_lte_rrc_T_nonCriticalExtension_08, T_nonCriticalExtension_08_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_maxAccessCat_1_r15_OF_UAC_BarringInfoSetIndex_r15(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_lte_rrc_SEQUENCE_SIZE_maxAccessCat_1_r15_OF_UAC_BarringInfoSetIndex_r15, SEQUENCE_SIZE_maxAccessCat_1_r15_OF_UAC_BarringInfoSetIndex_r15_sequence_of, + maxAccessCat_1_r15, maxAccessCat_1_r15, FALSE); return offset; } -static const per_sequence_t CounterCheck_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_21, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_08 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_uac_AC_BarringListType_r15_vals[] = { + { 0, "uac-ImplicitAC-BarringList-r15" }, + { 1, "uac-ExplicitAC-BarringList-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_uac_AC_BarringListType_r15_choice[] = { + { 0, &hf_lte_rrc_uac_ImplicitAC_BarringList_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SEQUENCE_SIZE_maxAccessCat_1_r15_OF_UAC_BarringInfoSetIndex_r15 }, + { 1, &hf_lte_rrc_uac_ExplicitAC_BarringList_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UAC_BarringPerCatList_r15 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_CounterCheck_v8a0_IEs(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_lte_rrc_CounterCheck_v8a0_IEs, CounterCheck_v8a0_IEs_sequence); +dissect_lte_rrc_T_uac_AC_BarringListType_r15(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_lte_rrc_T_uac_AC_BarringListType_r15, T_uac_AC_BarringListType_r15_choice, + NULL); return offset; } -static const per_sequence_t CounterCheck_r8_IEs_sequence[] = { - { &hf_lte_rrc_drb_CountMSB_InfoList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_CountMSB_InfoList }, - { &hf_lte_rrc_nonCriticalExtension_20, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CounterCheck_v8a0_IEs }, +static const per_sequence_t UAC_BarringPerPLMN_r15_sequence[] = { + { &hf_lte_rrc_plmn_IdentityIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { &hf_lte_rrc_uac_AC_BarringListType_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_uac_AC_BarringListType_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CounterCheck_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UAC_BarringPerPLMN_r15(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_lte_rrc_CounterCheck_r8_IEs, CounterCheck_r8_IEs_sequence); + ett_lte_rrc_UAC_BarringPerPLMN_r15, UAC_BarringPerPLMN_r15_sequence); return offset; } -static const value_string lte_rrc_T_c1_17_vals[] = { - { 0, "counterCheck-r8" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_17_choice[] = { - { 0, &hf_lte_rrc_counterCheck_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CounterCheck_r8_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t UAC_BarringPerPLMN_List_r15_sequence_of[1] = { + { &hf_lte_rrc_UAC_BarringPerPLMN_List_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UAC_BarringPerPLMN_r15 }, }; static int -dissect_lte_rrc_T_c1_17(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_lte_rrc_T_c1_17, T_c1_17_choice, - NULL); +dissect_lte_rrc_UAC_BarringPerPLMN_List_r15(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_lte_rrc_UAC_BarringPerPLMN_List_r15, UAC_BarringPerPLMN_List_r15_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_07_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_uac_BarringFactor_r15_vals[] = { + { 0, "p00" }, + { 1, "p05" }, + { 2, "p10" }, + { 3, "p15" }, + { 4, "p20" }, + { 5, "p25" }, + { 6, "p30" }, + { 7, "p40" }, + { 8, "p50" }, + { 9, "p60" }, + { 10, "p70" }, + { 11, "p75" }, + { 12, "p80" }, + { 13, "p85" }, + { 14, "p90" }, + { 15, "p95" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_criticalExtensionsFuture_07(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_lte_rrc_T_criticalExtensionsFuture_07, T_criticalExtensionsFuture_07_sequence); +dissect_lte_rrc_T_uac_BarringFactor_r15(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_criticalExtensions_07_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_uac_BarringTime_r15_vals[] = { + { 0, "s4" }, + { 1, "s8" }, + { 2, "s16" }, + { 3, "s32" }, + { 4, "s64" }, + { 5, "s128" }, + { 6, "s256" }, + { 7, "s512" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_07_choice[] = { - { 0, &hf_lte_rrc_c1_17 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_17 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_07, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_07 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_07(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_lte_rrc_T_criticalExtensions_07, T_criticalExtensions_07_choice, - NULL); +dissect_lte_rrc_T_uac_BarringTime_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CounterCheck_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_07, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_07 }, +static const per_sequence_t UAC_BarringInfoSet_r15_sequence[] = { + { &hf_lte_rrc_uac_BarringFactor_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_uac_BarringFactor_r15 }, + { &hf_lte_rrc_uac_BarringTime_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_uac_BarringTime_r15 }, + { &hf_lte_rrc_uac_BarringForAccessIdentity_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CounterCheck(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UAC_BarringInfoSet_r15(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_lte_rrc_UAC_BarringInfoSet_r15, UAC_BarringInfoSet_r15_sequence); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CounterCheck"); + return offset; +} - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_CounterCheck, CounterCheck_sequence); + +static const per_sequence_t UAC_BarringInfoSetList_r15_sequence_of[1] = { + { &hf_lte_rrc_UAC_BarringInfoSetList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UAC_BarringInfoSet_r15 }, +}; + +static int +dissect_lte_rrc_UAC_BarringInfoSetList_r15(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_lte_rrc_UAC_BarringInfoSetList_r15, UAC_BarringInfoSetList_r15_sequence_of, + 1, maxBarringInfoSet_r15, FALSE); return offset; } -static const value_string lte_rrc_T_logMeasReportReq_r10_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_UAC_AC1_SelectAssistInfo_r15_vals[] = { + { 0, "a" }, + { 1, "b" }, + { 2, "c" }, { 0, NULL } }; static int -dissect_lte_rrc_T_logMeasReportReq_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UAC_AC1_SelectAssistInfo_r15(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, - 1, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_connEstFailReportReq_r11_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_2_maxPLMN_r11_OF_UAC_AC1_SelectAssistInfo_r15_sequence_of[1] = { + { &hf_lte_rrc_individualPLMNList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UAC_AC1_SelectAssistInfo_r15 }, }; - static int -dissect_lte_rrc_T_connEstFailReportReq_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_2_maxPLMN_r11_OF_UAC_AC1_SelectAssistInfo_r15(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_lte_rrc_SEQUENCE_SIZE_2_maxPLMN_r11_OF_UAC_AC1_SelectAssistInfo_r15, SEQUENCE_SIZE_2_maxPLMN_r11_OF_UAC_AC1_SelectAssistInfo_r15_sequence_of, + 2, maxPLMN_r11, FALSE); return offset; } -static const value_string lte_rrc_T_mobilityHistoryReportReq_r12_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_uac_AC1_SelectAssistInfo_r15_vals[] = { + { 0, "plmnCommon-r15" }, + { 1, "individualPLMNList-r15" }, { 0, NULL } }; +static const per_choice_t T_uac_AC1_SelectAssistInfo_r15_choice[] = { + { 0, &hf_lte_rrc_plmnCommon_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UAC_AC1_SelectAssistInfo_r15 }, + { 1, &hf_lte_rrc_individualPLMNList_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SEQUENCE_SIZE_2_maxPLMN_r11_OF_UAC_AC1_SelectAssistInfo_r15 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_mobilityHistoryReportReq_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_uac_AC1_SelectAssistInfo_r15(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_lte_rrc_T_uac_AC1_SelectAssistInfo_r15, T_uac_AC1_SelectAssistInfo_r15_choice, + NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_57_sequence[] = { +static const per_sequence_t SystemInformationBlockType25_r15_sequence[] = { + { &hf_lte_rrc_uac_BarringForCommon_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UAC_BarringPerCatList_r15 }, + { &hf_lte_rrc_uac_BarringPerPLMN_List_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UAC_BarringPerPLMN_List_r15 }, + { &hf_lte_rrc_uac_BarringInfoSetList_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UAC_BarringInfoSetList_r15 }, + { &hf_lte_rrc_uac_AC1_SelectAssistInfo_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_uac_AC1_SelectAssistInfo_r15 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_57(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType25_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB25"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_nonCriticalExtension_57, T_nonCriticalExtension_57_sequence); + ett_lte_rrc_SystemInformationBlockType25_r15, SystemInformationBlockType25_r15_sequence); return offset; } -static const per_sequence_t UEInformationRequest_v1250_IEs_sequence[] = { - { &hf_lte_rrc_mobilityHistoryReportReq_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityHistoryReportReq_r12 }, - { &hf_lte_rrc_nonCriticalExtension_172, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_57 }, +static const per_sequence_t SL_PPPP_TxConfigIndex_r15_sequence[] = { + { &hf_lte_rrc_priorityThreshold_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_Priority_r13 }, + { &hf_lte_rrc_defaultTxConfigIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxCBR_Level_1_r14 }, + { &hf_lte_rrc_cbr_ConfigIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxSL_V2X_CBRConfig_1_r14 }, + { &hf_lte_rrc_tx_ConfigIndexList_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14 }, + { &hf_lte_rrc_mcs_PSSCH_RangeList_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_MCS_PSSCH_Range_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEInformationRequest_v1250_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_PPPP_TxConfigIndex_r15(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_lte_rrc_UEInformationRequest_v1250_IEs, UEInformationRequest_v1250_IEs_sequence); + ett_lte_rrc_SL_PPPP_TxConfigIndex_r15, SL_PPPP_TxConfigIndex_r15_sequence); return offset; } -static const per_sequence_t UEInformationRequest_v1130_IEs_sequence[] = { - { &hf_lte_rrc_connEstFailReportReq_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connEstFailReportReq_r11 }, - { &hf_lte_rrc_nonCriticalExtension_171, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationRequest_v1250_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t SL_CBR_PPPP_TxConfigList_r15_sequence_of[1] = { + { &hf_lte_rrc_SL_CBR_PPPP_TxConfigList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_PPPP_TxConfigIndex_r15 }, }; static int -dissect_lte_rrc_UEInformationRequest_v1130_IEs(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_lte_rrc_UEInformationRequest_v1130_IEs, UEInformationRequest_v1130_IEs_sequence); +dissect_lte_rrc_SL_CBR_PPPP_TxConfigList_r15(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_lte_rrc_SL_CBR_PPPP_TxConfigList_r15, SL_CBR_PPPP_TxConfigList_r15_sequence_of, + 1, 8, FALSE); return offset; } -static const per_sequence_t UEInformationRequest_v1020_IEs_sequence[] = { - { &hf_lte_rrc_logMeasReportReq_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasReportReq_r10 }, - { &hf_lte_rrc_nonCriticalExtension_170, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationRequest_v1130_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_slss_TxMultiFreq_r15_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UEInformationRequest_v1020_IEs(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_lte_rrc_UEInformationRequest_v1020_IEs, UEInformationRequest_v1020_IEs_sequence); +dissect_lte_rrc_T_slss_TxMultiFreq_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UEInformationRequest_v930_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_169, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationRequest_v1020_IEs }, +static const per_sequence_t SystemInformationBlockType26_r15_sequence[] = { + { &hf_lte_rrc_v2x_InterFreqInfoList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_InterFreqInfoListV2X_r14 }, + { &hf_lte_rrc_cbr_pssch_TxConfigList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_PPPP_TxConfigList_r15 }, + { &hf_lte_rrc_v2x_PacketDuplicationConfig_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_PacketDuplicationConfig_r15 }, + { &hf_lte_rrc_syncFreqList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_SyncFreqList_r15 }, + { &hf_lte_rrc_slss_TxMultiFreq_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_slss_TxMultiFreq_r15 }, + { &hf_lte_rrc_v2x_FreqSelectionConfigList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_FreqSelectionConfigList_r15 }, + { &hf_lte_rrc_threshS_RSSI_CBR_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_45 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEInformationRequest_v930_IEs(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_lte_rrc_UEInformationRequest_v930_IEs, UEInformationRequest_v930_IEs_sequence); - - return offset; -} +dissect_lte_rrc_SystemInformationBlockType26_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB26"); -static const per_sequence_t UEInformationRequest_r9_IEs_sequence[] = { - { &hf_lte_rrc_rach_ReportReq_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_rlf_ReportReq_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_nonCriticalExtension_168, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationRequest_v930_IEs }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_UEInformationRequest_r9_IEs(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_lte_rrc_UEInformationRequest_r9_IEs, UEInformationRequest_r9_IEs_sequence); + ett_lte_rrc_SystemInformationBlockType26_r15, SystemInformationBlockType26_r15_sequence); return offset; } -static const value_string lte_rrc_T_c1_44_vals[] = { - { 0, "ueInformationRequest-r9" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_sib_TypeAndInfo_item_vals[] = { + { 0, "sib2" }, + { 1, "sib3" }, + { 2, "sib4" }, + { 3, "sib5" }, + { 4, "sib6" }, + { 5, "sib7" }, + { 6, "sib8" }, + { 7, "sib9" }, + { 8, "sib10" }, + { 9, "sib11" }, + { 10, "sib12-v920" }, + { 11, "sib13-v920" }, + { 12, "sib14-v1130" }, + { 13, "sib15-v1130" }, + { 14, "sib16-v1130" }, + { 15, "sib17-v1250" }, + { 16, "sib18-v1250" }, + { 17, "sib19-v1250" }, + { 18, "sib20-v1310" }, + { 19, "sib21-v1430" }, + { 20, "sib24-v1530" }, + { 21, "sib25-v1530" }, + { 22, "sib26-v1530" }, { 0, NULL } }; -static const per_choice_t T_c1_44_choice[] = { - { 0, &hf_lte_rrc_ueInformationRequest_r9_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEInformationRequest_r9_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t T_sib_TypeAndInfo_item_choice[] = { + { 0, &hf_lte_rrc_sib2 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType2 }, + { 1, &hf_lte_rrc_sib3 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType3 }, + { 2, &hf_lte_rrc_sib4 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType4 }, + { 3, &hf_lte_rrc_sib5 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType5 }, + { 4, &hf_lte_rrc_sib6 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType6 }, + { 5, &hf_lte_rrc_sib7 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType7 }, + { 6, &hf_lte_rrc_sib8 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType8 }, + { 7, &hf_lte_rrc_sib9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType9 }, + { 8, &hf_lte_rrc_sib10 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType10 }, + { 9, &hf_lte_rrc_sib11 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockType11 }, + { 10, &hf_lte_rrc_sib12_v920 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType12_r9 }, + { 11, &hf_lte_rrc_sib13_v920 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType13_r9 }, + { 12, &hf_lte_rrc_sib14_v1130 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType14_r11 }, + { 13, &hf_lte_rrc_sib15_v1130 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType15_r11 }, + { 14, &hf_lte_rrc_sib16_v1130 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType16_r11 }, + { 15, &hf_lte_rrc_sib17_v1250 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType17_r12 }, + { 16, &hf_lte_rrc_sib18_v1250 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType18_r12 }, + { 17, &hf_lte_rrc_sib19_v1250 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType19_r12 }, + { 18, &hf_lte_rrc_sib20_v1310 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType20_r13 }, + { 19, &hf_lte_rrc_sib21_v1430 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType21_r14 }, + { 20, &hf_lte_rrc_sib24_v1530 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType24_r15 }, + { 21, &hf_lte_rrc_sib25_v1530 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType25_r15 }, + { 22, &hf_lte_rrc_sib26_v1530 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType26_r15 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_44(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sib_TypeAndInfo_item(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_lte_rrc_T_c1_44, T_c1_44_choice, + ett_lte_rrc_T_sib_TypeAndInfo_item, T_sib_TypeAndInfo_item_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_47_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t T_sib_TypeAndInfo_sequence_of[1] = { + { &hf_lte_rrc_sib_TypeAndInfo_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_TypeAndInfo_item }, }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_47(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_lte_rrc_T_criticalExtensionsFuture_47, T_criticalExtensionsFuture_47_sequence); +dissect_lte_rrc_T_sib_TypeAndInfo(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_lte_rrc_T_sib_TypeAndInfo, T_sib_TypeAndInfo_sequence_of, + 1, maxSIB, FALSE); return offset; } -static const value_string lte_rrc_T_criticalExtensions_47_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_47_choice[] = { - { 0, &hf_lte_rrc_c1_44 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_44 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_47, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_47 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_nonCriticalExtension_55_sequence[] = { + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_47(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_lte_rrc_T_criticalExtensions_47, T_criticalExtensions_47_choice, - NULL); +dissect_lte_rrc_T_nonCriticalExtension_55(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_lte_rrc_T_nonCriticalExtension_55, T_nonCriticalExtension_55_sequence); return offset; } -static const per_sequence_t UEInformationRequest_r9_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_47, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_47 }, +static const per_sequence_t SystemInformation_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_159, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_55 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEInformationRequest_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEInformationRequest-r9"); - +dissect_lte_rrc_SystemInformation_v8a0_IEs(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_lte_rrc_UEInformationRequest_r9, UEInformationRequest_r9_sequence); + ett_lte_rrc_SystemInformation_v8a0_IEs, SystemInformation_v8a0_IEs_sequence); return offset; } -static const per_sequence_t TraceReference_r10_sequence[] = { - { &hf_lte_rrc_plmn_Identity_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, - { &hf_lte_rrc_traceId_r10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_3 }, +static const per_sequence_t SystemInformation_r8_IEs_sequence[] = { + { &hf_lte_rrc_sib_TypeAndInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_TypeAndInfo }, + { &hf_lte_rrc_nonCriticalExtension_158, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformation_v8a0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_TraceReference_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformation_r8_IEs(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_lte_rrc_TraceReference_r10, TraceReference_r10_sequence); + ett_lte_rrc_SystemInformation_r8_IEs, SystemInformation_r8_IEs_sequence); return offset; } +static const per_sequence_t SystemInformationBlockPos_r15_sequence[] = { + { &hf_lte_rrc_assistanceDataSIB_Element_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockPos_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIBPos"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformationBlockPos_r15, SystemInformationBlockPos_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_posSIB_TypeAndInfo_r15_item_vals[] = { + { 0, "posSib1-1-r15" }, + { 1, "posSib1-2-r15" }, + { 2, "posSib1-3-r15" }, + { 3, "posSib1-4-r15" }, + { 4, "posSib1-5-r15" }, + { 5, "posSib1-6-r15" }, + { 6, "posSib1-7-r15" }, + { 7, "posSib2-1-r15" }, + { 8, "posSib2-2-r15" }, + { 9, "posSib2-3-r15" }, + { 10, "posSib2-4-r15" }, + { 11, "posSib2-5-r15" }, + { 12, "posSib2-6-r15" }, + { 13, "posSib2-7-r15" }, + { 14, "posSib2-8-r15" }, + { 15, "posSib2-9-r15" }, + { 16, "posSib2-10-r15" }, + { 17, "posSib2-11-r15" }, + { 18, "posSib2-12-r15" }, + { 19, "posSib2-13-r15" }, + { 20, "posSib2-14-r15" }, + { 21, "posSib2-15-r15" }, + { 22, "posSib2-16-r15" }, + { 23, "posSib2-17-r15" }, + { 24, "posSib2-18-r15" }, + { 25, "posSib2-19-r15" }, + { 26, "posSib3-1-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_posSIB_TypeAndInfo_r15_item_choice[] = { + { 0, &hf_lte_rrc_posSib1_1_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 1, &hf_lte_rrc_posSib1_2_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 2, &hf_lte_rrc_posSib1_3_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 3, &hf_lte_rrc_posSib1_4_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 4, &hf_lte_rrc_posSib1_5_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 5, &hf_lte_rrc_posSib1_6_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 6, &hf_lte_rrc_posSib1_7_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 7, &hf_lte_rrc_posSib2_1_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 8, &hf_lte_rrc_posSib2_2_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 9, &hf_lte_rrc_posSib2_3_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 10, &hf_lte_rrc_posSib2_4_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 11, &hf_lte_rrc_posSib2_5_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 12, &hf_lte_rrc_posSib2_6_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 13, &hf_lte_rrc_posSib2_7_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 14, &hf_lte_rrc_posSib2_8_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 15, &hf_lte_rrc_posSib2_9_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 16, &hf_lte_rrc_posSib2_10_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 17, &hf_lte_rrc_posSib2_11_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 18, &hf_lte_rrc_posSib2_12_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 19, &hf_lte_rrc_posSib2_13_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 20, &hf_lte_rrc_posSib2_14_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 21, &hf_lte_rrc_posSib2_15_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 22, &hf_lte_rrc_posSib2_16_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 23, &hf_lte_rrc_posSib2_17_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 24, &hf_lte_rrc_posSib2_18_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 25, &hf_lte_rrc_posSib2_19_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 26, &hf_lte_rrc_posSib3_1_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_SystemInformationBlockPos_r15 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_OCTET_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, NULL); +dissect_lte_rrc_T_posSIB_TypeAndInfo_r15_item(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_lte_rrc_T_posSIB_TypeAndInfo_r15_item, T_posSIB_TypeAndInfo_r15_item_choice, + NULL); return offset; } +static const per_sequence_t T_posSIB_TypeAndInfo_r15_sequence_of[1] = { + { &hf_lte_rrc_posSIB_TypeAndInfo_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_posSIB_TypeAndInfo_r15_item }, +}; static int -dissect_lte_rrc_AbsoluteTimeInfo_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *abs_time_info_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 48, 48, FALSE, &abs_time_info_tvb, NULL); - - - if (abs_time_info_tvb) { - const gchar *str, *hf_str; - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_absTimeInfo); - str = tvb_bcd_dig_to_wmem_packet_str(abs_time_info_tvb, 0, 6, NULL, FALSE); - hf_str = wmem_strdup_printf(wmem_packet_scope(), "%c%c-%c%c-%c%c %c%c:%c%c:%c%c", str[0], str[1], - str[2], str[3], str[4], str[5], str[6], str[7], str[8], str[9], str[10], str[11]); - proto_tree_add_string(subtree, hf_lte_rrc_absolute_time, abs_time_info_tvb, 0, 6, hf_str); - } +dissect_lte_rrc_T_posSIB_TypeAndInfo_r15(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_lte_rrc_T_posSIB_TypeAndInfo_r15, T_posSIB_TypeAndInfo_r15_sequence_of, + 1, maxSIB, FALSE); return offset; } -static const per_sequence_t CellGlobalIdEUTRA_sequence[] = { - { &hf_lte_rrc_plmn_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, - { &hf_lte_rrc_cellIdentity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, +static const per_sequence_t T_nonCriticalExtension_56_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellGlobalIdEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_56(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_lte_rrc_CellGlobalIdEUTRA, CellGlobalIdEUTRA_sequence); + ett_lte_rrc_T_nonCriticalExtension_56, T_nonCriticalExtension_56_sequence); return offset; } -static const per_sequence_t CellGlobalIdList_r10_sequence_of[1] = { - { &hf_lte_rrc_CellGlobalIdList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdEUTRA }, +static const per_sequence_t PosSystemInformation_r15_IEs_sequence[] = { + { &hf_lte_rrc_posSIB_TypeAndInfo_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_posSIB_TypeAndInfo_r15 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_160, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_56 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellGlobalIdList_r10(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_lte_rrc_CellGlobalIdList_r10, CellGlobalIdList_r10_sequence_of, - 1, 32, FALSE); +dissect_lte_rrc_PosSystemInformation_r15_IEs(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_lte_rrc_PosSystemInformation_r15_IEs, PosSystemInformation_r15_IEs_sequence); return offset; } -static const per_sequence_t TrackingAreaCodeList_r10_sequence_of[1] = { - { &hf_lte_rrc_TrackingAreaCodeList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, +static const per_sequence_t T_criticalExtensionsFuture_45_sequence[] = { + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_TrackingAreaCodeList_r10(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_lte_rrc_TrackingAreaCodeList_r10, TrackingAreaCodeList_r10_sequence_of, - 1, 8, FALSE); +dissect_lte_rrc_T_criticalExtensionsFuture_45(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_lte_rrc_T_criticalExtensionsFuture_45, T_criticalExtensionsFuture_45_sequence); return offset; } -static const value_string lte_rrc_AreaConfiguration_r10_vals[] = { - { 0, "cellGlobalIdList-r10" }, - { 1, "trackingAreaCodeList-r10" }, +static const value_string lte_rrc_T_criticalExtensionsFuture_r15_vals[] = { + { 0, "posSystemInformation-r15" }, + { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t AreaConfiguration_r10_choice[] = { - { 0, &hf_lte_rrc_cellGlobalIdList_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CellGlobalIdList_r10 }, - { 1, &hf_lte_rrc_trackingAreaCodeList_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_TrackingAreaCodeList_r10 }, +static const per_choice_t T_criticalExtensionsFuture_r15_choice[] = { + { 0, &hf_lte_rrc_posSystemInformation_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_PosSystemInformation_r15_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_45, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_45 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_AreaConfiguration_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_r15(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_lte_rrc_AreaConfiguration_r10, AreaConfiguration_r10_choice, + ett_lte_rrc_T_criticalExtensionsFuture_r15, T_criticalExtensionsFuture_r15_choice, NULL); return offset; } -static const value_string lte_rrc_LoggingDuration_r10_vals[] = { - { 0, "min10" }, - { 1, "min20" }, - { 2, "min40" }, - { 3, "min60" }, - { 4, "min90" }, - { 5, "min120" }, - { 6, "spare2" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_criticalExtensions_46_vals[] = { + { 0, "systemInformation-r8" }, + { 1, "criticalExtensionsFuture-r15" }, { 0, NULL } }; +static const per_choice_t T_criticalExtensions_46_choice[] = { + { 0, &hf_lte_rrc_systemInformation_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformation_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_r15 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_LoggingDuration_r10(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_criticalExtensions_46(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_lte_rrc_T_criticalExtensions_46, T_criticalExtensions_46_choice, + NULL); return offset; } -static const value_string lte_rrc_LoggingInterval_r10_vals[] = { - { 0, "ms1280" }, - { 1, "ms2560" }, - { 2, "ms5120" }, - { 3, "ms10240" }, - { 4, "ms20480" }, - { 5, "ms30720" }, - { 6, "ms40960" }, - { 7, "ms61440" }, - { 0, NULL } +static const per_sequence_t SystemInformation_sequence[] = { + { &hf_lte_rrc_criticalExtensions_46, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_46 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_LoggingInterval_r10(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SystemInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - return offset; -} + if (private_data_get_bcch_dl_sch_msg(actx) == FALSE) { + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformation ["); + } -static const per_sequence_t PLMN_IdentityList3_r11_sequence_of[1] = { - { &hf_lte_rrc_PLMN_IdentityList3_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, -}; + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformation, SystemInformation_sequence); + + if (private_data_get_bcch_dl_sch_msg(actx) == FALSE) { + col_append_str(actx->pinfo->cinfo, COL_INFO, " ]"); + } -static int -dissect_lte_rrc_PLMN_IdentityList3_r11(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_lte_rrc_PLMN_IdentityList3_r11, PLMN_IdentityList3_r11_sequence_of, - 1, 16, FALSE); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_8_OF_PLMN_Identity_sequence_of[1] = { - { &hf_lte_rrc_plmn_Identity_perTAC_List_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, +static const value_string lte_rrc_T_c1_07_vals[] = { + { 0, "systemInformation" }, + { 1, "systemInformationBlockType1" }, + { 0, NULL } }; -static int -dissect_lte_rrc_SEQUENCE_SIZE_1_8_OF_PLMN_Identity(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_lte_rrc_SEQUENCE_SIZE_1_8_OF_PLMN_Identity, SEQUENCE_SIZE_1_8_OF_PLMN_Identity_sequence_of, - 1, 8, FALSE); - - return offset; -} - - -static const per_sequence_t TrackingAreaCodeList_v1130_sequence[] = { - { &hf_lte_rrc_plmn_Identity_perTAC_List_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_8_OF_PLMN_Identity }, - { NULL, 0, 0, NULL } +static const per_choice_t T_c1_07_choice[] = { + { 0, &hf_lte_rrc_systemInformation, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformation }, + { 1, &hf_lte_rrc_systemInformationBlockType1, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformationBlockType1 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_TrackingAreaCodeList_v1130(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_lte_rrc_TrackingAreaCodeList_v1130, TrackingAreaCodeList_v1130_sequence); +dissect_lte_rrc_T_c1_07(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_lte_rrc_T_c1_07, T_c1_07_choice, + NULL); return offset; } -static const per_sequence_t AreaConfiguration_v1130_sequence[] = { - { &hf_lte_rrc_trackingAreaCodeList_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCodeList_v1130 }, +static const per_sequence_t T_messageClassExtension_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AreaConfiguration_v1130(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_messageClassExtension(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_lte_rrc_AreaConfiguration_v1130, AreaConfiguration_v1130_sequence); + ett_lte_rrc_T_messageClassExtension, T_messageClassExtension_sequence); return offset; } -static const per_sequence_t TargetMBSFN_Area_r12_sequence[] = { - { &hf_lte_rrc_mbsfn_AreaId_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_AreaId_r12 }, - { &hf_lte_rrc_carrierFreq_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_BCCH_DL_SCH_MessageType_vals[] = { + { 0, "c1" }, + { 1, "messageClassExtension" }, + { 0, NULL } }; -static int -dissect_lte_rrc_TargetMBSFN_Area_r12(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_lte_rrc_TargetMBSFN_Area_r12, TargetMBSFN_Area_r12_sequence); - - return offset; -} - - -static const per_sequence_t TargetMBSFN_AreaList_r12_sequence_of[1] = { - { &hf_lte_rrc_TargetMBSFN_AreaList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TargetMBSFN_Area_r12 }, +static const per_choice_t BCCH_DL_SCH_MessageType_choice[] = { + { 0, &hf_lte_rrc_c1_07 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_07 }, + { 1, &hf_lte_rrc_messageClassExtension, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_TargetMBSFN_AreaList_r12(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_lte_rrc_TargetMBSFN_AreaList_r12, TargetMBSFN_AreaList_r12_sequence_of, - 0, maxMBSFN_Area, FALSE); +dissect_lte_rrc_BCCH_DL_SCH_MessageType(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_lte_rrc_BCCH_DL_SCH_MessageType, BCCH_DL_SCH_MessageType_choice, + NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_16_sequence[] = { +static const per_sequence_t BCCH_DL_SCH_Message_sequence[] = { + { &hf_lte_rrc_message_02 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_DL_SCH_MessageType }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BCCH_DL_SCH_Message(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_lte_rrc_T_nonCriticalExtension_16, T_nonCriticalExtension_16_sequence); + ett_lte_rrc_BCCH_DL_SCH_Message, BCCH_DL_SCH_Message_sequence); return offset; } -static const per_sequence_t LoggedMeasurementConfiguration_v1250_IEs_sequence[] = { - { &hf_lte_rrc_targetMBSFN_AreaList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TargetMBSFN_AreaList_r12 }, - { &hf_lte_rrc_nonCriticalExtension_42, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_16 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_LoggedMeasurementConfiguration_v1250_IEs(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_lte_rrc_LoggedMeasurementConfiguration_v1250_IEs, LoggedMeasurementConfiguration_v1250_IEs_sequence); +dissect_lte_rrc_SystemInformation_BR_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - return offset; -} + private_data_set_bcch_dl_sch_msg(actx, TRUE); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformation-BR-r13 ["); -static const per_sequence_t LoggedMeasurementConfiguration_v1130_IEs_sequence[] = { - { &hf_lte_rrc_plmn_IdentityList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList3_r11 }, - { &hf_lte_rrc_areaConfiguration_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AreaConfiguration_v1130 }, - { &hf_lte_rrc_nonCriticalExtension_41, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LoggedMeasurementConfiguration_v1250_IEs }, - { NULL, 0, 0, NULL } -}; + offset = dissect_lte_rrc_SystemInformation(tvb, offset, actx, tree, hf_index); + + col_append_str(actx->pinfo->cinfo, COL_INFO, " ]"); -static int -dissect_lte_rrc_LoggedMeasurementConfiguration_v1130_IEs(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_lte_rrc_LoggedMeasurementConfiguration_v1130_IEs, LoggedMeasurementConfiguration_v1130_IEs_sequence); return offset; } -static const per_sequence_t LoggedMeasurementConfiguration_v1080_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_40, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LoggedMeasurementConfiguration_v1130_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_LoggedMeasurementConfiguration_v1080_IEs(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_lte_rrc_LoggedMeasurementConfiguration_v1080_IEs, LoggedMeasurementConfiguration_v1080_IEs_sequence); - - return offset; -} - +dissect_lte_rrc_SystemInformationBlockType1_BR_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -static const per_sequence_t LoggedMeasurementConfiguration_r10_IEs_sequence[] = { - { &hf_lte_rrc_traceReference_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TraceReference_r10 }, - { &hf_lte_rrc_traceRecordingSessionRef_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_2 }, - { &hf_lte_rrc_tce_Id_r10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_1 }, - { &hf_lte_rrc_absoluteTimeInfo_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AbsoluteTimeInfo_r10 }, - { &hf_lte_rrc_areaConfiguration_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AreaConfiguration_r10 }, - { &hf_lte_rrc_loggingDuration_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LoggingDuration_r10 }, - { &hf_lte_rrc_loggingInterval_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LoggingInterval_r10 }, - { &hf_lte_rrc_nonCriticalExtension_39, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LoggedMeasurementConfiguration_v1080_IEs }, - { NULL, 0, 0, NULL } -}; + private_data_set_bcch_dl_sch_msg(actx, TRUE); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformationBlockType1-BR-r13"); -static int -dissect_lte_rrc_LoggedMeasurementConfiguration_r10_IEs(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_lte_rrc_LoggedMeasurementConfiguration_r10_IEs, LoggedMeasurementConfiguration_r10_IEs_sequence); + offset = dissect_lte_rrc_SystemInformationBlockType1(tvb, offset, actx, tree, hf_index); return offset; } -static const value_string lte_rrc_T_c1_22_vals[] = { - { 0, "loggedMeasurementConfiguration-r10" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_c1_08_vals[] = { + { 0, "systemInformation-BR-r13" }, + { 1, "systemInformationBlockType1-BR-r13" }, { 0, NULL } }; -static const per_choice_t T_c1_22_choice[] = { - { 0, &hf_lte_rrc_loggedMeasurementConfiguration_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_LoggedMeasurementConfiguration_r10_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t T_c1_08_choice[] = { + { 0, &hf_lte_rrc_systemInformation_BR_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformation_BR_r13 }, + { 1, &hf_lte_rrc_systemInformationBlockType1_BR_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformationBlockType1_BR_r13 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_08(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_lte_rrc_T_c1_22, T_c1_22_choice, + ett_lte_rrc_T_c1_08, T_c1_08_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_15_sequence[] = { +static const per_sequence_t T_messageClassExtension_01_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_messageClassExtension_01(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_lte_rrc_T_criticalExtensionsFuture_15, T_criticalExtensionsFuture_15_sequence); + ett_lte_rrc_T_messageClassExtension_01, T_messageClassExtension_01_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_15_vals[] = { +static const value_string lte_rrc_BCCH_DL_SCH_MessageType_BR_r13_vals[] = { { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, + { 1, "messageClassExtension" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_15_choice[] = { - { 0, &hf_lte_rrc_c1_22 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_22 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_15 }, +static const per_choice_t BCCH_DL_SCH_MessageType_BR_r13_choice[] = { + { 0, &hf_lte_rrc_c1_08 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_08 }, + { 1, &hf_lte_rrc_messageClassExtension_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_01 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BCCH_DL_SCH_MessageType_BR_r13(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_lte_rrc_T_criticalExtensions_15, T_criticalExtensions_15_choice, + ett_lte_rrc_BCCH_DL_SCH_MessageType_BR_r13, BCCH_DL_SCH_MessageType_BR_r13_choice, NULL); return offset; } -static const per_sequence_t LoggedMeasurementConfiguration_r10_sequence[] = { - { &hf_lte_rrc_criticalExtensions_15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_15 }, +static const per_sequence_t BCCH_DL_SCH_Message_BR_sequence[] = { + { &hf_lte_rrc_message_03 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_DL_SCH_MessageType_BR_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LoggedMeasurementConfiguration_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LoggedMeasurementConfiguration-r10"); - +dissect_lte_rrc_BCCH_DL_SCH_Message_BR(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_lte_rrc_LoggedMeasurementConfiguration_r10, LoggedMeasurementConfiguration_r10_sequence); + ett_lte_rrc_BCCH_DL_SCH_Message_BR, BCCH_DL_SCH_Message_BR_sequence); return offset; } @@ -56852,233 +60702,172 @@ dissect_lte_rrc_LoggedMeasurementConfiguration_r10(tvbuff_t *tvb _U_, int offset static int -dissect_lte_rrc_T_systemInformationBlockType1_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType1_PDU); +dissect_lte_rrc_SystemInformation_MBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + private_data_set_bcch_dl_sch_msg(actx, TRUE); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformation-MBMS-r14 ["); + + + offset = dissect_lte_rrc_SystemInformation(tvb, offset, actx, tree, hf_index); + + col_append_str(actx->pinfo->cinfo, COL_INFO, " ]"); + return offset; } -static const per_sequence_t RN_SystemInfo_r10_sequence[] = { - { &hf_lte_rrc_systemInformationBlockType1_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInformationBlockType1_r10 }, - { &hf_lte_rrc_systemInformationBlockType2_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType2 }, - { NULL, 0, 0, NULL } +static const per_sequence_t PLMN_IdentityList_MBMS_r14_sequence_of[1] = { + { &hf_lte_rrc_PLMN_IdentityList_MBMS_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, }; static int -dissect_lte_rrc_RN_SystemInfo_r10(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_lte_rrc_RN_SystemInfo_r10, RN_SystemInfo_r10_sequence); +dissect_lte_rrc_PLMN_IdentityList_MBMS_r14(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_lte_rrc_PLMN_IdentityList_MBMS_r14, PLMN_IdentityList_MBMS_r14_sequence_of, + 1, maxPLMN_r11, FALSE); return offset; } -static const value_string lte_rrc_T_subframeConfigPattern_r10_vals[] = { - { 0, "subframeConfigPatternFDD-r10" }, - { 1, "subframeConfigPatternTDD-r10" }, - { 0, NULL } -}; - -static const per_choice_t T_subframeConfigPattern_r10_choice[] = { - { 0, &hf_lte_rrc_subframeConfigPatternFDD_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_8 }, - { 1, &hf_lte_rrc_subframeConfigPatternTDD_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_31 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_cellAccessRelatedInfo_r14_sequence[] = { + { &hf_lte_rrc_plmn_IdentityList_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_IdentityList_MBMS_r14 }, + { &hf_lte_rrc_trackingAreaCode_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, + { &hf_lte_rrc_cellIdentity_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_subframeConfigPattern_r10(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_lte_rrc_T_subframeConfigPattern_r10, T_subframeConfigPattern_r10_choice, - NULL); +dissect_lte_rrc_T_cellAccessRelatedInfo_r14(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_lte_rrc_T_cellAccessRelatedInfo_r14, T_cellAccessRelatedInfo_r14_sequence); return offset; } -static const value_string lte_rrc_T_resourceAllocationType_r10_vals[] = { - { 0, "type0" }, - { 1, "type1" }, - { 2, "type2Localized" }, - { 3, "type2Distributed" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_si_Periodicity_r14_vals[] = { + { 0, "rf16" }, + { 1, "rf32" }, + { 2, "rf64" }, + { 3, "rf128" }, + { 4, "rf256" }, + { 5, "rf512" }, { 0, NULL } }; static int -dissect_lte_rrc_T_resourceAllocationType_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_si_Periodicity_r14(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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} - - - -static int -dissect_lte_rrc_BIT_STRING_SIZE_17(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, - 17, 17, FALSE, NULL, NULL); - - return offset; -} - - - -static int -dissect_lte_rrc_BIT_STRING_SIZE_25(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, - 25, 25, FALSE, NULL, NULL); + 6, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_type01_r10_vals[] = { - { 0, "nrb6-r10" }, - { 1, "nrb15-r10" }, - { 2, "nrb25-r10" }, - { 3, "nrb50-r10" }, - { 4, "nrb75-r10" }, - { 5, "nrb100-r10" }, +static const value_string lte_rrc_SIB_Type_MBMS_r14_vals[] = { + { 0, "sibType10" }, + { 1, "sibType11" }, + { 2, "sibType12-v920" }, + { 3, "sibType13-v920" }, + { 4, "sibType15-v1130" }, + { 5, "sibType16-v1130" }, { 0, NULL } }; -static const per_choice_t T_type01_r10_choice[] = { - { 0, &hf_lte_rrc_nrb6_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_6 }, - { 1, &hf_lte_rrc_nrb15_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_8 }, - { 2, &hf_lte_rrc_nrb25_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_13 }, - { 3, &hf_lte_rrc_nrb50_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_17 }, - { 4, &hf_lte_rrc_nrb75_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_19 }, - { 5, &hf_lte_rrc_nrb100_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_25 }, - { 0, NULL, 0, NULL } -}; - -static int -dissect_lte_rrc_T_type01_r10(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_lte_rrc_T_type01_r10, T_type01_r10_choice, - NULL); - - return offset; -} - - static int -dissect_lte_rrc_BIT_STRING_SIZE_11(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, - 11, 11, FALSE, NULL, NULL); +dissect_lte_rrc_SIB_Type_MBMS_r14(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, + 6, NULL, TRUE, 0, NULL); return offset; } -static const value_string lte_rrc_T_type2_r10_vals[] = { - { 0, "nrb6-r10" }, - { 1, "nrb15-r10" }, - { 2, "nrb25-r10" }, - { 3, "nrb50-r10" }, - { 4, "nrb75-r10" }, - { 5, "nrb100-r10" }, - { 0, NULL } -}; - -static const per_choice_t T_type2_r10_choice[] = { - { 0, &hf_lte_rrc_nrb6_r10_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_5 }, - { 1, &hf_lte_rrc_nrb15_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_7 }, - { 2, &hf_lte_rrc_nrb25_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_9 }, - { 3, &hf_lte_rrc_nrb50_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_11 }, - { 4, &hf_lte_rrc_nrb75_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_12 }, - { 5, &hf_lte_rrc_nrb100_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_13 }, - { 0, NULL, 0, NULL } +static const per_sequence_t SIB_MappingInfo_MBMS_r14_sequence_of[1] = { + { &hf_lte_rrc_SIB_MappingInfo_MBMS_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB_Type_MBMS_r14 }, }; static int -dissect_lte_rrc_T_type2_r10(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_lte_rrc_T_type2_r10, T_type2_r10_choice, - NULL); +dissect_lte_rrc_SIB_MappingInfo_MBMS_r14(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_lte_rrc_SIB_MappingInfo_MBMS_r14, SIB_MappingInfo_MBMS_r14_sequence_of, + 0, maxSIB_1, FALSE); return offset; } -static const value_string lte_rrc_T_resourceBlockAssignment_r10_vals[] = { - { 0, "type01-r10" }, - { 1, "type2-r10" }, - { 0, NULL } -}; - -static const per_choice_t T_resourceBlockAssignment_r10_choice[] = { - { 0, &hf_lte_rrc_type01_r10 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_type01_r10 }, - { 1, &hf_lte_rrc_type2_r10 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_type2_r10 }, - { 0, NULL, 0, NULL } +static const per_sequence_t SchedulingInfo_MBMS_r14_sequence[] = { + { &hf_lte_rrc_si_Periodicity_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_Periodicity_r14 }, + { &hf_lte_rrc_sib_MappingInfo_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB_MappingInfo_MBMS_r14 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_resourceBlockAssignment_r10(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_lte_rrc_T_resourceBlockAssignment_r10, T_resourceBlockAssignment_r10_choice, - NULL); +dissect_lte_rrc_SchedulingInfo_MBMS_r14(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_lte_rrc_SchedulingInfo_MBMS_r14, SchedulingInfo_MBMS_r14_sequence); return offset; } -static const value_string lte_rrc_T_interleaving_r10_vals[] = { - { 0, "crs" }, - { 0, NULL } +static const per_sequence_t SchedulingInfoList_MBMS_r14_sequence_of[1] = { + { &hf_lte_rrc_SchedulingInfoList_MBMS_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfo_MBMS_r14 }, }; - static int -dissect_lte_rrc_T_interleaving_r10(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SchedulingInfoList_MBMS_r14(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_lte_rrc_SchedulingInfoList_MBMS_r14, SchedulingInfoList_MBMS_r14_sequence_of, + 1, maxSI_Message, FALSE); return offset; } -static const value_string lte_rrc_T_noInterleaving_r10_vals[] = { - { 0, "crs" }, - { 1, "dmrs" }, +static const value_string lte_rrc_T_si_WindowLength_r14_vals[] = { + { 0, "ms1" }, + { 1, "ms2" }, + { 2, "ms5" }, + { 3, "ms10" }, + { 4, "ms15" }, + { 5, "ms20" }, + { 6, "ms40" }, + { 7, "ms80" }, { 0, NULL } }; static int -dissect_lte_rrc_T_noInterleaving_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_si_WindowLength_r14(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, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_demodulationRS_r10_vals[] = { - { 0, "interleaving-r10" }, - { 1, "noInterleaving-r10" }, +static const value_string lte_rrc_T_radioFrameAllocationPeriod_r14_vals[] = { + { 0, "rf4" }, + { 1, "rf8" }, + { 2, "rf16" }, + { 3, "rf32" }, + { 4, "rf64" }, + { 5, "rf128" }, + { 6, "rf512" }, { 0, NULL } }; -static const per_choice_t T_demodulationRS_r10_choice[] = { - { 0, &hf_lte_rrc_interleaving_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interleaving_r10 }, - { 1, &hf_lte_rrc_noInterleaving_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_noInterleaving_r10 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_demodulationRS_r10(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_lte_rrc_T_demodulationRS_r10, T_demodulationRS_r10_choice, - NULL); +dissect_lte_rrc_T_radioFrameAllocationPeriod_r14(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, + 7, NULL, FALSE, 0, NULL); return offset; } @@ -57086,268 +60875,266 @@ dissect_lte_rrc_T_demodulationRS_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx static int -dissect_lte_rrc_INTEGER_1_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 3U, NULL, FALSE); +dissect_lte_rrc_BIT_STRING_SIZE_9(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, + 9, 9, FALSE, NULL, NULL); return offset; } -static const per_sequence_t T_n1PUCCH_AN_List_r10_sequence_of[1] = { - { &hf_lte_rrc_n1PUCCH_AN_List_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, +static const per_sequence_t NonMBSFN_SubframeConfig_r14_sequence[] = { + { &hf_lte_rrc_radioFrameAllocationPeriod_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_radioFrameAllocationPeriod_r14 }, + { &hf_lte_rrc_radioFrameAllocationOffset_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_subframeAllocation_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_9 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_n1PUCCH_AN_List_r10(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_lte_rrc_T_n1PUCCH_AN_List_r10, T_n1PUCCH_AN_List_r10_sequence_of, - 1, 4, FALSE); +dissect_lte_rrc_NonMBSFN_SubframeConfig_r14(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_lte_rrc_NonMBSFN_SubframeConfig_r14, NonMBSFN_SubframeConfig_r14_sequence); return offset; } -static const per_sequence_t T_channelSelectionMultiplexingBundling_sequence[] = { - { &hf_lte_rrc_n1PUCCH_AN_List_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n1PUCCH_AN_List_r10 }, +static const per_sequence_t T_nonCriticalExtension_59_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_channelSelectionMultiplexingBundling(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_59(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_lte_rrc_T_channelSelectionMultiplexingBundling, T_channelSelectionMultiplexingBundling_sequence); + ett_lte_rrc_T_nonCriticalExtension_59, T_nonCriticalExtension_59_sequence); return offset; } -static const per_sequence_t T_fallbackForFormat3_sequence[] = { - { &hf_lte_rrc_n1PUCCH_AN_P0_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, - { &hf_lte_rrc_n1PUCCH_AN_P1_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_2047 }, +static const per_sequence_t SystemInformationBlockType1_MBMS_r14_sequence[] = { + { &hf_lte_rrc_cellAccessRelatedInfo_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellAccessRelatedInfo_r14 }, + { &hf_lte_rrc_freqBandIndicator_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, + { &hf_lte_rrc_multiBandInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_r11 }, + { &hf_lte_rrc_schedulingInfoList_MBMS_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfoList_MBMS_r14 }, + { &hf_lte_rrc_si_WindowLength_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_si_WindowLength_r14 }, + { &hf_lte_rrc_systemInfoValueTag_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_nonMBSFN_SubframeConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NonMBSFN_SubframeConfig_r14 }, + { &hf_lte_rrc_pdsch_ConfigCommon_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDSCH_ConfigCommon }, + { &hf_lte_rrc_systemInformationBlockType13_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType13_r9 }, + { &hf_lte_rrc_cellAccessRelatedInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14 }, + { &hf_lte_rrc_nonCriticalExtension_177, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_59 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_fallbackForFormat3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SystemInformationBlockType1_MBMS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SystemInformationBlockType1-MBMS-r14"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_fallbackForFormat3, T_fallbackForFormat3_sequence); + ett_lte_rrc_SystemInformationBlockType1_MBMS_r14, SystemInformationBlockType1_MBMS_r14_sequence); return offset; } -static const value_string lte_rrc_T_tdd_vals[] = { - { 0, "channelSelectionMultiplexingBundling" }, - { 1, "fallbackForFormat3" }, +static const value_string lte_rrc_T_c1_09_vals[] = { + { 0, "systemInformation-MBMS-r14" }, + { 1, "systemInformationBlockType1-MBMS-r14" }, { 0, NULL } }; -static const per_choice_t T_tdd_choice[] = { - { 0, &hf_lte_rrc_channelSelectionMultiplexingBundling, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_channelSelectionMultiplexingBundling }, - { 1, &hf_lte_rrc_fallbackForFormat3, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fallbackForFormat3 }, +static const per_choice_t T_c1_09_choice[] = { + { 0, &hf_lte_rrc_systemInformation_MBMS_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformation_MBMS_r14 }, + { 1, &hf_lte_rrc_systemInformationBlockType1_MBMS_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformationBlockType1_MBMS_r14 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_tdd(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_09(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_lte_rrc_T_tdd, T_tdd_choice, + ett_lte_rrc_T_c1_09, T_c1_09_choice, NULL); return offset; } -static const per_sequence_t T_fdd_sequence[] = { - { &hf_lte_rrc_n1PUCCH_AN_P0_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, - { &hf_lte_rrc_n1PUCCH_AN_P1_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_2047 }, +static const per_sequence_t T_messageClassExtension_02_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_fdd(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_messageClassExtension_02(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_lte_rrc_T_fdd, T_fdd_sequence); + ett_lte_rrc_T_messageClassExtension_02, T_messageClassExtension_02_sequence); return offset; } -static const value_string lte_rrc_T_pucch_Config_r10_vals[] = { - { 0, "tdd" }, - { 1, "fdd" }, +static const value_string lte_rrc_BCCH_DL_SCH_MessageType_MBMS_r14_vals[] = { + { 0, "c1" }, + { 1, "messageClassExtension" }, { 0, NULL } }; -static const per_choice_t T_pucch_Config_r10_choice[] = { - { 0, &hf_lte_rrc_tdd , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tdd }, - { 1, &hf_lte_rrc_fdd , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fdd }, +static const per_choice_t BCCH_DL_SCH_MessageType_MBMS_r14_choice[] = { + { 0, &hf_lte_rrc_c1_09 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_09 }, + { 1, &hf_lte_rrc_messageClassExtension_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_02 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_pucch_Config_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BCCH_DL_SCH_MessageType_MBMS_r14(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_lte_rrc_T_pucch_Config_r10, T_pucch_Config_r10_choice, + ett_lte_rrc_BCCH_DL_SCH_MessageType_MBMS_r14, BCCH_DL_SCH_MessageType_MBMS_r14_choice, NULL); return offset; } -static const per_sequence_t T_rpdcch_Config_r10_sequence[] = { - { &hf_lte_rrc_resourceAllocationType_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_resourceAllocationType_r10 }, - { &hf_lte_rrc_resourceBlockAssignment_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_resourceBlockAssignment_r10 }, - { &hf_lte_rrc_demodulationRS_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_demodulationRS_r10 }, - { &hf_lte_rrc_pdsch_Start_r10_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_3 }, - { &hf_lte_rrc_pucch_Config_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pucch_Config_r10 }, +static const per_sequence_t BCCH_DL_SCH_Message_MBMS_sequence[] = { + { &hf_lte_rrc_message_04 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_DL_SCH_MessageType_MBMS_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_rpdcch_Config_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BCCH_DL_SCH_Message_MBMS(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_lte_rrc_T_rpdcch_Config_r10, T_rpdcch_Config_r10_sequence); + ett_lte_rrc_BCCH_DL_SCH_Message_MBMS, BCCH_DL_SCH_Message_MBMS_sequence); return offset; } -static const per_sequence_t RN_SubframeConfig_r10_sequence[] = { - { &hf_lte_rrc_subframeConfigPattern_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_subframeConfigPattern_r10 }, - { &hf_lte_rrc_rpdcch_Config_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rpdcch_Config_r10 }, - { NULL, 0, 0, NULL } +static const per_sequence_t CommonSF_AllocPatternList_r9_sequence_of[1] = { + { &hf_lte_rrc_CommonSF_AllocPatternList_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfig }, }; static int -dissect_lte_rrc_RN_SubframeConfig_r10(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_lte_rrc_RN_SubframeConfig_r10, RN_SubframeConfig_r10_sequence); +dissect_lte_rrc_CommonSF_AllocPatternList_r9(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_lte_rrc_CommonSF_AllocPatternList_r9, CommonSF_AllocPatternList_r9_sequence_of, + 1, maxMBSFN_Allocations, FALSE); return offset; } -static const per_sequence_t T_nonCriticalExtension_26_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_commonSF_AllocPeriod_r9_vals[] = { + { 0, "rf4" }, + { 1, "rf8" }, + { 2, "rf16" }, + { 3, "rf32" }, + { 4, "rf64" }, + { 5, "rf128" }, + { 6, "rf256" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_26(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_lte_rrc_T_nonCriticalExtension_26, T_nonCriticalExtension_26_sequence); +dissect_lte_rrc_T_commonSF_AllocPeriod_r9(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, + 7, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RNReconfiguration_r10_IEs_sequence[] = { - { &hf_lte_rrc_rn_SystemInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RN_SystemInfo_r10 }, - { &hf_lte_rrc_rn_SubframeConfig_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RN_SubframeConfig_r10 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_66, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_26 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RNReconfiguration_r10_IEs(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_lte_rrc_RNReconfiguration_r10_IEs, RNReconfiguration_r10_IEs_sequence); +dissect_lte_rrc_INTEGER_0_1535(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 1535U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_c1_28_vals[] = { - { 0, "rnReconfiguration-r10" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_mch_SchedulingPeriod_r9_vals[] = { + { 0, "rf8" }, + { 1, "rf16" }, + { 2, "rf32" }, + { 3, "rf64" }, + { 4, "rf128" }, + { 5, "rf256" }, + { 6, "rf512" }, + { 7, "rf1024" }, { 0, NULL } }; -static const per_choice_t T_c1_28_choice[] = { - { 0, &hf_lte_rrc_rnReconfiguration_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RNReconfiguration_r10_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_28(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_lte_rrc_T_c1_28, T_c1_28_choice, - NULL); +dissect_lte_rrc_T_mch_SchedulingPeriod_r9(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_21_sequence[] = { +static const per_sequence_t PMCH_Config_r9_sequence[] = { + { &hf_lte_rrc_sf_AllocEnd_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1535 }, + { &hf_lte_rrc_dataMCS_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_28 }, + { &hf_lte_rrc_mch_SchedulingPeriod_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mch_SchedulingPeriod_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PMCH_Config_r9(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_lte_rrc_T_criticalExtensionsFuture_21, T_criticalExtensionsFuture_21_sequence); + ett_lte_rrc_PMCH_Config_r9, PMCH_Config_r9_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_21_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_plmn_Id_r9_vals[] = { + { 0, "plmn-Index-r9" }, + { 1, "explicitValue-r9" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_21_choice[] = { - { 0, &hf_lte_rrc_c1_28 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_28 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_21, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_21 }, +static const per_choice_t T_plmn_Id_r9_choice[] = { + { 0, &hf_lte_rrc_plmn_Index_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { 1, &hf_lte_rrc_explicitValue_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_PLMN_Identity }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_plmn_Id_r9(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_lte_rrc_T_criticalExtensions_21, T_criticalExtensions_21_choice, + ett_lte_rrc_T_plmn_Id_r9, T_plmn_Id_r9_choice, NULL); return offset; } -static const per_sequence_t RNReconfiguration_r10_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_21, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_21 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RNReconfiguration_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RNReconfiguration-r10"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RNReconfiguration_r10, RNReconfiguration_r10_sequence); +dissect_lte_rrc_OCTET_STRING_SIZE_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 3, 3, FALSE, NULL); return offset; } -static const value_string lte_rrc_T_drb_ContinueROHC_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t TMGI_r9_sequence[] = { + { &hf_lte_rrc_plmn_Id_r9 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_plmn_Id_r9 }, + { &hf_lte_rrc_serviceId_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_3 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_drb_ContinueROHC_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_TMGI_r9(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_lte_rrc_TMGI_r9, TMGI_r9_sequence); return offset; } @@ -57355,19 +61142,9 @@ dissect_lte_rrc_T_drb_ContinueROHC_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_c static int -dissect_lte_rrc_T_nr_RadioBearerConfig1_r15_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *radio_bearer_config_tvb = NULL; - +dissect_lte_rrc_OCTET_STRING_SIZE_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); - - - if (radio_bearer_config_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nr_RadioBearerConfig_r15); - dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); - } - + 1, 1, FALSE, NULL); return offset; } @@ -57375,863 +61152,734 @@ dissect_lte_rrc_T_nr_RadioBearerConfig1_r15_01(tvbuff_t *tvb _U_, int offset _U_ static int -dissect_lte_rrc_T_nr_RadioBearerConfig2_r15_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *radio_bearer_config_tvb = NULL; +dissect_lte_rrc_INTEGER_0_maxSessionPerPMCH_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxSessionPerPMCH_1, NULL, FALSE); - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); + return offset; +} - if (radio_bearer_config_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nr_RadioBearerConfigS_r15); - dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); - } +static const per_sequence_t MBMS_SessionInfo_r9_sequence[] = { + { &hf_lte_rrc_tmgi_r9 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TMGI_r9 }, + { &hf_lte_rrc_sessionId_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_1 }, + { &hf_lte_rrc_logicalChannelIdentity_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxSessionPerPMCH_1 }, + { NULL, 0, 0, NULL } +}; +static int +dissect_lte_rrc_MBMS_SessionInfo_r9(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_lte_rrc_MBMS_SessionInfo_r9, MBMS_SessionInfo_r9_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_37_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t MBMS_SessionInfoList_r9_sequence_of[1] = { + { &hf_lte_rrc_MBMS_SessionInfoList_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SessionInfo_r9 }, }; static int -dissect_lte_rrc_T_nonCriticalExtension_37(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_lte_rrc_T_nonCriticalExtension_37, T_nonCriticalExtension_37_sequence); +dissect_lte_rrc_MBMS_SessionInfoList_r9(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_lte_rrc_MBMS_SessionInfoList_r9, MBMS_SessionInfoList_r9_sequence_of, + 0, maxSessionPerPMCH, FALSE); return offset; } -static const per_sequence_t RRCConnectionResume_v1510_IEs_sequence[] = { - { &hf_lte_rrc_sk_Counter_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, - { &hf_lte_rrc_nr_RadioBearerConfig1_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_RadioBearerConfig1_r15_01 }, - { &hf_lte_rrc_nr_RadioBearerConfig2_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_RadioBearerConfig2_r15_01 }, - { &hf_lte_rrc_nonCriticalExtension_110, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_37 }, +static const per_sequence_t PMCH_Info_r9_sequence[] = { + { &hf_lte_rrc_pmch_Config_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_Config_r9 }, + { &hf_lte_rrc_mbms_SessionInfoList_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SessionInfoList_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionResume_v1510_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PMCH_Info_r9(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_lte_rrc_RRCConnectionResume_v1510_IEs, RRCConnectionResume_v1510_IEs_sequence); + ett_lte_rrc_PMCH_Info_r9, PMCH_Info_r9_sequence); return offset; } -static const per_sequence_t RRCConnectionResume_v1430_IEs_sequence[] = { - { &hf_lte_rrc_otherConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OtherConfig_r9 }, - { &hf_lte_rrc_rrcConnectionResume_v1510_IEs, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionResume_v1510_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t PMCH_InfoList_r9_sequence_of[1] = { + { &hf_lte_rrc_PMCH_InfoList_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_Info_r9 }, }; static int -dissect_lte_rrc_RRCConnectionResume_v1430_IEs(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_lte_rrc_RRCConnectionResume_v1430_IEs, RRCConnectionResume_v1430_IEs_sequence); +dissect_lte_rrc_PMCH_InfoList_r9(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_lte_rrc_PMCH_InfoList_r9, PMCH_InfoList_r9_sequence_of, + 0, maxPMCH_PerMBSFN, FALSE); return offset; } -static const per_sequence_t RRCConnectionResume_r13_IEs_sequence[] = { - { &hf_lte_rrc_radioResourceConfigDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicated }, - { &hf_lte_rrc_nextHopChainingCount_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NextHopChainingCount }, - { &hf_lte_rrc_measConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasConfig }, - { &hf_lte_rrc_antennaInfoDedicatedPCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, - { &hf_lte_rrc_drb_ContinueROHC_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_ContinueROHC_r13 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_rrcConnectionResume_v1430_IEs, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionResume_v1430_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RRCConnectionResume_r13_IEs(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_lte_rrc_RRCConnectionResume_r13_IEs, RRCConnectionResume_r13_IEs_sequence); +dissect_lte_rrc_INTEGER_0_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 27U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_c1_34_vals[] = { - { 0, "rrcConnectionResume-r13" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_dataMCS_r12_vals[] = { + { 0, "normal-r12" }, + { 1, "higerOrder-r12" }, { 0, NULL } }; -static const per_choice_t T_c1_34_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionResume_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResume_r13_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t T_dataMCS_r12_choice[] = { + { 0, &hf_lte_rrc_normal_r12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_28 }, + { 1, &hf_lte_rrc_higerOrder_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_27 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dataMCS_r12(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_lte_rrc_T_c1_34, T_c1_34_choice, + ett_lte_rrc_T_dataMCS_r12, T_dataMCS_r12_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_32_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mch_SchedulingPeriod_r12_vals[] = { + { 0, "rf4" }, + { 1, "rf8" }, + { 2, "rf16" }, + { 3, "rf32" }, + { 4, "rf64" }, + { 5, "rf128" }, + { 6, "rf256" }, + { 7, "rf512" }, + { 8, "rf1024" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_criticalExtensionsFuture_32(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_lte_rrc_T_criticalExtensionsFuture_32, T_criticalExtensionsFuture_32_sequence); +dissect_lte_rrc_T_mch_SchedulingPeriod_r12(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_criticalExtensions_32_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_mch_SchedulingPeriod_v1430_vals[] = { + { 0, "rf1" }, + { 1, "rf2" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_32_choice[] = { - { 0, &hf_lte_rrc_c1_34 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_34 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_32, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_32 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_32(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_lte_rrc_T_criticalExtensions_32, T_criticalExtensions_32_choice, - NULL); +dissect_lte_rrc_T_mch_SchedulingPeriod_v1430(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionResume_r13_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_32, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_32 }, +static const per_sequence_t PMCH_Config_r12_eag_1_sequence[] = { + { &hf_lte_rrc_mch_SchedulingPeriod_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mch_SchedulingPeriod_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionResume_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionResume-r13"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionResume_r13, RRCConnectionResume_r13_sequence); +dissect_lte_rrc_PMCH_Config_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PMCH_Config_r12_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_c1_13_vals[] = { - { 0, "csfbParametersResponseCDMA2000" }, - { 1, "dlInformationTransfer" }, - { 2, "handoverFromEUTRAPreparationRequest" }, - { 3, "mobilityFromEUTRACommand" }, - { 4, "rrcConnectionReconfiguration" }, - { 5, "rrcConnectionRelease" }, - { 6, "securityModeCommand" }, - { 7, "ueCapabilityEnquiry" }, - { 8, "counterCheck" }, - { 9, "ueInformationRequest-r9" }, - { 10, "loggedMeasurementConfiguration-r10" }, - { 11, "rnReconfiguration-r10" }, - { 12, "rrcConnectionResume-r13" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_13_choice[] = { - { 0, &hf_lte_rrc_csfbParametersResponseCDMA2000, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSFBParametersResponseCDMA2000 }, - { 1, &hf_lte_rrc_dlInformationTransfer, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DLInformationTransfer }, - { 2, &hf_lte_rrc_handoverFromEUTRAPreparationRequest, ASN1_NO_EXTENSIONS , dissect_lte_rrc_HandoverFromEUTRAPreparationRequest }, - { 3, &hf_lte_rrc_mobilityFromEUTRACommand, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MobilityFromEUTRACommand }, - { 4, &hf_lte_rrc_rrcConnectionReconfiguration, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReconfiguration }, - { 5, &hf_lte_rrc_rrcConnectionRelease, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionRelease }, - { 6, &hf_lte_rrc_securityModeCommand, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeCommand }, - { 7, &hf_lte_rrc_ueCapabilityEnquiry, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UECapabilityEnquiry }, - { 8, &hf_lte_rrc_counterCheck, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CounterCheck }, - { 9, &hf_lte_rrc_ueInformationRequest_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEInformationRequest_r9 }, - { 10, &hf_lte_rrc_loggedMeasurementConfiguration_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_LoggedMeasurementConfiguration_r10 }, - { 11, &hf_lte_rrc_rnReconfiguration_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RNReconfiguration_r10 }, - { 12, &hf_lte_rrc_rrcConnectionResume_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResume_r13 }, - { 13, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 14, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 15, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t PMCH_Config_r12_sequence[] = { + { &hf_lte_rrc_sf_AllocEnd_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1535 }, + { &hf_lte_rrc_dataMCS_r12 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dataMCS_r12 }, + { &hf_lte_rrc_mch_SchedulingPeriod_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mch_SchedulingPeriod_r12 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_Config_r12_eag_1 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_13(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_lte_rrc_T_c1_13, T_c1_13_choice, - NULL); +dissect_lte_rrc_PMCH_Config_r12(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_lte_rrc_PMCH_Config_r12, PMCH_Config_r12_sequence); return offset; } -static const per_sequence_t T_messageClassExtension_06_sequence[] = { +static const per_sequence_t PMCH_InfoExt_r12_sequence[] = { + { &hf_lte_rrc_pmch_Config_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_Config_r12 }, + { &hf_lte_rrc_mbms_SessionInfoList_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_SessionInfoList_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_messageClassExtension_06(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PMCH_InfoExt_r12(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_lte_rrc_T_messageClassExtension_06, T_messageClassExtension_06_sequence); + ett_lte_rrc_PMCH_InfoExt_r12, PMCH_InfoExt_r12_sequence); return offset; } -static const value_string lte_rrc_DL_DCCH_MessageType_vals[] = { - { 0, "c1" }, - { 1, "messageClassExtension" }, - { 0, NULL } -}; - -static const per_choice_t DL_DCCH_MessageType_choice[] = { - { 0, &hf_lte_rrc_c1_13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_13 }, - { 1, &hf_lte_rrc_messageClassExtension_06, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_06 }, - { 0, NULL, 0, NULL } +static const per_sequence_t PMCH_InfoListExt_r12_sequence_of[1] = { + { &hf_lte_rrc_PMCH_InfoListExt_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_InfoExt_r12 }, }; static int -dissect_lte_rrc_DL_DCCH_MessageType(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_lte_rrc_DL_DCCH_MessageType, DL_DCCH_MessageType_choice, - NULL); +dissect_lte_rrc_PMCH_InfoListExt_r12(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_lte_rrc_PMCH_InfoListExt_r12, PMCH_InfoListExt_r12_sequence_of, + 0, maxPMCH_PerMBSFN, FALSE); return offset; } -static const per_sequence_t DL_DCCH_Message_sequence[] = { - { &hf_lte_rrc_message_08 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_DCCH_MessageType }, - { NULL, 0, 0, NULL } +static const per_sequence_t CommonSF_AllocPatternList_r14_sequence_of[1] = { + { &hf_lte_rrc_CommonSF_AllocPatternList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_SubframeConfig_v1430 }, }; static int -dissect_lte_rrc_DL_DCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - actx->pinfo->link_dir = P2P_DIR_DL; - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_DL_DCCH_Message, DL_DCCH_Message_sequence); +dissect_lte_rrc_CommonSF_AllocPatternList_r14(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_lte_rrc_CommonSF_AllocPatternList_r14, CommonSF_AllocPatternList_r14_sequence_of, + 1, maxMBSFN_Allocations, FALSE); return offset; } -static const per_sequence_t ReestabUE_Identity_sequence[] = { - { &hf_lte_rrc_c_RNTI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, - { &hf_lte_rrc_physCellId_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_shortMAC_I , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ShortMAC_I }, +static const per_sequence_t T_nonCriticalExtension_21_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ReestabUE_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_21(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_lte_rrc_ReestabUE_Identity, ReestabUE_Identity_sequence); - - return offset; -} - - -static const value_string lte_rrc_ReestablishmentCause_vals[] = { - { 0, "reconfigurationFailure" }, - { 1, "handoverFailure" }, - { 2, "otherFailure" }, - { 3, "spare1" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_ReestablishmentCause(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); + ett_lte_rrc_T_nonCriticalExtension_21, T_nonCriticalExtension_21_sequence); return offset; } -static const per_sequence_t RRCConnectionReestablishmentRequest_r8_IEs_sequence[] = { - { &hf_lte_rrc_ue_Identity_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReestabUE_Identity }, - { &hf_lte_rrc_reestablishmentCause, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReestablishmentCause }, - { &hf_lte_rrc_spare_03 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_2 }, +static const per_sequence_t MBSFNAreaConfiguration_v1430_IEs_sequence[] = { + { &hf_lte_rrc_commonSF_Alloc_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CommonSF_AllocPatternList_r14 }, + { &hf_lte_rrc_nonCriticalExtension_56, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_21 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishmentRequest_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBSFNAreaConfiguration_v1430_IEs(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_lte_rrc_RRCConnectionReestablishmentRequest_r8_IEs, RRCConnectionReestablishmentRequest_r8_IEs_sequence); + ett_lte_rrc_MBSFNAreaConfiguration_v1430_IEs, MBSFNAreaConfiguration_v1430_IEs_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_28_sequence[] = { +static const per_sequence_t MBSFNAreaConfiguration_v1250_IEs_sequence[] = { + { &hf_lte_rrc_pmch_InfoListExt_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PMCH_InfoListExt_r12 }, + { &hf_lte_rrc_nonCriticalExtension_55, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFNAreaConfiguration_v1430_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_28(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBSFNAreaConfiguration_v1250_IEs(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_lte_rrc_T_criticalExtensionsFuture_28, T_criticalExtensionsFuture_28_sequence); + ett_lte_rrc_MBSFNAreaConfiguration_v1250_IEs, MBSFNAreaConfiguration_v1250_IEs_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_28_vals[] = { - { 0, "rrcConnectionReestablishmentRequest-r8" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_28_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionReestablishmentRequest_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentRequest_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_28, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_28 }, - { 0, NULL, 0, NULL } +static const per_sequence_t MBSFNAreaConfiguration_v930_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_54, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFNAreaConfiguration_v1250_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_28(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_lte_rrc_T_criticalExtensions_28, T_criticalExtensions_28_choice, - NULL); +dissect_lte_rrc_MBSFNAreaConfiguration_v930_IEs(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_lte_rrc_MBSFNAreaConfiguration_v930_IEs, MBSFNAreaConfiguration_v930_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionReestablishmentRequest_sequence[] = { - { &hf_lte_rrc_criticalExtensions_28, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_28 }, +static const per_sequence_t MBSFNAreaConfiguration_r9_sequence[] = { + { &hf_lte_rrc_commonSF_Alloc_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CommonSF_AllocPatternList_r9 }, + { &hf_lte_rrc_commonSF_AllocPeriod_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_commonSF_AllocPeriod_r9 }, + { &hf_lte_rrc_pmch_InfoList_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PMCH_InfoList_r9 }, + { &hf_lte_rrc_nonCriticalExtension_53, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBSFNAreaConfiguration_v930_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishmentRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBSFNAreaConfiguration_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReestablishmentRequest"); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBSFNAreaConfiguration-r9"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionReestablishmentRequest, RRCConnectionReestablishmentRequest_sequence); + ett_lte_rrc_MBSFNAreaConfiguration_r9, MBSFNAreaConfiguration_r9_sequence); return offset; } -static const value_string lte_rrc_InitialUE_Identity_vals[] = { - { 0, "s-TMSI" }, - { 1, "randomValue" }, +static const value_string lte_rrc_T_c1_10_vals[] = { + { 0, "mbsfnAreaConfiguration-r9" }, { 0, NULL } }; -static const per_choice_t InitialUE_Identity_choice[] = { - { 0, &hf_lte_rrc_s_TMSI , ASN1_NO_EXTENSIONS , dissect_lte_rrc_S_TMSI }, - { 1, &hf_lte_rrc_randomValue , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_40 }, +static const per_choice_t T_c1_10_choice[] = { + { 0, &hf_lte_rrc_mbsfnAreaConfiguration_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBSFNAreaConfiguration_r9 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_InitialUE_Identity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_10(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_lte_rrc_InitialUE_Identity, InitialUE_Identity_choice, + ett_lte_rrc_T_c1_10, T_c1_10_choice, NULL); return offset; } -static const value_string lte_rrc_EstablishmentCause_vals[] = { - { 0, "emergency" }, - { 1, "highPriorityAccess" }, - { 2, "mt-Access" }, - { 3, "mo-Signalling" }, - { 4, "mo-Data" }, - { 5, "delayTolerantAccess-v1020" }, - { 6, "mo-VoiceCall-v1280" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t CountingRequestInfo_r10_sequence[] = { + { &hf_lte_rrc_tmgi_r10 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TMGI_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_EstablishmentCause(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CountingRequestInfo_r10(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_lte_rrc_CountingRequestInfo_r10, CountingRequestInfo_r10_sequence); return offset; } +static const per_sequence_t CountingRequestList_r10_sequence_of[1] = { + { &hf_lte_rrc_CountingRequestList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CountingRequestInfo_r10 }, +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_1(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, - 1, 1, FALSE, NULL, NULL); +dissect_lte_rrc_CountingRequestList_r10(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_lte_rrc_CountingRequestList_r10, CountingRequestList_r10_sequence_of, + 1, maxServiceCount, FALSE); return offset; } -static const per_sequence_t RRCConnectionRequest_r8_IEs_sequence[] = { - { &hf_lte_rrc_ue_Identity_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InitialUE_Identity }, - { &hf_lte_rrc_establishmentCause, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_EstablishmentCause }, - { &hf_lte_rrc_spare_04 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_1 }, +static const per_sequence_t T_nonCriticalExtension_18_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionRequest_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_18(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_lte_rrc_RRCConnectionRequest_r8_IEs, RRCConnectionRequest_r8_IEs_sequence); + ett_lte_rrc_T_nonCriticalExtension_18, T_nonCriticalExtension_18_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_31_sequence[] = { +static const per_sequence_t MBMSCountingRequest_r10_sequence[] = { + { &hf_lte_rrc_countingRequestList_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CountingRequestList_r10 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_49, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_18 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBMSCountingRequest_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBMSCountingRequest-r10"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_criticalExtensionsFuture_31, T_criticalExtensionsFuture_31_sequence); + ett_lte_rrc_MBMSCountingRequest_r10, MBMSCountingRequest_r10_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_31_vals[] = { - { 0, "rrcConnectionRequest-r8" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_c2_vals[] = { + { 0, "mbmsCountingRequest-r10" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_31_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionRequest_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionRequest_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_31, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_31 }, +static const per_choice_t T_c2_choice[] = { + { 0, &hf_lte_rrc_mbmsCountingRequest_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBMSCountingRequest_r10 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_31(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c2(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_lte_rrc_T_criticalExtensions_31, T_criticalExtensions_31_choice, + ett_lte_rrc_T_c2, T_c2_choice, NULL); return offset; } -static const per_sequence_t RRCConnectionRequest_sequence[] = { - { &hf_lte_rrc_criticalExtensions_31, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_31 }, +static const per_sequence_t T_messageClassExtension_03_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionRequest"); - +dissect_lte_rrc_T_messageClassExtension_03(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_lte_rrc_RRCConnectionRequest, RRCConnectionRequest_sequence); + ett_lte_rrc_T_messageClassExtension_03, T_messageClassExtension_03_sequence); return offset; } -static const value_string lte_rrc_T_c1_14_vals[] = { - { 0, "rrcConnectionReestablishmentRequest" }, - { 1, "rrcConnectionRequest" }, +static const value_string lte_rrc_T_later_vals[] = { + { 0, "c2" }, + { 1, "messageClassExtension" }, { 0, NULL } }; -static const per_choice_t T_c1_14_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionReestablishmentRequest, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentRequest }, - { 1, &hf_lte_rrc_rrcConnectionRequest, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionRequest }, +static const per_choice_t T_later_choice[] = { + { 0, &hf_lte_rrc_c2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c2 }, + { 1, &hf_lte_rrc_messageClassExtension_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_03 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_later(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_lte_rrc_T_c1_14, T_c1_14_choice, + ett_lte_rrc_T_later, T_later_choice, NULL); return offset; } -static const value_string lte_rrc_T_resumeIdentity_r13_vals[] = { - { 0, "resumeID-r13" }, - { 1, "truncatedResumeID-r13" }, +static const value_string lte_rrc_MCCH_MessageType_vals[] = { + { 0, "c1" }, + { 1, "later" }, { 0, NULL } }; -static const per_choice_t T_resumeIdentity_r13_choice[] = { - { 0, &hf_lte_rrc_resumeID_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ResumeIdentity_r13 }, - { 1, &hf_lte_rrc_truncatedResumeID_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_24 }, +static const per_choice_t MCCH_MessageType_choice[] = { + { 0, &hf_lte_rrc_c1_10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_10 }, + { 1, &hf_lte_rrc_later , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_later }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_resumeIdentity_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MCCH_MessageType(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_lte_rrc_T_resumeIdentity_r13, T_resumeIdentity_r13_choice, + ett_lte_rrc_MCCH_MessageType, MCCH_MessageType_choice, NULL); return offset; } -static const value_string lte_rrc_ResumeCause_vals[] = { - { 0, "emergency" }, - { 1, "highPriorityAccess" }, - { 2, "mt-Access" }, - { 3, "mo-Signalling" }, - { 4, "mo-Data" }, - { 5, "delayTolerantAccess-v1020" }, - { 6, "mo-VoiceCall-v1280" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t MCCH_Message_sequence[] = { + { &hf_lte_rrc_message_05 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MCCH_MessageType }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_ResumeCause(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MCCH_Message(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_lte_rrc_MCCH_Message, MCCH_Message_sequence); return offset; } -static const per_sequence_t RRCConnectionResumeRequest_r13_IEs_sequence[] = { - { &hf_lte_rrc_resumeIdentity_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_resumeIdentity_r13 }, - { &hf_lte_rrc_shortResumeMAC_I_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { &hf_lte_rrc_resumeCause_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ResumeCause }, - { &hf_lte_rrc_spare_04 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_1 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RRCConnectionResumeRequest_r13_IEs(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_lte_rrc_RRCConnectionResumeRequest_r13_IEs, RRCConnectionResumeRequest_r13_IEs_sequence); +dissect_lte_rrc_MMEC(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, + 8, 8, FALSE, NULL, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_34_sequence[] = { +static const per_sequence_t S_TMSI_sequence[] = { + { &hf_lte_rrc_mmec , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MMEC }, + { &hf_lte_rrc_m_TMSI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_32 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_34(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_S_TMSI(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_lte_rrc_T_criticalExtensionsFuture_34, T_criticalExtensionsFuture_34_sequence); + ett_lte_rrc_S_TMSI, S_TMSI_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_34_vals[] = { - { 0, "rrcConnectionResumeRequest-r13" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_34_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionResumeRequest_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeRequest_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_34, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_34 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_34(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_lte_rrc_T_criticalExtensions_34, T_criticalExtensions_34_choice, - NULL); +dissect_lte_rrc_IMSI_Digit(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 9U, NULL, FALSE); return offset; } -static const per_sequence_t RRCConnectionResumeRequest_r13_sequence[] = { - { &hf_lte_rrc_criticalExtensions_34, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_34 }, - { NULL, 0, 0, NULL } +static const per_sequence_t IMSI_sequence_of[1] = { + { &hf_lte_rrc_IMSI_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IMSI_Digit }, }; static int -dissect_lte_rrc_RRCConnectionResumeRequest_r13(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_lte_rrc_RRCConnectionResumeRequest_r13, RRCConnectionResumeRequest_r13_sequence); +dissect_lte_rrc_IMSI(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_lte_rrc_IMSI, IMSI_sequence_of, + 6, 21, FALSE); return offset; } -static const value_string lte_rrc_T_c2_01_vals[] = { - { 0, "rrcConnectionResumeRequest-r13" }, - { 0, NULL } -}; - -static const per_choice_t T_c2_01_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionResumeRequest_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeRequest_r13 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c2_01(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_lte_rrc_T_c2_01, T_c2_01_choice, - NULL); +dissect_lte_rrc_NG_5G_S_TMSI_r15(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, + 48, 48, FALSE, NULL, NULL); return offset; } -static const per_sequence_t T_messageClassExtensionFuture_r13_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_messageClassExtensionFuture_r13(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_lte_rrc_T_messageClassExtensionFuture_r13, T_messageClassExtensionFuture_r13_sequence); +dissect_lte_rrc_I_RNTI_r15(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, + 40, 40, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_messageClassExtension_07_vals[] = { - { 0, "c2" }, - { 1, "messageClassExtensionFuture-r13" }, +static const value_string lte_rrc_PagingUE_Identity_vals[] = { + { 0, "s-TMSI" }, + { 1, "imsi" }, + { 2, "ng-5G-S-TMSI-r15" }, + { 3, "i-RNTI-r15" }, { 0, NULL } }; -static const per_choice_t T_messageClassExtension_07_choice[] = { - { 0, &hf_lte_rrc_c2_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c2_01 }, - { 1, &hf_lte_rrc_messageClassExtensionFuture_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtensionFuture_r13 }, +static const per_choice_t PagingUE_Identity_choice[] = { + { 0, &hf_lte_rrc_s_TMSI , ASN1_EXTENSION_ROOT , dissect_lte_rrc_S_TMSI }, + { 1, &hf_lte_rrc_imsi , ASN1_EXTENSION_ROOT , dissect_lte_rrc_IMSI }, + { 2, &hf_lte_rrc_ng_5G_S_TMSI_r15, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_NG_5G_S_TMSI_r15 }, + { 3, &hf_lte_rrc_i_RNTI_r15 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_I_RNTI_r15 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_messageClassExtension_07(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PagingUE_Identity(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_lte_rrc_T_messageClassExtension_07, T_messageClassExtension_07_choice, + ett_lte_rrc_PagingUE_Identity, PagingUE_Identity_choice, NULL); return offset; } -static const value_string lte_rrc_UL_CCCH_MessageType_vals[] = { - { 0, "c1" }, - { 1, "messageClassExtension" }, +static const value_string lte_rrc_T_cn_Domain_vals[] = { + { 0, "ps" }, + { 1, "cs" }, { 0, NULL } }; -static const per_choice_t UL_CCCH_MessageType_choice[] = { - { 0, &hf_lte_rrc_c1_14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_14 }, - { 1, &hf_lte_rrc_messageClassExtension_07, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_07 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_UL_CCCH_MessageType(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_lte_rrc_UL_CCCH_MessageType, UL_CCCH_MessageType_choice, - NULL); +dissect_lte_rrc_T_cn_Domain(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t UL_CCCH_Message_sequence[] = { - { &hf_lte_rrc_message_09 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CCCH_MessageType }, +static const per_sequence_t PagingRecord_sequence[] = { + { &hf_lte_rrc_ue_Identity , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PagingUE_Identity }, + { &hf_lte_rrc_cn_Domain , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cn_Domain }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UL_CCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PagingRecord(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_lte_rrc_UL_CCCH_Message, UL_CCCH_Message_sequence); + ett_lte_rrc_PagingRecord, PagingRecord_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_10_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t PagingRecordList_sequence_of[1] = { + { &hf_lte_rrc_PagingRecordList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PagingRecord }, }; static int -dissect_lte_rrc_T_nonCriticalExtension_10(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_lte_rrc_T_nonCriticalExtension_10, T_nonCriticalExtension_10_sequence); +dissect_lte_rrc_PagingRecordList(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_lte_rrc_PagingRecordList, PagingRecordList_sequence_of, + 1, maxPageRec, FALSE); return offset; } -static const per_sequence_t CSFBParametersRequestCDMA2000_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_25, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_10 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_CSFBParametersRequestCDMA2000_v8a0_IEs(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_lte_rrc_CSFBParametersRequestCDMA2000_v8a0_IEs, CSFBParametersRequestCDMA2000_v8a0_IEs_sequence); +dissect_lte_rrc_T_pagingRecordList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + /* Number of items is (last 3 bits of first byte and first bit of second) + 1 */ + guint16 number_of_records = ((tvb_get_ntohs(tvb, 0) >> 7) & 0x0f) + 1; + offset = dissect_lte_rrc_PagingRecordList(tvb, offset, actx, tree, hf_index); + + col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (%u PagingRecords)", number_of_records); + return offset; } -static const per_sequence_t CSFBParametersRequestCDMA2000_r8_IEs_sequence[] = { - { &hf_lte_rrc_nonCriticalExtension_24, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFBParametersRequestCDMA2000_v8a0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_systemInfoModification_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CSFBParametersRequestCDMA2000_r8_IEs(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_lte_rrc_CSFBParametersRequestCDMA2000_r8_IEs, CSFBParametersRequestCDMA2000_r8_IEs_sequence); +dissect_lte_rrc_T_systemInfoModification(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, + 1, NULL, FALSE, 0, NULL); + + col_append_str(actx->pinfo->cinfo, COL_INFO, " (systemInfoModification)"); + expert_add_info(actx->pinfo, actx->created_item, &ei_lte_rrc_sibs_changing); + return offset; } -static const per_sequence_t T_criticalExtensionsFuture_09_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_etws_Indication_vals[] = { + { 0, "true" }, + { 0, NULL } }; -static int -dissect_lte_rrc_T_criticalExtensionsFuture_09(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_lte_rrc_T_criticalExtensionsFuture_09, T_criticalExtensionsFuture_09_sequence); - return offset; -} - - -static const value_string lte_rrc_T_criticalExtensions_09_vals[] = { - { 0, "csfbParametersRequestCDMA2000-r8" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; +static int +dissect_lte_rrc_T_etws_Indication(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, + 1, NULL, FALSE, 0, NULL); -static const per_choice_t T_criticalExtensions_09_choice[] = { - { 0, &hf_lte_rrc_csfbParametersRequestCDMA2000_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSFBParametersRequestCDMA2000_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_09, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_09 }, - { 0, NULL, 0, NULL } -}; + col_append_str(actx->pinfo->cinfo, COL_INFO, " (ETWS)"); + expert_add_info(actx->pinfo, actx->created_item, &ei_lte_rrc_earthquake_warning_sys); -static int -dissect_lte_rrc_T_criticalExtensions_09(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_lte_rrc_T_criticalExtensions_09, T_criticalExtensions_09_choice, - NULL); return offset; } -static const per_sequence_t CSFBParametersRequestCDMA2000_sequence[] = { - { &hf_lte_rrc_criticalExtensions_09, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_09 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_cmas_Indication_r9_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CSFBParametersRequestCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cmas_Indication_r9(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, + 1, NULL, FALSE, 0, NULL); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CSFBParametersRequestCDMA2000"); + col_append_str(actx->pinfo->cinfo, COL_INFO, " (CMAS)"); + expert_add_info(actx->pinfo, actx->created_item, &ei_lte_rrc_commercial_mobile_alert_sys); - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_CSFBParametersRequestCDMA2000, CSFBParametersRequestCDMA2000_sequence); return offset; } -static const per_sequence_t T_measResultPCell_sequence[] = { - { &hf_lte_rrc_rsrpResult , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResult , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_eab_ParamModification_r11_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_measResultPCell(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_lte_rrc_T_measResultPCell, T_measResultPCell_sequence); +dissect_lte_rrc_T_eab_ParamModification_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PLMN_IdentityList2_sequence_of[1] = { - { &hf_lte_rrc_PLMN_IdentityList2_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, +static const value_string lte_rrc_T_redistributionIndication_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PLMN_IdentityList2(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_lte_rrc_PLMN_IdentityList2, PLMN_IdentityList2_sequence_of, - 1, 5, FALSE); +dissect_lte_rrc_T_redistributionIndication_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_cgi_Info_sequence[] = { - { &hf_lte_rrc_cellGlobalId, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdEUTRA }, - { &hf_lte_rrc_trackingAreaCode, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, - { &hf_lte_rrc_plmn_IdentityList_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList2 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_systemInfoModification_eDRX_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_cgi_Info(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_lte_rrc_T_cgi_Info, T_cgi_Info_sequence); +dissect_lte_rrc_T_systemInfoModification_eDRX_r13(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, + 1, NULL, FALSE, 0, NULL); + + col_append_str(actx->pinfo->cinfo, COL_INFO, " (systemInfoModification-eDRX-r13)"); + expert_add_info(actx->pinfo, actx->created_item, &ei_lte_rrc_sibs_changing_edrx); + return offset; } -static const value_string lte_rrc_T_csg_MemberStatus_r9_vals[] = { - { 0, "member" }, +static const value_string lte_rrc_T_accessType_vals[] = { + { 0, "non3GPP" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csg_MemberStatus_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_accessType(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, 1, NULL, FALSE, 0, NULL); @@ -58239,738 +61887,837 @@ dissect_lte_rrc_T_csg_MemberStatus_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const per_sequence_t AdditionalSI_Info_r9_sequence[] = { - { &hf_lte_rrc_csg_MemberStatus_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csg_MemberStatus_r9 }, - { &hf_lte_rrc_csg_Identity_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSG_Identity }, +static const per_sequence_t T_nonCriticalExtension_26_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AdditionalSI_Info_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_26(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_lte_rrc_AdditionalSI_Info_r9, AdditionalSI_Info_r9_sequence); + ett_lte_rrc_T_nonCriticalExtension_26, T_nonCriticalExtension_26_sequence); return offset; } -static const per_sequence_t T_eag_1_03_sequence[] = { - { &hf_lte_rrc_additionalSI_Info_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSI_Info_r9 }, +static const per_sequence_t Paging_v1530_IEs_sequence[] = { + { &hf_lte_rrc_accessType , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_accessType }, + { &hf_lte_rrc_nonCriticalExtension_72, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_26 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_eag_1_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_1_03_sequence); +dissect_lte_rrc_Paging_v1530_IEs(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_lte_rrc_Paging_v1530_IEs, Paging_v1530_IEs_sequence); return offset; } -static const value_string lte_rrc_T_primaryPLMN_Suitable_r12_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t Paging_v1310_IEs_sequence[] = { + { &hf_lte_rrc_redistributionIndication_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_redistributionIndication_r13 }, + { &hf_lte_rrc_systemInfoModification_eDRX_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInfoModification_eDRX_r13 }, + { &hf_lte_rrc_nonCriticalExtension_71, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Paging_v1530_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_primaryPLMN_Suitable_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_Paging_v1310_IEs(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_lte_rrc_Paging_v1310_IEs, Paging_v1310_IEs_sequence); return offset; } -static const per_sequence_t T_eag_2_01_sequence[] = { - { &hf_lte_rrc_primaryPLMN_Suitable_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_primaryPLMN_Suitable_r12 }, - { &hf_lte_rrc_measResult_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, +static const per_sequence_t Paging_v1130_IEs_sequence[] = { + { &hf_lte_rrc_eab_ParamModification_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eab_ParamModification_r11 }, + { &hf_lte_rrc_nonCriticalExtension_70, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Paging_v1310_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_eag_2_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_2_01_sequence); +dissect_lte_rrc_Paging_v1130_IEs(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_lte_rrc_Paging_v1130_IEs, Paging_v1130_IEs_sequence); return offset; } -static const value_string lte_rrc_T_freqBandIndicatorPriority_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t Paging_v920_IEs_sequence[] = { + { &hf_lte_rrc_cmas_Indication_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cmas_Indication_r9 }, + { &hf_lte_rrc_nonCriticalExtension_69, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Paging_v1130_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_freqBandIndicatorPriority_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_Paging_v920_IEs(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_lte_rrc_Paging_v920_IEs, Paging_v920_IEs_sequence); return offset; } -static const per_sequence_t T_cgi_Info_v1310_sequence[] = { - { &hf_lte_rrc_freqBandIndicator_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_r11 }, - { &hf_lte_rrc_multiBandInfoList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_r11 }, - { &hf_lte_rrc_freqBandIndicatorPriority_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqBandIndicatorPriority_r13 }, +static const per_sequence_t Paging_v890_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_68, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Paging_v920_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cgi_Info_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_Paging_v890_IEs(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_lte_rrc_T_cgi_Info_v1310, T_cgi_Info_v1310_sequence); + ett_lte_rrc_Paging_v890_IEs, Paging_v890_IEs_sequence); return offset; } -static const per_sequence_t T_eag_3_01_sequence[] = { - { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_Range_r13 }, - { &hf_lte_rrc_cgi_Info_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cgi_Info_v1310 }, +static const per_sequence_t Paging_sequence[] = { + { &hf_lte_rrc_pagingRecordList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pagingRecordList }, + { &hf_lte_rrc_systemInfoModification, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInfoModification }, + { &hf_lte_rrc_etws_Indication, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_etws_Indication }, + { &hf_lte_rrc_nonCriticalExtension_67, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Paging_v890_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_eag_3_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_3_01_sequence); +dissect_lte_rrc_Paging(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "Paging"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_Paging, Paging_sequence); return offset; } +static const value_string lte_rrc_T_c1_11_vals[] = { + { 0, "paging" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_11_choice[] = { + { 0, &hf_lte_rrc_paging , ASN1_NO_EXTENSIONS , dissect_lte_rrc_Paging }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_RSRP_Range_v1360(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -17, -1, NULL, FALSE); +dissect_lte_rrc_T_c1_11(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_lte_rrc_T_c1_11, T_c1_11_choice, + NULL); return offset; } -static const per_sequence_t T_eag_4_sequence[] = { - { &hf_lte_rrc_measResult_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range_v1360 }, +static const per_sequence_t T_messageClassExtension_04_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_4_sequence); +dissect_lte_rrc_T_messageClassExtension_04(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_lte_rrc_T_messageClassExtension_04, T_messageClassExtension_04_sequence); return offset; } -static const per_sequence_t T_measResult_sequence[] = { - { &hf_lte_rrc_rsrpResult , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResult , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_1_03 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_2_01 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_3_01 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_4 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_PCCH_MessageType_vals[] = { + { 0, "c1" }, + { 1, "messageClassExtension" }, + { 0, NULL } +}; + +static const per_choice_t PCCH_MessageType_choice[] = { + { 0, &hf_lte_rrc_c1_11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_11 }, + { 1, &hf_lte_rrc_messageClassExtension_04, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_04 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_measResult(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_lte_rrc_T_measResult, T_measResult_sequence); +dissect_lte_rrc_PCCH_MessageType(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_lte_rrc_PCCH_MessageType, PCCH_MessageType_choice, + NULL); return offset; } -static const per_sequence_t MeasResultEUTRA_sequence[] = { - { &hf_lte_rrc_physCellId_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_cgi_Info , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cgi_Info }, - { &hf_lte_rrc_measResult , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResult }, +static const per_sequence_t PCCH_Message_sequence[] = { + { &hf_lte_rrc_message_06 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PCCH_MessageType }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PCCH_Message(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_lte_rrc_MeasResultEUTRA, MeasResultEUTRA_sequence); + ett_lte_rrc_PCCH_Message, PCCH_Message_sequence); return offset; } -static const per_sequence_t MeasResultListEUTRA_sequence_of[1] = { - { &hf_lte_rrc_MeasResultListEUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultEUTRA }, -}; static int -dissect_lte_rrc_MeasResultListEUTRA(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_lte_rrc_MeasResultListEUTRA, MeasResultListEUTRA_sequence_of, - 1, maxCellReport, FALSE); +dissect_lte_rrc_RRC_TransactionIdentifier(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 3U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_physCellId_vals[] = { - { 0, "fdd" }, - { 1, "tdd" }, - { 0, NULL } -}; - -static const per_choice_t T_physCellId_choice[] = { - { 0, &hf_lte_rrc_fdd_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_FDD }, - { 1, &hf_lte_rrc_tdd_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_TDD }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_physCellId(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_lte_rrc_T_physCellId, T_physCellId_choice, - NULL); +dissect_lte_rrc_NextHopChainingCount(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7U, NULL, FALSE); return offset; } +static const per_sequence_t T_nonCriticalExtension_33_sequence[] = { + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_28(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, - 28, 28, FALSE, NULL, NULL); +dissect_lte_rrc_T_nonCriticalExtension_33(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_lte_rrc_T_nonCriticalExtension_33, T_nonCriticalExtension_33_sequence); return offset; } -static const per_sequence_t CellGlobalIdUTRA_sequence[] = { - { &hf_lte_rrc_plmn_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, - { &hf_lte_rrc_cellIdentity_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_28 }, +static const per_sequence_t RRCConnectionReestablishment_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_101, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_33 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellGlobalIdUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReestablishment_v8a0_IEs(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_lte_rrc_CellGlobalIdUTRA, CellGlobalIdUTRA_sequence); + ett_lte_rrc_RRCConnectionReestablishment_v8a0_IEs, RRCConnectionReestablishment_v8a0_IEs_sequence); return offset; } -static const per_sequence_t T_cgi_Info_01_sequence[] = { - { &hf_lte_rrc_cellGlobalId_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdUTRA }, - { &hf_lte_rrc_locationAreaCode, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { &hf_lte_rrc_routingAreaCode, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_8 }, - { &hf_lte_rrc_plmn_IdentityList_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList2 }, +static const per_sequence_t RRCConnectionReestablishment_r8_IEs_sequence[] = { + { &hf_lte_rrc_radioResourceConfigDedicated, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated }, + { &hf_lte_rrc_nextHopChainingCount, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NextHopChainingCount }, + { &hf_lte_rrc_nonCriticalExtension_100, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishment_v8a0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cgi_Info_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReestablishment_r8_IEs(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_lte_rrc_T_cgi_Info_01, T_cgi_Info_01_sequence); + ett_lte_rrc_RRCConnectionReestablishment_r8_IEs, RRCConnectionReestablishment_r8_IEs_sequence); return offset; } +static const value_string lte_rrc_T_c1_31_vals[] = { + { 0, "rrcConnectionReestablishment-r8" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_31_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionReestablishment_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishment_r8_IEs }, + { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_M5_91(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -5, 91U, NULL, FALSE); +dissect_lte_rrc_T_c1_31(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_lte_rrc_T_c1_31, T_c1_31_choice, + NULL); return offset; } -static const per_sequence_t T_eag_1_04_sequence[] = { - { &hf_lte_rrc_additionalSI_Info_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSI_Info_r9 }, +static const per_sequence_t T_criticalExtensionsFuture_26_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_eag_1_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_1_04_sequence); +dissect_lte_rrc_T_criticalExtensionsFuture_26(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_lte_rrc_T_criticalExtensionsFuture_26, T_criticalExtensionsFuture_26_sequence); return offset; } -static const value_string lte_rrc_T_primaryPLMN_Suitable_r12_01_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_criticalExtensions_26_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, { 0, NULL } }; +static const per_choice_t T_criticalExtensions_26_choice[] = { + { 0, &hf_lte_rrc_c1_31 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_31 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_26, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_26 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_primaryPLMN_Suitable_r12_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_criticalExtensions_26(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_lte_rrc_T_criticalExtensions_26, T_criticalExtensions_26_choice, + NULL); return offset; } -static const per_sequence_t T_eag_2_02_sequence[] = { - { &hf_lte_rrc_primaryPLMN_Suitable_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_primaryPLMN_Suitable_r12_01 }, +static const per_sequence_t RRCConnectionReestablishment_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_26, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_26 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_eag_2_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_2_02_sequence); +dissect_lte_rrc_RRCConnectionReestablishment(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReestablishment"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RRCConnectionReestablishment, RRCConnectionReestablishment_sequence); return offset; } -static const per_sequence_t T_measResult_01_sequence[] = { - { &hf_lte_rrc_utra_RSCP , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M5_91 }, - { &hf_lte_rrc_utra_EcN0 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_49 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_1_04 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_2_02 }, +static const per_sequence_t T_nonCriticalExtension_35_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResult_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_35(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_lte_rrc_T_measResult_01, T_measResult_01_sequence); + ett_lte_rrc_T_nonCriticalExtension_35, T_nonCriticalExtension_35_sequence); return offset; } -static const per_sequence_t MeasResultUTRA_sequence[] = { - { &hf_lte_rrc_physCellId_05, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_physCellId }, - { &hf_lte_rrc_cgi_Info_01 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cgi_Info_01 }, - { &hf_lte_rrc_measResult_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResult_01 }, +static const per_sequence_t RRCConnectionReestablishmentReject_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_110, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_35 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReestablishmentReject_v8a0_IEs(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_lte_rrc_MeasResultUTRA, MeasResultUTRA_sequence); + ett_lte_rrc_RRCConnectionReestablishmentReject_v8a0_IEs, RRCConnectionReestablishmentReject_v8a0_IEs_sequence); return offset; } -static const per_sequence_t MeasResultListUTRA_sequence_of[1] = { - { &hf_lte_rrc_MeasResultListUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultUTRA }, +static const per_sequence_t RRCConnectionReestablishmentReject_r8_IEs_sequence[] = { + { &hf_lte_rrc_nonCriticalExtension_109, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentReject_v8a0_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultListUTRA(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_lte_rrc_MeasResultListUTRA, MeasResultListUTRA_sequence_of, - 1, maxCellReport, FALSE); +dissect_lte_rrc_RRCConnectionReestablishmentReject_r8_IEs(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_lte_rrc_RRCConnectionReestablishmentReject_r8_IEs, RRCConnectionReestablishmentReject_r8_IEs_sequence); return offset; } -static const per_sequence_t CellGlobalIdGERAN_sequence[] = { - { &hf_lte_rrc_plmn_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, - { &hf_lte_rrc_locationAreaCode, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { &hf_lte_rrc_cellIdentity_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, +static const per_sequence_t T_criticalExtensionsFuture_28_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CellGlobalIdGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_28(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_lte_rrc_CellGlobalIdGERAN, CellGlobalIdGERAN_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_28, T_criticalExtensionsFuture_28_sequence); return offset; } -static const per_sequence_t T_cgi_Info_02_sequence[] = { - { &hf_lte_rrc_cellGlobalId_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdGERAN }, - { &hf_lte_rrc_routingAreaCode, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_8 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_criticalExtensions_28_vals[] = { + { 0, "rrcConnectionReestablishmentReject-r8" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_28_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionReestablishmentReject_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentReject_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_28, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_28 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_cgi_Info_02(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_lte_rrc_T_cgi_Info_02, T_cgi_Info_02_sequence); +dissect_lte_rrc_T_criticalExtensions_28(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_lte_rrc_T_criticalExtensions_28, T_criticalExtensions_28_choice, + NULL); return offset; } -static const per_sequence_t T_measResult_02_sequence[] = { - { &hf_lte_rrc_rssi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, +static const per_sequence_t RRCConnectionReestablishmentReject_sequence[] = { + { &hf_lte_rrc_criticalExtensions_28, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_28 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResult_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReestablishmentReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReestablishmentReject"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_measResult_02, T_measResult_02_sequence); + ett_lte_rrc_RRCConnectionReestablishmentReject, RRCConnectionReestablishmentReject_sequence); return offset; } -static const per_sequence_t MeasResultGERAN_sequence[] = { - { &hf_lte_rrc_carrierFreq , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqGERAN }, - { &hf_lte_rrc_physCellId , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdGERAN }, - { &hf_lte_rrc_cgi_Info_02 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cgi_Info_02 }, - { &hf_lte_rrc_measResult_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResult_02 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_MeasResultGERAN(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_lte_rrc_MeasResultGERAN, MeasResultGERAN_sequence); +dissect_lte_rrc_INTEGER_1_1800(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 1800U, NULL, FALSE); return offset; } -static const per_sequence_t MeasResultListGERAN_sequence_of[1] = { - { &hf_lte_rrc_MeasResultListGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultGERAN }, +static const value_string lte_rrc_T_deprioritisationType_r11_vals[] = { + { 0, "frequency" }, + { 1, "e-utra" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MeasResultListGERAN(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_lte_rrc_MeasResultListGERAN, MeasResultListGERAN_sequence_of, - 1, maxCellReport, FALSE); +dissect_lte_rrc_T_deprioritisationType_r11(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, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_deprioritisationTimer_r11_vals[] = { + { 0, "min5" }, + { 1, "min10" }, + { 2, "min15" }, + { 3, "min30" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_BIT_STRING_SIZE_47(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, - 47, 47, FALSE, NULL, NULL); +dissect_lte_rrc_T_deprioritisationTimer_r11(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 per_sequence_t T_deprioritisationReq_r11_sequence[] = { + { &hf_lte_rrc_deprioritisationType_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deprioritisationType_r11 }, + { &hf_lte_rrc_deprioritisationTimer_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_deprioritisationTimer_r11 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_128(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, - 128, 128, FALSE, NULL, NULL); +dissect_lte_rrc_T_deprioritisationReq_r11(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_lte_rrc_T_deprioritisationReq_r11, T_deprioritisationReq_r11_sequence); return offset; } -static const value_string lte_rrc_CellGlobalIdCDMA2000_vals[] = { - { 0, "cellGlobalId1XRTT" }, - { 1, "cellGlobalIdHRPD" }, +static const value_string lte_rrc_T_rrc_SuspendIndication_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t CellGlobalIdCDMA2000_choice[] = { - { 0, &hf_lte_rrc_cellGlobalId1XRTT, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_47 }, - { 1, &hf_lte_rrc_cellGlobalIdHRPD, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_128 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_CellGlobalIdCDMA2000(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_lte_rrc_CellGlobalIdCDMA2000, CellGlobalIdCDMA2000_choice, - NULL); +dissect_lte_rrc_T_rrc_SuspendIndication_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t T_nonCriticalExtension_36_sequence[] = { + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_32767(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 32767U, NULL, FALSE); +dissect_lte_rrc_T_nonCriticalExtension_36(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_lte_rrc_T_nonCriticalExtension_36, T_nonCriticalExtension_36_sequence); return offset; } -static const per_sequence_t T_measResult_03_sequence[] = { - { &hf_lte_rrc_pilotPnPhase, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_32767 }, - { &hf_lte_rrc_pilotStrength, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, +static const per_sequence_t RRCConnectionReject_v1320_IEs_sequence[] = { + { &hf_lte_rrc_rrc_SuspendIndication_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rrc_SuspendIndication_r13 }, + { &hf_lte_rrc_nonCriticalExtension_115, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_36 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResult_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReject_v1320_IEs(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_lte_rrc_T_measResult_03, T_measResult_03_sequence); + ett_lte_rrc_RRCConnectionReject_v1320_IEs, RRCConnectionReject_v1320_IEs_sequence); return offset; } -static const per_sequence_t MeasResultCDMA2000_sequence[] = { - { &hf_lte_rrc_physCellId_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdCDMA2000 }, - { &hf_lte_rrc_cgi_Info_03 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellGlobalIdCDMA2000 }, - { &hf_lte_rrc_measResult_03, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResult_03 }, - { NULL, 0, 0, NULL } +static const per_sequence_t RRCConnectionReject_v1130_IEs_sequence[] = { + { &hf_lte_rrc_deprioritisationReq_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deprioritisationReq_r11 }, + { &hf_lte_rrc_nonCriticalExtension_114, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReject_v1320_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReject_v1130_IEs(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_lte_rrc_MeasResultCDMA2000, MeasResultCDMA2000_sequence); + ett_lte_rrc_RRCConnectionReject_v1130_IEs, RRCConnectionReject_v1130_IEs_sequence); return offset; } -static const per_sequence_t MeasResultListCDMA2000_sequence_of[1] = { - { &hf_lte_rrc_MeasResultListCDMA2000_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCDMA2000 }, +static const per_sequence_t RRCConnectionReject_v1020_IEs_sequence[] = { + { &hf_lte_rrc_extendedWaitTime_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_1800 }, + { &hf_lte_rrc_nonCriticalExtension_113, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReject_v1130_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultListCDMA2000(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_lte_rrc_MeasResultListCDMA2000, MeasResultListCDMA2000_sequence_of, - 1, maxCellReport, FALSE); +dissect_lte_rrc_RRCConnectionReject_v1020_IEs(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_lte_rrc_RRCConnectionReject_v1020_IEs, RRCConnectionReject_v1020_IEs_sequence); return offset; } -static const per_sequence_t MeasResultsCDMA2000_sequence[] = { - { &hf_lte_rrc_preRegistrationStatusHRPD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_measResultListCDMA2000, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultListCDMA2000 }, +static const per_sequence_t RRCConnectionReject_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_112, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReject_v1020_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultsCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReject_v8a0_IEs(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_lte_rrc_MeasResultsCDMA2000, MeasResultsCDMA2000_sequence); + ett_lte_rrc_RRCConnectionReject_v8a0_IEs, RRCConnectionReject_v8a0_IEs_sequence); return offset; } -static const per_sequence_t MeasResultCellListNR_r15_sequence_of[1] = { - { &hf_lte_rrc_MeasResultCellListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCellNR_r15 }, +static const per_sequence_t RRCConnectionReject_r8_IEs_sequence[] = { + { &hf_lte_rrc_waitTime , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_16 }, + { &hf_lte_rrc_nonCriticalExtension_111, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReject_v8a0_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultCellListNR_r15(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_lte_rrc_MeasResultCellListNR_r15, MeasResultCellListNR_r15_sequence_of, - 1, maxCellReport, FALSE); +dissect_lte_rrc_RRCConnectionReject_r8_IEs(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_lte_rrc_RRCConnectionReject_r8_IEs, RRCConnectionReject_r8_IEs_sequence); return offset; } -static const value_string lte_rrc_T_measResultNeighCells_vals[] = { - { 0, "measResultListEUTRA" }, - { 1, "measResultListUTRA" }, - { 2, "measResultListGERAN" }, - { 3, "measResultsCDMA2000" }, - { 4, "measResultNeighCellListNR-r15" }, +static const value_string lte_rrc_T_c1_32_vals[] = { + { 0, "rrcConnectionReject-r8" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, { 0, NULL } }; -static const per_choice_t T_measResultNeighCells_choice[] = { - { 0, &hf_lte_rrc_measResultListEUTRA, ASN1_EXTENSION_ROOT , dissect_lte_rrc_MeasResultListEUTRA }, - { 1, &hf_lte_rrc_measResultListUTRA, ASN1_EXTENSION_ROOT , dissect_lte_rrc_MeasResultListUTRA }, - { 2, &hf_lte_rrc_measResultListGERAN, ASN1_EXTENSION_ROOT , dissect_lte_rrc_MeasResultListGERAN }, - { 3, &hf_lte_rrc_measResultsCDMA2000, ASN1_EXTENSION_ROOT , dissect_lte_rrc_MeasResultsCDMA2000 }, - { 4, &hf_lte_rrc_measResultNeighCellListNR_r15, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_MeasResultCellListNR_r15 }, +static const per_choice_t T_c1_32_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionReject_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReject_r8_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_measResultNeighCells(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_32(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_lte_rrc_T_measResultNeighCells, T_measResultNeighCells_choice, + ett_lte_rrc_T_c1_32, T_c1_32_choice, NULL); return offset; } -static const per_sequence_t MeasResultForECID_r9_sequence[] = { - { &hf_lte_rrc_ue_RxTxTimeDiffResult_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_4095 }, - { &hf_lte_rrc_currentSFN_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, +static const per_sequence_t T_criticalExtensionsFuture_30_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultForECID_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_30(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_lte_rrc_MeasResultForECID_r9, MeasResultForECID_r9_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_30, T_criticalExtensionsFuture_30_sequence); return offset; } -static const per_sequence_t MeasResults_eag_1_sequence[] = { - { &hf_lte_rrc_measResultForECID_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultForECID_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_criticalExtensions_30_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_30_choice[] = { + { 0, &hf_lte_rrc_c1_32 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_32 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_30, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_30 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MeasResults_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_1_sequence); +dissect_lte_rrc_T_criticalExtensions_30(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_lte_rrc_T_criticalExtensions_30, T_criticalExtensions_30_choice, + NULL); return offset; } +static const per_sequence_t RRCConnectionReject_sequence[] = { + { &hf_lte_rrc_criticalExtensions_30, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_30 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_ellipsoid_Point_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *ellipsoid_point_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &ellipsoid_point_tvb); +dissect_lte_rrc_RRCConnectionReject(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - if (ellipsoid_point_tvb) { - dissect_lpp_Ellipsoid_Point_PDU(ellipsoid_point_tvb, actx->pinfo, tree, NULL); - } + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReject"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RRCConnectionReject, RRCConnectionReject_sequence); return offset; } +static const per_sequence_t T_nonCriticalExtension_42_sequence[] = { + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_ellipsoidPointWithAltitude_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *ellipsoid_point_with_alt_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &ellipsoid_point_with_alt_tvb); - - if (ellipsoid_point_with_alt_tvb) { - dissect_lpp_EllipsoidPointWithAltitude_PDU(ellipsoid_point_with_alt_tvb, actx->pinfo, tree, NULL); - } - +dissect_lte_rrc_T_nonCriticalExtension_42(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_lte_rrc_T_nonCriticalExtension_42, T_nonCriticalExtension_42_sequence); return offset; } +static const per_sequence_t RRCConnectionSetup_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_129, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_42 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_ellipsoidPointWithUncertaintyCircle_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *ellipsoid_point_with_uncert_circ_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &ellipsoid_point_with_uncert_circ_tvb); - - if (ellipsoid_point_with_uncert_circ_tvb) { - dissect_lpp_Ellipsoid_PointWithUncertaintyCircle_PDU(ellipsoid_point_with_uncert_circ_tvb, actx->pinfo, tree, NULL); - } - +dissect_lte_rrc_RRCConnectionSetup_v8a0_IEs(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_lte_rrc_RRCConnectionSetup_v8a0_IEs, RRCConnectionSetup_v8a0_IEs_sequence); return offset; } +static const per_sequence_t RRCConnectionSetup_r8_IEs_sequence[] = { + { &hf_lte_rrc_radioResourceConfigDedicated, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated }, + { &hf_lte_rrc_nonCriticalExtension_128, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetup_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_ellipsoidPointWithUncertaintyEllipse_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *ellipsoid_point_with_uncert_ellipse_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &ellipsoid_point_with_uncert_ellipse_tvb); - - if (ellipsoid_point_with_uncert_ellipse_tvb) { - dissect_lpp_EllipsoidPointWithUncertaintyEllipse_PDU(ellipsoid_point_with_uncert_ellipse_tvb, actx->pinfo, tree, NULL); - } - +dissect_lte_rrc_RRCConnectionSetup_r8_IEs(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_lte_rrc_RRCConnectionSetup_r8_IEs, RRCConnectionSetup_r8_IEs_sequence); return offset; } +static const value_string lte_rrc_T_c1_35_vals[] = { + { 0, "rrcConnectionSetup-r8" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *ellipsoid_point_with_alt_uncert_ellipsoid_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &ellipsoid_point_with_alt_uncert_ellipsoid_tvb); - - if (ellipsoid_point_with_alt_uncert_ellipsoid_tvb) { - dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid_PDU(ellipsoid_point_with_alt_uncert_ellipsoid_tvb, actx->pinfo, tree, NULL); - } +static const per_choice_t T_c1_35_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionSetup_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionSetup_r8_IEs }, + { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; +static int +dissect_lte_rrc_T_c1_35(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_lte_rrc_T_c1_35, T_c1_35_choice, + NULL); return offset; } +static const per_sequence_t T_criticalExtensionsFuture_35_sequence[] = { + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_ellipsoidArc_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *ellipsoid_arc_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &ellipsoid_arc_tvb); +dissect_lte_rrc_T_criticalExtensionsFuture_35(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_lte_rrc_T_criticalExtensionsFuture_35, T_criticalExtensionsFuture_35_sequence); - if (ellipsoid_arc_tvb) { - dissect_lpp_EllipsoidArc_PDU(ellipsoid_arc_tvb, actx->pinfo, tree, NULL); - } + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_36_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_36_choice[] = { + { 0, &hf_lte_rrc_c1_35 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_35 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_35, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_35 }, + { 0, NULL, 0, NULL } +}; +static int +dissect_lte_rrc_T_criticalExtensions_36(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_lte_rrc_T_criticalExtensions_36, T_criticalExtensions_36_choice, + NULL); return offset; } +static const per_sequence_t RRCConnectionSetup_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_36, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_36 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_polygon_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *polygon_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &polygon_tvb); +dissect_lte_rrc_RRCConnectionSetup(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + mac_lte_info* p_mac_lte_info; - if (polygon_tvb) { - dissect_lpp_Polygon_PDU(polygon_tvb, actx->pinfo, tree, NULL); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionSetup"); + + /* Look for UE identifier */ + p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0); + if (p_mac_lte_info != NULL) { + /* If found, tell MAC to release DRX config coming from a previous RRC connection */ + /* We do release the configuration here instead of RRC Connection Release message */ + /* as the UE could have locally dropped the previous RRC Connection */ + set_mac_lte_drx_config_release(p_mac_lte_info->ueid, actx->pinfo); + /* Also tell MAC to release extended BSR sizes configuration */ + set_mac_lte_extended_bsr_sizes(p_mac_lte_info->ueid, FALSE, actx->pinfo); + /* Also tell MAC to release simutaneous PUCCH/PUSCH configuration */ + set_mac_lte_simult_pucch_pusch(p_mac_lte_info->ueid, SIMULT_PUCCH_PUSCH_PCELL, FALSE, actx->pinfo); + set_mac_lte_simult_pucch_pusch(p_mac_lte_info->ueid, SIMULT_PUCCH_PUSCH_PSCELL, FALSE, actx->pinfo); + /* TODO: also release PDCP security config here */ } + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RRCConnectionSetup, RRCConnectionSetup_sequence); + + return offset; } -static const value_string lte_rrc_T_locationCoordinates_r10_vals[] = { - { 0, "ellipsoid-Point-r10" }, - { 1, "ellipsoidPointWithAltitude-r10" }, - { 2, "ellipsoidPointWithUncertaintyCircle-r11" }, - { 3, "ellipsoidPointWithUncertaintyEllipse-r11" }, - { 4, "ellipsoidPointWithAltitudeAndUncertaintyEllipsoid-r11" }, - { 5, "ellipsoidArc-r11" }, - { 6, "polygon-r11" }, +static const value_string lte_rrc_T_c1_12_vals[] = { + { 0, "rrcConnectionReestablishment" }, + { 1, "rrcConnectionReestablishmentReject" }, + { 2, "rrcConnectionReject" }, + { 3, "rrcConnectionSetup" }, { 0, NULL } }; -static const per_choice_t T_locationCoordinates_r10_choice[] = { - { 0, &hf_lte_rrc_ellipsoid_Point_r10, ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_ellipsoid_Point_r10 }, - { 1, &hf_lte_rrc_ellipsoidPointWithAltitude_r10, ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_ellipsoidPointWithAltitude_r10 }, - { 2, &hf_lte_rrc_ellipsoidPointWithUncertaintyCircle_r11, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_ellipsoidPointWithUncertaintyCircle_r11 }, - { 3, &hf_lte_rrc_ellipsoidPointWithUncertaintyEllipse_r11, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_ellipsoidPointWithUncertaintyEllipse_r11 }, - { 4, &hf_lte_rrc_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid_r11, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid_r11 }, - { 5, &hf_lte_rrc_ellipsoidArc_r11, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_ellipsoidArc_r11 }, - { 6, &hf_lte_rrc_polygon_r11 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_polygon_r11 }, +static const per_choice_t T_c1_12_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionReestablishment, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishment }, + { 1, &hf_lte_rrc_rrcConnectionReestablishmentReject, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentReject }, + { 2, &hf_lte_rrc_rrcConnectionReject, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReject }, + { 3, &hf_lte_rrc_rrcConnectionSetup, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionSetup }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_locationCoordinates_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_12(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_lte_rrc_T_locationCoordinates_r10, T_locationCoordinates_r10_choice, + ett_lte_rrc_T_c1_12, T_c1_12_choice, NULL); return offset; @@ -58979,13 +62726,15 @@ dissect_lte_rrc_T_locationCoordinates_r10(tvbuff_t *tvb _U_, int offset _U_, asn static int -dissect_lte_rrc_T_horizontalVelocity_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *horizontal_velocity_tvb = NULL; +dissect_lte_rrc_DedicatedInfoNAS(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *nas_eps_tvb=NULL; + proto_tree *subtree; offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &horizontal_velocity_tvb); + NO_BOUND, NO_BOUND, FALSE, &nas_eps_tvb); - if (horizontal_velocity_tvb) { - dissect_lpp_HorizontalVelocity_PDU(horizontal_velocity_tvb, actx->pinfo, tree, NULL); + if ((nas_eps_tvb)&&(nas_eps_handle)) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_dedicatedInfoNAS); + lte_rrc_call_dissector(nas_eps_handle, nas_eps_tvb, actx->pinfo, subtree); } @@ -58993,790 +62742,745 @@ dissect_lte_rrc_T_horizontalVelocity_r10(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const per_sequence_t FreqPriorityEUTRA_sequence[] = { + { &hf_lte_rrc_carrierFreq_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_gnss_TOD_msec_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *gnss_tod_msec_tvb = NULL; - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &gnss_tod_msec_tvb); - - if (gnss_tod_msec_tvb) { - asn1_ctx_t asn1_ctx; - asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, actx->pinfo); - dissect_per_constrained_integer(gnss_tod_msec_tvb, 0, &asn1_ctx, tree, hf_index, 0U, 3599999U, NULL, FALSE); - } - +dissect_lte_rrc_FreqPriorityEUTRA(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_lte_rrc_FreqPriorityEUTRA, FreqPriorityEUTRA_sequence); return offset; } -static const per_sequence_t LocationInfo_r10_sequence[] = { - { &hf_lte_rrc_locationCoordinates_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_locationCoordinates_r10 }, - { &hf_lte_rrc_horizontalVelocity_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_horizontalVelocity_r10 }, - { &hf_lte_rrc_gnss_TOD_msec_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_gnss_TOD_msec_r10 }, - { NULL, 0, 0, NULL } +static const per_sequence_t FreqPriorityListEUTRA_sequence_of[1] = { + { &hf_lte_rrc_FreqPriorityListEUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityEUTRA }, }; static int -dissect_lte_rrc_LocationInfo_r10(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_lte_rrc_LocationInfo_r10, LocationInfo_r10_sequence); +dissect_lte_rrc_FreqPriorityListEUTRA(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_lte_rrc_FreqPriorityListEUTRA, FreqPriorityListEUTRA_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t T_measResultSCell_r10_sequence[] = { - { &hf_lte_rrc_rsrpResultSCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResultSCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, +static const per_sequence_t FreqsPriorityGERAN_sequence[] = { + { &hf_lte_rrc_carrierFreqs, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqsGERAN }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultSCell_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_FreqsPriorityGERAN(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_lte_rrc_T_measResultSCell_r10, T_measResultSCell_r10_sequence); + ett_lte_rrc_FreqsPriorityGERAN, FreqsPriorityGERAN_sequence); return offset; } -static const per_sequence_t T_measResultBestNeighCell_r10_sequence[] = { - { &hf_lte_rrc_physCellId_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_rsrpResultNCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResultNCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, - { NULL, 0, 0, NULL } +static const per_sequence_t FreqsPriorityListGERAN_sequence_of[1] = { + { &hf_lte_rrc_FreqsPriorityListGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqsPriorityGERAN }, }; static int -dissect_lte_rrc_T_measResultBestNeighCell_r10(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_lte_rrc_T_measResultBestNeighCell_r10, T_measResultBestNeighCell_r10_sequence); +dissect_lte_rrc_FreqsPriorityListGERAN(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_lte_rrc_FreqsPriorityListGERAN, FreqsPriorityListGERAN_sequence_of, + 1, maxGNFG, FALSE); return offset; } -static const per_sequence_t MeasResultServFreq_r10_eag_1_sequence[] = { - { &hf_lte_rrc_measResultSCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, - { &hf_lte_rrc_measResultBestNeighCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, +static const per_sequence_t FreqPriorityUTRA_FDD_sequence[] = { + { &hf_lte_rrc_carrierFreq_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultServFreq_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResultServFreq_r10_eag_1_sequence); +dissect_lte_rrc_FreqPriorityUTRA_FDD(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_lte_rrc_FreqPriorityUTRA_FDD, FreqPriorityUTRA_FDD_sequence); return offset; } -static const per_sequence_t T_measResultSCell_v1310_01_sequence[] = { - { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_SINR_Range_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t FreqPriorityListUTRA_FDD_sequence_of[1] = { + { &hf_lte_rrc_FreqPriorityListUTRA_FDD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityUTRA_FDD }, }; static int -dissect_lte_rrc_T_measResultSCell_v1310_01(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_lte_rrc_T_measResultSCell_v1310_01, T_measResultSCell_v1310_01_sequence); +dissect_lte_rrc_FreqPriorityListUTRA_FDD(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_lte_rrc_FreqPriorityListUTRA_FDD, FreqPriorityListUTRA_FDD_sequence_of, + 1, maxUTRA_FDD_Carrier, FALSE); return offset; } -static const per_sequence_t T_measResultBestNeighCell_v1310_sequence[] = { - { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_SINR_Range_r13 }, +static const per_sequence_t FreqPriorityUTRA_TDD_sequence[] = { + { &hf_lte_rrc_carrierFreq_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultBestNeighCell_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_FreqPriorityUTRA_TDD(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_lte_rrc_T_measResultBestNeighCell_v1310, T_measResultBestNeighCell_v1310_sequence); + ett_lte_rrc_FreqPriorityUTRA_TDD, FreqPriorityUTRA_TDD_sequence); return offset; } -static const per_sequence_t MeasResultServFreq_r10_eag_2_sequence[] = { - { &hf_lte_rrc_measResultSCell_v1310_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultSCell_v1310_01 }, - { &hf_lte_rrc_measResultBestNeighCell_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultBestNeighCell_v1310 }, - { NULL, 0, 0, NULL } +static const per_sequence_t FreqPriorityListUTRA_TDD_sequence_of[1] = { + { &hf_lte_rrc_FreqPriorityListUTRA_TDD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityUTRA_TDD }, }; static int -dissect_lte_rrc_MeasResultServFreq_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResultServFreq_r10_eag_2_sequence); +dissect_lte_rrc_FreqPriorityListUTRA_TDD(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_lte_rrc_FreqPriorityListUTRA_TDD, FreqPriorityListUTRA_TDD_sequence_of, + 1, maxUTRA_TDD_Carrier, FALSE); return offset; } -static const per_sequence_t MeasResultServFreq_r10_sequence[] = { - { &hf_lte_rrc_servFreqId_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r10 }, - { &hf_lte_rrc_measResultSCell_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultSCell_r10 }, - { &hf_lte_rrc_measResultBestNeighCell_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultBestNeighCell_r10 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreq_r10_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreq_r10_eag_2 }, +static const per_sequence_t BandClassPriorityHRPD_sequence[] = { + { &hf_lte_rrc_bandClass , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultServFreq_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandClassPriorityHRPD(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_lte_rrc_MeasResultServFreq_r10, MeasResultServFreq_r10_sequence); + ett_lte_rrc_BandClassPriorityHRPD, BandClassPriorityHRPD_sequence); return offset; } -static const per_sequence_t MeasResultServFreqList_r10_sequence_of[1] = { - { &hf_lte_rrc_MeasResultServFreqList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreq_r10 }, +static const per_sequence_t BandClassPriorityListHRPD_sequence_of[1] = { + { &hf_lte_rrc_BandClassPriorityListHRPD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandClassPriorityHRPD }, }; static int -dissect_lte_rrc_MeasResultServFreqList_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandClassPriorityListHRPD(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_lte_rrc_MeasResultServFreqList_r10, MeasResultServFreqList_r10_sequence_of, - 1, maxServCell_r10, FALSE); + ett_lte_rrc_BandClassPriorityListHRPD, BandClassPriorityListHRPD_sequence_of, + 1, maxCDMA_BandClass, FALSE); return offset; } -static const per_sequence_t MeasResults_eag_2_sequence[] = { - { &hf_lte_rrc_locationInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LocationInfo_r10 }, - { &hf_lte_rrc_measResultServFreqList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqList_r10 }, +static const per_sequence_t BandClassPriority1XRTT_sequence[] = { + { &hf_lte_rrc_bandClass , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, + { &hf_lte_rrc_cellReselectionPriority, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResults_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_2_sequence); +dissect_lte_rrc_BandClassPriority1XRTT(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_lte_rrc_BandClassPriority1XRTT, BandClassPriority1XRTT_sequence); return offset; } -static const per_sequence_t MeasResultCSI_RS_r12_sequence[] = { - { &hf_lte_rrc_measCSI_RS_Id_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasCSI_RS_Id_r12 }, - { &hf_lte_rrc_csi_RSRP_Result_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_RSRP_Range_r12 }, - { NULL, 0, 0, NULL } +static const per_sequence_t BandClassPriorityList1XRTT_sequence_of[1] = { + { &hf_lte_rrc_BandClassPriorityList1XRTT_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandClassPriority1XRTT }, }; static int -dissect_lte_rrc_MeasResultCSI_RS_r12(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_lte_rrc_MeasResultCSI_RS_r12, MeasResultCSI_RS_r12_sequence); +dissect_lte_rrc_BandClassPriorityList1XRTT(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_lte_rrc_BandClassPriorityList1XRTT, BandClassPriorityList1XRTT_sequence_of, + 1, maxCDMA_BandClass, FALSE); return offset; } -static const per_sequence_t MeasResultCSI_RS_List_r12_sequence_of[1] = { - { &hf_lte_rrc_MeasResultCSI_RS_List_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCSI_RS_r12 }, +static const value_string lte_rrc_T_t320_vals[] = { + { 0, "min5" }, + { 1, "min10" }, + { 2, "min20" }, + { 3, "min30" }, + { 4, "min60" }, + { 5, "min120" }, + { 6, "min180" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MeasResultCSI_RS_List_r12(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_lte_rrc_MeasResultCSI_RS_List_r12, MeasResultCSI_RS_List_r12_sequence_of, - 1, maxCellReport, FALSE); +dissect_lte_rrc_T_t320(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MeasResults_eag_3_sequence[] = { - { &hf_lte_rrc_measId_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasId_v1250 }, - { &hf_lte_rrc_measResultPCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, - { &hf_lte_rrc_measResultCSI_RS_List_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultCSI_RS_List_r12 }, +static const per_sequence_t FreqPriorityEUTRA_r12_sequence[] = { + { &hf_lte_rrc_carrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_cellReselectionPriority_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResults_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_3_sequence); +dissect_lte_rrc_FreqPriorityEUTRA_r12(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_lte_rrc_FreqPriorityEUTRA_r12, FreqPriorityEUTRA_r12_sequence); return offset; } +static const per_sequence_t FreqPriorityListExtEUTRA_r12_sequence_of[1] = { + { &hf_lte_rrc_FreqPriorityListExtEUTRA_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityEUTRA_r12 }, +}; static int -dissect_lte_rrc_RSRQ_Range_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -30, 46U, NULL, FALSE); +dissect_lte_rrc_FreqPriorityListExtEUTRA_r12(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_lte_rrc_FreqPriorityListExtEUTRA_r12, FreqPriorityListExtEUTRA_r12_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t T_measResultSCell_r13_sequence[] = { - { &hf_lte_rrc_rsrpResultSCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResultSCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range_r13 }, - { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_Range_r13 }, +static const per_sequence_t IdleModeMobilityControlInfo_eag_1_sequence[] = { + { &hf_lte_rrc_freqPriorityListExtEUTRA_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListExtEUTRA_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultSCell_r13(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_lte_rrc_T_measResultSCell_r13, T_measResultSCell_r13_sequence); +dissect_lte_rrc_IdleModeMobilityControlInfo_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, IdleModeMobilityControlInfo_eag_1_sequence); return offset; } -static const per_sequence_t T_measResultBestNeighCell_r13_sequence[] = { - { &hf_lte_rrc_physCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_rsrpResultNCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResultNCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range_r13 }, - { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_Range_r13 }, +static const per_sequence_t FreqPriorityEUTRA_v1310_sequence[] = { + { &hf_lte_rrc_cellReselectionSubPriority_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionSubPriority_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultBestNeighCell_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_FreqPriorityEUTRA_v1310(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_lte_rrc_T_measResultBestNeighCell_r13, T_measResultBestNeighCell_r13_sequence); + ett_lte_rrc_FreqPriorityEUTRA_v1310, FreqPriorityEUTRA_v1310_sequence); return offset; } -static const per_sequence_t T_measResultBestNeighCell_v1360_sequence[] = { - { &hf_lte_rrc_rsrpResultNCell_v1360, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range_v1360 }, - { NULL, 0, 0, NULL } +static const per_sequence_t FreqPriorityListEUTRA_v1310_sequence_of[1] = { + { &hf_lte_rrc_FreqPriorityListEUTRA_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityEUTRA_v1310 }, }; static int -dissect_lte_rrc_T_measResultBestNeighCell_v1360(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_lte_rrc_T_measResultBestNeighCell_v1360, T_measResultBestNeighCell_v1360_sequence); +dissect_lte_rrc_FreqPriorityListEUTRA_v1310(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_lte_rrc_FreqPriorityListEUTRA_v1310, FreqPriorityListEUTRA_v1310_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t MeasResultServFreq_r13_eag_1_sequence[] = { - { &hf_lte_rrc_measResultBestNeighCell_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultBestNeighCell_v1360 }, - { NULL, 0, 0, NULL } +static const per_sequence_t FreqPriorityListExtEUTRA_v1310_sequence_of[1] = { + { &hf_lte_rrc_FreqPriorityListExtEUTRA_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityEUTRA_v1310 }, }; static int -dissect_lte_rrc_MeasResultServFreq_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResultServFreq_r13_eag_1_sequence); +dissect_lte_rrc_FreqPriorityListExtEUTRA_v1310(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_lte_rrc_FreqPriorityListExtEUTRA_v1310, FreqPriorityListExtEUTRA_v1310_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t MeasResultServFreq_r13_sequence[] = { - { &hf_lte_rrc_servFreqId_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r13 }, - { &hf_lte_rrc_measResultSCell_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultSCell_r13 }, - { &hf_lte_rrc_measResultBestNeighCell_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultBestNeighCell_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreq_r13_eag_1 }, +static const per_sequence_t IdleModeMobilityControlInfo_eag_2_sequence[] = { + { &hf_lte_rrc_freqPriorityListEUTRA_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListEUTRA_v1310 }, + { &hf_lte_rrc_freqPriorityListExtEUTRA_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListExtEUTRA_v1310 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultServFreq_r13(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_lte_rrc_MeasResultServFreq_r13, MeasResultServFreq_r13_sequence); - - return offset; -} - - -static const per_sequence_t MeasResultServFreqListExt_r13_sequence_of[1] = { - { &hf_lte_rrc_MeasResultServFreqListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreq_r13 }, -}; - -static int -dissect_lte_rrc_MeasResultServFreqListExt_r13(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_lte_rrc_MeasResultServFreqListExt_r13, MeasResultServFreqListExt_r13_sequence_of, - 1, maxServCell_r13, FALSE); +dissect_lte_rrc_IdleModeMobilityControlInfo_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, IdleModeMobilityControlInfo_eag_2_sequence); return offset; } -static const per_sequence_t T_measResultPCell_v1310_sequence[] = { - { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_SINR_Range_r13 }, +static const per_sequence_t FreqPriorityNR_r15_sequence[] = { + { &hf_lte_rrc_carrierFreq_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueNR_r15 }, + { &hf_lte_rrc_cellReselectionPriority_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellReselectionPriority }, + { &hf_lte_rrc_cellReselectionSubPriority_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellReselectionSubPriority_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultPCell_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_FreqPriorityNR_r15(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_lte_rrc_T_measResultPCell_v1310, T_measResultPCell_v1310_sequence); + ett_lte_rrc_FreqPriorityNR_r15, FreqPriorityNR_r15_sequence); return offset; } -static const value_string lte_rrc_T_qci_Id_r13_vals[] = { - { 0, "qci1" }, - { 1, "qci2" }, - { 2, "qci3" }, - { 3, "qci4" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t FreqPriorityListNR_r15_sequence_of[1] = { + { &hf_lte_rrc_FreqPriorityListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityNR_r15 }, }; - static int -dissect_lte_rrc_T_qci_Id_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_FreqPriorityListNR_r15(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_lte_rrc_FreqPriorityListNR_r15, FreqPriorityListNR_r15_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t UL_PDCP_DelayResult_r13_sequence[] = { - { &hf_lte_rrc_qci_Id_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_qci_Id_r13 }, - { &hf_lte_rrc_excessDelay_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, +static const per_sequence_t IdleModeMobilityControlInfo_eag_3_sequence[] = { + { &hf_lte_rrc_freqPriorityListNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UL_PDCP_DelayResult_r13(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_lte_rrc_UL_PDCP_DelayResult_r13, UL_PDCP_DelayResult_r13_sequence); +dissect_lte_rrc_IdleModeMobilityControlInfo_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, IdleModeMobilityControlInfo_eag_3_sequence); return offset; } -static const per_sequence_t UL_PDCP_DelayResultList_r13_sequence_of[1] = { - { &hf_lte_rrc_UL_PDCP_DelayResultList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_PDCP_DelayResult_r13 }, +static const per_sequence_t IdleModeMobilityControlInfo_sequence[] = { + { &hf_lte_rrc_freqPriorityListEUTRA, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListEUTRA }, + { &hf_lte_rrc_freqPriorityListGERAN, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqsPriorityListGERAN }, + { &hf_lte_rrc_freqPriorityListUTRA_FDD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListUTRA_FDD }, + { &hf_lte_rrc_freqPriorityListUTRA_TDD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqPriorityListUTRA_TDD }, + { &hf_lte_rrc_bandClassPriorityListHRPD, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BandClassPriorityListHRPD }, + { &hf_lte_rrc_bandClassPriorityList1XRTT, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BandClassPriorityList1XRTT }, + { &hf_lte_rrc_t320 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_t320 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_IdleModeMobilityControlInfo_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_IdleModeMobilityControlInfo_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_IdleModeMobilityControlInfo_eag_3 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UL_PDCP_DelayResultList_r13(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_lte_rrc_UL_PDCP_DelayResultList_r13, UL_PDCP_DelayResultList_r13_sequence_of, - 1, maxQCI_r13, FALSE); +dissect_lte_rrc_IdleModeMobilityControlInfo(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_lte_rrc_IdleModeMobilityControlInfo, IdleModeMobilityControlInfo_sequence); return offset; } -static const per_sequence_t MeasResults_eag_4_sequence[] = { - { &hf_lte_rrc_measResultForRSSI_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultForRSSI_r13 }, - { &hf_lte_rrc_measResultServFreqListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqListExt_r13 }, - { &hf_lte_rrc_measResultSSTD_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultSSTD_r13 }, - { &hf_lte_rrc_measResultPCell_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultPCell_v1310 }, - { &hf_lte_rrc_ul_PDCP_DelayResultList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UL_PDCP_DelayResultList_r13 }, - { &hf_lte_rrc_measResultListWLAN_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListWLAN_r13 }, +static const per_sequence_t FreqPriorityEUTRA_v9e0_sequence[] = { + { &hf_lte_rrc_carrierFreq_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResults_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_4_sequence); +dissect_lte_rrc_FreqPriorityEUTRA_v9e0(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_lte_rrc_FreqPriorityEUTRA_v9e0, FreqPriorityEUTRA_v9e0_sequence); return offset; } -static const per_sequence_t MeasResults_eag_5_sequence[] = { - { &hf_lte_rrc_measResultPCell_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range_v1360 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0_sequence_of[1] = { + { &hf_lte_rrc_freqPriorityListEUTRA_v9e0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityEUTRA_v9e0 }, }; static int -dissect_lte_rrc_MeasResults_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_5_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0, SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0_sequence_of, + 1, maxFreq, FALSE); return offset; } -static const per_sequence_t MeasResultCBR_r14_sequence[] = { - { &hf_lte_rrc_poolIdentity_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_TxPoolReportIdentity_r14 }, - { &hf_lte_rrc_cbr_PSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CBR_r14 }, - { &hf_lte_rrc_cbr_PSCCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_r14 }, +static const per_sequence_t IdleModeMobilityControlInfo_v9e0_sequence[] = { + { &hf_lte_rrc_freqPriorityListEUTRA_v9e0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultCBR_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_IdleModeMobilityControlInfo_v9e0(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_lte_rrc_MeasResultCBR_r14, MeasResultCBR_r14_sequence); + ett_lte_rrc_IdleModeMobilityControlInfo_v9e0, IdleModeMobilityControlInfo_v9e0_sequence); return offset; } -static const per_sequence_t MeasResultListCBR_r14_sequence_of[1] = { - { &hf_lte_rrc_MeasResultListCBR_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCBR_r14 }, +static const per_sequence_t CarrierFreqListUTRA_TDD_r10_sequence_of[1] = { + { &hf_lte_rrc_CarrierFreqListUTRA_TDD_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, }; static int -dissect_lte_rrc_MeasResultListCBR_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CarrierFreqListUTRA_TDD_r10(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_lte_rrc_MeasResultListCBR_r14, MeasResultListCBR_r14_sequence_of, - 1, maxCBR_Report_r14, FALSE); + ett_lte_rrc_CarrierFreqListUTRA_TDD_r10, CarrierFreqListUTRA_TDD_r10_sequence_of, + 1, maxFreqUTRA_TDD_r10, FALSE); return offset; } -static const per_sequence_t MeasResultListWLAN_r14_sequence_of[1] = { - { &hf_lte_rrc_MeasResultListWLAN_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultWLAN_r13 }, +static const value_string lte_rrc_RedirectedCarrierInfo_r15_IEs_vals[] = { + { 0, "eutra-r15" }, + { 1, "geran-r15" }, + { 2, "utra-FDD-r15" }, + { 3, "cdma2000-HRPD-r15" }, + { 4, "cdma2000-1xRTT-r15" }, + { 5, "utra-TDD-r15" }, + { 0, NULL } +}; + +static const per_choice_t RedirectedCarrierInfo_r15_IEs_choice[] = { + { 0, &hf_lte_rrc_eutra_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { 1, &hf_lte_rrc_geran_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_CarrierFreqsGERAN }, + { 2, &hf_lte_rrc_utra_FDD_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ARFCN_ValueUTRA }, + { 3, &hf_lte_rrc_cdma2000_HRPD_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CarrierFreqCDMA2000 }, + { 4, &hf_lte_rrc_cdma2000_1xRTT_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CarrierFreqCDMA2000 }, + { 5, &hf_lte_rrc_utra_TDD_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CarrierFreqListUTRA_TDD_r10 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MeasResultListWLAN_r14(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_lte_rrc_MeasResultListWLAN_r14, MeasResultListWLAN_r14_sequence_of, - 1, maxWLAN_Id_Report_r14, FALSE); +dissect_lte_rrc_RedirectedCarrierInfo_r15_IEs(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_lte_rrc_RedirectedCarrierInfo_r15_IEs, RedirectedCarrierInfo_r15_IEs_choice, + NULL); return offset; } -static const per_sequence_t MeasResults_eag_6_sequence[] = { - { &hf_lte_rrc_measResultListCBR_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListCBR_r14 }, - { &hf_lte_rrc_measResultListWLAN_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListWLAN_r14 }, +static const per_sequence_t T_nonCriticalExtension_44_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResults_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_6_sequence); +dissect_lte_rrc_T_nonCriticalExtension_44(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_lte_rrc_T_nonCriticalExtension_44, T_nonCriticalExtension_44_sequence); return offset; } +static const per_sequence_t RRCEarlyDataComplete_r15_IEs_sequence[] = { + { &hf_lte_rrc_dedicatedInfoNAS_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DedicatedInfoNAS }, + { &hf_lte_rrc_extendedWaitTime_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_1800 }, + { &hf_lte_rrc_idleModeMobilityControlInfo_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IdleModeMobilityControlInfo }, + { &hf_lte_rrc_idleModeMobilityControlInfoExt_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IdleModeMobilityControlInfo_v9e0 }, + { &hf_lte_rrc_redirectedCarrierInfo_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedirectedCarrierInfo_r15_IEs }, + { &hf_lte_rrc_nonCriticalExtension_139, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_44 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_M30720_30719(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -30720, 30719U, NULL, FALSE); +dissect_lte_rrc_RRCEarlyDataComplete_r15_IEs(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_lte_rrc_RRCEarlyDataComplete_r15_IEs, RRCEarlyDataComplete_r15_IEs_sequence); return offset; } -static const per_sequence_t MeasResultCellSFTD_r15_sequence[] = { - { &hf_lte_rrc_physCellId_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdNR_r15 }, - { &hf_lte_rrc_sfn_OffsetResult_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1023 }, - { &hf_lte_rrc_frameBoundaryOffsetResult_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M30720_30719 }, - { &hf_lte_rrc_rsrpResult_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_RangeNR_r15 }, +static const per_sequence_t T_criticalExtensionsFuture_37_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultCellSFTD_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_37(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_lte_rrc_MeasResultCellSFTD_r15, MeasResultCellSFTD_r15_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_37, T_criticalExtensionsFuture_37_sequence); return offset; } -static const per_sequence_t MeasResultCellListSFTD_r15_sequence_of[1] = { - { &hf_lte_rrc_MeasResultCellListSFTD_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCellSFTD_r15 }, +static const value_string lte_rrc_T_criticalExtensions_38_vals[] = { + { 0, "rrcEarlyDataComplete-r15" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } }; -static int -dissect_lte_rrc_MeasResultCellListSFTD_r15(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_lte_rrc_MeasResultCellListSFTD_r15, MeasResultCellListSFTD_r15_sequence_of, - 1, maxCellSFTD, FALSE); - - return offset; -} - - -static const per_sequence_t MeasResults_eag_7_sequence[] = { - { &hf_lte_rrc_measResultServFreqListNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqListNR_r15 }, - { &hf_lte_rrc_measResultCellListSFTD_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultCellListSFTD_r15 }, - { NULL, 0, 0, NULL } +static const per_choice_t T_criticalExtensions_38_choice[] = { + { 0, &hf_lte_rrc_rrcEarlyDataComplete_r15_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCEarlyDataComplete_r15_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_37, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_37 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MeasResults_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_7_sequence); +dissect_lte_rrc_T_criticalExtensions_38(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_lte_rrc_T_criticalExtensions_38, T_criticalExtensions_38_choice, + NULL); return offset; } -static const per_sequence_t MeasResults_sequence[] = { - { &hf_lte_rrc_measId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasId }, - { &hf_lte_rrc_measResultPCell, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultPCell }, - { &hf_lte_rrc_measResultNeighCells, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultNeighCells }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_5 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_6 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_7 }, +static const per_sequence_t RRCEarlyDataComplete_r15_sequence[] = { + { &hf_lte_rrc_criticalExtensions_38, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_38 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResults(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_lte_rrc_MeasResults, MeasResults_sequence); - - return offset; -} +dissect_lte_rrc_RRCEarlyDataComplete_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCEarlyDataComplete-r15"); -static const per_sequence_t T_nonCriticalExtension_21_sequence[] = { - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_T_nonCriticalExtension_21(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_lte_rrc_T_nonCriticalExtension_21, T_nonCriticalExtension_21_sequence); + ett_lte_rrc_RRCEarlyDataComplete_r15, RRCEarlyDataComplete_r15_sequence); return offset; } -static const per_sequence_t MeasurementReport_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_52, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_21 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_c2_01_vals[] = { + { 0, "rrcEarlyDataComplete-r15" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c2_01_choice[] = { + { 0, &hf_lte_rrc_rrcEarlyDataComplete_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCEarlyDataComplete_r15 }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MeasurementReport_v8a0_IEs(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_lte_rrc_MeasurementReport_v8a0_IEs, MeasurementReport_v8a0_IEs_sequence); +dissect_lte_rrc_T_c2_01(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_lte_rrc_T_c2_01, T_c2_01_choice, + NULL); return offset; } -static const per_sequence_t MeasurementReport_r8_IEs_sequence[] = { - { &hf_lte_rrc_measResults , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults }, - { &hf_lte_rrc_nonCriticalExtension_51, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasurementReport_v8a0_IEs }, +static const per_sequence_t T_messageClassExtensionFuture_r15_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasurementReport_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_messageClassExtensionFuture_r15(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_lte_rrc_MeasurementReport_r8_IEs, MeasurementReport_r8_IEs_sequence); + ett_lte_rrc_T_messageClassExtensionFuture_r15, T_messageClassExtensionFuture_r15_sequence); return offset; } -static const value_string lte_rrc_T_c1_25_vals[] = { - { 0, "measurementReport-r8" }, - { 1, "spare7" }, - { 2, "spare6" }, - { 3, "spare5" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_messageClassExtension_05_vals[] = { + { 0, "c2" }, + { 1, "messageClassExtensionFuture-r15" }, { 0, NULL } }; -static const per_choice_t T_c1_25_choice[] = { - { 0, &hf_lte_rrc_measurementReport_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MeasurementReport_r8_IEs }, - { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t T_messageClassExtension_05_choice[] = { + { 0, &hf_lte_rrc_c2_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c2_01 }, + { 1, &hf_lte_rrc_messageClassExtensionFuture_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtensionFuture_r15 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_messageClassExtension_05(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_lte_rrc_T_c1_25, T_c1_25_choice, + ett_lte_rrc_T_messageClassExtension_05, T_messageClassExtension_05_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_18_sequence[] = { - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_T_criticalExtensionsFuture_18(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_lte_rrc_T_criticalExtensionsFuture_18, T_criticalExtensionsFuture_18_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_criticalExtensions_18_vals[] = { +static const value_string lte_rrc_DL_CCCH_MessageType_vals[] = { { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, + { 1, "messageClassExtension" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_18_choice[] = { - { 0, &hf_lte_rrc_c1_25 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_25 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_18, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_18 }, +static const per_choice_t DL_CCCH_MessageType_choice[] = { + { 0, &hf_lte_rrc_c1_12 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_12 }, + { 1, &hf_lte_rrc_messageClassExtension_05, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_05 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_18(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DL_CCCH_MessageType(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_lte_rrc_T_criticalExtensions_18, T_criticalExtensions_18_choice, + ett_lte_rrc_DL_CCCH_MessageType, DL_CCCH_MessageType_choice, NULL); return offset; } -static const per_sequence_t MeasurementReport_sequence[] = { - { &hf_lte_rrc_criticalExtensions_18, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_18 }, +static const per_sequence_t DL_CCCH_Message_sequence[] = { + { &hf_lte_rrc_message_07 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CCCH_MessageType }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasurementReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MeasurementReport"); - +dissect_lte_rrc_DL_CCCH_Message(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_lte_rrc_MeasurementReport, MeasurementReport_sequence); + ett_lte_rrc_DL_CCCH_Message, DL_CCCH_Message_sequence); return offset; } -static const value_string lte_rrc_T_rlf_InfoAvailable_r10_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_rlf_InfoAvailable_r10(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RAND_CDMA2000(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, + 32, 32, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_logMeasAvailable_r10_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_logMeasAvailable_r10(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MobilityParametersCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, NULL); return offset; } -static const value_string lte_rrc_T_connEstFailInfoAvailable_r11_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_nonCriticalExtension_11_sequence[] = { + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_connEstFailInfoAvailable_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_nonCriticalExtension_11(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_lte_rrc_T_nonCriticalExtension_11, T_nonCriticalExtension_11_sequence); return offset; } -static const value_string lte_rrc_T_logMeasAvailableMBSFN_r12_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t CSFBParametersResponseCDMA2000_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_30, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_11 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_logMeasAvailableMBSFN_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CSFBParametersResponseCDMA2000_v8a0_IEs(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_lte_rrc_CSFBParametersResponseCDMA2000_v8a0_IEs, CSFBParametersResponseCDMA2000_v8a0_IEs_sequence); return offset; } -static const value_string lte_rrc_T_gapIndication_r14_vals[] = { - { 0, "gap" }, - { 1, "ncsg" }, - { 2, "nogap-noNcsg" }, - { 0, NULL } +static const per_sequence_t CSFBParametersResponseCDMA2000_r8_IEs_sequence[] = { + { &hf_lte_rrc_rand , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RAND_CDMA2000 }, + { &hf_lte_rrc_mobilityParameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityParametersCDMA2000 }, + { &hf_lte_rrc_nonCriticalExtension_29, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFBParametersResponseCDMA2000_v8a0_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_gapIndication_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_CSFBParametersResponseCDMA2000_r8_IEs(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_lte_rrc_CSFBParametersResponseCDMA2000_r8_IEs, CSFBParametersResponseCDMA2000_r8_IEs_sequence); return offset; } -static const per_sequence_t PerCC_GapIndication_r14_sequence[] = { - { &hf_lte_rrc_servCellId_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r13 }, - { &hf_lte_rrc_gapIndication_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_gapIndication_r14 }, +static const per_sequence_t T_criticalExtensionsFuture_10_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PerCC_GapIndication_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_10(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_lte_rrc_PerCC_GapIndication_r14, PerCC_GapIndication_r14_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_10, T_criticalExtensionsFuture_10_sequence); return offset; } -static const per_sequence_t PerCC_GapIndicationList_r14_sequence_of[1] = { - { &hf_lte_rrc_PerCC_GapIndicationList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PerCC_GapIndication_r14 }, +static const value_string lte_rrc_T_criticalExtensions_10_vals[] = { + { 0, "csfbParametersResponseCDMA2000-r8" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_10_choice[] = { + { 0, &hf_lte_rrc_csfbParametersResponseCDMA2000_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSFBParametersResponseCDMA2000_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_10 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_PerCC_GapIndicationList_r14(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_lte_rrc_PerCC_GapIndicationList_r14, PerCC_GapIndicationList_r14_sequence_of, - 1, maxServCell_r13, FALSE); +dissect_lte_rrc_T_criticalExtensions_10(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_lte_rrc_T_criticalExtensions_10, T_criticalExtensions_10_choice, + NULL); return offset; } +static const per_sequence_t CSFBParametersResponseCDMA2000_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_10 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_1_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 12U, NULL, FALSE); +dissect_lte_rrc_CSFBParametersResponseCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CSFBParametersResponseCDMA2000"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_CSFBParametersResponseCDMA2000, CSFBParametersResponseCDMA2000_sequence); return offset; } @@ -59784,250 +63488,208 @@ dissect_lte_rrc_INTEGER_1_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx static int -dissect_lte_rrc_T_scg_ConfigResponseNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *rrc_reconfiguration_complete_tvb = NULL; - +dissect_lte_rrc_DedicatedInfoCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &rrc_reconfiguration_complete_tvb); - - - if (rrc_reconfiguration_complete_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_scg_ConfigResponseNR_r15); - dissect_nr_rrc_RRCReconfigurationComplete_PDU(rrc_reconfiguration_complete_tvb, actx->pinfo, subtree, NULL); - } - + NO_BOUND, NO_BOUND, FALSE, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_30_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dedicatedInfoType_vals[] = { + { 0, "dedicatedInfoNAS" }, + { 1, "dedicatedInfoCDMA2000-1XRTT" }, + { 2, "dedicatedInfoCDMA2000-HRPD" }, + { 0, NULL } +}; + +static const per_choice_t T_dedicatedInfoType_choice[] = { + { 0, &hf_lte_rrc_dedicatedInfoNAS, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoNAS }, + { 1, &hf_lte_rrc_dedicatedInfoCDMA2000_1XRTT, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoCDMA2000 }, + { 2, &hf_lte_rrc_dedicatedInfoCDMA2000_HRPD, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoCDMA2000 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_30(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_lte_rrc_T_nonCriticalExtension_30, T_nonCriticalExtension_30_sequence); +dissect_lte_rrc_T_dedicatedInfoType(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_lte_rrc_T_dedicatedInfoType, T_dedicatedInfoType_choice, + NULL); return offset; } -static const per_sequence_t RRCConnectionReconfigurationComplete_v1510_IEs_sequence[] = { - { &hf_lte_rrc_scg_ConfigResponseNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scg_ConfigResponseNR_r15 }, - { &hf_lte_rrc_nonCriticalExtension_88, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_30 }, +static const per_sequence_t T_nonCriticalExtension_12_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1510_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_12(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_lte_rrc_RRCConnectionReconfigurationComplete_v1510_IEs, RRCConnectionReconfigurationComplete_v1510_IEs_sequence); + ett_lte_rrc_T_nonCriticalExtension_12, T_nonCriticalExtension_12_sequence); return offset; } -static const per_sequence_t RRCConnectionReconfigurationComplete_v1430_IEs_sequence[] = { - { &hf_lte_rrc_perCC_GapIndicationList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PerCC_GapIndicationList_r14 }, - { &hf_lte_rrc_numFreqEffective_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_12 }, - { &hf_lte_rrc_numFreqEffectiveReduced_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_12 }, - { &hf_lte_rrc_nonCriticalExtension_87, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1510_IEs }, +static const per_sequence_t DLInformationTransfer_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_32, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1430_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DLInformationTransfer_v8a0_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v1430_IEs, RRCConnectionReconfigurationComplete_v1430_IEs_sequence); + ett_lte_rrc_DLInformationTransfer_v8a0_IEs, DLInformationTransfer_v8a0_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionReconfigurationComplete_v1250_IEs_sequence[] = { - { &hf_lte_rrc_logMeasAvailableMBSFN_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableMBSFN_r12 }, - { &hf_lte_rrc_nonCriticalExtension_86, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1430_IEs }, +static const per_sequence_t DLInformationTransfer_r8_IEs_sequence[] = { + { &hf_lte_rrc_dedicatedInfoType, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dedicatedInfoType }, + { &hf_lte_rrc_nonCriticalExtension_31, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DLInformationTransfer_v8a0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1250_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DLInformationTransfer_r8_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v1250_IEs, RRCConnectionReconfigurationComplete_v1250_IEs_sequence); + ett_lte_rrc_DLInformationTransfer_r8_IEs, DLInformationTransfer_r8_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionReconfigurationComplete_v1130_IEs_sequence[] = { - { &hf_lte_rrc_connEstFailInfoAvailable_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connEstFailInfoAvailable_r11 }, - { &hf_lte_rrc_nonCriticalExtension_85, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1250_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dedicatedInfoType_r15_vals[] = { + { 0, "dedicatedInfoNAS-r15" }, + { 1, "dedicatedInfoCDMA2000-1XRTT-r15" }, + { 2, "dedicatedInfoCDMA2000-HRPD-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_dedicatedInfoType_r15_choice[] = { + { 0, &hf_lte_rrc_dedicatedInfoNAS_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoNAS }, + { 1, &hf_lte_rrc_dedicatedInfoCDMA2000_1XRTT_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoCDMA2000 }, + { 2, &hf_lte_rrc_dedicatedInfoCDMA2000_HRPD_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoCDMA2000 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1130_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v1130_IEs, RRCConnectionReconfigurationComplete_v1130_IEs_sequence); +dissect_lte_rrc_T_dedicatedInfoType_r15(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_lte_rrc_T_dedicatedInfoType_r15, T_dedicatedInfoType_r15_choice, + NULL); return offset; } -static const per_sequence_t RRCConnectionReconfigurationComplete_v1020_IEs_sequence[] = { - { &hf_lte_rrc_rlf_InfoAvailable_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlf_InfoAvailable_r10 }, - { &hf_lte_rrc_logMeasAvailable_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailable_r10 }, - { &hf_lte_rrc_nonCriticalExtension_84, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1130_IEs }, +static const per_sequence_t DLInformationTransfer_r15_IEs_sequence[] = { + { &hf_lte_rrc_dedicatedInfoType_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dedicatedInfoType_r15 }, + { &hf_lte_rrc_timeReferenceInfo_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TimeReferenceInfo_r15 }, + { &hf_lte_rrc_nonCriticalExtension_31, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DLInformationTransfer_v8a0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1020_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DLInformationTransfer_r15_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v1020_IEs, RRCConnectionReconfigurationComplete_v1020_IEs_sequence); + ett_lte_rrc_DLInformationTransfer_r15_IEs, DLInformationTransfer_r15_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionReconfigurationComplete_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_83, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1020_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_c1_18_vals[] = { + { 0, "dlInformationTransfer-r8" }, + { 1, "dlInformationTransfer-r15" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_18_choice[] = { + { 0, &hf_lte_rrc_dlInformationTransfer_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DLInformationTransfer_r8_IEs }, + { 1, &hf_lte_rrc_dlInformationTransfer_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DLInformationTransfer_r15_IEs }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfigurationComplete_v8a0_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v8a0_IEs, RRCConnectionReconfigurationComplete_v8a0_IEs_sequence); - - return offset; -} - - -static const per_sequence_t RRCConnectionReconfigurationComplete_r8_IEs_sequence[] = { - { &hf_lte_rrc_nonCriticalExtension_82, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v8a0_IEs }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_RRCConnectionReconfigurationComplete_r8_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_r8_IEs, RRCConnectionReconfigurationComplete_r8_IEs_sequence); +dissect_lte_rrc_T_c1_18(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_lte_rrc_T_c1_18, T_c1_18_choice, + NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_24_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_11_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_11(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_lte_rrc_T_criticalExtensionsFuture_24, T_criticalExtensionsFuture_24_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_11, T_criticalExtensionsFuture_11_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_24_vals[] = { - { 0, "rrcConnectionReconfigurationComplete-r8" }, +static const value_string lte_rrc_T_criticalExtensions_11_vals[] = { + { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_24_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionReconfigurationComplete_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReconfigurationComplete_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_24, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_24 }, +static const per_choice_t T_criticalExtensions_11_choice[] = { + { 0, &hf_lte_rrc_c1_18 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_18 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_11 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_11(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_lte_rrc_T_criticalExtensions_24, T_criticalExtensions_24_choice, + ett_lte_rrc_T_criticalExtensions_11, T_criticalExtensions_11_choice, NULL); return offset; } -static const per_sequence_t RRCConnectionReconfigurationComplete_sequence[] = { +static const per_sequence_t DLInformationTransfer_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_24, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_24 }, + { &hf_lte_rrc_criticalExtensions_11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfigurationComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DLInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReconfigurationComplete"); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "DLInformationTransfer"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionReconfigurationComplete, RRCConnectionReconfigurationComplete_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_rlf_InfoAvailable_r9_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_rlf_InfoAvailable_r9(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, - 1, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_logMeasAvailable_r10_01_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_logMeasAvailable_r10_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, - 1, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_connEstFailInfoAvailable_r11_01_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_connEstFailInfoAvailable_r11_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, - 1, NULL, FALSE, 0, NULL); + ett_lte_rrc_DLInformationTransfer, DLInformationTransfer_sequence); return offset; } -static const value_string lte_rrc_T_logMeasAvailableMBSFN_r12_01_vals[] = { +static const value_string lte_rrc_T_dualRxTxRedirectIndicator_r10_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_logMeasAvailableMBSFN_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dualRxTxRedirectIndicator_r10(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, 1, NULL, FALSE, 0, NULL); @@ -60035,1699 +63697,1900 @@ dissect_lte_rrc_T_logMeasAvailableMBSFN_r12_01(tvbuff_t *tvb _U_, int offset _U_ } -static const per_sequence_t T_nonCriticalExtension_32_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_14_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_14(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_lte_rrc_T_nonCriticalExtension_32, T_nonCriticalExtension_32_sequence); + ett_lte_rrc_T_nonCriticalExtension_14, T_nonCriticalExtension_14_sequence); return offset; } -static const per_sequence_t RRCConnectionReestablishmentComplete_v1250_IEs_sequence[] = { - { &hf_lte_rrc_logMeasAvailableMBSFN_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableMBSFN_r12_01 }, - { &hf_lte_rrc_nonCriticalExtension_96, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_32 }, +static const per_sequence_t HandoverFromEUTRAPreparationRequest_v1020_IEs_sequence[] = { + { &hf_lte_rrc_dualRxTxRedirectIndicator_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dualRxTxRedirectIndicator_r10 }, + { &hf_lte_rrc_redirectCarrierCDMA2000_1XRTT_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqCDMA2000 }, + { &hf_lte_rrc_nonCriticalExtension_37, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1250_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v1020_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v1250_IEs, RRCConnectionReestablishmentComplete_v1250_IEs_sequence); + ett_lte_rrc_HandoverFromEUTRAPreparationRequest_v1020_IEs, HandoverFromEUTRAPreparationRequest_v1020_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionReestablishmentComplete_v1130_IEs_sequence[] = { - { &hf_lte_rrc_connEstFailInfoAvailable_r11_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connEstFailInfoAvailable_r11_01 }, - { &hf_lte_rrc_nonCriticalExtension_95, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1250_IEs }, +static const per_sequence_t HandoverFromEUTRAPreparationRequest_v920_IEs_sequence[] = { + { &hf_lte_rrc_concurrPrepCDMA2000_HRPD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_nonCriticalExtension_36, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v1020_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1130_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v920_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v1130_IEs, RRCConnectionReestablishmentComplete_v1130_IEs_sequence); + ett_lte_rrc_HandoverFromEUTRAPreparationRequest_v920_IEs, HandoverFromEUTRAPreparationRequest_v920_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionReestablishmentComplete_v1020_IEs_sequence[] = { - { &hf_lte_rrc_logMeasAvailable_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailable_r10_01 }, - { &hf_lte_rrc_nonCriticalExtension_94, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1130_IEs }, +static const per_sequence_t HandoverFromEUTRAPreparationRequest_v890_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_35, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v920_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1020_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v890_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v1020_IEs, RRCConnectionReestablishmentComplete_v1020_IEs_sequence); + ett_lte_rrc_HandoverFromEUTRAPreparationRequest_v890_IEs, HandoverFromEUTRAPreparationRequest_v890_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionReestablishmentComplete_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_93, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1020_IEs }, +static const per_sequence_t HandoverFromEUTRAPreparationRequest_r8_IEs_sequence[] = { + { &hf_lte_rrc_cdma2000_Type, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CDMA2000_Type }, + { &hf_lte_rrc_rand , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RAND_CDMA2000 }, + { &hf_lte_rrc_mobilityParameters, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityParametersCDMA2000 }, + { &hf_lte_rrc_nonCriticalExtension_34, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_v890_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishmentComplete_v8a0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_r8_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v8a0_IEs, RRCConnectionReestablishmentComplete_v8a0_IEs_sequence); + ett_lte_rrc_HandoverFromEUTRAPreparationRequest_r8_IEs, HandoverFromEUTRAPreparationRequest_r8_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionReestablishmentComplete_v920_IEs_sequence[] = { - { &hf_lte_rrc_rlf_InfoAvailable_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlf_InfoAvailable_r9 }, - { &hf_lte_rrc_nonCriticalExtension_92, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v8a0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_c1_19_vals[] = { + { 0, "handoverFromEUTRAPreparationRequest-r8" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } }; -static int -dissect_lte_rrc_RRCConnectionReestablishmentComplete_v920_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v920_IEs, RRCConnectionReestablishmentComplete_v920_IEs_sequence); - - return offset; -} - - -static const per_sequence_t RRCConnectionReestablishmentComplete_r8_IEs_sequence[] = { - { &hf_lte_rrc_nonCriticalExtension_91, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v920_IEs }, - { NULL, 0, 0, NULL } +static const per_choice_t T_c1_19_choice[] = { + { 0, &hf_lte_rrc_handoverFromEUTRAPreparationRequest_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_HandoverFromEUTRAPreparationRequest_r8_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishmentComplete_r8_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_r8_IEs, RRCConnectionReestablishmentComplete_r8_IEs_sequence); +dissect_lte_rrc_T_c1_19(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_lte_rrc_T_c1_19, T_c1_19_choice, + NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_26_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_12_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_12(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_lte_rrc_T_criticalExtensionsFuture_26, T_criticalExtensionsFuture_26_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_12, T_criticalExtensionsFuture_12_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_26_vals[] = { - { 0, "rrcConnectionReestablishmentComplete-r8" }, +static const value_string lte_rrc_T_criticalExtensions_12_vals[] = { + { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_26_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionReestablishmentComplete_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentComplete_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_26, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_26 }, +static const per_choice_t T_criticalExtensions_12_choice[] = { + { 0, &hf_lte_rrc_c1_19 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_19 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_12 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_12(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_lte_rrc_T_criticalExtensions_26, T_criticalExtensions_26_choice, + ett_lte_rrc_T_criticalExtensions_12, T_criticalExtensions_12_choice, NULL); return offset; } -static const per_sequence_t RRCConnectionReestablishmentComplete_sequence[] = { +static const per_sequence_t HandoverFromEUTRAPreparationRequest_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_26, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_26 }, + { &hf_lte_rrc_criticalExtensions_12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReestablishmentComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReestablishmentComplete"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionReestablishmentComplete, RRCConnectionReestablishmentComplete_sequence); - - return offset; -} - +dissect_lte_rrc_HandoverFromEUTRAPreparationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { -static const per_sequence_t RegisteredMME_sequence[] = { - { &hf_lte_rrc_plmn_Identity, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_Identity }, - { &hf_lte_rrc_mmegi , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { &hf_lte_rrc_mmec , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MMEC }, - { NULL, 0, 0, NULL } -}; + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "HandoverFromEUTRAPreparationRequest"); -static int -dissect_lte_rrc_RegisteredMME(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_lte_rrc_RegisteredMME, RegisteredMME_sequence); + ett_lte_rrc_HandoverFromEUTRAPreparationRequest, HandoverFromEUTRAPreparationRequest_sequence); return offset; } -static const value_string lte_rrc_T_gummei_Type_r10_vals[] = { - { 0, "native" }, - { 1, "mapped" }, +static const value_string lte_rrc_T_targetRAT_Type_vals[] = { + { T_targetRAT_Type_utra, "utra" }, + { T_targetRAT_Type_geran, "geran" }, + { T_targetRAT_Type_cdma2000_1XRTT, "cdma2000-1XRTT" }, + { T_targetRAT_Type_cdma2000_HRPD, "cdma2000-HRPD" }, + { T_targetRAT_Type_nr, "nr" }, + { T_targetRAT_Type_eutra, "eutra" }, + { T_targetRAT_Type_spare2, "spare2" }, + { T_targetRAT_Type_spare1, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_gummei_Type_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_targetRAT_Type(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 target_rat_type; offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, - 2, NULL, FALSE, 0, NULL); + 8, &target_rat_type, TRUE, 0, NULL); + + private_data_set_rat_target_type(actx, (guint8)target_rat_type); + return offset; } -static const value_string lte_rrc_T_rlf_InfoAvailable_r10_01_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_rlf_InfoAvailable_r10_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_targetRAT_MessageContainer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *target_rat_msg_cont_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &target_rat_msg_cont_tvb); + + if(target_rat_msg_cont_tvb){ + guint8 byte; + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_targetRAT_MessageContainer); + switch (private_data_get_rat_target_type(actx)){ + case T_targetRAT_Type_utra: + /* utra */ + if (rrc_irat_ho_to_utran_cmd_handle) + lte_rrc_call_dissector(rrc_irat_ho_to_utran_cmd_handle, target_rat_msg_cont_tvb, actx->pinfo, subtree); + break; + case T_targetRAT_Type_geran: + /* geran */ + byte = tvb_get_guint8(target_rat_msg_cont_tvb, 0); + if (byte == 0x06) { + if (gsm_a_dtap_handle) { + lte_rrc_call_dissector(gsm_a_dtap_handle, target_rat_msg_cont_tvb, actx->pinfo, subtree); + } + } else { + if (gsm_rlcmac_dl_handle) { + tvbuff_t *gsm_rlcmac_dl_tvb = tvb_new_composite(); + guint8 *pd = (guint8 *) wmem_alloc(actx->pinfo->pool, 1); + pd[0] = 0x40; + tvb_composite_append(gsm_rlcmac_dl_tvb, tvb_new_real_data(pd, 1, 1)); + tvb_composite_append(gsm_rlcmac_dl_tvb, target_rat_msg_cont_tvb); + tvb_composite_finalize(gsm_rlcmac_dl_tvb); + add_new_data_source(actx->pinfo, gsm_rlcmac_dl_tvb, "GPRS DL control block"); + lte_rrc_call_dissector(gsm_rlcmac_dl_handle, gsm_rlcmac_dl_tvb, actx->pinfo, subtree); + } + } + break; + case T_targetRAT_Type_cdma2000_1XRTT: + /* cdma2000-1XRTT */ + break; + case T_targetRAT_Type_cdma2000_HRPD: + /* cdma2000-HRPD */ + break; + case T_targetRAT_Type_nr: + /* nr */ + if (nr_rrc_reconf_handle) + lte_rrc_call_dissector(nr_rrc_reconf_handle, target_rat_msg_cont_tvb, actx->pinfo, subtree); + break; + case T_targetRAT_Type_eutra: + /* eutra */ + if (lte_rrc_conn_reconf_handle) + lte_rrc_call_dissector(lte_rrc_conn_reconf_handle, target_rat_msg_cont_tvb, actx->pinfo, subtree); + break; + default: + break; + } + } + return offset; } -static const value_string lte_rrc_T_logMeasAvailable_r10_02_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_logMeasAvailable_r10_02(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_nas_SecurityParamFromEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *nas_sec_param_from_eutra_tvb = NULL; + guint32 length; + proto_tree *subtree; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 1, FALSE, &nas_sec_param_from_eutra_tvb); + + if (nas_sec_param_from_eutra_tvb) { + length = tvb_reported_length(nas_sec_param_from_eutra_tvb); + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nas_SecurityParam); + de_emm_sec_par_from_eutra(nas_sec_param_from_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0); + } + return offset; } -static const value_string lte_rrc_T_rn_SubframeConfigReq_r10_vals[] = { - { 0, "required" }, - { 1, "notRequired" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_rn_SubframeConfigReq_r10(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, FALSE, 0, NULL); +dissect_lte_rrc_SystemInfoListGERAN_item(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *sys_info_list_tvb = NULL; + proto_tree *subtree; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 23, FALSE, &sys_info_list_tvb); + + if (sys_info_list_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_siPsiSibContainer); + switch (private_data_get_si_or_psi_geran(actx)) { + case SI_OrPSI_GERAN_si: + /* SI message */ + if (gsm_a_dtap_handle) { + tvbuff_t *si_tvb = tvb_new_composite(); + guint8 *pd = (guint8 *) wmem_alloc(actx->pinfo->pool, 1); + pd[0] = 0x06; + tvb_composite_append(si_tvb, tvb_new_real_data(pd, 1, 1)); + tvb_composite_append(si_tvb, sys_info_list_tvb); + tvb_composite_finalize(si_tvb); + add_new_data_source(actx->pinfo, si_tvb, "System Information"); + lte_rrc_call_dissector(gsm_a_dtap_handle, si_tvb, actx->pinfo, subtree); + } + break; + case SI_OrPSI_GERAN_psi: + /* PSI message */ + if (gsm_rlcmac_dl_handle) { + tvbuff_t *gsm_rlcmac_dl_tvb = tvb_new_composite(); + guint8 *pd = (guint8 *) wmem_alloc(actx->pinfo->pool, 1); + pd[0] = 0x40; + tvb_composite_append(gsm_rlcmac_dl_tvb, tvb_new_real_data(pd, 1, 1)); + tvb_composite_append(gsm_rlcmac_dl_tvb, sys_info_list_tvb); + tvb_composite_finalize(gsm_rlcmac_dl_tvb); + add_new_data_source(actx->pinfo, gsm_rlcmac_dl_tvb, "GPRS DL control block"); + lte_rrc_call_dissector(gsm_rlcmac_dl_handle, sys_info_list_tvb, actx->pinfo, subtree); + } + break; + default: + break; + } + } + return offset; } -static const value_string lte_rrc_T_connEstFailInfoAvailable_r11_02_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t SystemInfoListGERAN_sequence_of[1] = { + { &hf_lte_rrc_SystemInfoListGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInfoListGERAN_item }, }; - static int -dissect_lte_rrc_T_connEstFailInfoAvailable_r11_02(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SystemInfoListGERAN(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_lte_rrc_SystemInfoListGERAN, SystemInfoListGERAN_sequence_of, + 1, maxGERAN_SI, FALSE); return offset; } -static const value_string lte_rrc_T_mobilityState_r12_vals[] = { - { 0, "normal" }, - { 1, "medium" }, - { 2, "high" }, - { 3, "spare" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_mobilityState_r12(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); +dissect_lte_rrc_T_si(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + private_data_set_si_or_psi_geran(actx, (guint8)SI_OrPSI_GERAN_si); /* SI message */ + offset = dissect_lte_rrc_SystemInfoListGERAN(tvb, offset, actx, tree, hf_index); + + return offset; } -static const value_string lte_rrc_T_mobilityHistoryAvail_r12_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_mobilityHistoryAvail_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_psi(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + private_data_set_si_or_psi_geran(actx, (guint8)SI_OrPSI_GERAN_psi); /* PSI message */ + offset = dissect_lte_rrc_SystemInfoListGERAN(tvb, offset, actx, tree, hf_index); + + return offset; } -static const value_string lte_rrc_T_logMeasAvailableMBSFN_r12_02_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_SI_OrPSI_GERAN_vals[] = { + { SI_OrPSI_GERAN_si, "si" }, + { SI_OrPSI_GERAN_psi, "psi" }, { 0, NULL } }; +static const per_choice_t SI_OrPSI_GERAN_choice[] = { + { SI_OrPSI_GERAN_si, &hf_lte_rrc_si , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_si }, + { SI_OrPSI_GERAN_psi, &hf_lte_rrc_psi , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_psi }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_logMeasAvailableMBSFN_r12_02(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SI_OrPSI_GERAN(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_lte_rrc_SI_OrPSI_GERAN, SI_OrPSI_GERAN_choice, + NULL); return offset; } -static const value_string lte_rrc_T_ce_ModeB_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t Handover_sequence[] = { + { &hf_lte_rrc_targetRAT_Type, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_targetRAT_Type }, + { &hf_lte_rrc_targetRAT_MessageContainer, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_targetRAT_MessageContainer }, + { &hf_lte_rrc_nas_SecurityParamFromEUTRA, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nas_SecurityParamFromEUTRA }, + { &hf_lte_rrc_systemInformation_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SI_OrPSI_GERAN }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ce_ModeB_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_Handover(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + /* Initialise to invalid value */ + private_data_set_rat_target_type(actx, 0xFF); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_Handover, Handover_sequence); + + return offset; } -static const value_string lte_rrc_T_attachWithoutPDN_Connectivity_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_t304_vals[] = { + { 0, "ms100" }, + { 1, "ms200" }, + { 2, "ms500" }, + { 3, "ms1000" }, + { 4, "ms2000" }, + { 5, "ms4000" }, + { 6, "ms8000" }, + { 7, "ms10000-v1310" }, { 0, NULL } }; static int -dissect_lte_rrc_T_attachWithoutPDN_Connectivity_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t304(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_up_CIoT_EPS_Optimisation_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t CarrierFreqGERAN_sequence[] = { + { &hf_lte_rrc_arfcn_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueGERAN }, + { &hf_lte_rrc_bandIndicator, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandIndicatorGERAN }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_up_CIoT_EPS_Optimisation_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CarrierFreqGERAN(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_lte_rrc_CarrierFreqGERAN, CarrierFreqGERAN_sequence); return offset; } -static const value_string lte_rrc_T_cp_CIoT_EPS_Optimisation_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_geran_sequence[] = { + { &hf_lte_rrc_physCellId , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdGERAN }, + { &hf_lte_rrc_carrierFreq , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqGERAN }, + { &hf_lte_rrc_networkControlOrder, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_2 }, + { &hf_lte_rrc_systemInformation_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SI_OrPSI_GERAN }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_cp_CIoT_EPS_Optimisation_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_geran(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_lte_rrc_T_geran, T_geran_sequence); return offset; } -static const value_string lte_rrc_T_ue_CE_NeedULGaps_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_targetRAT_Type_01_vals[] = { + { 0, "geran" }, { 0, NULL } }; +static const per_choice_t T_targetRAT_Type_01_choice[] = { + { 0, &hf_lte_rrc_geran , ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_geran }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_ue_CE_NeedULGaps_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_targetRAT_Type_01(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_lte_rrc_T_targetRAT_Type_01, T_targetRAT_Type_01_choice, + NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_40_sequence[] = { +static const per_sequence_t CellChangeOrder_sequence[] = { + { &hf_lte_rrc_t304 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t304 }, + { &hf_lte_rrc_targetRAT_Type_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_targetRAT_Type_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellChangeOrder(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_lte_rrc_T_nonCriticalExtension_40, T_nonCriticalExtension_40_sequence); + ett_lte_rrc_CellChangeOrder, CellChangeOrder_sequence); return offset; } -static const per_sequence_t RRCConnectionSetupComplete_v1430_IEs_sequence[] = { - { &hf_lte_rrc_dcn_ID_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, - { &hf_lte_rrc_nonCriticalExtension_121, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_40 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_purpose_vals[] = { + { 0, "handover" }, + { 1, "cellChangeOrder" }, + { 0, NULL } }; -static int -dissect_lte_rrc_RRCConnectionSetupComplete_v1430_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1430_IEs, RRCConnectionSetupComplete_v1430_IEs_sequence); - - return offset; -} - - -static const per_sequence_t RRCConnectionSetupComplete_v1330_IEs_sequence[] = { - { &hf_lte_rrc_ue_CE_NeedULGaps_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CE_NeedULGaps_r13 }, - { &hf_lte_rrc_nonCriticalExtension_120, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1430_IEs }, - { NULL, 0, 0, NULL } +static const per_choice_t T_purpose_choice[] = { + { 0, &hf_lte_rrc_handover , ASN1_NO_EXTENSIONS , dissect_lte_rrc_Handover }, + { 1, &hf_lte_rrc_cellChangeOrder, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CellChangeOrder }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionSetupComplete_v1330_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1330_IEs, RRCConnectionSetupComplete_v1330_IEs_sequence); +dissect_lte_rrc_T_purpose(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_lte_rrc_T_purpose, T_purpose_choice, + NULL); return offset; } -static const per_sequence_t RRCConnectionSetupComplete_v1320_IEs_sequence[] = { - { &hf_lte_rrc_ce_ModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ModeB_r13 }, - { &hf_lte_rrc_s_TMSI_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_S_TMSI }, - { &hf_lte_rrc_attachWithoutPDN_Connectivity_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_attachWithoutPDN_Connectivity_r13 }, - { &hf_lte_rrc_up_CIoT_EPS_Optimisation_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_up_CIoT_EPS_Optimisation_r13 }, - { &hf_lte_rrc_cp_CIoT_EPS_Optimisation_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cp_CIoT_EPS_Optimisation_r13 }, - { &hf_lte_rrc_nonCriticalExtension_119, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1330_IEs }, +static const per_sequence_t T_nonCriticalExtension_24_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionSetupComplete_v1320_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_24(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_lte_rrc_RRCConnectionSetupComplete_v1320_IEs, RRCConnectionSetupComplete_v1320_IEs_sequence); + ett_lte_rrc_T_nonCriticalExtension_24, T_nonCriticalExtension_24_sequence); return offset; } -static const per_sequence_t RRCConnectionSetupComplete_v1250_IEs_sequence[] = { - { &hf_lte_rrc_mobilityState_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityState_r12 }, - { &hf_lte_rrc_mobilityHistoryAvail_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityHistoryAvail_r12 }, - { &hf_lte_rrc_logMeasAvailableMBSFN_r12_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableMBSFN_r12_02 }, - { &hf_lte_rrc_nonCriticalExtension_118, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1320_IEs }, +static const per_sequence_t MobilityFromEUTRACommand_v8d0_IEs_sequence[] = { + { &hf_lte_rrc_bandIndicator, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandIndicatorGERAN }, + { &hf_lte_rrc_nonCriticalExtension_62, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_24 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionSetupComplete_v1250_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MobilityFromEUTRACommand_v8d0_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1250_IEs, RRCConnectionSetupComplete_v1250_IEs_sequence); + ett_lte_rrc_MobilityFromEUTRACommand_v8d0_IEs, MobilityFromEUTRACommand_v8d0_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionSetupComplete_v1130_IEs_sequence[] = { - { &hf_lte_rrc_connEstFailInfoAvailable_r11_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connEstFailInfoAvailable_r11_02 }, - { &hf_lte_rrc_nonCriticalExtension_117, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1250_IEs }, +static const per_sequence_t MobilityFromEUTRACommand_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_61, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityFromEUTRACommand_v8d0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionSetupComplete_v1130_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MobilityFromEUTRACommand_v8a0_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1130_IEs, RRCConnectionSetupComplete_v1130_IEs_sequence); + ett_lte_rrc_MobilityFromEUTRACommand_v8a0_IEs, MobilityFromEUTRACommand_v8a0_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionSetupComplete_v1020_IEs_sequence[] = { - { &hf_lte_rrc_gummei_Type_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gummei_Type_r10 }, - { &hf_lte_rrc_rlf_InfoAvailable_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlf_InfoAvailable_r10_01 }, - { &hf_lte_rrc_logMeasAvailable_r10_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailable_r10_02 }, - { &hf_lte_rrc_rn_SubframeConfigReq_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rn_SubframeConfigReq_r10 }, - { &hf_lte_rrc_nonCriticalExtension_116, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1130_IEs }, +static const per_sequence_t MobilityFromEUTRACommand_r8_IEs_sequence[] = { + { &hf_lte_rrc_cs_FallbackIndicator, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_purpose , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_purpose }, + { &hf_lte_rrc_nonCriticalExtension_60, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityFromEUTRACommand_v8a0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionSetupComplete_v1020_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MobilityFromEUTRACommand_r8_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1020_IEs, RRCConnectionSetupComplete_v1020_IEs_sequence); + ett_lte_rrc_MobilityFromEUTRACommand_r8_IEs, MobilityFromEUTRACommand_r8_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionSetupComplete_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_115, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1020_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mobilityCDMA2000_HRPD_r9_vals[] = { + { 0, "handover" }, + { 1, "redirection" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRCConnectionSetupComplete_v8a0_IEs(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_lte_rrc_RRCConnectionSetupComplete_v8a0_IEs, RRCConnectionSetupComplete_v8a0_IEs_sequence); +dissect_lte_rrc_T_mobilityCDMA2000_HRPD_r9(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionSetupComplete_r8_IEs_sequence[] = { - { &hf_lte_rrc_selectedPLMN_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, - { &hf_lte_rrc_registeredMME, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RegisteredMME }, - { &hf_lte_rrc_dedicatedInfoNAS, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoNAS }, - { &hf_lte_rrc_nonCriticalExtension_114, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v8a0_IEs }, +static const per_sequence_t E_CSFB_r9_sequence[] = { + { &hf_lte_rrc_messageContCDMA2000_1XRTT_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_mobilityCDMA2000_HRPD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityCDMA2000_HRPD_r9 }, + { &hf_lte_rrc_messageContCDMA2000_HRPD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_redirectCarrierCDMA2000_HRPD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqCDMA2000 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionSetupComplete_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_E_CSFB_r9(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_lte_rrc_RRCConnectionSetupComplete_r8_IEs, RRCConnectionSetupComplete_r8_IEs_sequence); + ett_lte_rrc_E_CSFB_r9, E_CSFB_r9_sequence); return offset; } -static const value_string lte_rrc_T_c1_36_vals[] = { - { 0, "rrcConnectionSetupComplete-r8" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_purpose_01_vals[] = { + { 0, "handover" }, + { 1, "cellChangeOrder" }, + { 2, "e-CSFB-r9" }, { 0, NULL } }; -static const per_choice_t T_c1_36_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionSetupComplete_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionSetupComplete_r8_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t T_purpose_01_choice[] = { + { 0, &hf_lte_rrc_handover , ASN1_EXTENSION_ROOT , dissect_lte_rrc_Handover }, + { 1, &hf_lte_rrc_cellChangeOrder, ASN1_EXTENSION_ROOT , dissect_lte_rrc_CellChangeOrder }, + { 2, &hf_lte_rrc_e_CSFB_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_E_CSFB_r9 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_36(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_purpose_01(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_lte_rrc_T_c1_36, T_c1_36_choice, + ett_lte_rrc_T_purpose_01, T_purpose_01_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_36_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_25_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_36(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_25(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_lte_rrc_T_criticalExtensionsFuture_36, T_criticalExtensionsFuture_36_sequence); + ett_lte_rrc_T_nonCriticalExtension_25, T_nonCriticalExtension_25_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_36_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_36_choice[] = { - { 0, &hf_lte_rrc_c1_36 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_36 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_36, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_36 }, - { 0, NULL, 0, NULL } +static const per_sequence_t MobilityFromEUTRACommand_v1530_IEs_sequence[] = { + { &hf_lte_rrc_smtc_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MTC_SSB_NR_r15 }, + { &hf_lte_rrc_nonCriticalExtension_66, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_25 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_36(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_lte_rrc_T_criticalExtensions_36, T_criticalExtensions_36_choice, - NULL); +dissect_lte_rrc_MobilityFromEUTRACommand_v1530_IEs(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_lte_rrc_MobilityFromEUTRACommand_v1530_IEs, MobilityFromEUTRACommand_v1530_IEs_sequence); return offset; } -static const per_sequence_t RRCConnectionSetupComplete_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_36, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_36 }, +static const per_sequence_t MobilityFromEUTRACommand_v960_IEs_sequence[] = { + { &hf_lte_rrc_bandIndicator, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandIndicatorGERAN }, + { &hf_lte_rrc_nonCriticalExtension_65, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityFromEUTRACommand_v1530_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionSetupComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionSetupComplete"); - +dissect_lte_rrc_MobilityFromEUTRACommand_v960_IEs(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_lte_rrc_RRCConnectionSetupComplete, RRCConnectionSetupComplete_sequence); + ett_lte_rrc_MobilityFromEUTRACommand_v960_IEs, MobilityFromEUTRACommand_v960_IEs_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_47_sequence[] = { +static const per_sequence_t MobilityFromEUTRACommand_v930_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_64, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityFromEUTRACommand_v960_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_47(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MobilityFromEUTRACommand_v930_IEs(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_lte_rrc_T_nonCriticalExtension_47, T_nonCriticalExtension_47_sequence); + ett_lte_rrc_MobilityFromEUTRACommand_v930_IEs, MobilityFromEUTRACommand_v930_IEs_sequence); return offset; } -static const per_sequence_t SecurityModeComplete_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_132, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_47 }, +static const per_sequence_t MobilityFromEUTRACommand_r9_IEs_sequence[] = { + { &hf_lte_rrc_cs_FallbackIndicator, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_purpose_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_purpose_01 }, + { &hf_lte_rrc_nonCriticalExtension_63, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityFromEUTRACommand_v930_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SecurityModeComplete_v8a0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MobilityFromEUTRACommand_r9_IEs(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_lte_rrc_SecurityModeComplete_v8a0_IEs, SecurityModeComplete_v8a0_IEs_sequence); + ett_lte_rrc_MobilityFromEUTRACommand_r9_IEs, MobilityFromEUTRACommand_r9_IEs_sequence); return offset; } -static const per_sequence_t SecurityModeComplete_r8_IEs_sequence[] = { - { &hf_lte_rrc_nonCriticalExtension_131, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityModeComplete_v8a0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_c1_26_vals[] = { + { 0, "mobilityFromEUTRACommand-r8" }, + { 1, "mobilityFromEUTRACommand-r9" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_26_choice[] = { + { 0, &hf_lte_rrc_mobilityFromEUTRACommand_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MobilityFromEUTRACommand_r8_IEs }, + { 1, &hf_lte_rrc_mobilityFromEUTRACommand_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MobilityFromEUTRACommand_r9_IEs }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SecurityModeComplete_r8_IEs(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_lte_rrc_SecurityModeComplete_r8_IEs, SecurityModeComplete_r8_IEs_sequence); +dissect_lte_rrc_T_c1_26(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_lte_rrc_T_c1_26, T_c1_26_choice, + NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_40_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_20_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_20(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_lte_rrc_T_criticalExtensionsFuture_40, T_criticalExtensionsFuture_40_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_20, T_criticalExtensionsFuture_20_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_40_vals[] = { - { 0, "securityModeComplete-r8" }, +static const value_string lte_rrc_T_criticalExtensions_20_vals[] = { + { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_40_choice[] = { - { 0, &hf_lte_rrc_securityModeComplete_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeComplete_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_40, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_40 }, +static const per_choice_t T_criticalExtensions_20_choice[] = { + { 0, &hf_lte_rrc_c1_26 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_26 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_20, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_20 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_20(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_lte_rrc_T_criticalExtensions_40, T_criticalExtensions_40_choice, + ett_lte_rrc_T_criticalExtensions_20, T_criticalExtensions_20_choice, NULL); return offset; } -static const per_sequence_t SecurityModeComplete_sequence[] = { +static const per_sequence_t MobilityFromEUTRACommand_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_40, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_40 }, + { &hf_lte_rrc_criticalExtensions_20, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_20 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SecurityModeComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MobilityFromEUTRACommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecurityModeComplete"); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MobilityFromEUTRACommand"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SecurityModeComplete, SecurityModeComplete_sequence); + ett_lte_rrc_MobilityFromEUTRACommand, MobilityFromEUTRACommand_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_48_sequence[] = { +static const per_sequence_t CarrierFreqEUTRA_sequence[] = { + { &hf_lte_rrc_dl_CarrierFreq, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &hf_lte_rrc_ul_CarrierFreq, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_48(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CarrierFreqEUTRA(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_lte_rrc_T_nonCriticalExtension_48, T_nonCriticalExtension_48_sequence); + ett_lte_rrc_CarrierFreqEUTRA, CarrierFreqEUTRA_sequence); return offset; } -static const per_sequence_t SecurityModeFailure_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_134, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_48 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dl_Bandwidth_01_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, + { 6, "spare10" }, + { 7, "spare9" }, + { 8, "spare8" }, + { 9, "spare7" }, + { 10, "spare6" }, + { 11, "spare5" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SecurityModeFailure_v8a0_IEs(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_lte_rrc_SecurityModeFailure_v8a0_IEs, SecurityModeFailure_v8a0_IEs_sequence); +dissect_lte_rrc_T_dl_Bandwidth_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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SecurityModeFailure_r8_IEs_sequence[] = { - { &hf_lte_rrc_nonCriticalExtension_133, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityModeFailure_v8a0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ul_Bandwidth_01_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, + { 6, "spare10" }, + { 7, "spare9" }, + { 8, "spare8" }, + { 9, "spare7" }, + { 10, "spare6" }, + { 11, "spare5" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SecurityModeFailure_r8_IEs(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_lte_rrc_SecurityModeFailure_r8_IEs, SecurityModeFailure_r8_IEs_sequence); +dissect_lte_rrc_T_ul_Bandwidth_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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_41_sequence[] = { +static const per_sequence_t CarrierBandwidthEUTRA_sequence[] = { + { &hf_lte_rrc_dl_Bandwidth_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_Bandwidth_01 }, + { &hf_lte_rrc_ul_Bandwidth_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_41(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CarrierBandwidthEUTRA(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_lte_rrc_T_criticalExtensionsFuture_41, T_criticalExtensionsFuture_41_sequence); + ett_lte_rrc_CarrierBandwidthEUTRA, CarrierBandwidthEUTRA_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_41_vals[] = { - { 0, "securityModeFailure-r8" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_t304_01_vals[] = { + { 0, "ms50" }, + { 1, "ms100" }, + { 2, "ms150" }, + { 3, "ms200" }, + { 4, "ms500" }, + { 5, "ms1000" }, + { 6, "ms2000" }, + { 7, "ms10000-v1310" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_41_choice[] = { - { 0, &hf_lte_rrc_securityModeFailure_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeFailure_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_41, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_41 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_41(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_lte_rrc_T_criticalExtensions_41, T_criticalExtensions_41_choice, - NULL); +dissect_lte_rrc_T_t304_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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SecurityModeFailure_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_41, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_41 }, +static const per_sequence_t RadioResourceConfigCommon_eag_1_sequence[] = { + { &hf_lte_rrc_uplinkPowerControlCommon_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1020 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SecurityModeFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - mac_lte_info *p_mac_lte_info; - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SecurityModeFailure, SecurityModeFailure_sequence); - - /* Look for UE identifier */ - p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0); +dissect_lte_rrc_RadioResourceConfigCommon_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_1_sequence); - if (p_mac_lte_info != NULL) { - /* Inform PDCP that the UE failed to execute the securityModeCommand */ - set_pdcp_lte_security_algorithms_failed(p_mac_lte_info->ueid); - } + return offset; +} - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecurityModeFailure"); +static const per_sequence_t RadioResourceConfigCommon_eag_2_sequence[] = { + { &hf_lte_rrc_tdd_Config_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1130 }, + { NULL, 0, 0, NULL } +}; +static int +dissect_lte_rrc_RadioResourceConfigCommon_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_2_sequence); return offset; } +static const per_sequence_t RadioResourceConfigCommon_eag_3_sequence[] = { + { &hf_lte_rrc_pusch_ConfigCommon_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigCommon_v1270 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 0U, NULL, FALSE); +dissect_lte_rrc_RadioResourceConfigCommon_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_3_sequence); return offset; } -static const value_string lte_rrc_T_ue_CategoryDL_v1310_01_vals[] = { - { 0, "m1" }, +static const value_string lte_rrc_T_fdd_r13_02_vals[] = { + { 0, "v1" }, + { 1, "v1dot5" }, + { 2, "v2" }, + { 3, "v2dot5" }, + { 4, "v4" }, + { 5, "v5" }, + { 6, "v8" }, + { 7, "v10" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_CategoryDL_v1310_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_fdd_r13_02(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ce_ModeA_r13_01_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_tdd_r13_02_vals[] = { + { 0, "v1" }, + { 1, "v2" }, + { 2, "v4" }, + { 3, "v5" }, + { 4, "v8" }, + { 5, "v10" }, + { 6, "v20" }, + { 7, "spare" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_ModeA_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tdd_r13_02(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ce_ModeB_r13_02_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01_vals[] = { + { 0, "fdd-r13" }, + { 1, "tdd-r13" }, { 0, NULL } }; +static const per_choice_t T_mpdcch_startSF_CSS_RA_r13_01_choice[] = { + { 0, &hf_lte_rrc_fdd_r13_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fdd_r13_02 }, + { 1, &hf_lte_rrc_tdd_r13_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tdd_r13_02 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_ce_ModeB_r13_02(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01(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_lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01, T_mpdcch_startSF_CSS_RA_r13_01_choice, + NULL); return offset; } -static const per_sequence_t UE_RadioPagingInfo_r12_eag_1_sequence[] = { - { &hf_lte_rrc_ue_CategoryDL_v1310_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryDL_v1310_01 }, - { &hf_lte_rrc_ce_ModeA_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ModeA_r13_01 }, - { &hf_lte_rrc_ce_ModeB_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ModeB_r13_02 }, +static const per_sequence_t PRACH_Config_v1310_sequence[] = { + { &hf_lte_rrc_rsrp_ThresholdsPrachInfoList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_ThresholdsPrachInfoList_r13 }, + { &hf_lte_rrc_mpdcch_startSF_CSS_RA_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01 }, + { &hf_lte_rrc_prach_HoppingOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_94 }, + { &hf_lte_rrc_prach_ParametersListCE_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_ParametersListCE_r13 }, + { &hf_lte_rrc_initial_CE_level_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_RadioPagingInfo_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_RadioPagingInfo_r12_eag_1_sequence); +dissect_lte_rrc_PRACH_Config_v1310(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_lte_rrc_PRACH_Config_v1310, PRACH_Config_v1310_sequence); return offset; } -static const per_sequence_t UE_RadioPagingInfo_r12_sequence[] = { - { &hf_lte_rrc_ue_Category_v1250, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_RadioPagingInfo_r12_eag_1 }, +static const per_sequence_t RadioResourceConfigCommon_eag_4_sequence[] = { + { &hf_lte_rrc_prach_Config_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_Config_v1310 }, + { &hf_lte_rrc_freqHoppingParameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqHoppingParameters_r13 }, + { &hf_lte_rrc_pdsch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigCommon_v1310 }, + { &hf_lte_rrc_pucch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon_v1310 }, + { &hf_lte_rrc_pusch_ConfigCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUSCH_ConfigCommon_v1310 }, + { &hf_lte_rrc_uplinkPowerControlCommon_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1310 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_RadioPagingInfo_r12(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_lte_rrc_UE_RadioPagingInfo_r12, UE_RadioPagingInfo_r12_sequence); +dissect_lte_rrc_RadioResourceConfigCommon_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_4_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_56_sequence[] = { +static const per_sequence_t RadioResourceConfigCommon_eag_5_sequence[] = { + { &hf_lte_rrc_highSpeedConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HighSpeedConfig_r14 }, + { &hf_lte_rrc_prach_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PRACH_Config_v1430 }, + { &hf_lte_rrc_pucch_ConfigCommon_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon_v1430 }, + { &hf_lte_rrc_tdd_Config_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_56(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_lte_rrc_T_nonCriticalExtension_56, T_nonCriticalExtension_56_sequence); +dissect_lte_rrc_RadioResourceConfigCommon_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_5_sequence); return offset; } -static const per_sequence_t UECapabilityInformation_v1250_IEs_sequence[] = { - { &hf_lte_rrc_ue_RadioPagingInfo_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_RadioPagingInfo_r12 }, - { &hf_lte_rrc_nonCriticalExtension_167, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_56 }, +static const per_sequence_t RadioResourceConfigCommon_eag_6_sequence[] = { + { &hf_lte_rrc_tdd_Config_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config_v1450 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UECapabilityInformation_v1250_IEs(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_lte_rrc_UECapabilityInformation_v1250_IEs, UECapabilityInformation_v1250_IEs_sequence); +dissect_lte_rrc_RadioResourceConfigCommon_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_6_sequence); return offset; } -static const per_sequence_t UECapabilityInformation_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_166, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityInformation_v1250_IEs }, +static const per_sequence_t RadioResourceConfigCommon_eag_7_sequence[] = { + { &hf_lte_rrc_uplinkPowerControlCommon_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon_v1530 }, + { &hf_lte_rrc_highSpeedConfig_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HighSpeedConfig_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UECapabilityInformation_v8a0_IEs(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_lte_rrc_UECapabilityInformation_v8a0_IEs, UECapabilityInformation_v8a0_IEs_sequence); +dissect_lte_rrc_RadioResourceConfigCommon_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommon_eag_7_sequence); return offset; } -static const per_sequence_t UECapabilityInformation_r8_IEs_sequence[] = { - { &hf_lte_rrc_ue_CapabilityRAT_ContainerList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_CapabilityRAT_ContainerList }, - { &hf_lte_rrc_nonCriticalExtension_165, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityInformation_v8a0_IEs }, +static const per_sequence_t RadioResourceConfigCommon_sequence[] = { + { &hf_lte_rrc_rach_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RACH_ConfigCommon }, + { &hf_lte_rrc_prach_Config_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PRACH_Config }, + { &hf_lte_rrc_pdsch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PDSCH_ConfigCommon }, + { &hf_lte_rrc_pusch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PUSCH_ConfigCommon }, + { &hf_lte_rrc_phich_Config, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PHICH_Config }, + { &hf_lte_rrc_pucch_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PUCCH_ConfigCommon }, + { &hf_lte_rrc_soundingRS_UL_ConfigCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SoundingRS_UL_ConfigCommon }, + { &hf_lte_rrc_uplinkPowerControlCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlCommon }, + { &hf_lte_rrc_antennaInfoCommon, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoCommon }, + { &hf_lte_rrc_p_Max , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_tdd_Config , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, + { &hf_lte_rrc_ul_CyclicPrefixLength, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CyclicPrefixLength }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon_eag_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UECapabilityInformation_r8_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RadioResourceConfigCommon(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_lte_rrc_UECapabilityInformation_r8_IEs, UECapabilityInformation_r8_IEs_sequence); + ett_lte_rrc_RadioResourceConfigCommon, RadioResourceConfigCommon_sequence); return offset; } -static const value_string lte_rrc_T_c1_43_vals[] = { - { 0, "ueCapabilityInformation-r8" }, - { 1, "spare7" }, - { 2, "spare6" }, - { 3, "spare5" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_43_choice[] = { - { 0, &hf_lte_rrc_ueCapabilityInformation_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UECapabilityInformation_r8_IEs }, - { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t CarrierFreqEUTRA_v9e0_sequence[] = { + { &hf_lte_rrc_dl_CarrierFreq_v9e0_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_ul_CarrierFreq_v9e0_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_43(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_lte_rrc_T_c1_43, T_c1_43_choice, - NULL); - +dissect_lte_rrc_CarrierFreqEUTRA_v9e0(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_lte_rrc_CarrierFreqEUTRA_v9e0, CarrierFreqEUTRA_v9e0_sequence); + return offset; } -static const per_sequence_t T_criticalExtensionsFuture_46_sequence[] = { +static const per_sequence_t MobilityControlInfo_eag_1_sequence[] = { + { &hf_lte_rrc_carrierFreq_v9e0_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqEUTRA_v9e0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_46(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_lte_rrc_T_criticalExtensionsFuture_46, T_criticalExtensionsFuture_46_sequence); +dissect_lte_rrc_MobilityControlInfo_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MobilityControlInfo_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_46_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_drb_ContinueROHC_r11_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_46_choice[] = { - { 0, &hf_lte_rrc_c1_43 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_43 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_46, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_46 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_46(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_lte_rrc_T_criticalExtensions_46, T_criticalExtensions_46_choice, - NULL); +dissect_lte_rrc_T_drb_ContinueROHC_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UECapabilityInformation_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_46, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_46 }, +static const per_sequence_t MobilityControlInfo_eag_2_sequence[] = { + { &hf_lte_rrc_drb_ContinueROHC_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_ContinueROHC_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UECapabilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MobilityControlInfo_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MobilityControlInfo_eag_2_sequence); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UECapabilityInformation"); + return offset; +} + + +static const per_sequence_t MobilityControlInfoV2X_r14_sequence[] = { + { &hf_lte_rrc_v2x_CommTxPoolExceptional_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommResourcePoolV2X_r14 }, + { &hf_lte_rrc_v2x_CommRxPool_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommRxPoolListV2X_r14 }, + { &hf_lte_rrc_v2x_CommSyncConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigListV2X_r14 }, + { &hf_lte_rrc_cbr_MobilityTxConfigList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_CommonTxConfigList_r14 }, + { NULL, 0, 0, NULL } +}; +static int +dissect_lte_rrc_MobilityControlInfoV2X_r14(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_lte_rrc_UECapabilityInformation, UECapabilityInformation_sequence); + ett_lte_rrc_MobilityControlInfoV2X_r14, MobilityControlInfoV2X_r14_sequence); return offset; } +static const value_string lte_rrc_T_handoverWithoutWT_Change_r14_vals[] = { + { 0, "keepLWA-Config" }, + { 1, "sendEndMarker" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_BIT_STRING_SIZE_56(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, - 56, 56, FALSE, NULL, NULL); +dissect_lte_rrc_T_handoverWithoutWT_Change_r14(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_60_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_makeBeforeBreak_r14_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_60(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_lte_rrc_T_nonCriticalExtension_60, T_nonCriticalExtension_60_sequence); +dissect_lte_rrc_T_makeBeforeBreak_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t ULHandoverPreparationTransfer_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_180, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_60 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sameSFN_Indication_r14_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_ULHandoverPreparationTransfer_v8a0_IEs(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_lte_rrc_ULHandoverPreparationTransfer_v8a0_IEs, ULHandoverPreparationTransfer_v8a0_IEs_sequence); +dissect_lte_rrc_T_sameSFN_Indication_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t ULHandoverPreparationTransfer_r8_IEs_sequence[] = { - { &hf_lte_rrc_cdma2000_Type, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CDMA2000_Type }, - { &hf_lte_rrc_meid , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_56 }, - { &hf_lte_rrc_dedicatedInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoCDMA2000 }, - { &hf_lte_rrc_nonCriticalExtension_179, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ULHandoverPreparationTransfer_v8a0_IEs }, +static const per_sequence_t MobilityControlInfo_eag_3_sequence[] = { + { &hf_lte_rrc_mobilityControlInfoV2X_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityControlInfoV2X_r14 }, + { &hf_lte_rrc_handoverWithoutWT_Change_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_handoverWithoutWT_Change_r14 }, + { &hf_lte_rrc_makeBeforeBreak_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_makeBeforeBreak_r14 }, + { &hf_lte_rrc_rach_Skip_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_Skip_r14 }, + { &hf_lte_rrc_sameSFN_Indication_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sameSFN_Indication_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ULHandoverPreparationTransfer_r8_IEs(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_lte_rrc_ULHandoverPreparationTransfer_r8_IEs, ULHandoverPreparationTransfer_r8_IEs_sequence); +dissect_lte_rrc_MobilityControlInfo_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MobilityControlInfo_eag_3_sequence); return offset; } -static const value_string lte_rrc_T_c1_46_vals[] = { - { 0, "ulHandoverPreparationTransfer-r8" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_46_choice[] = { - { 0, &hf_lte_rrc_ulHandoverPreparationTransfer_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULHandoverPreparationTransfer_r8_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t MobilityControlInfo_eag_4_sequence[] = { + { &hf_lte_rrc_mib_RepetitionStatus_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_schedulingInfoSIB1_BR_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_46(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_lte_rrc_T_c1_46, T_c1_46_choice, - NULL); +dissect_lte_rrc_MobilityControlInfo_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MobilityControlInfo_eag_4_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_49_sequence[] = { +static const per_sequence_t MobilityControlInfo_sequence[] = { + { &hf_lte_rrc_targetPhysCellId, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_carrierFreq_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqEUTRA }, + { &hf_lte_rrc_carrierBandwidth, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierBandwidthEUTRA }, + { &hf_lte_rrc_additionalSpectrumEmission, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSpectrumEmission }, + { &hf_lte_rrc_t304_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t304_01 }, + { &hf_lte_rrc_newUE_Identity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_radioResourceConfigCommon_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommon }, + { &hf_lte_rrc_rach_ConfigDedicated, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RACH_ConfigDedicated }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityControlInfo_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityControlInfo_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityControlInfo_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MobilityControlInfo_eag_4 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_49(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MobilityControlInfo(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_lte_rrc_T_criticalExtensionsFuture_49, T_criticalExtensionsFuture_49_sequence); + ett_lte_rrc_MobilityControlInfo, MobilityControlInfo_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_49_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_49_choice[] = { - { 0, &hf_lte_rrc_c1_46 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_46 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_49, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_49 }, - { 0, NULL, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS_sequence_of[1] = { + { &hf_lte_rrc_dedicatedInfoNASList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoNAS }, }; static int -dissect_lte_rrc_T_criticalExtensions_49(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_lte_rrc_T_criticalExtensions_49, T_criticalExtensions_49_choice, - NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS(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_lte_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS, SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS_sequence_of, + 1, maxDRB, FALSE); return offset; } -static const per_sequence_t ULHandoverPreparationTransfer_sequence[] = { - { &hf_lte_rrc_criticalExtensions_49, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_49 }, +static const per_sequence_t T_intraLTE_sequence[] = { + { &hf_lte_rrc_securityAlgorithmConfig, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityAlgorithmConfig }, + { &hf_lte_rrc_keyChangeIndicator, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_nextHopChainingCount, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NextHopChainingCount }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ULHandoverPreparationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_intraLTE(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_lte_rrc_T_intraLTE, T_intraLTE_sequence); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ULHandoverPreparationTransfer"); + return offset; +} + + + +static int +dissect_lte_rrc_T_nas_SecurityParamToEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *nas_sec_param_to_eutra_tvb = NULL; + guint32 length; + proto_tree *subtree; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 6, 6, FALSE, &nas_sec_param_to_eutra_tvb); + + if (nas_sec_param_to_eutra_tvb) { + length = tvb_reported_length(nas_sec_param_to_eutra_tvb); + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nas_SecurityParam); + de_emm_sec_par_to_eutra(nas_sec_param_to_eutra_tvb, subtree, actx->pinfo, 0, length, NULL, 0); + } + + + return offset; +} + + +static const per_sequence_t T_interRAT_sequence[] = { + { &hf_lte_rrc_securityAlgorithmConfig, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityAlgorithmConfig }, + { &hf_lte_rrc_nas_SecurityParamToEUTRA, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nas_SecurityParamToEUTRA }, + { NULL, 0, 0, NULL } +}; +static int +dissect_lte_rrc_T_interRAT(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_lte_rrc_ULHandoverPreparationTransfer, ULHandoverPreparationTransfer_sequence); + ett_lte_rrc_T_interRAT, T_interRAT_sequence); return offset; } -static const value_string lte_rrc_T_dedicatedInfoType_01_vals[] = { - { 0, "dedicatedInfoNAS" }, - { 1, "dedicatedInfoCDMA2000-1XRTT" }, - { 2, "dedicatedInfoCDMA2000-HRPD" }, +static const value_string lte_rrc_T_handoverType_vals[] = { + { 0, "intraLTE" }, + { 1, "interRAT" }, { 0, NULL } }; -static const per_choice_t T_dedicatedInfoType_01_choice[] = { - { 0, &hf_lte_rrc_dedicatedInfoNAS, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoNAS }, - { 1, &hf_lte_rrc_dedicatedInfoCDMA2000_1XRTT, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoCDMA2000 }, - { 2, &hf_lte_rrc_dedicatedInfoCDMA2000_HRPD, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoCDMA2000 }, +static const per_choice_t T_handoverType_choice[] = { + { 0, &hf_lte_rrc_intraLTE , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_intraLTE }, + { 1, &hf_lte_rrc_interRAT , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interRAT }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_dedicatedInfoType_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_handoverType(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_lte_rrc_T_dedicatedInfoType_01, T_dedicatedInfoType_01_choice, + ett_lte_rrc_T_handoverType, T_handoverType_choice, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_61_sequence[] = { +static const per_sequence_t SecurityConfigHO_sequence[] = { + { &hf_lte_rrc_handoverType, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_handoverType }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_61(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SecurityConfigHO(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_lte_rrc_T_nonCriticalExtension_61, T_nonCriticalExtension_61_sequence); + ett_lte_rrc_SecurityConfigHO, SecurityConfigHO_sequence); return offset; } -static const per_sequence_t ULInformationTransfer_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_182, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_61 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_ULInformationTransfer_v8a0_IEs(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_lte_rrc_ULInformationTransfer_v8a0_IEs, ULInformationTransfer_v8a0_IEs_sequence); +dissect_lte_rrc_T_lateNonCriticalExtension_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_RRCConnectionReconfiguration_v8m0_IEs_PDU); return offset; } -static const per_sequence_t ULInformationTransfer_r8_IEs_sequence[] = { - { &hf_lte_rrc_dedicatedInfoType_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dedicatedInfoType_01 }, - { &hf_lte_rrc_nonCriticalExtension_181, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ULInformationTransfer_v8a0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_fullConfig_r9_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_ULInformationTransfer_r8_IEs(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_lte_rrc_ULInformationTransfer_r8_IEs, ULInformationTransfer_r8_IEs_sequence); +dissect_lte_rrc_T_fullConfig_r9(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_c1_47_vals[] = { - { 0, "ulInformationTransfer-r8" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, + +static int +dissect_lte_rrc_T_systemInformationBlockType1Dedicated_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType1_PDU); + + return offset; +} + + +static const value_string lte_rrc_T_t350_r12_vals[] = { + { 0, "min5" }, + { 1, "min10" }, + { 2, "min20" }, + { 3, "min30" }, + { 4, "min60" }, + { 5, "min120" }, + { 6, "min180" }, + { 7, "spare1" }, { 0, NULL } }; -static const per_choice_t T_c1_47_choice[] = { - { 0, &hf_lte_rrc_ulInformationTransfer_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULInformationTransfer_r8_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_47(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_lte_rrc_T_c1_47, T_c1_47_choice, - NULL); +dissect_lte_rrc_T_t350_r12(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_50_sequence[] = { +static const per_sequence_t T_setup_sequence[] = { + { &hf_lte_rrc_wlan_OffloadConfigDedicated_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_OffloadConfig_r12 }, + { &hf_lte_rrc_t350_r12 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t350_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup(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_lte_rrc_T_criticalExtensionsFuture_50, T_criticalExtensionsFuture_50_sequence); + ett_lte_rrc_T_setup, T_setup_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_50_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_wlan_OffloadInfo_r12_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_50_choice[] = { - { 0, &hf_lte_rrc_c1_47 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_47 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_50, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_50 }, +static const per_choice_t T_wlan_OffloadInfo_r12_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_50(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_wlan_OffloadInfo_r12(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_lte_rrc_T_criticalExtensions_50, T_criticalExtensions_50_choice, + ett_lte_rrc_T_wlan_OffloadInfo_r12, T_wlan_OffloadInfo_r12_choice, NULL); return offset; } -static const per_sequence_t ULInformationTransfer_sequence[] = { - { &hf_lte_rrc_criticalExtensions_50, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_50 }, +static const per_sequence_t T_scg_ConfigPartMCG_r12_sequence[] = { + { &hf_lte_rrc_scg_Counter_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, + { &hf_lte_rrc_powerCoordinationInfo_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PowerCoordinationInfo_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ULInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ULInformationTransfer"); - +dissect_lte_rrc_T_scg_ConfigPartMCG_r12(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_lte_rrc_ULInformationTransfer, ULInformationTransfer_sequence); + ett_lte_rrc_T_scg_ConfigPartMCG_r12, T_scg_ConfigPartMCG_r12_sequence); return offset; } +static const per_sequence_t T_setup_03_sequence[] = { + { &hf_lte_rrc_scg_ConfigPartMCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scg_ConfigPartMCG_r12 }, + { &hf_lte_rrc_scg_ConfigPartSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigPartSCG_r12 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_4294967295(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 4294967295U, NULL, FALSE); +dissect_lte_rrc_T_setup_03(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_lte_rrc_T_setup_03, T_setup_03_sequence); return offset; } -static const per_sequence_t DRB_CountInfo_sequence[] = { - { &hf_lte_rrc_drb_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, - { &hf_lte_rrc_count_Uplink, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_4294967295 }, - { &hf_lte_rrc_count_Downlink, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_4294967295 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_SCG_Configuration_r12_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t SCG_Configuration_r12_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_03 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_03 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_DRB_CountInfo(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_lte_rrc_DRB_CountInfo, DRB_CountInfo_sequence); +dissect_lte_rrc_SCG_Configuration_r12(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_lte_rrc_SCG_Configuration_r12, SCG_Configuration_r12_choice, + NULL); return offset; } -static const per_sequence_t DRB_CountInfoList_sequence_of[1] = { - { &hf_lte_rrc_DRB_CountInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_CountInfo }, +static const value_string lte_rrc_T_networkControlledSyncTx_r12_vals[] = { + { 0, "on" }, + { 1, "off" }, + { 0, NULL } }; + static int -dissect_lte_rrc_DRB_CountInfoList(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_lte_rrc_DRB_CountInfoList, DRB_CountInfoList_sequence_of, - 0, maxDRB, FALSE); +dissect_lte_rrc_T_networkControlledSyncTx_r12(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_09_sequence[] = { +static const per_sequence_t SL_SyncTxControl_r12_sequence[] = { + { &hf_lte_rrc_networkControlledSyncTx_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_networkControlledSyncTx_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_09(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_SyncTxControl_r12(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_lte_rrc_T_nonCriticalExtension_09, T_nonCriticalExtension_09_sequence); + ett_lte_rrc_SL_SyncTxControl_r12, SL_SyncTxControl_r12_sequence); return offset; } -static const per_sequence_t CounterCheckResponse_v8a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_23, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_09 }, +static const per_sequence_t T_setup_46_sequence[] = { + { &hf_lte_rrc_lwa_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LWA_Config_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CounterCheckResponse_v8a0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_46(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_lte_rrc_CounterCheckResponse_v8a0_IEs, CounterCheckResponse_v8a0_IEs_sequence); + ett_lte_rrc_T_setup_46, T_setup_46_sequence); return offset; } -static const per_sequence_t CounterCheckResponse_r8_IEs_sequence[] = { - { &hf_lte_rrc_drb_CountInfoList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_CountInfoList }, - { &hf_lte_rrc_nonCriticalExtension_22, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CounterCheckResponse_v8a0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_LWA_Configuration_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t LWA_Configuration_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_54 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_46 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_CounterCheckResponse_r8_IEs(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_lte_rrc_CounterCheckResponse_r8_IEs, CounterCheckResponse_r8_IEs_sequence); +dissect_lte_rrc_LWA_Configuration_r13(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_lte_rrc_LWA_Configuration_r13, LWA_Configuration_r13_choice, + NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_08_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensionsFuture_08(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_lte_rrc_T_criticalExtensionsFuture_08, T_criticalExtensionsFuture_08_sequence); +dissect_lte_rrc_T_ipv4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *ipv4_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, + 32, 32, FALSE, &ipv4_tvb, NULL); + + if (ipv4_tvb) { + actx->created_item = proto_tree_add_item(tree, hf_index, ipv4_tvb, 0, 4, ENC_BIG_ENDIAN); + } + return offset; } -static const value_string lte_rrc_T_criticalExtensions_08_vals[] = { - { 0, "counterCheckResponse-r8" }, - { 1, "criticalExtensionsFuture" }, + +static int +dissect_lte_rrc_T_ipv6_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *ipv6_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, + 128, 128, FALSE, &ipv6_tvb, NULL); + + if (ipv6_tvb) { + actx->created_item = proto_tree_add_item(tree, hf_index, ipv6_tvb, 0, 16, ENC_BIG_ENDIAN); + } + + + return offset; +} + + +static const value_string lte_rrc_IP_Address_r13_vals[] = { + { 0, "ipv4-r13" }, + { 1, "ipv6-r13" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_08_choice[] = { - { 0, &hf_lte_rrc_counterCheckResponse_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CounterCheckResponse_r8_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_08, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_08 }, +static const per_choice_t IP_Address_r13_choice[] = { + { 0, &hf_lte_rrc_ipv4_r13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ipv4_r13 }, + { 1, &hf_lte_rrc_ipv6_r13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ipv6_r13 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_08(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_IP_Address_r13(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_lte_rrc_T_criticalExtensions_08, T_criticalExtensions_08_choice, + ett_lte_rrc_IP_Address_r13, IP_Address_r13_choice, NULL); return offset; } -static const per_sequence_t CounterCheckResponse_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_08, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_08 }, +static const per_sequence_t IKE_Identity_r13_sequence[] = { + { &hf_lte_rrc_idI_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CounterCheckResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CounterCheckResponse"); - +dissect_lte_rrc_IKE_Identity_r13(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_lte_rrc_CounterCheckResponse, CounterCheckResponse_sequence); + ett_lte_rrc_IKE_Identity_r13, IKE_Identity_r13_sequence); return offset; } +static const per_sequence_t TunnelConfigLWIP_r13_eag_1_sequence[] = { + { &hf_lte_rrc_lwip_Counter_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_NumberOfPreamblesSent_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 200U, NULL, FALSE); +dissect_lte_rrc_TunnelConfigLWIP_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, TunnelConfigLWIP_r13_eag_1_sequence); return offset; } -static const per_sequence_t T_rach_Report_r9_sequence[] = { - { &hf_lte_rrc_numberOfPreamblesSent_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NumberOfPreamblesSent_r11 }, - { &hf_lte_rrc_contentionDetected_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t TunnelConfigLWIP_r13_sequence[] = { + { &hf_lte_rrc_ip_Address_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IP_Address_r13 }, + { &hf_lte_rrc_ike_Identity_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IKE_Identity_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_TunnelConfigLWIP_r13_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_rach_Report_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_TunnelConfigLWIP_r13(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_lte_rrc_T_rach_Report_r9, T_rach_Report_r9_sequence); + ett_lte_rrc_TunnelConfigLWIP_r13, TunnelConfigLWIP_r13_sequence); return offset; } -static const per_sequence_t T_measResultLastServCell_r9_sequence[] = { - { &hf_lte_rrc_rsrpResult_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResult_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range }, +static const per_sequence_t LWIP_Config_r13_sequence[] = { + { &hf_lte_rrc_lwip_MobilityConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_MobilityConfig_r13 }, + { &hf_lte_rrc_tunnelConfigLWIP_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TunnelConfigLWIP_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultLastServCell_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LWIP_Config_r13(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_lte_rrc_T_measResultLastServCell_r9, T_measResultLastServCell_r9_sequence); + ett_lte_rrc_LWIP_Config_r13, LWIP_Config_r13_sequence); return offset; } -static const per_sequence_t MeasResult2EUTRA_r9_sequence[] = { - { &hf_lte_rrc_carrierFreq_r9_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &hf_lte_rrc_measResultList_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultListEUTRA }, +static const per_sequence_t T_setup_47_sequence[] = { + { &hf_lte_rrc_lwip_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LWIP_Config_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResult2EUTRA_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_47(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_lte_rrc_MeasResult2EUTRA_r9, MeasResult2EUTRA_r9_sequence); + ett_lte_rrc_T_setup_47, T_setup_47_sequence); return offset; } -static const per_sequence_t MeasResultList2EUTRA_r9_sequence_of[1] = { - { &hf_lte_rrc_MeasResultList2EUTRA_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResult2EUTRA_r9 }, +static const value_string lte_rrc_LWIP_Configuration_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t LWIP_Configuration_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_55 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_47 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MeasResultList2EUTRA_r9(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_lte_rrc_MeasResultList2EUTRA_r9, MeasResultList2EUTRA_r9_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_LWIP_Configuration_r13(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_lte_rrc_LWIP_Configuration_r13, LWIP_Configuration_r13_choice, + NULL); return offset; } -static const per_sequence_t MeasResult2UTRA_r9_sequence[] = { - { &hf_lte_rrc_carrierFreq_r9_03, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, - { &hf_lte_rrc_measResultList_r9_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultListUTRA }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sCellState_r15_01_vals[] = { + { 0, "activated" }, + { 1, "dormant" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MeasResult2UTRA_r9(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_lte_rrc_MeasResult2UTRA_r9, MeasResult2UTRA_r9_sequence); +dissect_lte_rrc_T_sCellState_r15_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, + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MeasResultList2UTRA_r9_sequence_of[1] = { - { &hf_lte_rrc_MeasResultList2UTRA_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResult2UTRA_r9 }, +static const per_sequence_t SCellToAddModExt_v1430_eag_1_sequence[] = { + { &hf_lte_rrc_sCellState_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sCellState_r15_01 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultList2UTRA_r9(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_lte_rrc_MeasResultList2UTRA_r9, MeasResultList2UTRA_r9_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_SCellToAddModExt_v1430_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SCellToAddModExt_v1430_eag_1_sequence); return offset; } -static const per_sequence_t MeasResult2CDMA2000_r9_sequence[] = { - { &hf_lte_rrc_carrierFreq_r9_04, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqCDMA2000 }, - { &hf_lte_rrc_measResultList_r9_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultsCDMA2000 }, +static const per_sequence_t SCellToAddModExt_v1430_sequence[] = { + { &hf_lte_rrc_srs_SwitchFromServCellIndex_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddModExt_v1430_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResult2CDMA2000_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCellToAddModExt_v1430(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_lte_rrc_MeasResult2CDMA2000_r9, MeasResult2CDMA2000_r9_sequence); + ett_lte_rrc_SCellToAddModExt_v1430, SCellToAddModExt_v1430_sequence); return offset; } -static const per_sequence_t MeasResultList2CDMA2000_r9_sequence_of[1] = { - { &hf_lte_rrc_MeasResultList2CDMA2000_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResult2CDMA2000_r9 }, +static const per_sequence_t SCellToAddModListExt_v1430_sequence_of[1] = { + { &hf_lte_rrc_SCellToAddModListExt_v1430_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddModExt_v1430 }, }; static int -dissect_lte_rrc_MeasResultList2CDMA2000_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCellToAddModListExt_v1430(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_lte_rrc_MeasResultList2CDMA2000_r9, MeasResultList2CDMA2000_r9_sequence_of, - 1, maxFreq, FALSE); + ett_lte_rrc_SCellToAddModListExt_v1430, SCellToAddModListExt_v1430_sequence_of, + 1, maxSCell_r13, FALSE); return offset; } -static const per_sequence_t T_measResultNeighCells_r9_sequence[] = { - { &hf_lte_rrc_measResultListEUTRA_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_r9 }, - { &hf_lte_rrc_measResultListUTRA_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2UTRA_r9 }, - { &hf_lte_rrc_measResultListGERAN_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListGERAN }, - { &hf_lte_rrc_measResultsCDMA2000_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2CDMA2000_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_perCC_GapIndicationRequest_r14_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_measResultNeighCells_r9(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_lte_rrc_T_measResultNeighCells_r9, T_measResultNeighCells_r9_sequence); +dissect_lte_rrc_T_perCC_GapIndicationRequest_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_pci_arfcn_r10_sequence[] = { - { &hf_lte_rrc_physCellId_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_carrierFreq_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_pci_arfcn_r10(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_lte_rrc_T_pci_arfcn_r10, T_pci_arfcn_r10_sequence); +dissect_lte_rrc_T_systemInformationBlockType2Dedicated_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType2_PDU); return offset; } -static const value_string lte_rrc_T_failedPCellId_r10_vals[] = { - { 0, "cellGlobalId-r10" }, - { 1, "pci-arfcn-r10" }, - { 0, NULL } -}; - -static const per_choice_t T_failedPCellId_r10_choice[] = { - { 0, &hf_lte_rrc_cellGlobalId_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CellGlobalIdEUTRA }, - { 1, &hf_lte_rrc_pci_arfcn_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_pci_arfcn_r10 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_failedPCellId_r10(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_lte_rrc_T_failedPCellId_r10, T_failedPCellId_r10_choice, - NULL); - - return offset; -} +dissect_lte_rrc_T_nr_SecondaryCellGroupConfig_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *rrc_reconfiguration_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &rrc_reconfiguration_tvb); -static const value_string lte_rrc_T_connectionFailureType_r10_vals[] = { - { 0, "rlf" }, - { 1, "hof" }, - { 0, NULL } -}; + if (rrc_reconfiguration_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nr_SecondaryCellGroupConfig_r15); + dissect_nr_rrc_RRCReconfiguration_PDU(rrc_reconfiguration_tvb, actx->pinfo, subtree, NULL); + } -static int -dissect_lte_rrc_T_connectionFailureType_r10(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t RLF_Report_r9_eag_1_sequence[] = { - { &hf_lte_rrc_locationInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LocationInfo_r10 }, - { &hf_lte_rrc_failedPCellId_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_failedPCellId_r10 }, - { &hf_lte_rrc_reestablishmentCellId_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellGlobalIdEUTRA }, - { &hf_lte_rrc_timeConnFailure_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1023 }, - { &hf_lte_rrc_connectionFailureType_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connectionFailureType_r10 }, - { &hf_lte_rrc_previousPCellId_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellGlobalIdEUTRA }, +static const per_sequence_t T_setup_01_sequence[] = { + { &hf_lte_rrc_endc_ReleaseAndAdd_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_nr_SecondaryCellGroupConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_SecondaryCellGroupConfig_r15 }, + { &hf_lte_rrc_p_MaxEUTRA_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RLF_Report_r9_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_1_sequence); +dissect_lte_rrc_T_setup_01(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_lte_rrc_T_setup_01, T_setup_01_sequence); return offset; } -static const per_sequence_t T_failedPCellId_v1090_sequence[] = { - { &hf_lte_rrc_carrierFreq_v1090, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nr_Config_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t T_nr_Config_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_01 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_failedPCellId_v1090(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_lte_rrc_T_failedPCellId_v1090, T_failedPCellId_v1090_sequence); +dissect_lte_rrc_T_nr_Config_r15(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_lte_rrc_T_nr_Config_r15, T_nr_Config_r15_choice, + NULL); return offset; } -static const per_sequence_t RLF_Report_r9_eag_2_sequence[] = { - { &hf_lte_rrc_failedPCellId_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_failedPCellId_v1090 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RLF_Report_r9_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_2_sequence); - - return offset; -} +dissect_lte_rrc_T_nr_RadioBearerConfig1_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *radio_bearer_config_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); -static const value_string lte_rrc_T_rlf_Cause_r11_vals[] = { - { 0, "t310-Expiry" }, - { 1, "randomAccessProblem" }, - { 2, "rlc-MaxNumRetx" }, - { 3, "t312-Expiry-r12" }, - { 0, NULL } -}; + if (radio_bearer_config_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nr_RadioBearerConfig_r15); + dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); + } -static int -dissect_lte_rrc_T_rlf_Cause_r11(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; } @@ -61735,455 +65598,543 @@ dissect_lte_rrc_T_rlf_Cause_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int -dissect_lte_rrc_TimeSinceFailure_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 172800U, NULL, FALSE); +dissect_lte_rrc_T_nr_RadioBearerConfig2_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *radio_bearer_config_tvb = NULL; - return offset; -} + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); -static const per_sequence_t T_basicFields_r11_sequence[] = { - { &hf_lte_rrc_c_RNTI_r11 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, - { &hf_lte_rrc_rlf_Cause_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rlf_Cause_r11 }, - { &hf_lte_rrc_timeSinceFailure_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TimeSinceFailure_r11 }, - { NULL, 0, 0, NULL } -}; + if (radio_bearer_config_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nr_RadioBearerConfigS_r15); + dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); + } -static int -dissect_lte_rrc_T_basicFields_r11(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_lte_rrc_T_basicFields_r11, T_basicFields_r11_sequence); return offset; } -static const value_string lte_rrc_T_physCellId_r11_vals[] = { - { 0, "fdd-r11" }, - { 1, "tdd-r11" }, +static const value_string lte_rrc_SubframeAssignment_r15_vals[] = { + { 0, "sa0" }, + { 1, "sa1" }, + { 2, "sa2" }, + { 3, "sa3" }, + { 4, "sa4" }, + { 5, "sa5" }, + { 6, "sa6" }, { 0, NULL } }; -static const per_choice_t T_physCellId_r11_choice[] = { - { 0, &hf_lte_rrc_fdd_r11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_FDD }, - { 1, &hf_lte_rrc_tdd_r11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_TDD }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_physCellId_r11(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_lte_rrc_T_physCellId_r11, T_physCellId_r11_choice, - NULL); +dissect_lte_rrc_SubframeAssignment_r15(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, + 7, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_previousUTRA_CellId_r11_sequence[] = { - { &hf_lte_rrc_carrierFreq_r11_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, - { &hf_lte_rrc_physCellId_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_physCellId_r11 }, - { &hf_lte_rrc_cellGlobalId_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellGlobalIdUTRA }, +static const per_sequence_t T_setup_02_sequence[] = { + { &hf_lte_rrc_subframeAssignment_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SubframeAssignment_r15 }, + { &hf_lte_rrc_harq_Offset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_previousUTRA_CellId_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_02(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_lte_rrc_T_previousUTRA_CellId_r11, T_previousUTRA_CellId_r11_sequence); + ett_lte_rrc_T_setup_02, T_setup_02_sequence); return offset; } -static const value_string lte_rrc_T_physCellId_r11_01_vals[] = { - { 0, "fdd-r11" }, - { 1, "tdd-r11" }, +static const value_string lte_rrc_T_tdm_PatternConfig_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_physCellId_r11_01_choice[] = { - { 0, &hf_lte_rrc_fdd_r11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_FDD }, - { 1, &hf_lte_rrc_tdd_r11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_TDD }, +static const per_choice_t T_tdm_PatternConfig_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_02 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_physCellId_r11_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tdm_PatternConfig_r15(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_lte_rrc_T_physCellId_r11_01, T_physCellId_r11_01_choice, + ett_lte_rrc_T_tdm_PatternConfig_r15, T_tdm_PatternConfig_r15_choice, NULL); return offset; } -static const per_sequence_t T_selectedUTRA_CellId_r11_sequence[] = { - { &hf_lte_rrc_carrierFreq_r11_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, - { &hf_lte_rrc_physCellId_r11_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_physCellId_r11_01 }, +static const per_sequence_t T_intra5GC_r15_sequence[] = { + { &hf_lte_rrc_securityAlgorithmConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityAlgorithmConfig }, + { &hf_lte_rrc_keyChangeIndicator_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_nextHopChainingCount_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NextHopChainingCount }, + { &hf_lte_rrc_nas_Container_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_selectedUTRA_CellId_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_intra5GC_r15(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_lte_rrc_T_selectedUTRA_CellId_r11, T_selectedUTRA_CellId_r11_sequence); + ett_lte_rrc_T_intra5GC_r15, T_intra5GC_r15_sequence); return offset; } -static const per_sequence_t RLF_Report_r9_eag_3_sequence[] = { - { &hf_lte_rrc_basicFields_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_basicFields_r11 }, - { &hf_lte_rrc_previousUTRA_CellId_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_previousUTRA_CellId_r11 }, - { &hf_lte_rrc_selectedUTRA_CellId_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_selectedUTRA_CellId_r11 }, +static const per_sequence_t T_ngc_ToEPC_r15_sequence[] = { + { &hf_lte_rrc_securityAlgorithmConfig_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityAlgorithmConfig }, + { &hf_lte_rrc_nextHopChainingCount_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NextHopChainingCount }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RLF_Report_r9_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_3_sequence); +dissect_lte_rrc_T_ngc_ToEPC_r15(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_lte_rrc_T_ngc_ToEPC_r15, T_ngc_ToEPC_r15_sequence); return offset; } -static const per_sequence_t T_failedPCellId_v1250_sequence[] = { - { &hf_lte_rrc_tac_FailedPCell_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, +static const per_sequence_t T_epc_ToNGC_r15_sequence[] = { + { &hf_lte_rrc_securityAlgorithmConfig_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityAlgorithmConfig }, + { &hf_lte_rrc_nas_Container_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_failedPCellId_v1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_epc_ToNGC_r15(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_lte_rrc_T_failedPCellId_v1250, T_failedPCellId_v1250_sequence); + ett_lte_rrc_T_epc_ToNGC_r15, T_epc_ToNGC_r15_sequence); return offset; } -static const per_sequence_t RSRQ_Type_r12_sequence[] = { - { &hf_lte_rrc_allSymbols_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_wideBand_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_handoverType_v1530_vals[] = { + { 0, "intra5GC-r15" }, + { 1, "ngc-ToEPC-r15" }, + { 2, "epc-ToNGC-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_handoverType_v1530_choice[] = { + { 0, &hf_lte_rrc_intra5GC_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_intra5GC_r15 }, + { 1, &hf_lte_rrc_ngc_ToEPC_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_ngc_ToEPC_r15 }, + { 2, &hf_lte_rrc_epc_ToNGC_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_epc_ToNGC_r15 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_RSRQ_Type_r12(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_lte_rrc_RSRQ_Type_r12, RSRQ_Type_r12_sequence); +dissect_lte_rrc_T_handoverType_v1530(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_lte_rrc_T_handoverType_v1530, T_handoverType_v1530_choice, + NULL); return offset; } -static const per_sequence_t MeasResult2EUTRA_v1250_sequence[] = { - { &hf_lte_rrc_rsrq_Type_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Type_r12 }, +static const per_sequence_t SecurityConfigHO_v1530_sequence[] = { + { &hf_lte_rrc_handoverType_v1530, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_handoverType_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResult2EUTRA_v1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SecurityConfigHO_v1530(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_lte_rrc_MeasResult2EUTRA_v1250, MeasResult2EUTRA_v1250_sequence); + ett_lte_rrc_SecurityConfigHO_v1530, SecurityConfigHO_v1530_sequence); return offset; } -static const per_sequence_t MeasResultList2EUTRA_v1250_sequence_of[1] = { - { &hf_lte_rrc_MeasResultList2EUTRA_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResult2EUTRA_v1250 }, +static const per_sequence_t SEQUENCE_SIZE_1_maxDRB_r15_OF_DedicatedInfoNAS_sequence_of[1] = { + { &hf_lte_rrc_dedicatedInfoNASList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoNAS }, }; static int -dissect_lte_rrc_MeasResultList2EUTRA_v1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_maxDRB_r15_OF_DedicatedInfoNAS(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_lte_rrc_MeasResultList2EUTRA_v1250, MeasResultList2EUTRA_v1250_sequence_of, - 1, maxFreq, FALSE); + ett_lte_rrc_SEQUENCE_SIZE_1_maxDRB_r15_OF_DedicatedInfoNAS, SEQUENCE_SIZE_1_maxDRB_r15_OF_DedicatedInfoNAS_sequence_of, + 1, maxDRB_r15, FALSE); return offset; } -static const per_sequence_t RLF_Report_r9_eag_4_sequence[] = { - { &hf_lte_rrc_failedPCellId_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_failedPCellId_v1250 }, - { &hf_lte_rrc_measResultLastServCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, - { &hf_lte_rrc_lastServCellRSRQ_Type_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Type_r12 }, - { &hf_lte_rrc_measResultListEUTRA_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v1250 }, +static const per_sequence_t T_nonCriticalExtension_31_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RLF_Report_r9_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_4_sequence); +dissect_lte_rrc_T_nonCriticalExtension_31(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_lte_rrc_T_nonCriticalExtension_31, T_nonCriticalExtension_31_sequence); return offset; } -static const value_string lte_rrc_T_drb_EstablishedWithQCI_1_r13_vals[] = { - { 0, "qci1" }, - { 0, NULL } +static const per_sequence_t RRCConnectionReconfiguration_v1530_IEs_sequence[] = { + { &hf_lte_rrc_securityConfigHO_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityConfigHO_v1530 }, + { &hf_lte_rrc_sCellGroupToReleaseList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellGroupToReleaseList_r15 }, + { &hf_lte_rrc_sCellGroupToAddModList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellGroupToAddModList_r15 }, + { &hf_lte_rrc_dedicatedInfoNASList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxDRB_r15_OF_DedicatedInfoNAS }, + { &hf_lte_rrc_p_MaxUE_FR1_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_smtc_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MTC_SSB_NR_r15 }, + { &hf_lte_rrc_nonCriticalExtension_91, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_31 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_drb_EstablishedWithQCI_1_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RRCConnectionReconfiguration_v1530_IEs(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_lte_rrc_RRCConnectionReconfiguration_v1530_IEs, RRCConnectionReconfiguration_v1530_IEs_sequence); return offset; } -static const per_sequence_t RLF_Report_r9_eag_5_sequence[] = { - { &hf_lte_rrc_drb_EstablishedWithQCI_1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_EstablishedWithQCI_1_r13 }, +static const per_sequence_t RRCConnectionReconfiguration_v1510_IEs_sequence[] = { + { &hf_lte_rrc_nr_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_Config_r15 }, + { &hf_lte_rrc_sk_Counter_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, + { &hf_lte_rrc_nr_RadioBearerConfig1_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_RadioBearerConfig1_r15 }, + { &hf_lte_rrc_nr_RadioBearerConfig2_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_RadioBearerConfig2_r15 }, + { &hf_lte_rrc_tdm_PatternConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdm_PatternConfig_r15 }, + { &hf_lte_rrc_nonCriticalExtension_90, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1530_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RLF_Report_r9_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_5_sequence); +dissect_lte_rrc_RRCConnectionReconfiguration_v1510_IEs(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_lte_rrc_RRCConnectionReconfiguration_v1510_IEs, RRCConnectionReconfiguration_v1510_IEs_sequence); return offset; } -static const per_sequence_t RLF_Report_r9_eag_6_sequence[] = { - { &hf_lte_rrc_measResultLastServCell_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range_v1360 }, +static const per_sequence_t RRCConnectionReconfiguration_v1430_IEs_sequence[] = { + { &hf_lte_rrc_sl_V2X_ConfigDedicated_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_ConfigDedicated_r14 }, + { &hf_lte_rrc_sCellToAddModListExt_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_v1430 }, + { &hf_lte_rrc_perCC_GapIndicationRequest_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_perCC_GapIndicationRequest_r14 }, + { &hf_lte_rrc_systemInformationBlockType2Dedicated_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInformationBlockType2Dedicated_r14 }, + { &hf_lte_rrc_nonCriticalExtension_89, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1510_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RLF_Report_r9_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_6_sequence); +dissect_lte_rrc_RRCConnectionReconfiguration_v1430_IEs(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_lte_rrc_RRCConnectionReconfiguration_v1430_IEs, RRCConnectionReconfiguration_v1430_IEs_sequence); return offset; } -static const per_sequence_t RLF_Report_r9_sequence[] = { - { &hf_lte_rrc_measResultLastServCell_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultLastServCell_r9 }, - { &hf_lte_rrc_measResultNeighCells_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultNeighCells_r9 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_4 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_5 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_6 }, +static const per_sequence_t RRCConnectionReconfiguration_v1310_IEs_sequence[] = { + { &hf_lte_rrc_sCellToReleaseListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseListExt_r13 }, + { &hf_lte_rrc_sCellToAddModListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_r13 }, + { &hf_lte_rrc_lwa_Configuration_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWA_Configuration_r13 }, + { &hf_lte_rrc_lwip_Configuration_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWIP_Configuration_r13 }, + { &hf_lte_rrc_rclwi_Configuration_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RCLWI_Configuration_r13 }, + { &hf_lte_rrc_nonCriticalExtension_88, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1430_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RLF_Report_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReconfiguration_v1310_IEs(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_lte_rrc_RLF_Report_r9, RLF_Report_r9_sequence); + ett_lte_rrc_RRCConnectionReconfiguration_v1310_IEs, RRCConnectionReconfiguration_v1310_IEs_sequence); return offset; } +static const per_sequence_t RRCConnectionReconfiguration_v1250_IEs_sequence[] = { + { &hf_lte_rrc_wlan_OffloadInfo_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_OffloadInfo_r12 }, + { &hf_lte_rrc_scg_Configuration_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_Configuration_r12 }, + { &hf_lte_rrc_sl_SyncTxControl_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncTxControl_r12 }, + { &hf_lte_rrc_sl_DiscConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscConfig_r12 }, + { &hf_lte_rrc_sl_CommConfig_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommConfig_r12 }, + { &hf_lte_rrc_nonCriticalExtension_87, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1310_IEs }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_lateNonCriticalExtension_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UEInformationResponse_v9e0_IEs_PDU); +dissect_lte_rrc_RRCConnectionReconfiguration_v1250_IEs(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_lte_rrc_RRCConnectionReconfiguration_v1250_IEs, RRCConnectionReconfiguration_v1250_IEs_sequence); return offset; } +static const per_sequence_t RRCConnectionReconfiguration_v1130_IEs_sequence[] = { + { &hf_lte_rrc_systemInformationBlockType1Dedicated_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInformationBlockType1Dedicated_r11 }, + { &hf_lte_rrc_nonCriticalExtension_86, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1250_IEs }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_7200(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 7200U, NULL, FALSE); +dissect_lte_rrc_RRCConnectionReconfiguration_v1130_IEs(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_lte_rrc_RRCConnectionReconfiguration_v1130_IEs, RRCConnectionReconfiguration_v1130_IEs_sequence); return offset; } -static const per_sequence_t T_measResultServCell_r10_sequence[] = { - { &hf_lte_rrc_rsrpResult_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResult_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, +static const per_sequence_t RRCConnectionReconfiguration_v1020_IEs_sequence[] = { + { &hf_lte_rrc_sCellToReleaseList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToReleaseList_r10 }, + { &hf_lte_rrc_sCellToAddModList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_r10 }, + { &hf_lte_rrc_nonCriticalExtension_85, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1130_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultServCell_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReconfiguration_v1020_IEs(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_lte_rrc_T_measResultServCell_r10, T_measResultServCell_r10_sequence); + ett_lte_rrc_RRCConnectionReconfiguration_v1020_IEs, RRCConnectionReconfiguration_v1020_IEs_sequence); return offset; } -static const per_sequence_t MeasResultList2GERAN_r10_sequence_of[1] = { - { &hf_lte_rrc_MeasResultList2GERAN_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultListGERAN }, +static const per_sequence_t RRCConnectionReconfiguration_v920_IEs_sequence[] = { + { &hf_lte_rrc_otherConfig_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OtherConfig_r9 }, + { &hf_lte_rrc_fullConfig_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fullConfig_r9 }, + { &hf_lte_rrc_nonCriticalExtension_84, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1020_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultList2GERAN_r10(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_lte_rrc_MeasResultList2GERAN_r10, MeasResultList2GERAN_r10_sequence_of, - 1, maxCellListGERAN, FALSE); +dissect_lte_rrc_RRCConnectionReconfiguration_v920_IEs(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_lte_rrc_RRCConnectionReconfiguration_v920_IEs, RRCConnectionReconfiguration_v920_IEs_sequence); return offset; } -static const per_sequence_t T_measResultNeighCells_r10_sequence[] = { - { &hf_lte_rrc_measResultListEUTRA_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_r9 }, - { &hf_lte_rrc_measResultListUTRA_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2UTRA_r9 }, - { &hf_lte_rrc_measResultListGERAN_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2GERAN_r10 }, - { &hf_lte_rrc_measResultListCDMA2000_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2CDMA2000_r9 }, +static const per_sequence_t RRCConnectionReconfiguration_v890_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_01 }, + { &hf_lte_rrc_nonCriticalExtension_78, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v920_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_measResultNeighCells_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReconfiguration_v890_IEs(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_lte_rrc_T_measResultNeighCells_r10, T_measResultNeighCells_r10_sequence); + ett_lte_rrc_RRCConnectionReconfiguration_v890_IEs, RRCConnectionReconfiguration_v890_IEs_sequence); return offset; } -static const per_sequence_t MeasResult2EUTRA_v9e0_sequence[] = { - { &hf_lte_rrc_carrierFreq_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, +static const per_sequence_t RRCConnectionReconfiguration_r8_IEs_sequence[] = { + { &hf_lte_rrc_measConfig , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasConfig }, + { &hf_lte_rrc_mobilityControlInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityControlInfo }, + { &hf_lte_rrc_dedicatedInfoNASList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS }, + { &hf_lte_rrc_radioResourceConfigDedicated, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicated }, + { &hf_lte_rrc_securityConfigHO, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityConfigHO }, + { &hf_lte_rrc_nonCriticalExtension_77, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v890_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResult2EUTRA_v9e0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReconfiguration_r8_IEs(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_lte_rrc_MeasResult2EUTRA_v9e0, MeasResult2EUTRA_v9e0_sequence); + ett_lte_rrc_RRCConnectionReconfiguration_r8_IEs, RRCConnectionReconfiguration_r8_IEs_sequence); return offset; } -static const per_sequence_t MeasResultList2EUTRA_v9e0_sequence_of[1] = { - { &hf_lte_rrc_MeasResultList2EUTRA_v9e0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResult2EUTRA_v9e0 }, +static const value_string lte_rrc_T_c1_30_vals[] = { + { 0, "rrcConnectionReconfiguration-r8" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_30_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionReconfiguration_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReconfiguration_r8_IEs }, + { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MeasResultList2EUTRA_v9e0(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_lte_rrc_MeasResultList2EUTRA_v9e0, MeasResultList2EUTRA_v9e0_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_c1_30(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_lte_rrc_T_c1_30, T_c1_30_choice, + NULL); return offset; } -static const per_sequence_t LogMeasInfo_r10_eag_1_sequence[] = { - { &hf_lte_rrc_measResultListEUTRA_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v9e0 }, +static const per_sequence_t T_criticalExtensionsFuture_24_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LogMeasInfo_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogMeasInfo_r10_eag_1_sequence); +dissect_lte_rrc_T_criticalExtensionsFuture_24(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_lte_rrc_T_criticalExtensionsFuture_24, T_criticalExtensionsFuture_24_sequence); return offset; } -static const per_sequence_t T_mbsfn_Area_r12_sequence[] = { - { &hf_lte_rrc_mbsfn_AreaId_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_AreaId_r12 }, - { &hf_lte_rrc_carrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_criticalExtensions_24_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_24_choice[] = { + { 0, &hf_lte_rrc_c1_30 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_30 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_24, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_24 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_mbsfn_Area_r12(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_lte_rrc_T_mbsfn_Area_r12, T_mbsfn_Area_r12_sequence); +dissect_lte_rrc_T_criticalExtensions_24(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_lte_rrc_T_criticalExtensions_24, T_criticalExtensions_24_choice, + NULL); return offset; } +static const per_sequence_t RRCConnectionReconfiguration_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_24, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_24 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_MBSFN_RSRQ_Range_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 31U, NULL, FALSE); +dissect_lte_rrc_RRCConnectionReconfiguration(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReconfiguration"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RRCConnectionReconfiguration, RRCConnectionReconfiguration_sequence); return offset; } - -static int -dissect_lte_rrc_BLER_Range_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 31U, NULL, FALSE); - - return offset; -} - +static const value_string lte_rrc_ReleaseCause_vals[] = { + { 0, "loadBalancingTAUrequired" }, + { 1, "other" }, + { 2, "cs-FallbackHighPriority-v1020" }, + { 3, "rrc-Suspend-v1320" }, + { 0, NULL } +}; static int -dissect_lte_rrc_T_n_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *n_r12_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 3, 3, FALSE, &n_r12_tvb, NULL); +dissect_lte_rrc_ReleaseCause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 value; + offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index, + 4, &value, FALSE, 0, NULL); - if (n_r12_tvb) { - guint bitvalue = tvb_get_bits8(n_r12_tvb, 0, 3); - actx->created_item = proto_tree_add_uint(tree, hf_index, n_r12_tvb, 0, 1, bitvalue); - } + col_append_fstr(actx->pinfo->cinfo, COL_INFO, " [cause=%s]", + val_to_str(value, lte_rrc_ReleaseCause_vals, "Unknown")); return offset; } +static const value_string lte_rrc_T_subcarrierSpacingSSB_r15_vals[] = { + { 0, "kHz15" }, + { 1, "kHz30" }, + { 2, "kHz120" }, + { 3, "kHz240" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_m_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *m_r12_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 8, 8, FALSE, &m_r12_tvb, NULL); - - if (m_r12_tvb) { - actx->created_item = proto_tree_add_item(tree, hf_index, m_r12_tvb, 0, 1, ENC_BIG_ENDIAN); - } +static int +dissect_lte_rrc_T_subcarrierSpacingSSB_r15(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 per_sequence_t T_blocksReceived_r12_sequence[] = { - { &hf_lte_rrc_n_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n_r12 }, - { &hf_lte_rrc_m_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_m_r12 }, +static const per_sequence_t CarrierInfoNR_r15_sequence[] = { + { &hf_lte_rrc_carrierFreq_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueNR_r15 }, + { &hf_lte_rrc_subcarrierSpacingSSB_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subcarrierSpacingSSB_r15 }, + { &hf_lte_rrc_smtc_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MTC_SSB_NR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_blocksReceived_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CarrierInfoNR_r15(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_lte_rrc_T_blocksReceived_r12, T_blocksReceived_r12_sequence); + ett_lte_rrc_CarrierInfoNR_r15, CarrierInfoNR_r15_sequence); return offset; } -static const per_sequence_t BLER_Result_r12_sequence[] = { - { &hf_lte_rrc_bler_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BLER_Range_r12 }, - { &hf_lte_rrc_blocksReceived_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_blocksReceived_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_RedirectedCarrierInfo_vals[] = { + { 0, "eutra" }, + { 1, "geran" }, + { 2, "utra-FDD" }, + { 3, "utra-TDD" }, + { 4, "cdma2000-HRPD" }, + { 5, "cdma2000-1xRTT" }, + { 6, "utra-TDD-r10" }, + { 7, "nr-r15" }, + { 0, NULL } +}; + +static const per_choice_t RedirectedCarrierInfo_choice[] = { + { 0, &hf_lte_rrc_eutra , ASN1_EXTENSION_ROOT , dissect_lte_rrc_ARFCN_ValueEUTRA }, + { 1, &hf_lte_rrc_geran_01 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_CarrierFreqsGERAN }, + { 2, &hf_lte_rrc_utra_FDD , ASN1_EXTENSION_ROOT , dissect_lte_rrc_ARFCN_ValueUTRA }, + { 3, &hf_lte_rrc_utra_TDD , ASN1_EXTENSION_ROOT , dissect_lte_rrc_ARFCN_ValueUTRA }, + { 4, &hf_lte_rrc_cdma2000_HRPD, ASN1_EXTENSION_ROOT , dissect_lte_rrc_CarrierFreqCDMA2000 }, + { 5, &hf_lte_rrc_cdma2000_1xRTT, ASN1_EXTENSION_ROOT , dissect_lte_rrc_CarrierFreqCDMA2000 }, + { 6, &hf_lte_rrc_utra_TDD_r10_01, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_CarrierFreqListUTRA_TDD_r10 }, + { 7, &hf_lte_rrc_nr_r15 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_CarrierInfoNR_r15 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_BLER_Result_r12(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_lte_rrc_BLER_Result_r12, BLER_Result_r12_sequence); +dissect_lte_rrc_RedirectedCarrierInfo(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_lte_rrc_RedirectedCarrierInfo, RedirectedCarrierInfo_choice, + NULL); return offset; } @@ -62191,538 +66142,515 @@ dissect_lte_rrc_BLER_Result_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a static int -dissect_lte_rrc_INTEGER_1_maxPMCH_PerMBSFN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxPMCH_PerMBSFN, NULL, FALSE); +dissect_lte_rrc_T_lateNonCriticalExtension_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_RRCConnectionRelease_v9e0_IEs_PDU); return offset; } -static const per_sequence_t DataBLER_MCH_Result_r12_sequence[] = { - { &hf_lte_rrc_mch_Index_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPMCH_PerMBSFN }, - { &hf_lte_rrc_dataBLER_Result_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BLER_Result_r12 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_DataBLER_MCH_Result_r12(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_lte_rrc_DataBLER_MCH_Result_r12, DataBLER_MCH_Result_r12_sequence); - - return offset; -} - +dissect_lte_rrc_T_systemInformation_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + private_data_set_si_or_psi_geran(actx, (guint8)SI_OrPSI_GERAN_si); /* SI message */ + offset = dissect_lte_rrc_SystemInfoListGERAN(tvb, offset, actx, tree, hf_index); -static const per_sequence_t DataBLER_MCH_ResultList_r12_sequence_of[1] = { - { &hf_lte_rrc_DataBLER_MCH_ResultList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DataBLER_MCH_Result_r12 }, -}; -static int -dissect_lte_rrc_DataBLER_MCH_ResultList_r12(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_lte_rrc_DataBLER_MCH_ResultList_r12, DataBLER_MCH_ResultList_r12_sequence_of, - 1, maxPMCH_PerMBSFN, FALSE); return offset; } -static const per_sequence_t MeasResultMBSFN_r12_sequence[] = { - { &hf_lte_rrc_mbsfn_Area_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mbsfn_Area_r12 }, - { &hf_lte_rrc_rsrpResultMBSFN_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResultMBSFN_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_RSRQ_Range_r12 }, - { &hf_lte_rrc_signallingBLER_Result_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BLER_Result_r12 }, - { &hf_lte_rrc_dataBLER_MCH_ResultList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DataBLER_MCH_ResultList_r12 }, +static const per_sequence_t CellInfoGERAN_r9_sequence[] = { + { &hf_lte_rrc_physCellId_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdGERAN }, + { &hf_lte_rrc_carrierFreq_r9_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqGERAN }, + { &hf_lte_rrc_systemInformation_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_systemInformation_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultMBSFN_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellInfoGERAN_r9(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_lte_rrc_MeasResultMBSFN_r12, MeasResultMBSFN_r12_sequence); + ett_lte_rrc_CellInfoGERAN_r9, CellInfoGERAN_r9_sequence); return offset; } -static const per_sequence_t MeasResultListMBSFN_r12_sequence_of[1] = { - { &hf_lte_rrc_MeasResultListMBSFN_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultMBSFN_r12 }, +static const per_sequence_t CellInfoListGERAN_r9_sequence_of[1] = { + { &hf_lte_rrc_CellInfoListGERAN_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellInfoGERAN_r9 }, }; static int -dissect_lte_rrc_MeasResultListMBSFN_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellInfoListGERAN_r9(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_lte_rrc_MeasResultListMBSFN_r12, MeasResultListMBSFN_r12_sequence_of, - 1, maxMBSFN_Area, FALSE); + ett_lte_rrc_CellInfoListGERAN_r9, CellInfoListGERAN_r9_sequence_of, + 1, maxCellInfoGERAN_r9, FALSE); return offset; } -static const per_sequence_t LogMeasInfo_r10_eag_2_sequence[] = { - { &hf_lte_rrc_measResultListMBSFN_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListMBSFN_r12 }, - { &hf_lte_rrc_measResultServCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, - { &hf_lte_rrc_servCellRSRQ_Type_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Type_r12 }, - { &hf_lte_rrc_measResultListEUTRA_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v1250 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_LogMeasInfo_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogMeasInfo_r10_eag_2_sequence); +dissect_lte_rrc_T_utra_BCCH_Container_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *utra_bcch_cont_tvb = NULL; + proto_tree *subtree; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &utra_bcch_cont_tvb); + + if (utra_bcch_cont_tvb && rrc_sys_info_cont_handle) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_siPsiSibContainer); + lte_rrc_call_dissector(rrc_sys_info_cont_handle, utra_bcch_cont_tvb, actx->pinfo, subtree); + } + return offset; } -static const value_string lte_rrc_T_inDeviceCoexDetected_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t CellInfoUTRA_FDD_r9_sequence[] = { + { &hf_lte_rrc_physCellId_r9_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdUTRA_FDD }, + { &hf_lte_rrc_utra_BCCH_Container_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_utra_BCCH_Container_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_inDeviceCoexDetected_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CellInfoUTRA_FDD_r9(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_lte_rrc_CellInfoUTRA_FDD_r9, CellInfoUTRA_FDD_r9_sequence); return offset; } -static const per_sequence_t LogMeasInfo_r10_eag_3_sequence[] = { - { &hf_lte_rrc_inDeviceCoexDetected_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_inDeviceCoexDetected_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t CellInfoListUTRA_FDD_r9_sequence_of[1] = { + { &hf_lte_rrc_CellInfoListUTRA_FDD_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellInfoUTRA_FDD_r9 }, }; static int -dissect_lte_rrc_LogMeasInfo_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogMeasInfo_r10_eag_3_sequence); +dissect_lte_rrc_CellInfoListUTRA_FDD_r9(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_lte_rrc_CellInfoListUTRA_FDD_r9, CellInfoListUTRA_FDD_r9_sequence_of, + 1, maxCellInfoUTRA_r9, FALSE); return offset; } -static const per_sequence_t LogMeasInfo_r10_eag_4_sequence[] = { - { &hf_lte_rrc_measResultServCell_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range_v1360 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_LogMeasInfo_r10_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogMeasInfo_r10_eag_4_sequence); +dissect_lte_rrc_T_utra_BCCH_Container_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *utra_bcch_cont_tvb = NULL; + proto_tree *subtree; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &utra_bcch_cont_tvb); + + if (utra_bcch_cont_tvb && rrc_sys_info_cont_handle) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_siPsiSibContainer); + lte_rrc_call_dissector(rrc_sys_info_cont_handle, utra_bcch_cont_tvb, actx->pinfo, subtree); + } + return offset; } -static const per_sequence_t LogMeasInfo_r10_sequence[] = { - { &hf_lte_rrc_locationInfo_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_LocationInfo_r10 }, - { &hf_lte_rrc_relativeTimeStamp_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7200 }, - { &hf_lte_rrc_servCellIdentity_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdEUTRA }, - { &hf_lte_rrc_measResultServCell_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultServCell_r10 }, - { &hf_lte_rrc_measResultNeighCells_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultNeighCells_r10 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10_eag_3 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10_eag_4 }, +static const per_sequence_t CellInfoUTRA_TDD_r9_sequence[] = { + { &hf_lte_rrc_physCellId_r9_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdUTRA_TDD }, + { &hf_lte_rrc_utra_BCCH_Container_r9_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_utra_BCCH_Container_r9_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LogMeasInfo_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellInfoUTRA_TDD_r9(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_lte_rrc_LogMeasInfo_r10, LogMeasInfo_r10_sequence); + ett_lte_rrc_CellInfoUTRA_TDD_r9, CellInfoUTRA_TDD_r9_sequence); return offset; } -static const per_sequence_t LogMeasInfoList_r10_sequence_of[1] = { - { &hf_lte_rrc_LogMeasInfoList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10 }, +static const per_sequence_t CellInfoListUTRA_TDD_r9_sequence_of[1] = { + { &hf_lte_rrc_CellInfoListUTRA_TDD_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellInfoUTRA_TDD_r9 }, }; static int -dissect_lte_rrc_LogMeasInfoList_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellInfoListUTRA_TDD_r9(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_lte_rrc_LogMeasInfoList_r10, LogMeasInfoList_r10_sequence_of, - 1, maxLogMeasReport_r10, FALSE); + ett_lte_rrc_CellInfoListUTRA_TDD_r9, CellInfoListUTRA_TDD_r9_sequence_of, + 1, maxCellInfoUTRA_r9, FALSE); return offset; } -static const value_string lte_rrc_T_logMeasAvailable_r10_03_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_logMeasAvailable_r10_03(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_utra_BCCH_Container_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *utra_bcch_cont_tvb = NULL; + proto_tree *subtree; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &utra_bcch_cont_tvb); + + if (utra_bcch_cont_tvb && rrc_sys_info_cont_handle) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_siPsiSibContainer); + lte_rrc_call_dissector(rrc_sys_info_cont_handle, utra_bcch_cont_tvb, actx->pinfo, subtree); + } + return offset; } -static const per_sequence_t LogMeasReport_r10_sequence[] = { - { &hf_lte_rrc_absoluteTimeStamp_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AbsoluteTimeInfo_r10 }, - { &hf_lte_rrc_traceReference_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TraceReference_r10 }, - { &hf_lte_rrc_traceRecordingSessionRef_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_2 }, - { &hf_lte_rrc_tce_Id_r10 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_1 }, - { &hf_lte_rrc_logMeasInfoList_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfoList_r10 }, - { &hf_lte_rrc_logMeasAvailable_r10_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailable_r10_03 }, +static const per_sequence_t CellInfoUTRA_TDD_r10_sequence[] = { + { &hf_lte_rrc_physCellId_r10_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdUTRA_TDD }, + { &hf_lte_rrc_carrierFreq_r10_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, + { &hf_lte_rrc_utra_BCCH_Container_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_utra_BCCH_Container_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LogMeasReport_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellInfoUTRA_TDD_r10(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_lte_rrc_LogMeasReport_r10, LogMeasReport_r10_sequence); + ett_lte_rrc_CellInfoUTRA_TDD_r10, CellInfoUTRA_TDD_r10_sequence); return offset; } -static const per_sequence_t T_measResultFailedCell_r11_sequence[] = { - { &hf_lte_rrc_rsrpResult_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, - { &hf_lte_rrc_rsrqResult_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range }, - { NULL, 0, 0, NULL } +static const per_sequence_t CellInfoListUTRA_TDD_r10_sequence_of[1] = { + { &hf_lte_rrc_CellInfoListUTRA_TDD_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellInfoUTRA_TDD_r10 }, }; static int -dissect_lte_rrc_T_measResultFailedCell_r11(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_lte_rrc_T_measResultFailedCell_r11, T_measResultFailedCell_r11_sequence); +dissect_lte_rrc_CellInfoListUTRA_TDD_r10(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_lte_rrc_CellInfoListUTRA_TDD_r10, CellInfoListUTRA_TDD_r10_sequence_of, + 1, maxCellInfoUTRA_r9, FALSE); return offset; } -static const per_sequence_t T_measResultNeighCells_r11_sequence[] = { - { &hf_lte_rrc_measResultListEUTRA_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_r9 }, - { &hf_lte_rrc_measResultListUTRA_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2UTRA_r9 }, - { &hf_lte_rrc_measResultListGERAN_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListGERAN }, - { &hf_lte_rrc_measResultsCDMA2000_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2CDMA2000_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_cellInfoList_r9_vals[] = { + { 0, "geran-r9" }, + { 1, "utra-FDD-r9" }, + { 2, "utra-TDD-r9" }, + { 3, "utra-TDD-r10" }, + { 0, NULL } +}; + +static const per_choice_t T_cellInfoList_r9_choice[] = { + { 0, &hf_lte_rrc_geran_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_CellInfoListGERAN_r9 }, + { 1, &hf_lte_rrc_utra_FDD_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_CellInfoListUTRA_FDD_r9 }, + { 2, &hf_lte_rrc_utra_TDD_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_CellInfoListUTRA_TDD_r9 }, + { 3, &hf_lte_rrc_utra_TDD_r10, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_CellInfoListUTRA_TDD_r10 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_measResultNeighCells_r11(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_lte_rrc_T_measResultNeighCells_r11, T_measResultNeighCells_r11_sequence); +dissect_lte_rrc_T_cellInfoList_r9(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_lte_rrc_T_cellInfoList_r9, T_cellInfoList_r9_choice, + NULL); return offset; } -static const per_sequence_t ConnEstFailReport_r11_eag_1_sequence[] = { - { &hf_lte_rrc_measResultFailedCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, - { &hf_lte_rrc_failedCellRSRQ_Type_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Type_r12 }, - { &hf_lte_rrc_measResultListEUTRA_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v1250 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_ConnEstFailReport_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, ConnEstFailReport_r11_eag_1_sequence); +dissect_lte_rrc_ResumeIdentity_r13(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, + 40, 40, FALSE, NULL, NULL); return offset; } -static const per_sequence_t ConnEstFailReport_r11_eag_2_sequence[] = { - { &hf_lte_rrc_measResultFailedCell_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range_v1360 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_drb_ContinueROHC_r15_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_ConnEstFailReport_r11_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, ConnEstFailReport_r11_eag_2_sequence); +dissect_lte_rrc_T_drb_ContinueROHC_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t ConnEstFailReport_r11_sequence[] = { - { &hf_lte_rrc_failedCellId_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdEUTRA }, - { &hf_lte_rrc_locationInfo_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_LocationInfo_r10 }, - { &hf_lte_rrc_measResultFailedCell_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultFailedCell_r11 }, - { &hf_lte_rrc_measResultNeighCells_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultNeighCells_r11 }, - { &hf_lte_rrc_numberOfPreamblesSent_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NumberOfPreamblesSent_r11 }, - { &hf_lte_rrc_contentionDetected_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_maxTxPowerReached_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_timeSinceFailure_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TimeSinceFailure_r11 }, - { &hf_lte_rrc_measResultListEUTRA_v1130, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v9e0 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_ConnEstFailReport_r11_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_ConnEstFailReport_r11_eag_2 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_measIdleDuration_r15_vals[] = { + { 0, "sec10" }, + { 1, "sec30" }, + { 2, "sec60" }, + { 3, "sec120" }, + { 4, "sec180" }, + { 5, "sec240" }, + { 6, "sec300" }, + { 7, "spare" }, + { 0, NULL } }; + static int -dissect_lte_rrc_ConnEstFailReport_r11(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_lte_rrc_ConnEstFailReport_r11, ConnEstFailReport_r11_sequence); +dissect_lte_rrc_T_measIdleDuration_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_pci_arfcn_r12_sequence[] = { - { &hf_lte_rrc_physCellId_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_carrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, +static const per_sequence_t MeasIdleConfigDedicated_r15_sequence[] = { + { &hf_lte_rrc_measIdleCarrierListEUTRA_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_EUTRA_CarrierList_r15 }, + { &hf_lte_rrc_measIdleDuration_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measIdleDuration_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_pci_arfcn_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasIdleConfigDedicated_r15(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_lte_rrc_T_pci_arfcn_r12, T_pci_arfcn_r12_sequence); + ett_lte_rrc_MeasIdleConfigDedicated_r15, MeasIdleConfigDedicated_r15_sequence); return offset; } -static const value_string lte_rrc_T_visitedCellId_r12_vals[] = { - { 0, "cellGlobalId-r12" }, - { 1, "pci-arfcn-r12" }, - { 0, NULL } -}; - -static const per_choice_t T_visitedCellId_r12_choice[] = { - { 0, &hf_lte_rrc_cellGlobalId_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CellGlobalIdEUTRA }, - { 1, &hf_lte_rrc_pci_arfcn_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_pci_arfcn_r12 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_visitedCellId_r12(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_lte_rrc_T_visitedCellId_r12, T_visitedCellId_r12_choice, - NULL); +dissect_lte_rrc_ShortI_RNTI_r15(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, + 24, 24, FALSE, NULL, NULL); return offset; } -static const per_sequence_t VisitedCellInfo_r12_sequence[] = { - { &hf_lte_rrc_visitedCellId_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_visitedCellId_r12 }, - { &hf_lte_rrc_timeSpent_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_4095 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ran_PagingCycle_r15_vals[] = { + { 0, "rf32" }, + { 1, "rf64" }, + { 2, "rf128" }, + { 3, "rf256" }, + { 0, NULL } }; + static int -dissect_lte_rrc_VisitedCellInfo_r12(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_lte_rrc_VisitedCellInfo_r12, VisitedCellInfo_r12_sequence); +dissect_lte_rrc_T_ran_PagingCycle_r15(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 per_sequence_t VisitedCellInfoList_r12_sequence_of[1] = { - { &hf_lte_rrc_VisitedCellInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_VisitedCellInfo_r12 }, +static const per_sequence_t SEQUENCE_SIZE_1_32_OF_CellIdentity_sequence_of[1] = { + { &hf_lte_rrc_ran_AreaCells_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, }; static int -dissect_lte_rrc_VisitedCellInfoList_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_32_OF_CellIdentity(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_lte_rrc_VisitedCellInfoList_r12, VisitedCellInfoList_r12_sequence_of, - 1, maxCellHistory_r12, FALSE); + ett_lte_rrc_SEQUENCE_SIZE_1_32_OF_CellIdentity, SEQUENCE_SIZE_1_32_OF_CellIdentity_sequence_of, + 1, 32, FALSE); return offset; } +static const per_sequence_t PLMN_RAN_AreaCell_r15_sequence[] = { + { &hf_lte_rrc_plmn_Identity_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_Identity }, + { &hf_lte_rrc_ran_AreaCells_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_32_OF_CellIdentity }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_MobilityHistoryReport_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_lte_rrc_VisitedCellInfoList_r12(tvb, offset, actx, tree, hf_index); +dissect_lte_rrc_PLMN_RAN_AreaCell_r15(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_lte_rrc_PLMN_RAN_AreaCell_r15, PLMN_RAN_AreaCell_r15_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_59_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t PLMN_RAN_AreaCellList_r15_sequence_of[1] = { + { &hf_lte_rrc_PLMN_RAN_AreaCellList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_RAN_AreaCell_r15 }, }; static int -dissect_lte_rrc_T_nonCriticalExtension_59(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_lte_rrc_T_nonCriticalExtension_59, T_nonCriticalExtension_59_sequence); +dissect_lte_rrc_PLMN_RAN_AreaCellList_r15(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_lte_rrc_PLMN_RAN_AreaCellList_r15, PLMN_RAN_AreaCellList_r15_sequence_of, + 1, maxPLMN_r15, FALSE); return offset; } -static const per_sequence_t UEInformationResponse_v1250_IEs_sequence[] = { - { &hf_lte_rrc_mobilityHistoryReport_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityHistoryReport_r12 }, - { &hf_lte_rrc_nonCriticalExtension_178, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_59 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_r15_sequence_of[1] = { + { &hf_lte_rrc_ran_AreaCodeList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RAN_AreaCode_r15 }, }; static int -dissect_lte_rrc_UEInformationResponse_v1250_IEs(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_lte_rrc_UEInformationResponse_v1250_IEs, UEInformationResponse_v1250_IEs_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_r15(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_lte_rrc_SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_r15, SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_r15_sequence_of, + 1, 32, FALSE); return offset; } -static const per_sequence_t UEInformationResponse_v1130_IEs_sequence[] = { - { &hf_lte_rrc_connEstFailReport_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ConnEstFailReport_r11 }, - { &hf_lte_rrc_nonCriticalExtension_177, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationResponse_v1250_IEs }, +static const per_sequence_t RAN_AreaConfig_r15_sequence[] = { + { &hf_lte_rrc_trackingAreaCode_5GC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode_5GC_r15 }, + { &hf_lte_rrc_ran_AreaCodeList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEInformationResponse_v1130_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RAN_AreaConfig_r15(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_lte_rrc_UEInformationResponse_v1130_IEs, UEInformationResponse_v1130_IEs_sequence); + ett_lte_rrc_RAN_AreaConfig_r15, RAN_AreaConfig_r15_sequence); return offset; } -static const per_sequence_t UEInformationResponse_v1020_IEs_sequence[] = { - { &hf_lte_rrc_logMeasReport_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogMeasReport_r10 }, - { &hf_lte_rrc_nonCriticalExtension_176, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationResponse_v1130_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_r15_sequence_of[1] = { + { &hf_lte_rrc_ran_Area_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RAN_AreaConfig_r15 }, }; static int -dissect_lte_rrc_UEInformationResponse_v1020_IEs(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_lte_rrc_UEInformationResponse_v1020_IEs, UEInformationResponse_v1020_IEs_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_r15(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_lte_rrc_SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_r15, SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_r15_sequence_of, + 1, 16, FALSE); return offset; } -static const per_sequence_t UEInformationResponse_v930_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_06, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_05 }, - { &hf_lte_rrc_nonCriticalExtension_175, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationResponse_v1020_IEs }, +static const per_sequence_t PLMN_RAN_AreaConfig_r15_sequence[] = { + { &hf_lte_rrc_plmn_Identity_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_Identity }, + { &hf_lte_rrc_ran_Area_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEInformationResponse_v930_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PLMN_RAN_AreaConfig_r15(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_lte_rrc_UEInformationResponse_v930_IEs, UEInformationResponse_v930_IEs_sequence); + ett_lte_rrc_PLMN_RAN_AreaConfig_r15, PLMN_RAN_AreaConfig_r15_sequence); return offset; } -static const per_sequence_t UEInformationResponse_r9_IEs_sequence[] = { - { &hf_lte_rrc_rach_Report_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rach_Report_r9 }, - { &hf_lte_rrc_rlf_Report_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLF_Report_r9 }, - { &hf_lte_rrc_nonCriticalExtension_173, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationResponse_v930_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t PLMN_RAN_AreaConfigList_r15_sequence_of[1] = { + { &hf_lte_rrc_PLMN_RAN_AreaConfigList_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_RAN_AreaConfig_r15 }, }; static int -dissect_lte_rrc_UEInformationResponse_r9_IEs(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_lte_rrc_UEInformationResponse_r9_IEs, UEInformationResponse_r9_IEs_sequence); +dissect_lte_rrc_PLMN_RAN_AreaConfigList_r15(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_lte_rrc_PLMN_RAN_AreaConfigList_r15, PLMN_RAN_AreaConfigList_r15_sequence_of, + 1, maxPLMN_r15, FALSE); return offset; } -static const value_string lte_rrc_T_c1_45_vals[] = { - { 0, "ueInformationResponse-r9" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_RAN_NotificationAreaInfo_r15_vals[] = { + { 0, "cellList-r15" }, + { 1, "ran-AreaConfigList-r15" }, { 0, NULL } }; -static const per_choice_t T_c1_45_choice[] = { - { 0, &hf_lte_rrc_ueInformationResponse_r9_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEInformationResponse_r9_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t RAN_NotificationAreaInfo_r15_choice[] = { + { 0, &hf_lte_rrc_cellList_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_PLMN_RAN_AreaCellList_r15 }, + { 1, &hf_lte_rrc_ran_AreaConfigList_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_PLMN_RAN_AreaConfigList_r15 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_45(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RAN_NotificationAreaInfo_r15(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_lte_rrc_T_c1_45, T_c1_45_choice, + ett_lte_rrc_RAN_NotificationAreaInfo_r15, RAN_NotificationAreaInfo_r15_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_48_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_periodic_RNAU_timer_r15_vals[] = { + { 0, "min5" }, + { 1, "min10" }, + { 2, "min20" }, + { 3, "min30" }, + { 4, "min60" }, + { 5, "min120" }, + { 6, "min360" }, + { 7, "min720" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_criticalExtensionsFuture_48(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_lte_rrc_T_criticalExtensionsFuture_48, T_criticalExtensionsFuture_48_sequence); +dissect_lte_rrc_T_periodic_RNAU_timer_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_criticalExtensions_48_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_48_choice[] = { - { 0, &hf_lte_rrc_c1_45 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_45 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_48, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_48 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_nonCriticalExtension_39_sequence[] = { + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_48(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_lte_rrc_T_criticalExtensions_48, T_criticalExtensions_48_choice, - NULL); +dissect_lte_rrc_T_nonCriticalExtension_39(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_lte_rrc_T_nonCriticalExtension_39, T_nonCriticalExtension_39_sequence); return offset; } -static const per_sequence_t UEInformationResponse_r9_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_48, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_48 }, +static const per_sequence_t RRC_InactiveConfig_r15_sequence[] = { + { &hf_lte_rrc_fullI_RNTI_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_I_RNTI_r15 }, + { &hf_lte_rrc_shortI_RNTI_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ShortI_RNTI_r15 }, + { &hf_lte_rrc_ran_PagingCycle_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ran_PagingCycle_r15 }, + { &hf_lte_rrc_ran_NotificationAreaInfo_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RAN_NotificationAreaInfo_r15 }, + { &hf_lte_rrc_periodic_RNAU_timer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_periodic_RNAU_timer_r15 }, + { &hf_lte_rrc_nextHopChainingCount_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NextHopChainingCount }, + { &hf_lte_rrc_nonCriticalExtension_123, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_39 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEInformationResponse_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEInformationResponse-r9"); - +dissect_lte_rrc_RRC_InactiveConfig_r15(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_lte_rrc_UEInformationResponse_r9, UEInformationResponse_r9_sequence); + ett_lte_rrc_RRC_InactiveConfig_r15, RRC_InactiveConfig_r15_sequence); return offset; } -static const value_string lte_rrc_T_type_r9_vals[] = { - { 0, "entering" }, - { 1, "leaving" }, +static const value_string lte_rrc_T_cn_Type_r15_vals[] = { + { 0, "epc" }, + { 1, "fivegc" }, { 0, NULL } }; static int -dissect_lte_rrc_T_type_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cn_Type_r15(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, FALSE, 0, NULL); @@ -62730,84 +66658,125 @@ dissect_lte_rrc_T_type_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U } -static const value_string lte_rrc_T_carrierFreq_r9_vals[] = { - { 0, "eutra-r9" }, - { 1, "utra-r9" }, - { 2, "eutra2-v9e0" }, - { 0, NULL } -}; - -static const per_choice_t T_carrierFreq_r9_choice[] = { - { 0, &hf_lte_rrc_eutra_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_ARFCN_ValueEUTRA }, - { 1, &hf_lte_rrc_utra_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_ARFCN_ValueUTRA }, - { 2, &hf_lte_rrc_eutra2_v9e0 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_nonCriticalExtension_38_sequence[] = { + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_carrierFreq_r9(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_lte_rrc_T_carrierFreq_r9, T_carrierFreq_r9_choice, - NULL); +dissect_lte_rrc_T_nonCriticalExtension_38(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_lte_rrc_T_nonCriticalExtension_38, T_nonCriticalExtension_38_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_25_sequence[] = { +static const per_sequence_t RRCConnectionRelease_v1530_IEs_sequence[] = { + { &hf_lte_rrc_drb_ContinueROHC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_ContinueROHC_r15 }, + { &hf_lte_rrc_nextHopChainingCount_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NextHopChainingCount }, + { &hf_lte_rrc_measIdleConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasIdleConfigDedicated_r15 }, + { &hf_lte_rrc_rrc_InactiveConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRC_InactiveConfig_r15 }, + { &hf_lte_rrc_cn_Type_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cn_Type_r15 }, + { &hf_lte_rrc_nonCriticalExtension_122, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_38 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_25(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionRelease_v1530_IEs(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_lte_rrc_T_nonCriticalExtension_25, T_nonCriticalExtension_25_sequence); + ett_lte_rrc_RRCConnectionRelease_v1530_IEs, RRCConnectionRelease_v1530_IEs_sequence); return offset; } -static const per_sequence_t ProximityIndication_v930_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_65, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_25 }, +static const per_sequence_t RRCConnectionRelease_v1320_IEs_sequence[] = { + { &hf_lte_rrc_resumeIdentity_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ResumeIdentity_r13 }, + { &hf_lte_rrc_nonCriticalExtension_121, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_v1530_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ProximityIndication_v930_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionRelease_v1320_IEs(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_lte_rrc_ProximityIndication_v930_IEs, ProximityIndication_v930_IEs_sequence); + ett_lte_rrc_RRCConnectionRelease_v1320_IEs, RRCConnectionRelease_v1320_IEs_sequence); return offset; } -static const per_sequence_t ProximityIndication_r9_IEs_sequence[] = { - { &hf_lte_rrc_type_r9 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_type_r9 }, - { &hf_lte_rrc_carrierFreq_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_carrierFreq_r9 }, - { &hf_lte_rrc_nonCriticalExtension_64, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ProximityIndication_v930_IEs }, +static const per_sequence_t RRCConnectionRelease_v1020_IEs_sequence[] = { + { &hf_lte_rrc_extendedWaitTime_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_1800 }, + { &hf_lte_rrc_nonCriticalExtension_120, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_v1320_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ProximityIndication_r9_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionRelease_v1020_IEs(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_lte_rrc_ProximityIndication_r9_IEs, ProximityIndication_r9_IEs_sequence); + ett_lte_rrc_RRCConnectionRelease_v1020_IEs, RRCConnectionRelease_v1020_IEs_sequence); return offset; } -static const value_string lte_rrc_T_c1_27_vals[] = { - { 0, "proximityIndication-r9" }, +static const per_sequence_t RRCConnectionRelease_v920_IEs_sequence[] = { + { &hf_lte_rrc_cellInfoList_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cellInfoList_r9 }, + { &hf_lte_rrc_nonCriticalExtension_119, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_v1020_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionRelease_v920_IEs(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_lte_rrc_RRCConnectionRelease_v920_IEs, RRCConnectionRelease_v920_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionRelease_v890_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_03, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_02 }, + { &hf_lte_rrc_nonCriticalExtension_117, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_v920_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionRelease_v890_IEs(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_lte_rrc_RRCConnectionRelease_v890_IEs, RRCConnectionRelease_v890_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionRelease_r8_IEs_sequence[] = { + { &hf_lte_rrc_releaseCause, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReleaseCause }, + { &hf_lte_rrc_redirectedCarrierInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedirectedCarrierInfo }, + { &hf_lte_rrc_idleModeMobilityControlInfo, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IdleModeMobilityControlInfo }, + { &hf_lte_rrc_nonCriticalExtension_116, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_v890_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionRelease_r8_IEs(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_lte_rrc_RRCConnectionRelease_r8_IEs, RRCConnectionRelease_r8_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_33_vals[] = { + { 0, "rrcConnectionRelease-r8" }, { 1, "spare3" }, { 2, "spare2" }, { 3, "spare1" }, { 0, NULL } }; -static const per_choice_t T_c1_27_choice[] = { - { 0, &hf_lte_rrc_proximityIndication_r9_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ProximityIndication_r9_IEs }, +static const per_choice_t T_c1_33_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionRelease_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionRelease_r8_IEs }, { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, @@ -62815,105 +66784,135 @@ static const per_choice_t T_c1_27_choice[] = { }; static int -dissect_lte_rrc_T_c1_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_33(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_lte_rrc_T_c1_27, T_c1_27_choice, + ett_lte_rrc_T_c1_33, T_c1_33_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_20_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_31_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_31(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_lte_rrc_T_criticalExtensionsFuture_20, T_criticalExtensionsFuture_20_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_31, T_criticalExtensionsFuture_31_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_20_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_31_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_20_choice[] = { - { 0, &hf_lte_rrc_c1_27 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_27 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_20, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_20 }, +static const per_choice_t T_criticalExtensions_31_choice[] = { + { 0, &hf_lte_rrc_c1_33 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_33 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_31, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_31 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_31(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_lte_rrc_T_criticalExtensions_20, T_criticalExtensions_20_choice, + ett_lte_rrc_T_criticalExtensions_31, T_criticalExtensions_31_choice, NULL); return offset; } -static const per_sequence_t ProximityIndication_r9_sequence[] = { - { &hf_lte_rrc_criticalExtensions_20, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_20 }, +static const per_sequence_t RRCConnectionRelease_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_31, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_31 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ProximityIndication_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionRelease(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ProximityIndication-r9"); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionRelease"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_ProximityIndication_r9, ProximityIndication_r9_sequence); + ett_lte_rrc_RRCConnectionRelease, RRCConnectionRelease_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_27_sequence[] = { +static const per_sequence_t SecurityConfigSMC_sequence[] = { + { &hf_lte_rrc_securityAlgorithmConfig, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityAlgorithmConfig }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_27(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SecurityConfigSMC(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_lte_rrc_T_nonCriticalExtension_27, T_nonCriticalExtension_27_sequence); + ett_lte_rrc_SecurityConfigSMC, SecurityConfigSMC_sequence); return offset; } -static const per_sequence_t RNReconfigurationComplete_r10_IEs_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_51_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_51(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_lte_rrc_T_nonCriticalExtension_51, T_nonCriticalExtension_51_sequence); + + return offset; +} + + +static const per_sequence_t SecurityModeCommand_v8a0_IEs_sequence[] = { { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_67, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_27 }, + { &hf_lte_rrc_nonCriticalExtension_149, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_51 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RNReconfigurationComplete_r10_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SecurityModeCommand_v8a0_IEs(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_lte_rrc_RNReconfigurationComplete_r10_IEs, RNReconfigurationComplete_r10_IEs_sequence); + ett_lte_rrc_SecurityModeCommand_v8a0_IEs, SecurityModeCommand_v8a0_IEs_sequence); return offset; } -static const value_string lte_rrc_T_c1_29_vals[] = { - { 0, "rnReconfigurationComplete-r10" }, +static const per_sequence_t SecurityModeCommand_r8_IEs_sequence[] = { + { &hf_lte_rrc_securityConfigSMC, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityConfigSMC }, + { &hf_lte_rrc_nonCriticalExtension_148, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityModeCommand_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SecurityModeCommand_r8_IEs(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_lte_rrc_SecurityModeCommand_r8_IEs, SecurityModeCommand_r8_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_39_vals[] = { + { 0, "securityModeCommand-r8" }, { 1, "spare3" }, { 2, "spare2" }, { 3, "spare1" }, { 0, NULL } }; -static const per_choice_t T_c1_29_choice[] = { - { 0, &hf_lte_rrc_rnReconfigurationComplete_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RNReconfigurationComplete_r10_IEs }, +static const per_choice_t T_c1_39_choice[] = { + { 0, &hf_lte_rrc_securityModeCommand_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeCommand_r8_IEs }, { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, @@ -62921,342 +66920,395 @@ static const per_choice_t T_c1_29_choice[] = { }; static int -dissect_lte_rrc_T_c1_29(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_39(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_lte_rrc_T_c1_29, T_c1_29_choice, + ett_lte_rrc_T_c1_39, T_c1_39_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_22_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_41_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_41(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_lte_rrc_T_criticalExtensionsFuture_22, T_criticalExtensionsFuture_22_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_41, T_criticalExtensionsFuture_41_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_22_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_42_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_22_choice[] = { - { 0, &hf_lte_rrc_c1_29 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_29 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_22, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_22 }, +static const per_choice_t T_criticalExtensions_42_choice[] = { + { 0, &hf_lte_rrc_c1_39 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_39 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_41, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_41 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_22(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_42(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_lte_rrc_T_criticalExtensions_22, T_criticalExtensions_22_choice, + ett_lte_rrc_T_criticalExtensions_42, T_criticalExtensions_42_choice, NULL); return offset; } -static const per_sequence_t RNReconfigurationComplete_r10_sequence[] = { +static const per_sequence_t SecurityModeCommand_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_22, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_22 }, + { &hf_lte_rrc_criticalExtensions_42, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_42 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RNReconfigurationComplete_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SecurityModeCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RNReconfigurationComplete-r10"); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecurityModeCommand"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RNReconfigurationComplete_r10, RNReconfigurationComplete_r10_sequence); + ett_lte_rrc_SecurityModeCommand, SecurityModeCommand_sequence); return offset; } +static const per_sequence_t UE_CapabilityRequest_sequence_of[1] = { + { &hf_lte_rrc_UE_CapabilityRequest_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RAT_Type }, +}; static int -dissect_lte_rrc_INTEGER_0_maxMBSFN_Area_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxMBSFN_Area_1, NULL, FALSE); +dissect_lte_rrc_UE_CapabilityRequest(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_lte_rrc_UE_CapabilityRequest, UE_CapabilityRequest_sequence_of, + 1, maxRAT_Capabilities, FALSE); return offset; } +static const per_sequence_t SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11_sequence_of[1] = { + { &hf_lte_rrc_requestedFrequencyBands_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, +}; static int -dissect_lte_rrc_INTEGER_0_maxServiceCount_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxServiceCount_1, NULL, FALSE); +dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11(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_lte_rrc_SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11, SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11_sequence_of, + 1, 16, FALSE); return offset; } -static const per_sequence_t CountingResponseInfo_r10_sequence[] = { - { &hf_lte_rrc_countingResponseService_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxServiceCount_1 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_requestReducedFormat_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CountingResponseInfo_r10(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_lte_rrc_CountingResponseInfo_r10, CountingResponseInfo_r10_sequence); +dissect_lte_rrc_T_requestReducedFormat_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CountingResponseList_r10_sequence_of[1] = { - { &hf_lte_rrc_CountingResponseList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CountingResponseInfo_r10 }, +static const value_string lte_rrc_T_requestSkipFallbackComb_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CountingResponseList_r10(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_lte_rrc_CountingResponseList_r10, CountingResponseList_r10_sequence_of, - 1, maxServiceCount, FALSE); +dissect_lte_rrc_T_requestSkipFallbackComb_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_18_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_nonCriticalExtension_18(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_lte_rrc_T_nonCriticalExtension_18, T_nonCriticalExtension_18_sequence); +dissect_lte_rrc_INTEGER_2_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 2U, 32U, NULL, FALSE); return offset; } -static const per_sequence_t MBMSCountingResponse_r10_IEs_sequence[] = { - { &hf_lte_rrc_mbsfn_AreaIndex_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_maxMBSFN_Area_1 }, - { &hf_lte_rrc_countingResponseList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CountingResponseList_r10 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_44, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_18 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_requestReducedIntNonContComb_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MBMSCountingResponse_r10_IEs(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_lte_rrc_MBMSCountingResponse_r10_IEs, MBMSCountingResponse_r10_IEs_sequence); +dissect_lte_rrc_T_requestReducedIntNonContComb_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_c1_23_vals[] = { - { 0, "countingResponse-r10" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_CA_BandwidthClass_r10_vals[] = { + { 0, "a" }, + { 1, "b" }, + { 2, "c" }, + { 3, "d" }, + { 4, "e" }, + { 5, "f" }, { 0, NULL } }; -static const per_choice_t T_c1_23_choice[] = { - { 0, &hf_lte_rrc_countingResponse_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBMSCountingResponse_r10_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_23(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_lte_rrc_T_c1_23, T_c1_23_choice, - NULL); +dissect_lte_rrc_CA_BandwidthClass_r10(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, + 6, NULL, TRUE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_16_sequence[] = { +static const per_sequence_t BandIndication_r14_sequence[] = { + { &hf_lte_rrc_bandEUTRA_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, + { &hf_lte_rrc_ca_BandwidthClassDL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_BandwidthClass_r10 }, + { &hf_lte_rrc_ca_BandwidthClassUL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CA_BandwidthClass_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandIndication_r14(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_lte_rrc_T_criticalExtensionsFuture_16, T_criticalExtensionsFuture_16_sequence); + ett_lte_rrc_BandIndication_r14, BandIndication_r14_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_16_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } +static const per_sequence_t BandCombination_r14_sequence_of[1] = { + { &hf_lte_rrc_BandCombination_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandIndication_r14 }, }; -static const per_choice_t T_criticalExtensions_16_choice[] = { - { 0, &hf_lte_rrc_c1_23 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_23 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_16, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_16 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_BandCombination_r14(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_lte_rrc_BandCombination_r14, BandCombination_r14_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); + + return offset; +} + + +static const per_sequence_t BandCombinationList_r14_sequence_of[1] = { + { &hf_lte_rrc_BandCombinationList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombination_r14 }, }; static int -dissect_lte_rrc_T_criticalExtensions_16(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_lte_rrc_T_criticalExtensions_16, T_criticalExtensions_16_choice, - NULL); +dissect_lte_rrc_BandCombinationList_r14(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_lte_rrc_BandCombinationList_r14, BandCombinationList_r14_sequence_of, + 1, maxBandComb_r13, FALSE); return offset; } -static const per_sequence_t MBMSCountingResponse_r10_sequence[] = { - { &hf_lte_rrc_criticalExtensions_16, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_16 }, - { NULL, 0, 0, NULL } + +static int +dissect_lte_rrc_T_requestedFreqBandsNR_MRDC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *freq_band_list_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &freq_band_list_tvb); + + if (freq_band_list_tvb) { + proto_tree *subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_requestedFreqBandsNR_MRDC_r15); + dissect_nr_rrc_FreqBandList_PDU(freq_band_list_tvb, actx->pinfo, subtree, NULL); + } + + + return offset; +} + + +static const value_string lte_rrc_T_requestSTTI_SPT_Capability_r15_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MBMSCountingResponse_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_requestSTTI_SPT_Capability_r15(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, + 1, NULL, FALSE, 0, NULL); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBMSCountingResponse-r10"); + return offset; +} - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_MBMSCountingResponse_r10, MBMSCountingResponse_r10_sequence); + +static const value_string lte_rrc_T_eutra_nr_only_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_eutra_nr_only_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RSTD_InterFreqInfo_r10_eag_1_sequence[] = { - { &hf_lte_rrc_carrierFreq_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, +static const per_sequence_t T_nonCriticalExtension_61_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RSTD_InterFreqInfo_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RSTD_InterFreqInfo_r10_eag_1_sequence); +dissect_lte_rrc_T_nonCriticalExtension_61(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_lte_rrc_T_nonCriticalExtension_61, T_nonCriticalExtension_61_sequence); return offset; } -static const per_sequence_t RSTD_InterFreqInfo_r10_sequence[] = { - { &hf_lte_rrc_carrierFreq_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &hf_lte_rrc_measPRS_Offset_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_39 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSTD_InterFreqInfo_r10_eag_1 }, +static const per_sequence_t UECapabilityEnquiry_v1530_IEs_sequence[] = { + { &hf_lte_rrc_requestSTTI_SPT_Capability_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_requestSTTI_SPT_Capability_r15 }, + { &hf_lte_rrc_eutra_nr_only_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eutra_nr_only_r15 }, + { &hf_lte_rrc_nonCriticalExtension_188, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_61 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RSTD_InterFreqInfo_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UECapabilityEnquiry_v1530_IEs(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_lte_rrc_RSTD_InterFreqInfo_r10, RSTD_InterFreqInfo_r10_sequence); + ett_lte_rrc_UECapabilityEnquiry_v1530_IEs, UECapabilityEnquiry_v1530_IEs_sequence); return offset; } -static const per_sequence_t RSTD_InterFreqInfoList_r10_sequence_of[1] = { - { &hf_lte_rrc_RSTD_InterFreqInfoList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSTD_InterFreqInfo_r10 }, +static const per_sequence_t UECapabilityEnquiry_v1510_IEs_sequence[] = { + { &hf_lte_rrc_requestedFreqBandsNR_MRDC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_requestedFreqBandsNR_MRDC_r15 }, + { &hf_lte_rrc_nonCriticalExtension_187, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v1530_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RSTD_InterFreqInfoList_r10(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_lte_rrc_RSTD_InterFreqInfoList_r10, RSTD_InterFreqInfoList_r10_sequence_of, - 1, maxRSTD_Freq_r10, FALSE); +dissect_lte_rrc_UECapabilityEnquiry_v1510_IEs(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_lte_rrc_UECapabilityEnquiry_v1510_IEs, UECapabilityEnquiry_v1510_IEs_sequence); return offset; } -static const per_sequence_t T_start_sequence[] = { - { &hf_lte_rrc_rstd_InterFreqInfoList_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSTD_InterFreqInfoList_r10 }, +static const per_sequence_t UECapabilityEnquiry_v1430_IEs_sequence[] = { + { &hf_lte_rrc_requestDiffFallbackCombList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandCombinationList_r14 }, + { &hf_lte_rrc_nonCriticalExtension_186, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v1510_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_start(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UECapabilityEnquiry_v1430_IEs(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_lte_rrc_T_start, T_start_sequence); + ett_lte_rrc_UECapabilityEnquiry_v1430_IEs, UECapabilityEnquiry_v1430_IEs_sequence); return offset; } -static const value_string lte_rrc_T_rstd_InterFreqIndication_r10_vals[] = { - { 0, "start" }, - { 1, "stop" }, - { 0, NULL } +static const per_sequence_t UECapabilityEnquiry_v1310_IEs_sequence[] = { + { &hf_lte_rrc_requestReducedFormat_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_requestReducedFormat_r13 }, + { &hf_lte_rrc_requestSkipFallbackComb_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_requestSkipFallbackComb_r13 }, + { &hf_lte_rrc_requestedMaxCCsDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_32 }, + { &hf_lte_rrc_requestedMaxCCsUL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_32 }, + { &hf_lte_rrc_requestReducedIntNonContComb_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_requestReducedIntNonContComb_r13 }, + { &hf_lte_rrc_nonCriticalExtension_185, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v1430_IEs }, + { NULL, 0, 0, NULL } }; -static const per_choice_t T_rstd_InterFreqIndication_r10_choice[] = { - { 0, &hf_lte_rrc_start , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_start }, - { 1, &hf_lte_rrc_stop , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_UECapabilityEnquiry_v1310_IEs(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_lte_rrc_UECapabilityEnquiry_v1310_IEs, UECapabilityEnquiry_v1310_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UECapabilityEnquiry_v1180_IEs_sequence[] = { + { &hf_lte_rrc_requestedFrequencyBands_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_16_OF_FreqBandIndicator_r11 }, + { &hf_lte_rrc_nonCriticalExtension_184, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v1310_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_rstd_InterFreqIndication_r10(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_lte_rrc_T_rstd_InterFreqIndication_r10, T_rstd_InterFreqIndication_r10_choice, - NULL); +dissect_lte_rrc_UECapabilityEnquiry_v1180_IEs(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_lte_rrc_UECapabilityEnquiry_v1180_IEs, UECapabilityEnquiry_v1180_IEs_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_15_sequence[] = { +static const per_sequence_t UECapabilityEnquiry_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_183, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v1180_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UECapabilityEnquiry_v8a0_IEs(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_lte_rrc_T_nonCriticalExtension_15, T_nonCriticalExtension_15_sequence); + ett_lte_rrc_UECapabilityEnquiry_v8a0_IEs, UECapabilityEnquiry_v8a0_IEs_sequence); return offset; } -static const per_sequence_t InterFreqRSTDMeasurementIndication_r10_IEs_sequence[] = { - { &hf_lte_rrc_rstd_InterFreqIndication_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rstd_InterFreqIndication_r10 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_38, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_15 }, +static const per_sequence_t UECapabilityEnquiry_r8_IEs_sequence[] = { + { &hf_lte_rrc_ue_CapabilityRequest, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_CapabilityRequest }, + { &hf_lte_rrc_nonCriticalExtension_182, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityEnquiry_v8a0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqRSTDMeasurementIndication_r10_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UECapabilityEnquiry_r8_IEs(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_lte_rrc_InterFreqRSTDMeasurementIndication_r10_IEs, InterFreqRSTDMeasurementIndication_r10_IEs_sequence); + ett_lte_rrc_UECapabilityEnquiry_r8_IEs, UECapabilityEnquiry_r8_IEs_sequence); return offset; } -static const value_string lte_rrc_T_c1_21_vals[] = { - { 0, "interFreqRSTDMeasurementIndication-r10" }, +static const value_string lte_rrc_T_c1_42_vals[] = { + { 0, "ueCapabilityEnquiry-r8" }, { 1, "spare3" }, { 2, "spare2" }, { 3, "spare1" }, { 0, NULL } }; -static const per_choice_t T_c1_21_choice[] = { - { 0, &hf_lte_rrc_interFreqRSTDMeasurementIndication_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_InterFreqRSTDMeasurementIndication_r10_IEs }, +static const per_choice_t T_c1_42_choice[] = { + { 0, &hf_lte_rrc_ueCapabilityEnquiry_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UECapabilityEnquiry_r8_IEs }, { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, @@ -63264,533 +67316,474 @@ static const per_choice_t T_c1_21_choice[] = { }; static int -dissect_lte_rrc_T_c1_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_42(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_lte_rrc_T_c1_21, T_c1_21_choice, + ett_lte_rrc_T_c1_42, T_c1_42_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_14_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_47_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_47(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_lte_rrc_T_criticalExtensionsFuture_14, T_criticalExtensionsFuture_14_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_47, T_criticalExtensionsFuture_47_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_14_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_48_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_14_choice[] = { - { 0, &hf_lte_rrc_c1_21 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_21 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_14 }, +static const per_choice_t T_criticalExtensions_48_choice[] = { + { 0, &hf_lte_rrc_c1_42 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_42 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_47, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_47 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_48(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_lte_rrc_T_criticalExtensions_14, T_criticalExtensions_14_choice, + ett_lte_rrc_T_criticalExtensions_48, T_criticalExtensions_48_choice, NULL); return offset; } -static const per_sequence_t InterFreqRSTDMeasurementIndication_r10_sequence[] = { - { &hf_lte_rrc_criticalExtensions_14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_14 }, +static const per_sequence_t UECapabilityEnquiry_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_48, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_48 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqRSTDMeasurementIndication_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UECapabilityEnquiry(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InterFreqRSTDMeasurementIndication-r10"); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UECapabilityEnquiry"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_InterFreqRSTDMeasurementIndication_r10, InterFreqRSTDMeasurementIndication_r10_sequence); + ett_lte_rrc_UECapabilityEnquiry, UECapabilityEnquiry_sequence); return offset; } -static const value_string lte_rrc_T_c1_15_vals[] = { - { 0, "csfbParametersRequestCDMA2000" }, - { 1, "measurementReport" }, - { 2, "rrcConnectionReconfigurationComplete" }, - { 3, "rrcConnectionReestablishmentComplete" }, - { 4, "rrcConnectionSetupComplete" }, - { 5, "securityModeComplete" }, - { 6, "securityModeFailure" }, - { 7, "ueCapabilityInformation" }, - { 8, "ulHandoverPreparationTransfer" }, - { 9, "ulInformationTransfer" }, - { 10, "counterCheckResponse" }, - { 11, "ueInformationResponse-r9" }, - { 12, "proximityIndication-r9" }, - { 13, "rnReconfigurationComplete-r10" }, - { 14, "mbmsCountingResponse-r10" }, - { 15, "interFreqRSTDMeasurementIndication-r10" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_15_choice[] = { - { 0, &hf_lte_rrc_csfbParametersRequestCDMA2000, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSFBParametersRequestCDMA2000 }, - { 1, &hf_lte_rrc_measurementReport, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MeasurementReport }, - { 2, &hf_lte_rrc_rrcConnectionReconfigurationComplete, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReconfigurationComplete }, - { 3, &hf_lte_rrc_rrcConnectionReestablishmentComplete, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentComplete }, - { 4, &hf_lte_rrc_rrcConnectionSetupComplete, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionSetupComplete }, - { 5, &hf_lte_rrc_securityModeComplete, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeComplete }, - { 6, &hf_lte_rrc_securityModeFailure, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeFailure }, - { 7, &hf_lte_rrc_ueCapabilityInformation, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UECapabilityInformation }, - { 8, &hf_lte_rrc_ulHandoverPreparationTransfer, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULHandoverPreparationTransfer }, - { 9, &hf_lte_rrc_ulInformationTransfer, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULInformationTransfer }, - { 10, &hf_lte_rrc_counterCheckResponse, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CounterCheckResponse }, - { 11, &hf_lte_rrc_ueInformationResponse_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEInformationResponse_r9 }, - { 12, &hf_lte_rrc_proximityIndication_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ProximityIndication_r9 }, - { 13, &hf_lte_rrc_rnReconfigurationComplete_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RNReconfigurationComplete_r10 }, - { 14, &hf_lte_rrc_mbmsCountingResponse_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBMSCountingResponse_r10 }, - { 15, &hf_lte_rrc_interFreqRSTDMeasurementIndication_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_InterFreqRSTDMeasurementIndication_r10 }, - { 0, NULL, 0, NULL } + +static int +dissect_lte_rrc_INTEGER_0_33554431(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 33554431U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t DRB_CountMSB_Info_sequence[] = { + { &hf_lte_rrc_drb_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, + { &hf_lte_rrc_countMSB_Uplink, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_33554431 }, + { &hf_lte_rrc_countMSB_Downlink, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_33554431 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_15(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_lte_rrc_T_c1_15, T_c1_15_choice, - NULL); +dissect_lte_rrc_DRB_CountMSB_Info(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_lte_rrc_DRB_CountMSB_Info, DRB_CountMSB_Info_sequence); return offset; } -static const value_string lte_rrc_T_powerPrefIndication_r11_01_vals[] = { - { 0, "normal" }, - { 1, "lowPowerConsumption" }, - { 0, NULL } +static const per_sequence_t DRB_CountMSB_InfoList_sequence_of[1] = { + { &hf_lte_rrc_DRB_CountMSB_InfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_CountMSB_Info }, }; - static int -dissect_lte_rrc_T_powerPrefIndication_r11_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, - 2, NULL, FALSE, 0, NULL); +dissect_lte_rrc_DRB_CountMSB_InfoList(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_lte_rrc_DRB_CountMSB_InfoList, DRB_CountMSB_InfoList_sequence_of, + 1, maxDRB, FALSE); return offset; } -static const value_string lte_rrc_T_dl_Preference_r14_vals[] = { - { 0, "mhz1dot4" }, - { 1, "mhz5" }, - { 2, "mhz20" }, - { 0, NULL } +static const per_sequence_t DRB_CountMSB_InfoListExt_r15_sequence_of[1] = { + { &hf_lte_rrc_DRB_CountMSB_InfoListExt_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_CountMSB_Info }, }; - static int -dissect_lte_rrc_T_dl_Preference_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_DRB_CountMSB_InfoListExt_r15(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_lte_rrc_DRB_CountMSB_InfoListExt_r15, DRB_CountMSB_InfoListExt_r15_sequence_of, + 1, maxDRBExt_r15, FALSE); return offset; } -static const value_string lte_rrc_T_ul_Preference_r14_vals[] = { - { 0, "mhz1dot4" }, - { 1, "mhz5" }, - { 0, NULL } +static const per_sequence_t T_nonCriticalExtension_08_sequence[] = { + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ul_Preference_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_T_nonCriticalExtension_08(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_lte_rrc_T_nonCriticalExtension_08, T_nonCriticalExtension_08_sequence); return offset; } -static const per_sequence_t BW_Preference_r14_sequence[] = { - { &hf_lte_rrc_dl_Preference_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dl_Preference_r14 }, - { &hf_lte_rrc_ul_Preference_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Preference_r14 }, +static const per_sequence_t CounterCheck_v1530_IEs_sequence[] = { + { &hf_lte_rrc_drb_CountMSB_InfoListExt_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_CountMSB_InfoListExt_r15 }, + { &hf_lte_rrc_nonCriticalExtension_23, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_08 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BW_Preference_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CounterCheck_v1530_IEs(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_lte_rrc_BW_Preference_r14, BW_Preference_r14_sequence); + ett_lte_rrc_CounterCheck_v1530_IEs, CounterCheck_v1530_IEs_sequence); return offset; } -static const value_string lte_rrc_T_trafficPeriodicity_r14_vals[] = { - { 0, "sf20" }, - { 1, "sf50" }, - { 2, "sf100" }, - { 3, "sf200" }, - { 4, "sf300" }, - { 5, "sf400" }, - { 6, "sf500" }, - { 7, "sf600" }, - { 8, "sf700" }, - { 9, "sf800" }, - { 10, "sf900" }, - { 11, "sf1000" }, - { 0, NULL } +static const per_sequence_t CounterCheck_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_22, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CounterCheck_v1530_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_trafficPeriodicity_r14(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, - 12, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CounterCheck_v8a0_IEs(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_lte_rrc_CounterCheck_v8a0_IEs, CounterCheck_v8a0_IEs_sequence); return offset; } +static const per_sequence_t CounterCheck_r8_IEs_sequence[] = { + { &hf_lte_rrc_drb_CountMSB_InfoList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_CountMSB_InfoList }, + { &hf_lte_rrc_nonCriticalExtension_21, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CounterCheck_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_messageSize_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *messageSize_r14_tvb = NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, - 6, 6, FALSE, &messageSize_r14_tvb, NULL); +dissect_lte_rrc_CounterCheck_r8_IEs(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_lte_rrc_CounterCheck_r8_IEs, CounterCheck_r8_IEs_sequence); - if (messageSize_r14_tvb) { - guint bitvalue = tvb_get_bits8(messageSize_r14_tvb, 0, 6); - actx->created_item = proto_tree_add_uint(tree, hf_index, messageSize_r14_tvb, 0, 1, bitvalue); - } + return offset; +} + + +static const value_string lte_rrc_T_c1_17_vals[] = { + { 0, "counterCheck-r8" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_17_choice[] = { + { 0, &hf_lte_rrc_counterCheck_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CounterCheck_r8_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; +static int +dissect_lte_rrc_T_c1_17(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_lte_rrc_T_c1_17, T_c1_17_choice, + NULL); return offset; } -static const per_sequence_t TrafficPatternInfo_r14_sequence[] = { - { &hf_lte_rrc_trafficPeriodicity_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_trafficPeriodicity_r14 }, - { &hf_lte_rrc_timingOffset_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10239 }, - { &hf_lte_rrc_priorityInfoSL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Priority_r13 }, - { &hf_lte_rrc_logicalChannelIdentityUL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_3_10 }, - { &hf_lte_rrc_messageSize_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messageSize_r14 }, +static const per_sequence_t T_criticalExtensionsFuture_07_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_TrafficPatternInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_07(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_lte_rrc_TrafficPatternInfo_r14, TrafficPatternInfo_r14_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_07, T_criticalExtensionsFuture_07_sequence); return offset; } -static const per_sequence_t TrafficPatternInfoList_r14_sequence_of[1] = { - { &hf_lte_rrc_TrafficPatternInfoList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrafficPatternInfo_r14 }, +static const value_string lte_rrc_T_criticalExtensions_07_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_07_choice[] = { + { 0, &hf_lte_rrc_c1_17 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_17 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_07, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_07 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_TrafficPatternInfoList_r14(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_lte_rrc_TrafficPatternInfoList_r14, TrafficPatternInfoList_r14_sequence_of, - 1, maxTrafficPattern_r14, FALSE); +dissect_lte_rrc_T_criticalExtensions_07(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_lte_rrc_T_criticalExtensions_07, T_criticalExtensions_07_choice, + NULL); return offset; } -static const per_sequence_t T_sps_AssistanceInformation_r14_sequence[] = { - { &hf_lte_rrc_trafficPatternInfoListSL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TrafficPatternInfoList_r14 }, - { &hf_lte_rrc_trafficPatternInfoListUL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TrafficPatternInfoList_r14 }, +static const per_sequence_t CounterCheck_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_07, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_07 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_sps_AssistanceInformation_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CounterCheck(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CounterCheck"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_sps_AssistanceInformation_r14, T_sps_AssistanceInformation_r14_sequence); + ett_lte_rrc_CounterCheck, CounterCheck_sequence); return offset; } -static const value_string lte_rrc_T_rlm_Event_r14_vals[] = { - { 0, "earlyOutOfSync" }, - { 1, "earlyInSync" }, +static const value_string lte_rrc_T_logMeasReportReq_r10_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rlm_Event_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_logMeasReportReq_r10(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_excessRep_MPDCCH_r14_vals[] = { - { 0, "excessRep1" }, - { 1, "excessRep2" }, +static const value_string lte_rrc_T_connEstFailReportReq_r11_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_excessRep_MPDCCH_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_connEstFailReportReq_r11(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_rlm_Report_r14_sequence[] = { - { &hf_lte_rrc_rlm_Event_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rlm_Event_r14 }, - { &hf_lte_rrc_excessRep_MPDCCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_excessRep_MPDCCH_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mobilityHistoryReportReq_r12_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_rlm_Report_r14(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_lte_rrc_T_rlm_Report_r14, T_rlm_Report_r14_sequence); +dissect_lte_rrc_T_mobilityHistoryReportReq_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_type1_vals[] = { - { 0, "msMinus1280" }, - { 1, "msMinus640" }, - { 2, "msMinus320" }, - { 3, "msMinus160" }, - { 4, "msMinus80" }, - { 5, "msMinus60" }, - { 6, "msMinus40" }, - { 7, "msMinus20" }, - { 8, "ms0" }, - { 9, "ms20" }, - { 10, "ms40" }, - { 11, "ms60" }, - { 12, "ms80" }, - { 13, "ms160" }, - { 14, "ms320" }, - { 15, "ms640" }, - { 16, "ms1280" }, +static const value_string lte_rrc_T_idleModeMeasurementReq_r15_vals[] = { + { 0, "true" }, { 0, NULL } }; -static value_string_ext lte_rrc_T_type1_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_type1_vals); - static int -dissect_lte_rrc_T_type1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_idleModeMeasurementReq_r15(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, - 17, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_type2_vals[] = { - { 0, "msMinus192" }, - { 1, "msMinus168" }, - { 2, "msMinus144" }, - { 3, "msMinus120" }, - { 4, "msMinus96" }, - { 5, "msMinus72" }, - { 6, "msMinus48" }, - { 7, "msMinus24" }, - { 8, "ms0" }, - { 9, "ms24" }, - { 10, "ms48" }, - { 11, "ms72" }, - { 12, "ms96" }, - { 13, "ms120" }, - { 14, "ms144" }, - { 15, "ms168" }, - { 16, "ms192" }, - { 0, NULL } -}; - -static value_string_ext lte_rrc_T_type2_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_type2_vals); - static int -dissect_lte_rrc_T_type2(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, - 17, NULL, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_1_maxWayPoint_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxWayPoint_r15, NULL, FALSE); return offset; } -static const value_string lte_rrc_DelayBudgetReport_r14_vals[] = { - { 0, "type1" }, - { 1, "type2" }, +static const value_string lte_rrc_T_includeTimeStamp_r15_vals[] = { + { 0, "true" }, { 0, NULL } }; -static const per_choice_t DelayBudgetReport_r14_choice[] = { - { 0, &hf_lte_rrc_type1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_type1 }, - { 1, &hf_lte_rrc_type2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_type2 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_DelayBudgetReport_r14(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_lte_rrc_DelayBudgetReport_r14, DelayBudgetReport_r14_choice, - NULL); +dissect_lte_rrc_T_includeTimeStamp_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t FlightPathInfoReportConfig_r15_sequence[] = { + { &hf_lte_rrc_maxWayPointNumber_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxWayPoint_r15 }, + { &hf_lte_rrc_includeTimeStamp_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_includeTimeStamp_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 21U, NULL, FALSE); +dissect_lte_rrc_FlightPathInfoReportConfig_r15(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_lte_rrc_FlightPathInfoReportConfig_r15, FlightPathInfoReportConfig_r15_sequence); return offset; } -static const per_sequence_t T_reducedUE_Category_sequence[] = { - { &hf_lte_rrc_reducedUE_CategoryDL, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_19 }, - { &hf_lte_rrc_reducedUE_CategoryUL, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_21 }, +static const per_sequence_t T_nonCriticalExtension_63_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_reducedUE_Category(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_63(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_lte_rrc_T_reducedUE_Category, T_reducedUE_Category_sequence); + ett_lte_rrc_T_nonCriticalExtension_63, T_nonCriticalExtension_63_sequence); return offset; } -static const per_sequence_t T_reducedMaxCCs_sequence[] = { - { &hf_lte_rrc_reducedCCsDL, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, - { &hf_lte_rrc_reducedCCsUL, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, +static const per_sequence_t UEInformationRequest_v1530_IEs_sequence[] = { + { &hf_lte_rrc_idleModeMeasurementReq_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_idleModeMeasurementReq_r15 }, + { &hf_lte_rrc_flightPathInfoReq_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FlightPathInfoReportConfig_r15 }, + { &hf_lte_rrc_nonCriticalExtension_197, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_63 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_reducedMaxCCs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UEInformationRequest_v1530_IEs(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_lte_rrc_T_reducedMaxCCs, T_reducedMaxCCs_sequence); + ett_lte_rrc_UEInformationRequest_v1530_IEs, UEInformationRequest_v1530_IEs_sequence); return offset; } -static const per_sequence_t OverheatingAssistance_r14_sequence[] = { - { &hf_lte_rrc_reducedUE_Category, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedUE_Category }, - { &hf_lte_rrc_reducedMaxCCs, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMaxCCs }, +static const per_sequence_t UEInformationRequest_v1250_IEs_sequence[] = { + { &hf_lte_rrc_mobilityHistoryReportReq_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityHistoryReportReq_r12 }, + { &hf_lte_rrc_nonCriticalExtension_196, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationRequest_v1530_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_OverheatingAssistance_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UEInformationRequest_v1250_IEs(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_lte_rrc_OverheatingAssistance_r14, OverheatingAssistance_r14_sequence); + ett_lte_rrc_UEInformationRequest_v1250_IEs, UEInformationRequest_v1250_IEs_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_54_sequence[] = { +static const per_sequence_t UEInformationRequest_v1130_IEs_sequence[] = { + { &hf_lte_rrc_connEstFailReportReq_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connEstFailReportReq_r11 }, + { &hf_lte_rrc_nonCriticalExtension_195, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationRequest_v1250_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_54(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UEInformationRequest_v1130_IEs(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_lte_rrc_T_nonCriticalExtension_54, T_nonCriticalExtension_54_sequence); + ett_lte_rrc_UEInformationRequest_v1130_IEs, UEInformationRequest_v1130_IEs_sequence); return offset; } -static const per_sequence_t UEAssistanceInformation_v1450_IEs_sequence[] = { - { &hf_lte_rrc_overheatingAssistance_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OverheatingAssistance_r14 }, - { &hf_lte_rrc_nonCriticalExtension_158, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_54 }, +static const per_sequence_t UEInformationRequest_v1020_IEs_sequence[] = { + { &hf_lte_rrc_logMeasReportReq_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasReportReq_r10 }, + { &hf_lte_rrc_nonCriticalExtension_194, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationRequest_v1130_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEAssistanceInformation_v1450_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UEInformationRequest_v1020_IEs(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_lte_rrc_UEAssistanceInformation_v1450_IEs, UEAssistanceInformation_v1450_IEs_sequence); + ett_lte_rrc_UEInformationRequest_v1020_IEs, UEInformationRequest_v1020_IEs_sequence); return offset; } -static const per_sequence_t UEAssistanceInformation_v1430_IEs_sequence[] = { - { &hf_lte_rrc_bw_Preference_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BW_Preference_r14 }, - { &hf_lte_rrc_sps_AssistanceInformation_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sps_AssistanceInformation_r14 }, - { &hf_lte_rrc_rlm_Report_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlm_Report_r14 }, - { &hf_lte_rrc_delayBudgetReport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DelayBudgetReport_r14 }, - { &hf_lte_rrc_nonCriticalExtension_157, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEAssistanceInformation_v1450_IEs }, +static const per_sequence_t UEInformationRequest_v930_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_193, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationRequest_v1020_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEAssistanceInformation_v1430_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UEInformationRequest_v930_IEs(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_lte_rrc_UEAssistanceInformation_v1430_IEs, UEAssistanceInformation_v1430_IEs_sequence); + ett_lte_rrc_UEInformationRequest_v930_IEs, UEInformationRequest_v930_IEs_sequence); return offset; } -static const per_sequence_t UEAssistanceInformation_r11_IEs_sequence[] = { - { &hf_lte_rrc_powerPrefIndication_r11_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerPrefIndication_r11_01 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_156, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEAssistanceInformation_v1430_IEs }, +static const per_sequence_t UEInformationRequest_r9_IEs_sequence[] = { + { &hf_lte_rrc_rach_ReportReq_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_rlf_ReportReq_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_nonCriticalExtension_192, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationRequest_v930_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEAssistanceInformation_r11_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UEInformationRequest_r9_IEs(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_lte_rrc_UEAssistanceInformation_r11_IEs, UEAssistanceInformation_r11_IEs_sequence); + ett_lte_rrc_UEInformationRequest_r9_IEs, UEInformationRequest_r9_IEs_sequence); return offset; } -static const value_string lte_rrc_T_c1_41_vals[] = { - { 0, "ueAssistanceInformation-r11" }, +static const value_string lte_rrc_T_c1_44_vals[] = { + { 0, "ueInformationRequest-r9" }, { 1, "spare3" }, { 2, "spare2" }, { 3, "spare1" }, { 0, NULL } }; -static const per_choice_t T_c1_41_choice[] = { - { 0, &hf_lte_rrc_ueAssistanceInformation_r11_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEAssistanceInformation_r11_IEs }, +static const per_choice_t T_c1_44_choice[] = { + { 0, &hf_lte_rrc_ueInformationRequest_r9_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEInformationRequest_r9_IEs }, { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, @@ -63798,755 +67791,892 @@ static const per_choice_t T_c1_41_choice[] = { }; static int -dissect_lte_rrc_T_c1_41(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_44(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_lte_rrc_T_c1_41, T_c1_41_choice, + ett_lte_rrc_T_c1_44, T_c1_44_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_44_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_49_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_44(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_49(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_lte_rrc_T_criticalExtensionsFuture_44, T_criticalExtensionsFuture_44_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_49, T_criticalExtensionsFuture_49_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_44_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_50_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_44_choice[] = { - { 0, &hf_lte_rrc_c1_41 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_41 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_44, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_44 }, +static const per_choice_t T_criticalExtensions_50_choice[] = { + { 0, &hf_lte_rrc_c1_44 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_44 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_49, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_49 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_44(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_50(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_lte_rrc_T_criticalExtensions_44, T_criticalExtensions_44_choice, + ett_lte_rrc_T_criticalExtensions_50, T_criticalExtensions_50_choice, NULL); return offset; } -static const per_sequence_t UEAssistanceInformation_r11_sequence[] = { - { &hf_lte_rrc_criticalExtensions_44, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_44 }, +static const per_sequence_t UEInformationRequest_r9_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_50, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_50 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEAssistanceInformation_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UEInformationRequest_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEAssistanceInformation-r11"); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEInformationRequest-r9"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_UEAssistanceInformation_r11, UEAssistanceInformation_r11_sequence); + ett_lte_rrc_UEInformationRequest_r9, UEInformationRequest_r9_sequence); return offset; } -static const value_string lte_rrc_T_interferenceDirection_r11_vals[] = { - { 0, "eutra" }, - { 1, "other" }, - { 2, "both" }, - { 3, "spare" }, - { 0, NULL } +static const per_sequence_t TraceReference_r10_sequence[] = { + { &hf_lte_rrc_plmn_Identity_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, + { &hf_lte_rrc_traceId_r10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_3 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_interferenceDirection_r11(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); +dissect_lte_rrc_TraceReference_r10(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_lte_rrc_TraceReference_r10, TraceReference_r10_sequence); return offset; } -static const per_sequence_t AffectedCarrierFreq_r11_sequence[] = { - { &hf_lte_rrc_carrierFreq_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectId }, - { &hf_lte_rrc_interferenceDirection_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_interferenceDirection_r11 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_AffectedCarrierFreq_r11(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_lte_rrc_AffectedCarrierFreq_r11, AffectedCarrierFreq_r11_sequence); +dissect_lte_rrc_OCTET_STRING_SIZE_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 2, 2, FALSE, NULL); return offset; } -static const per_sequence_t AffectedCarrierFreqList_r11_sequence_of[1] = { - { &hf_lte_rrc_AffectedCarrierFreqList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AffectedCarrierFreq_r11 }, -}; static int -dissect_lte_rrc_AffectedCarrierFreqList_r11(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_lte_rrc_AffectedCarrierFreqList_r11, AffectedCarrierFreqList_r11_sequence_of, - 1, maxFreqIDC_r11, FALSE); +dissect_lte_rrc_AbsoluteTimeInfo_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *abs_time_info_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 48, 48, FALSE, &abs_time_info_tvb, NULL); + + + if (abs_time_info_tvb) { + const gchar *str, *hf_str; + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_absTimeInfo); + str = tvb_bcd_dig_to_wmem_packet_str(abs_time_info_tvb, 0, 6, NULL, FALSE); + hf_str = wmem_strdup_printf(wmem_packet_scope(), "%c%c-%c%c-%c%c %c%c:%c%c:%c%c", str[0], str[1], + str[2], str[3], str[4], str[5], str[6], str[7], str[8], str[9], str[10], str[11]); + proto_tree_add_string(subtree, hf_lte_rrc_absolute_time, abs_time_info_tvb, 0, 6, hf_str); + } return offset; } -static const value_string lte_rrc_T_drx_CycleLength_r11_vals[] = { - { 0, "sf40" }, - { 1, "sf64" }, - { 2, "sf80" }, - { 3, "sf128" }, - { 4, "sf160" }, - { 5, "sf256" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t CellGlobalIdEUTRA_sequence[] = { + { &hf_lte_rrc_plmn_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, + { &hf_lte_rrc_cellIdentity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellIdentity }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_drx_CycleLength_r11(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CellGlobalIdEUTRA(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_lte_rrc_CellGlobalIdEUTRA, CellGlobalIdEUTRA_sequence); return offset; } -static const value_string lte_rrc_T_drx_ActiveTime_r11_vals[] = { - { 0, "sf20" }, - { 1, "sf30" }, - { 2, "sf40" }, - { 3, "sf60" }, - { 4, "sf80" }, - { 5, "sf100" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t CellGlobalIdList_r10_sequence_of[1] = { + { &hf_lte_rrc_CellGlobalIdList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdEUTRA }, }; - static int -dissect_lte_rrc_T_drx_ActiveTime_r11(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CellGlobalIdList_r10(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_lte_rrc_CellGlobalIdList_r10, CellGlobalIdList_r10_sequence_of, + 1, 32, FALSE); return offset; } -static const per_sequence_t T_drx_AssistanceInfo_r11_sequence[] = { - { &hf_lte_rrc_drx_CycleLength_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_CycleLength_r11 }, - { &hf_lte_rrc_drx_Offset_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_255 }, - { &hf_lte_rrc_drx_ActiveTime_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_ActiveTime_r11 }, - { NULL, 0, 0, NULL } +static const per_sequence_t TrackingAreaCodeList_r10_sequence_of[1] = { + { &hf_lte_rrc_TrackingAreaCodeList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, }; static int -dissect_lte_rrc_T_drx_AssistanceInfo_r11(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_lte_rrc_T_drx_AssistanceInfo_r11, T_drx_AssistanceInfo_r11_sequence); +dissect_lte_rrc_TrackingAreaCodeList_r10(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_lte_rrc_TrackingAreaCodeList_r10, TrackingAreaCodeList_r10_sequence_of, + 1, 8, FALSE); return offset; } -static const value_string lte_rrc_T_subframePatternTDD_r11_vals[] = { - { 0, "subframeConfig0-r11" }, - { 1, "subframeConfig1-5-r11" }, - { 2, "subframeConfig6-r11" }, +static const value_string lte_rrc_AreaConfiguration_r10_vals[] = { + { 0, "cellGlobalIdList-r10" }, + { 1, "trackingAreaCodeList-r10" }, { 0, NULL } }; -static const per_choice_t T_subframePatternTDD_r11_choice[] = { - { 0, &hf_lte_rrc_subframeConfig0_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_70 }, - { 1, &hf_lte_rrc_subframeConfig1_5_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_10 }, - { 2, &hf_lte_rrc_subframeConfig6_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_60 }, +static const per_choice_t AreaConfiguration_r10_choice[] = { + { 0, &hf_lte_rrc_cellGlobalIdList_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CellGlobalIdList_r10 }, + { 1, &hf_lte_rrc_trackingAreaCodeList_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_TrackingAreaCodeList_r10 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_subframePatternTDD_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AreaConfiguration_r10(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_lte_rrc_T_subframePatternTDD_r11, T_subframePatternTDD_r11_choice, + ett_lte_rrc_AreaConfiguration_r10, AreaConfiguration_r10_choice, NULL); return offset; } -static const value_string lte_rrc_IDC_SubframePattern_r11_vals[] = { - { 0, "subframePatternFDD-r11" }, - { 1, "subframePatternTDD-r11" }, - { 0, NULL } -}; - -static const per_choice_t IDC_SubframePattern_r11_choice[] = { - { 0, &hf_lte_rrc_subframePatternFDD_r11, ASN1_EXTENSION_ROOT , dissect_lte_rrc_BIT_STRING_SIZE_4 }, - { 1, &hf_lte_rrc_subframePatternTDD_r11, ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_subframePatternTDD_r11 }, - { 0, NULL, 0, NULL } -}; +static const value_string lte_rrc_LoggingDuration_r10_vals[] = { + { 0, "min10" }, + { 1, "min20" }, + { 2, "min40" }, + { 3, "min60" }, + { 4, "min90" }, + { 5, "min120" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_IDC_SubframePattern_r11(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_lte_rrc_IDC_SubframePattern_r11, IDC_SubframePattern_r11_choice, - NULL); +dissect_lte_rrc_LoggingDuration_r10(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t IDC_SubframePatternList_r11_sequence_of[1] = { - { &hf_lte_rrc_IDC_SubframePatternList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IDC_SubframePattern_r11 }, +static const value_string lte_rrc_LoggingInterval_r10_vals[] = { + { 0, "ms1280" }, + { 1, "ms2560" }, + { 2, "ms5120" }, + { 3, "ms10240" }, + { 4, "ms20480" }, + { 5, "ms30720" }, + { 6, "ms40960" }, + { 7, "ms61440" }, + { 0, NULL } }; + static int -dissect_lte_rrc_IDC_SubframePatternList_r11(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_lte_rrc_IDC_SubframePatternList_r11, IDC_SubframePatternList_r11_sequence_of, - 1, maxSubframePatternIDC_r11, FALSE); +dissect_lte_rrc_LoggingInterval_r10(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_TDM_AssistanceInfo_r11_vals[] = { - { 0, "drx-AssistanceInfo-r11" }, - { 1, "idc-SubframePatternList-r11" }, - { 0, NULL } -}; - -static const per_choice_t TDM_AssistanceInfo_r11_choice[] = { - { 0, &hf_lte_rrc_drx_AssistanceInfo_r11, ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_drx_AssistanceInfo_r11 }, - { 1, &hf_lte_rrc_idc_SubframePatternList_r11, ASN1_EXTENSION_ROOT , dissect_lte_rrc_IDC_SubframePatternList_r11 }, - { 0, NULL, 0, NULL } +static const per_sequence_t PLMN_IdentityList3_r11_sequence_of[1] = { + { &hf_lte_rrc_PLMN_IdentityList3_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, }; static int -dissect_lte_rrc_TDM_AssistanceInfo_r11(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_lte_rrc_TDM_AssistanceInfo_r11, TDM_AssistanceInfo_r11_choice, - NULL); +dissect_lte_rrc_PLMN_IdentityList3_r11(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_lte_rrc_PLMN_IdentityList3_r11, PLMN_IdentityList3_r11_sequence_of, + 1, 16, FALSE); return offset; } -static const per_sequence_t AffectedCarrierFreqComb_r11_sequence_of[1] = { - { &hf_lte_rrc_AffectedCarrierFreqComb_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectId }, +static const per_sequence_t SEQUENCE_SIZE_1_8_OF_PLMN_Identity_sequence_of[1] = { + { &hf_lte_rrc_plmn_Identity_perTAC_List_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, }; static int -dissect_lte_rrc_AffectedCarrierFreqComb_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_8_OF_PLMN_Identity(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_lte_rrc_AffectedCarrierFreqComb_r11, AffectedCarrierFreqComb_r11_sequence_of, - 2, maxServCell_r10, FALSE); + ett_lte_rrc_SEQUENCE_SIZE_1_8_OF_PLMN_Identity, SEQUENCE_SIZE_1_8_OF_PLMN_Identity_sequence_of, + 1, 8, FALSE); return offset; } -static const per_sequence_t AffectedCarrierFreqCombList_r11_sequence_of[1] = { - { &hf_lte_rrc_AffectedCarrierFreqCombList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AffectedCarrierFreqComb_r11 }, +static const per_sequence_t TrackingAreaCodeList_v1130_sequence[] = { + { &hf_lte_rrc_plmn_Identity_perTAC_List_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_8_OF_PLMN_Identity }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AffectedCarrierFreqCombList_r11(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_lte_rrc_AffectedCarrierFreqCombList_r11, AffectedCarrierFreqCombList_r11_sequence_of, - 1, maxCombIDC_r11, FALSE); +dissect_lte_rrc_TrackingAreaCodeList_v1130(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_lte_rrc_TrackingAreaCodeList_v1130, TrackingAreaCodeList_v1130_sequence); return offset; } -static const value_string lte_rrc_T_gps_r11_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t AreaConfiguration_v1130_sequence[] = { + { &hf_lte_rrc_trackingAreaCodeList_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCodeList_v1130 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_gps_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_AreaConfiguration_v1130(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_lte_rrc_AreaConfiguration_v1130, AreaConfiguration_v1130_sequence); return offset; } -static const value_string lte_rrc_T_glonass_r11_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t TargetMBSFN_Area_r12_sequence[] = { + { &hf_lte_rrc_mbsfn_AreaId_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MBSFN_AreaId_r12 }, + { &hf_lte_rrc_carrierFreq_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_glonass_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_TargetMBSFN_Area_r12(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_lte_rrc_TargetMBSFN_Area_r12, TargetMBSFN_Area_r12_sequence); return offset; } -static const value_string lte_rrc_T_bds_r11_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t TargetMBSFN_AreaList_r12_sequence_of[1] = { + { &hf_lte_rrc_TargetMBSFN_AreaList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TargetMBSFN_Area_r12 }, }; - static int -dissect_lte_rrc_T_bds_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_TargetMBSFN_AreaList_r12(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_lte_rrc_TargetMBSFN_AreaList_r12, TargetMBSFN_AreaList_r12_sequence_of, + 0, maxMBSFN_Area, FALSE); return offset; } -static const value_string lte_rrc_T_galileo_r11_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_nonCriticalExtension_17_sequence[] = { + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_galileo_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_nonCriticalExtension_17(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_lte_rrc_T_nonCriticalExtension_17, T_nonCriticalExtension_17_sequence); return offset; } -static const value_string lte_rrc_T_wlan_r11_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t LoggedMeasurementConfiguration_v1530_IEs_sequence[] = { + { &hf_lte_rrc_bt_NameList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BT_NameList_r15 }, + { &hf_lte_rrc_wlan_NameList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_NameList_r15 }, + { &hf_lte_rrc_nonCriticalExtension_48, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_17 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_wlan_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_LoggedMeasurementConfiguration_v1530_IEs(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_lte_rrc_LoggedMeasurementConfiguration_v1530_IEs, LoggedMeasurementConfiguration_v1530_IEs_sequence); return offset; } -static const value_string lte_rrc_T_bluetooth_r11_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t LoggedMeasurementConfiguration_v1250_IEs_sequence[] = { + { &hf_lte_rrc_targetMBSFN_AreaList_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TargetMBSFN_AreaList_r12 }, + { &hf_lte_rrc_nonCriticalExtension_47, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LoggedMeasurementConfiguration_v1530_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_bluetooth_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_LoggedMeasurementConfiguration_v1250_IEs(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_lte_rrc_LoggedMeasurementConfiguration_v1250_IEs, LoggedMeasurementConfiguration_v1250_IEs_sequence); return offset; } -static const per_sequence_t VictimSystemType_r11_sequence[] = { - { &hf_lte_rrc_gps_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gps_r11 }, - { &hf_lte_rrc_glonass_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_glonass_r11 }, - { &hf_lte_rrc_bds_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bds_r11 }, - { &hf_lte_rrc_galileo_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_galileo_r11 }, - { &hf_lte_rrc_wlan_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_r11 }, - { &hf_lte_rrc_bluetooth_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bluetooth_r11 }, +static const per_sequence_t LoggedMeasurementConfiguration_v1130_IEs_sequence[] = { + { &hf_lte_rrc_plmn_IdentityList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList3_r11 }, + { &hf_lte_rrc_areaConfiguration_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AreaConfiguration_v1130 }, + { &hf_lte_rrc_nonCriticalExtension_46, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LoggedMeasurementConfiguration_v1250_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_VictimSystemType_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LoggedMeasurementConfiguration_v1130_IEs(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_lte_rrc_VictimSystemType_r11, VictimSystemType_r11_sequence); + ett_lte_rrc_LoggedMeasurementConfiguration_v1130_IEs, LoggedMeasurementConfiguration_v1130_IEs_sequence); return offset; } -static const per_sequence_t T_ul_CA_AssistanceInfo_r11_sequence[] = { - { &hf_lte_rrc_affectedCarrierFreqCombList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AffectedCarrierFreqCombList_r11 }, - { &hf_lte_rrc_victimSystemType_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_VictimSystemType_r11 }, +static const per_sequence_t LoggedMeasurementConfiguration_v1080_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_45, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LoggedMeasurementConfiguration_v1130_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_ul_CA_AssistanceInfo_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LoggedMeasurementConfiguration_v1080_IEs(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_lte_rrc_T_ul_CA_AssistanceInfo_r11, T_ul_CA_AssistanceInfo_r11_sequence); + ett_lte_rrc_LoggedMeasurementConfiguration_v1080_IEs, LoggedMeasurementConfiguration_v1080_IEs_sequence); return offset; } -static const per_sequence_t AffectedCarrierFreq_v1310_sequence[] = { - { &hf_lte_rrc_carrierFreq_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasObjectId_v1310 }, +static const per_sequence_t LoggedMeasurementConfiguration_r10_IEs_sequence[] = { + { &hf_lte_rrc_traceReference_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TraceReference_r10 }, + { &hf_lte_rrc_traceRecordingSessionRef_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_2 }, + { &hf_lte_rrc_tce_Id_r10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_1 }, + { &hf_lte_rrc_absoluteTimeInfo_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AbsoluteTimeInfo_r10 }, + { &hf_lte_rrc_areaConfiguration_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AreaConfiguration_r10 }, + { &hf_lte_rrc_loggingDuration_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LoggingDuration_r10 }, + { &hf_lte_rrc_loggingInterval_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LoggingInterval_r10 }, + { &hf_lte_rrc_nonCriticalExtension_44, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LoggedMeasurementConfiguration_v1080_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AffectedCarrierFreq_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LoggedMeasurementConfiguration_r10_IEs(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_lte_rrc_AffectedCarrierFreq_v1310, AffectedCarrierFreq_v1310_sequence); + ett_lte_rrc_LoggedMeasurementConfiguration_r10_IEs, LoggedMeasurementConfiguration_r10_IEs_sequence); return offset; } -static const per_sequence_t AffectedCarrierFreqList_v1310_sequence_of[1] = { - { &hf_lte_rrc_AffectedCarrierFreqList_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AffectedCarrierFreq_v1310 }, +static const value_string lte_rrc_T_c1_22_vals[] = { + { 0, "loggedMeasurementConfiguration-r10" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_22_choice[] = { + { 0, &hf_lte_rrc_loggedMeasurementConfiguration_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_LoggedMeasurementConfiguration_r10_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_AffectedCarrierFreqList_v1310(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_lte_rrc_AffectedCarrierFreqList_v1310, AffectedCarrierFreqList_v1310_sequence_of, - 1, maxFreqIDC_r11, FALSE); +dissect_lte_rrc_T_c1_22(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_lte_rrc_T_c1_22, T_c1_22_choice, + NULL); return offset; } +static const per_sequence_t T_criticalExtensionsFuture_15_sequence[] = { + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_MeasObjectId_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxObjectId_r13, NULL, FALSE); +dissect_lte_rrc_T_criticalExtensionsFuture_15(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_lte_rrc_T_criticalExtensionsFuture_15, T_criticalExtensionsFuture_15_sequence); return offset; } -static const per_sequence_t AffectedCarrierFreqComb_r13_sequence_of[1] = { - { &hf_lte_rrc_AffectedCarrierFreqComb_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectId_r13 }, +static const value_string lte_rrc_T_criticalExtensions_15_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_15_choice[] = { + { 0, &hf_lte_rrc_c1_22 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_22 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_15 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_AffectedCarrierFreqComb_r13(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_lte_rrc_AffectedCarrierFreqComb_r13, AffectedCarrierFreqComb_r13_sequence_of, - 2, maxServCell_r13, FALSE); +dissect_lte_rrc_T_criticalExtensions_15(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_lte_rrc_T_criticalExtensions_15, T_criticalExtensions_15_choice, + NULL); return offset; } -static const per_sequence_t AffectedCarrierFreqCombList_r13_sequence_of[1] = { - { &hf_lte_rrc_AffectedCarrierFreqCombList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AffectedCarrierFreqComb_r13 }, +static const per_sequence_t LoggedMeasurementConfiguration_r10_sequence[] = { + { &hf_lte_rrc_criticalExtensions_15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_AffectedCarrierFreqCombList_r13(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_lte_rrc_AffectedCarrierFreqCombList_r13, AffectedCarrierFreqCombList_r13_sequence_of, - 1, maxCombIDC_r11, FALSE); +dissect_lte_rrc_LoggedMeasurementConfiguration_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "LoggedMeasurementConfiguration-r10"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_LoggedMeasurementConfiguration_r10, LoggedMeasurementConfiguration_r10_sequence); return offset; } -static const value_string lte_rrc_T_hardwareSharingProblem_r13_vals[] = { - { 0, "true" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_hardwareSharingProblem_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_systemInformationBlockType1_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType1_PDU); return offset; } -static const per_sequence_t T_nonCriticalExtension_14_sequence[] = { +static const per_sequence_t RN_SystemInfo_r10_sequence[] = { + { &hf_lte_rrc_systemInformationBlockType1_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInformationBlockType1_r10 }, + { &hf_lte_rrc_systemInformationBlockType2_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RN_SystemInfo_r10(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_lte_rrc_T_nonCriticalExtension_14, T_nonCriticalExtension_14_sequence); + ett_lte_rrc_RN_SystemInfo_r10, RN_SystemInfo_r10_sequence); return offset; } -static const per_sequence_t InDeviceCoexIndication_v1360_IEs_sequence[] = { - { &hf_lte_rrc_hardwareSharingProblem_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hardwareSharingProblem_r13 }, - { &hf_lte_rrc_nonCriticalExtension_37, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_subframeConfigPattern_r10_vals[] = { + { 0, "subframeConfigPatternFDD-r10" }, + { 1, "subframeConfigPatternTDD-r10" }, + { 0, NULL } +}; + +static const per_choice_t T_subframeConfigPattern_r10_choice[] = { + { 0, &hf_lte_rrc_subframeConfigPatternFDD_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_8 }, + { 1, &hf_lte_rrc_subframeConfigPatternTDD_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_31 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_InDeviceCoexIndication_v1360_IEs(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_lte_rrc_InDeviceCoexIndication_v1360_IEs, InDeviceCoexIndication_v1360_IEs_sequence); +dissect_lte_rrc_T_subframeConfigPattern_r10(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_lte_rrc_T_subframeConfigPattern_r10, T_subframeConfigPattern_r10_choice, + NULL); return offset; } -static const per_sequence_t InDeviceCoexIndication_v1310_IEs_sequence[] = { - { &hf_lte_rrc_affectedCarrierFreqList_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AffectedCarrierFreqList_v1310 }, - { &hf_lte_rrc_affectedCarrierFreqCombList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AffectedCarrierFreqCombList_r13 }, - { &hf_lte_rrc_nonCriticalExtension_36, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InDeviceCoexIndication_v1360_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_resourceAllocationType_r10_vals[] = { + { 0, "type0" }, + { 1, "type1" }, + { 2, "type2Localized" }, + { 3, "type2Distributed" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_InDeviceCoexIndication_v1310_IEs(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_lte_rrc_InDeviceCoexIndication_v1310_IEs, InDeviceCoexIndication_v1310_IEs_sequence); +dissect_lte_rrc_T_resourceAllocationType_r10(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t InDeviceCoexIndication_v11d0_IEs_sequence[] = { - { &hf_lte_rrc_ul_CA_AssistanceInfo_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_CA_AssistanceInfo_r11 }, - { &hf_lte_rrc_nonCriticalExtension_35, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InDeviceCoexIndication_v1310_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_InDeviceCoexIndication_v11d0_IEs(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_lte_rrc_InDeviceCoexIndication_v11d0_IEs, InDeviceCoexIndication_v11d0_IEs_sequence); +dissect_lte_rrc_BIT_STRING_SIZE_17(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, + 17, 17, FALSE, NULL, NULL); return offset; } -static const per_sequence_t InDeviceCoexIndication_r11_IEs_sequence[] = { - { &hf_lte_rrc_affectedCarrierFreqList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AffectedCarrierFreqList_r11 }, - { &hf_lte_rrc_tdm_AssistanceInfo_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDM_AssistanceInfo_r11 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_34, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InDeviceCoexIndication_v11d0_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_InDeviceCoexIndication_r11_IEs(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_lte_rrc_InDeviceCoexIndication_r11_IEs, InDeviceCoexIndication_r11_IEs_sequence); +dissect_lte_rrc_BIT_STRING_SIZE_25(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, + 25, 25, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_c1_20_vals[] = { - { 0, "inDeviceCoexIndication-r11" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_type01_r10_vals[] = { + { 0, "nrb6-r10" }, + { 1, "nrb15-r10" }, + { 2, "nrb25-r10" }, + { 3, "nrb50-r10" }, + { 4, "nrb75-r10" }, + { 5, "nrb100-r10" }, { 0, NULL } }; -static const per_choice_t T_c1_20_choice[] = { - { 0, &hf_lte_rrc_inDeviceCoexIndication_r11_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_InDeviceCoexIndication_r11_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t T_type01_r10_choice[] = { + { 0, &hf_lte_rrc_nrb6_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_6 }, + { 1, &hf_lte_rrc_nrb15_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_8 }, + { 2, &hf_lte_rrc_nrb25_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_13 }, + { 3, &hf_lte_rrc_nrb50_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_17 }, + { 4, &hf_lte_rrc_nrb75_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_19 }, + { 5, &hf_lte_rrc_nrb100_r10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_25 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_type01_r10(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_lte_rrc_T_c1_20, T_c1_20_choice, + ett_lte_rrc_T_type01_r10, T_type01_r10_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_13_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensionsFuture_13(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_lte_rrc_T_criticalExtensionsFuture_13, T_criticalExtensionsFuture_13_sequence); +dissect_lte_rrc_BIT_STRING_SIZE_11(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, + 11, 11, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_criticalExtensions_13_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_type2_r10_vals[] = { + { 0, "nrb6-r10" }, + { 1, "nrb15-r10" }, + { 2, "nrb25-r10" }, + { 3, "nrb50-r10" }, + { 4, "nrb75-r10" }, + { 5, "nrb100-r10" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_13_choice[] = { - { 0, &hf_lte_rrc_c1_20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_20 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_13 }, +static const per_choice_t T_type2_r10_choice[] = { + { 0, &hf_lte_rrc_nrb6_r10_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_5 }, + { 1, &hf_lte_rrc_nrb15_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_7 }, + { 2, &hf_lte_rrc_nrb25_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_9 }, + { 3, &hf_lte_rrc_nrb50_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_11 }, + { 4, &hf_lte_rrc_nrb75_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_12 }, + { 5, &hf_lte_rrc_nrb100_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_13 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_type2_r10(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_lte_rrc_T_criticalExtensions_13, T_criticalExtensions_13_choice, + ett_lte_rrc_T_type2_r10, T_type2_r10_choice, NULL); return offset; } -static const per_sequence_t InDeviceCoexIndication_r11_sequence[] = { - { &hf_lte_rrc_criticalExtensions_13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_resourceBlockAssignment_r10_vals[] = { + { 0, "type01-r10" }, + { 1, "type2-r10" }, + { 0, NULL } }; -static int -dissect_lte_rrc_InDeviceCoexIndication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InDeviceCoexIndication-r11"); +static const per_choice_t T_resourceBlockAssignment_r10_choice[] = { + { 0, &hf_lte_rrc_type01_r10 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_type01_r10 }, + { 1, &hf_lte_rrc_type2_r10 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_type2_r10 }, + { 0, NULL, 0, NULL } +}; - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_InDeviceCoexIndication_r11, InDeviceCoexIndication_r11_sequence); +static int +dissect_lte_rrc_T_resourceBlockAssignment_r10(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_lte_rrc_T_resourceBlockAssignment_r10, T_resourceBlockAssignment_r10_choice, + NULL); return offset; } -static const per_sequence_t CarrierFreqListMBMS_r11_sequence_of[1] = { - { &hf_lte_rrc_CarrierFreqListMBMS_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, +static const value_string lte_rrc_T_interleaving_r10_vals[] = { + { 0, "crs" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CarrierFreqListMBMS_r11(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_lte_rrc_CarrierFreqListMBMS_r11, CarrierFreqListMBMS_r11_sequence_of, - 1, maxFreqMBMS_r11, FALSE); +dissect_lte_rrc_T_interleaving_r10(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_mbms_Priority_r11_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_noInterleaving_r10_vals[] = { + { 0, "crs" }, + { 1, "dmrs" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mbms_Priority_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_noInterleaving_r10(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MBMS_ServiceInfo_r13_sequence[] = { - { &hf_lte_rrc_tmgi_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TMGI_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_demodulationRS_r10_vals[] = { + { 0, "interleaving-r10" }, + { 1, "noInterleaving-r10" }, + { 0, NULL } +}; + +static const per_choice_t T_demodulationRS_r10_choice[] = { + { 0, &hf_lte_rrc_interleaving_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_interleaving_r10 }, + { 1, &hf_lte_rrc_noInterleaving_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_noInterleaving_r10 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MBMS_ServiceInfo_r13(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_lte_rrc_MBMS_ServiceInfo_r13, MBMS_ServiceInfo_r13_sequence); +dissect_lte_rrc_T_demodulationRS_r10(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_lte_rrc_T_demodulationRS_r10, T_demodulationRS_r10_choice, + NULL); return offset; } -static const per_sequence_t MBMS_ServiceList_r13_sequence_of[1] = { - { &hf_lte_rrc_MBMS_ServiceList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_ServiceInfo_r13 }, +static const per_sequence_t T_n1PUCCH_AN_List_r10_sequence_of[1] = { + { &hf_lte_rrc_n1PUCCH_AN_List_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, }; static int -dissect_lte_rrc_MBMS_ServiceList_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_n1PUCCH_AN_List_r10(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_lte_rrc_MBMS_ServiceList_r13, MBMS_ServiceList_r13_sequence_of, - 0, maxMBMS_ServiceListPerUE_r13, FALSE); + ett_lte_rrc_T_n1PUCCH_AN_List_r10, T_n1PUCCH_AN_List_r10_sequence_of, + 1, 4, FALSE); return offset; } -static const per_sequence_t T_nonCriticalExtension_19_sequence[] = { +static const per_sequence_t T_channelSelectionMultiplexingBundling_sequence[] = { + { &hf_lte_rrc_n1PUCCH_AN_List_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n1PUCCH_AN_List_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_channelSelectionMultiplexingBundling(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_lte_rrc_T_nonCriticalExtension_19, T_nonCriticalExtension_19_sequence); + ett_lte_rrc_T_channelSelectionMultiplexingBundling, T_channelSelectionMultiplexingBundling_sequence); return offset; } -static const per_sequence_t MBMSInterestIndication_v1310_IEs_sequence[] = { - { &hf_lte_rrc_mbms_Services_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_ServiceList_r13 }, - { &hf_lte_rrc_nonCriticalExtension_46, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_19 }, +static const per_sequence_t T_fallbackForFormat3_sequence[] = { + { &hf_lte_rrc_n1PUCCH_AN_P0_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, + { &hf_lte_rrc_n1PUCCH_AN_P1_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_2047 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMSInterestIndication_v1310_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_fallbackForFormat3(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_lte_rrc_MBMSInterestIndication_v1310_IEs, MBMSInterestIndication_v1310_IEs_sequence); + ett_lte_rrc_T_fallbackForFormat3, T_fallbackForFormat3_sequence); return offset; } -static const per_sequence_t MBMSInterestIndication_r11_IEs_sequence[] = { - { &hf_lte_rrc_mbms_FreqList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListMBMS_r11 }, - { &hf_lte_rrc_mbms_Priority_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_Priority_r11 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_45, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMSInterestIndication_v1310_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_tdd_vals[] = { + { 0, "channelSelectionMultiplexingBundling" }, + { 1, "fallbackForFormat3" }, + { 0, NULL } +}; + +static const per_choice_t T_tdd_choice[] = { + { 0, &hf_lte_rrc_channelSelectionMultiplexingBundling, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_channelSelectionMultiplexingBundling }, + { 1, &hf_lte_rrc_fallbackForFormat3, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fallbackForFormat3 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MBMSInterestIndication_r11_IEs(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_lte_rrc_MBMSInterestIndication_r11_IEs, MBMSInterestIndication_r11_IEs_sequence); +dissect_lte_rrc_T_tdd(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_lte_rrc_T_tdd, T_tdd_choice, + NULL); return offset; } -static const value_string lte_rrc_T_c1_24_vals[] = { - { 0, "interestIndication-r11" }, +static const per_sequence_t T_fdd_sequence[] = { + { &hf_lte_rrc_n1PUCCH_AN_P0_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2047 }, + { &hf_lte_rrc_n1PUCCH_AN_P1_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_2047 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_fdd(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_lte_rrc_T_fdd, T_fdd_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_pucch_Config_r10_vals[] = { + { 0, "tdd" }, + { 1, "fdd" }, + { 0, NULL } +}; + +static const per_choice_t T_pucch_Config_r10_choice[] = { + { 0, &hf_lte_rrc_tdd , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tdd }, + { 1, &hf_lte_rrc_fdd , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fdd }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_pucch_Config_r10(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_lte_rrc_T_pucch_Config_r10, T_pucch_Config_r10_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_rpdcch_Config_r10_sequence[] = { + { &hf_lte_rrc_resourceAllocationType_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_resourceAllocationType_r10 }, + { &hf_lte_rrc_resourceBlockAssignment_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_resourceBlockAssignment_r10 }, + { &hf_lte_rrc_demodulationRS_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_demodulationRS_r10 }, + { &hf_lte_rrc_pdsch_Start_r10_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_3 }, + { &hf_lte_rrc_pucch_Config_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_pucch_Config_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_rpdcch_Config_r10(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_lte_rrc_T_rpdcch_Config_r10, T_rpdcch_Config_r10_sequence); + + return offset; +} + + +static const per_sequence_t RN_SubframeConfig_r10_sequence[] = { + { &hf_lte_rrc_subframeConfigPattern_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_subframeConfigPattern_r10 }, + { &hf_lte_rrc_rpdcch_Config_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rpdcch_Config_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RN_SubframeConfig_r10(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_lte_rrc_RN_SubframeConfig_r10, RN_SubframeConfig_r10_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_28_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_28(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_lte_rrc_T_nonCriticalExtension_28, T_nonCriticalExtension_28_sequence); + + return offset; +} + + +static const per_sequence_t RNReconfiguration_r10_IEs_sequence[] = { + { &hf_lte_rrc_rn_SystemInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RN_SystemInfo_r10 }, + { &hf_lte_rrc_rn_SubframeConfig_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RN_SubframeConfig_r10 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_75, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_28 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RNReconfiguration_r10_IEs(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_lte_rrc_RNReconfiguration_r10_IEs, RNReconfiguration_r10_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_28_vals[] = { + { 0, "rnReconfiguration-r10" }, { 1, "spare3" }, { 2, "spare2" }, { 3, "spare1" }, { 0, NULL } }; -static const per_choice_t T_c1_24_choice[] = { - { 0, &hf_lte_rrc_interestIndication_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBMSInterestIndication_r11_IEs }, +static const per_choice_t T_c1_28_choice[] = { + { 0, &hf_lte_rrc_rnReconfiguration_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RNReconfiguration_r10_IEs }, { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, @@ -64554,207 +68684,228 @@ static const per_choice_t T_c1_24_choice[] = { }; static int -dissect_lte_rrc_T_c1_24(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_28(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_lte_rrc_T_c1_24, T_c1_24_choice, + ett_lte_rrc_T_c1_28, T_c1_28_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_17_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_22_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_22(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_lte_rrc_T_criticalExtensionsFuture_17, T_criticalExtensionsFuture_17_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_22, T_criticalExtensionsFuture_22_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_17_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_22_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_17_choice[] = { - { 0, &hf_lte_rrc_c1_24 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_24 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_17, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_17 }, +static const per_choice_t T_criticalExtensions_22_choice[] = { + { 0, &hf_lte_rrc_c1_28 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_28 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_22, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_22 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_17(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_22(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_lte_rrc_T_criticalExtensions_17, T_criticalExtensions_17_choice, + ett_lte_rrc_T_criticalExtensions_22, T_criticalExtensions_22_choice, NULL); return offset; } -static const per_sequence_t MBMSInterestIndication_r11_sequence[] = { - { &hf_lte_rrc_criticalExtensions_17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_17 }, +static const per_sequence_t RNReconfiguration_r10_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_22, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_22 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMSInterestIndication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RNReconfiguration_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBMSInterestIndication-r11"); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RNReconfiguration-r10"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_MBMSInterestIndication_r11, MBMSInterestIndication_r11_sequence); + ett_lte_rrc_RNReconfiguration_r10, RNReconfiguration_r10_sequence); return offset; } -static const value_string lte_rrc_T_failureType_r12_vals[] = { - { 0, "t313-Expiry" }, - { 1, "randomAccessProblem" }, - { 2, "rlc-MaxNumRetx" }, - { 3, "scg-ChangeFailure" }, +static const value_string lte_rrc_T_drb_ContinueROHC_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_failureType_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_drb_ContinueROHC_r13(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); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_failureType_v1290_vals[] = { - { 0, "maxUL-TimingDiff-v1290" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_failureType_v1290(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_nr_RadioBearerConfig1_r15_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *radio_bearer_config_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); + + + if (radio_bearer_config_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nr_RadioBearerConfig_r15); + dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); + } + return offset; } -static const per_sequence_t FailureReportSCG_r12_eag_1_sequence[] = { - { &hf_lte_rrc_failureType_v1290, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_failureType_v1290 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_FailureReportSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, FailureReportSCG_r12_eag_1_sequence); +dissect_lte_rrc_T_nr_RadioBearerConfig2_r15_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *radio_bearer_config_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &radio_bearer_config_tvb); + + + if (radio_bearer_config_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_nr_RadioBearerConfigS_r15); + dissect_nr_rrc_RadioBearerConfig_PDU(radio_bearer_config_tvb, actx->pinfo, subtree, NULL); + } + return offset; } -static const per_sequence_t FailureReportSCG_r12_eag_2_sequence[] = { - { &hf_lte_rrc_measResultServFreqListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqListExt_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_fullConfig_r15_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_FailureReportSCG_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, FailureReportSCG_r12_eag_2_sequence); +dissect_lte_rrc_T_fullConfig_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t FailureReportSCG_r12_sequence[] = { - { &hf_lte_rrc_failureType_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_failureType_r12 }, - { &hf_lte_rrc_measResultServFreqList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqList_r10 }, - { &hf_lte_rrc_measResultNeighCells_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_r9 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_FailureReportSCG_r12_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_FailureReportSCG_r12_eag_2 }, +static const per_sequence_t T_nonCriticalExtension_40_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FailureReportSCG_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_40(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_lte_rrc_FailureReportSCG_r12, FailureReportSCG_r12_sequence); + ett_lte_rrc_T_nonCriticalExtension_40, T_nonCriticalExtension_40_sequence); return offset; } +static const per_sequence_t RRCConnectionResume_v1530_IEs_sequence[] = { + { &hf_lte_rrc_fullConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fullConfig_r15 }, + { &hf_lte_rrc_nonCriticalExtension_125, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_40 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_lateNonCriticalExtension_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SCGFailureInformation_v12d0_IEs_PDU); +dissect_lte_rrc_RRCConnectionResume_v1530_IEs(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_lte_rrc_RRCConnectionResume_v1530_IEs, RRCConnectionResume_v1530_IEs_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_41_sequence[] = { +static const per_sequence_t RRCConnectionResume_v1510_IEs_sequence[] = { + { &hf_lte_rrc_sk_Counter_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, + { &hf_lte_rrc_nr_RadioBearerConfig1_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_RadioBearerConfig1_r15_01 }, + { &hf_lte_rrc_nr_RadioBearerConfig2_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nr_RadioBearerConfig2_r15_01 }, + { &hf_lte_rrc_nonCriticalExtension_124, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionResume_v1530_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_41(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionResume_v1510_IEs(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_lte_rrc_T_nonCriticalExtension_41, T_nonCriticalExtension_41_sequence); + ett_lte_rrc_RRCConnectionResume_v1510_IEs, RRCConnectionResume_v1510_IEs_sequence); return offset; } -static const per_sequence_t SCGFailureInformation_v1310_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_04, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_03 }, - { &hf_lte_rrc_nonCriticalExtension_123, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_41 }, +static const per_sequence_t RRCConnectionResume_v1430_IEs_sequence[] = { + { &hf_lte_rrc_otherConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OtherConfig_r9 }, + { &hf_lte_rrc_rrcConnectionResume_v1510_IEs, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionResume_v1510_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCGFailureInformation_v1310_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionResume_v1430_IEs(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_lte_rrc_SCGFailureInformation_v1310_IEs, SCGFailureInformation_v1310_IEs_sequence); + ett_lte_rrc_RRCConnectionResume_v1430_IEs, RRCConnectionResume_v1430_IEs_sequence); return offset; } -static const per_sequence_t SCGFailureInformation_r12_IEs_sequence[] = { - { &hf_lte_rrc_failureReportSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FailureReportSCG_r12 }, - { &hf_lte_rrc_nonCriticalExtension_122, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCGFailureInformation_v1310_IEs }, +static const per_sequence_t RRCConnectionResume_r13_IEs_sequence[] = { + { &hf_lte_rrc_radioResourceConfigDedicated_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicated }, + { &hf_lte_rrc_nextHopChainingCount_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NextHopChainingCount }, + { &hf_lte_rrc_measConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasConfig }, + { &hf_lte_rrc_antennaInfoDedicatedPCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, + { &hf_lte_rrc_drb_ContinueROHC_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_ContinueROHC_r13 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_rrcConnectionResume_v1430_IEs, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionResume_v1430_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCGFailureInformation_r12_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionResume_r13_IEs(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_lte_rrc_SCGFailureInformation_r12_IEs, SCGFailureInformation_r12_IEs_sequence); + ett_lte_rrc_RRCConnectionResume_r13_IEs, RRCConnectionResume_r13_IEs_sequence); return offset; } -static const value_string lte_rrc_T_c1_37_vals[] = { - { 0, "scgFailureInformation-r12" }, +static const value_string lte_rrc_T_c1_34_vals[] = { + { 0, "rrcConnectionResume-r13" }, { 1, "spare3" }, { 2, "spare2" }, { 3, "spare1" }, { 0, NULL } }; -static const per_choice_t T_c1_37_choice[] = { - { 0, &hf_lte_rrc_scgFailureInformation_r12_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCGFailureInformation_r12_IEs }, +static const per_choice_t T_c1_34_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionResume_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResume_r13_IEs }, { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, @@ -64762,870 +68913,1003 @@ static const per_choice_t T_c1_37_choice[] = { }; static int -dissect_lte_rrc_T_c1_37(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_34(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_lte_rrc_T_c1_37, T_c1_37_choice, + ett_lte_rrc_T_c1_34, T_c1_34_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_37_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_33_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_37(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_33(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_lte_rrc_T_criticalExtensionsFuture_37, T_criticalExtensionsFuture_37_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_33, T_criticalExtensionsFuture_33_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_37_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_33_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_37_choice[] = { - { 0, &hf_lte_rrc_c1_37 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_37 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_37, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_37 }, +static const per_choice_t T_criticalExtensions_33_choice[] = { + { 0, &hf_lte_rrc_c1_34 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_34 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_33, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_33 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_37(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_33(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_lte_rrc_T_criticalExtensions_37, T_criticalExtensions_37_choice, + ett_lte_rrc_T_criticalExtensions_33, T_criticalExtensions_33_choice, NULL); return offset; } -static const per_sequence_t SCGFailureInformation_r12_sequence[] = { - { &hf_lte_rrc_criticalExtensions_37, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_37 }, +static const per_sequence_t RRCConnectionResume_r13_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_33, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_33 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCGFailureInformation_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionResume_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SCGFailureInformation-r12"); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionResume-r13"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SCGFailureInformation_r12, SCGFailureInformation_r12_sequence); + ett_lte_rrc_RRCConnectionResume_r13, RRCConnectionResume_r13_sequence); return offset; } +static const value_string lte_rrc_T_c1_13_vals[] = { + { 0, "csfbParametersResponseCDMA2000" }, + { 1, "dlInformationTransfer" }, + { 2, "handoverFromEUTRAPreparationRequest" }, + { 3, "mobilityFromEUTRACommand" }, + { 4, "rrcConnectionReconfiguration" }, + { 5, "rrcConnectionRelease" }, + { 6, "securityModeCommand" }, + { 7, "ueCapabilityEnquiry" }, + { 8, "counterCheck" }, + { 9, "ueInformationRequest-r9" }, + { 10, "loggedMeasurementConfiguration-r10" }, + { 11, "rnReconfiguration-r10" }, + { 12, "rrcConnectionResume-r13" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_SL_DestinationIdentity_r12(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, - 24, 24, FALSE, NULL, NULL); - - return offset; -} - - -static const per_sequence_t SL_DestinationInfoList_r12_sequence_of[1] = { - { &hf_lte_rrc_SL_DestinationInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DestinationIdentity_r12 }, +static const per_choice_t T_c1_13_choice[] = { + { 0, &hf_lte_rrc_csfbParametersResponseCDMA2000, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSFBParametersResponseCDMA2000 }, + { 1, &hf_lte_rrc_dlInformationTransfer, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DLInformationTransfer }, + { 2, &hf_lte_rrc_handoverFromEUTRAPreparationRequest, ASN1_NO_EXTENSIONS , dissect_lte_rrc_HandoverFromEUTRAPreparationRequest }, + { 3, &hf_lte_rrc_mobilityFromEUTRACommand, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MobilityFromEUTRACommand }, + { 4, &hf_lte_rrc_rrcConnectionReconfiguration, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReconfiguration }, + { 5, &hf_lte_rrc_rrcConnectionRelease, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionRelease }, + { 6, &hf_lte_rrc_securityModeCommand, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeCommand }, + { 7, &hf_lte_rrc_ueCapabilityEnquiry, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UECapabilityEnquiry }, + { 8, &hf_lte_rrc_counterCheck, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CounterCheck }, + { 9, &hf_lte_rrc_ueInformationRequest_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEInformationRequest_r9 }, + { 10, &hf_lte_rrc_loggedMeasurementConfiguration_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_LoggedMeasurementConfiguration_r10 }, + { 11, &hf_lte_rrc_rnReconfiguration_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RNReconfiguration_r10 }, + { 12, &hf_lte_rrc_rrcConnectionResume_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResume_r13 }, + { 13, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 14, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 15, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_DestinationInfoList_r12(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_lte_rrc_SL_DestinationInfoList_r12, SL_DestinationInfoList_r12_sequence_of, - 1, maxSL_Dest_r12, FALSE); +dissect_lte_rrc_T_c1_13(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_lte_rrc_T_c1_13, T_c1_13_choice, + NULL); return offset; } -static const per_sequence_t SL_CommTxResourceReq_r12_sequence[] = { - { &hf_lte_rrc_carrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_destinationInfoList_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DestinationInfoList_r12 }, +static const per_sequence_t T_messageClassExtension_06_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_CommTxResourceReq_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_messageClassExtension_06(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_lte_rrc_SL_CommTxResourceReq_r12, SL_CommTxResourceReq_r12_sequence); + ett_lte_rrc_T_messageClassExtension_06, T_messageClassExtension_06_sequence); return offset; } -static const value_string lte_rrc_T_discRxInterest_r12_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_DL_DCCH_MessageType_vals[] = { + { 0, "c1" }, + { 1, "messageClassExtension" }, { 0, NULL } }; +static const per_choice_t DL_DCCH_MessageType_choice[] = { + { 0, &hf_lte_rrc_c1_13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_13 }, + { 1, &hf_lte_rrc_messageClassExtension_06, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_06 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_discRxInterest_r12(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, - 1, NULL, FALSE, 0, NULL); - - return offset; -} - - - -static int -dissect_lte_rrc_INTEGER_1_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 63U, NULL, FALSE); +dissect_lte_rrc_DL_DCCH_MessageType(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_lte_rrc_DL_DCCH_MessageType, DL_DCCH_MessageType_choice, + NULL); return offset; } -static const value_string lte_rrc_T_ue_Type_r13_vals[] = { - { 0, "relayUE" }, - { 1, "remoteUE" }, - { 0, NULL } +static const per_sequence_t DL_DCCH_Message_sequence[] = { + { &hf_lte_rrc_message_08 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_DCCH_MessageType }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ue_Type_r13(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, FALSE, 0, NULL); +dissect_lte_rrc_DL_DCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + actx->pinfo->link_dir = P2P_DIR_DL; + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_DL_DCCH_Message, DL_DCCH_Message_sequence); return offset; } -static const per_sequence_t T_commTxResourceInfoReqRelay_r13_sequence[] = { - { &hf_lte_rrc_commTxResourceReqRelay_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxResourceReq_r12 }, - { &hf_lte_rrc_commTxResourceReqRelayUC_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxResourceReq_r12 }, - { &hf_lte_rrc_ue_Type_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_Type_r13 }, +static const per_sequence_t ReestabUE_Identity_sequence[] = { + { &hf_lte_rrc_c_RNTI , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_physCellId_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_shortMAC_I , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ShortMAC_I }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_commTxResourceInfoReqRelay_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ReestabUE_Identity(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_lte_rrc_T_commTxResourceInfoReqRelay_r13, T_commTxResourceInfoReqRelay_r13_sequence); + ett_lte_rrc_ReestabUE_Identity, ReestabUE_Identity_sequence); return offset; } +static const value_string lte_rrc_ReestablishmentCause_vals[] = { + { 0, "reconfigurationFailure" }, + { 1, "handoverFailure" }, + { 2, "otherFailure" }, + { 3, "spare1" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_1_maxFreq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxFreq, NULL, FALSE); +dissect_lte_rrc_ReestablishmentCause(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 per_sequence_t SL_DiscTxResourceReq_r13_sequence[] = { - { &hf_lte_rrc_carrierFreqDiscTx_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxFreq }, - { &hf_lte_rrc_discTxResourceReq_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_63 }, +static const per_sequence_t RRCConnectionReestablishmentRequest_r8_IEs_sequence[] = { + { &hf_lte_rrc_ue_Identity_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReestabUE_Identity }, + { &hf_lte_rrc_reestablishmentCause, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReestablishmentCause }, + { &hf_lte_rrc_spare_03 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscTxResourceReq_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReestablishmentRequest_r8_IEs(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_lte_rrc_SL_DiscTxResourceReq_r13, SL_DiscTxResourceReq_r13_sequence); + ett_lte_rrc_RRCConnectionReestablishmentRequest_r8_IEs, RRCConnectionReestablishmentRequest_r8_IEs_sequence); return offset; } -static const per_sequence_t SL_DiscTxResourceReqPerFreqList_r13_sequence_of[1] = { - { &hf_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscTxResourceReq_r13 }, +static const per_sequence_t T_criticalExtensionsFuture_29_sequence[] = { + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13(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_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13, SL_DiscTxResourceReqPerFreqList_r13_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_criticalExtensionsFuture_29(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_lte_rrc_T_criticalExtensionsFuture_29, T_criticalExtensionsFuture_29_sequence); return offset; } -static const per_sequence_t T_discTxResourceReq_v1310_sequence[] = { - { &hf_lte_rrc_carrierFreqDiscTx_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxFreq }, - { &hf_lte_rrc_discTxResourceReqAddFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_criticalExtensions_29_vals[] = { + { 0, "rrcConnectionReestablishmentRequest-r8" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_29_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionReestablishmentRequest_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentRequest_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_29, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_29 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_discTxResourceReq_v1310(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_lte_rrc_T_discTxResourceReq_v1310, T_discTxResourceReq_v1310_sequence); +dissect_lte_rrc_T_criticalExtensions_29(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_lte_rrc_T_criticalExtensions_29, T_criticalExtensions_29_choice, + NULL); return offset; } -static const per_sequence_t SL_GapFreqInfo_r13_sequence[] = { - { &hf_lte_rrc_carrierFreq_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_gapPatternList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_GapPatternList_r13 }, +static const per_sequence_t RRCConnectionReestablishmentRequest_sequence[] = { + { &hf_lte_rrc_criticalExtensions_29, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_29 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_GapFreqInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionReestablishmentRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReestablishmentRequest"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SL_GapFreqInfo_r13, SL_GapFreqInfo_r13_sequence); + ett_lte_rrc_RRCConnectionReestablishmentRequest, RRCConnectionReestablishmentRequest_sequence); return offset; } -static const per_sequence_t SL_GapRequest_r13_sequence_of[1] = { - { &hf_lte_rrc_SL_GapRequest_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_GapFreqInfo_r13 }, +static const value_string lte_rrc_InitialUE_Identity_vals[] = { + { 0, "s-TMSI" }, + { 1, "randomValue" }, + { 0, NULL } +}; + +static const per_choice_t InitialUE_Identity_choice[] = { + { 0, &hf_lte_rrc_s_TMSI , ASN1_NO_EXTENSIONS , dissect_lte_rrc_S_TMSI }, + { 1, &hf_lte_rrc_randomValue , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_40 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_GapRequest_r13(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_lte_rrc_SL_GapRequest_r13, SL_GapRequest_r13_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_InitialUE_Identity(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_lte_rrc_InitialUE_Identity, InitialUE_Identity_choice, + NULL); return offset; } -static const per_sequence_t T_discCellSelectionInfo_r13_sequence[] = { - { &hf_lte_rrc_q_RxLevMin_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_q_RxLevMinOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_8 }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_T_discCellSelectionInfo_r13(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_lte_rrc_T_discCellSelectionInfo_r13, T_discCellSelectionInfo_r13_sequence); +static const value_string lte_rrc_EstablishmentCause_vals[] = { + { 0, "emergency" }, + { 1, "highPriorityAccess" }, + { 2, "mt-Access" }, + { 3, "mo-Signalling" }, + { 4, "mo-Data" }, + { 5, "delayTolerantAccess-v1020" }, + { 6, "mo-VoiceCall-v1280" }, + { 7, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_EstablishmentCause(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_q_Hyst_r13_01_vals[] = { - { 0, "dB0" }, - { 1, "dB1" }, - { 2, "dB2" }, - { 3, "dB3" }, - { 4, "dB4" }, - { 5, "dB5" }, - { 6, "dB6" }, - { 7, "dB8" }, - { 8, "dB10" }, - { 9, "dB12" }, - { 10, "dB14" }, - { 11, "dB16" }, - { 12, "dB18" }, - { 13, "dB20" }, - { 14, "dB22" }, - { 15, "dB24" }, - { 0, NULL } -}; +static int +dissect_lte_rrc_BIT_STRING_SIZE_1(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, + 1, 1, FALSE, NULL, NULL); + + return offset; +} + + +static const per_sequence_t RRCConnectionRequest_r8_IEs_sequence[] = { + { &hf_lte_rrc_ue_Identity_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InitialUE_Identity }, + { &hf_lte_rrc_establishmentCause, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_EstablishmentCause }, + { &hf_lte_rrc_spare_04 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_1 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_q_Hyst_r13_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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RRCConnectionRequest_r8_IEs(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_lte_rrc_RRCConnectionRequest_r8_IEs, RRCConnectionRequest_r8_IEs_sequence); return offset; } -static const per_sequence_t T_cellReselectionInfo_r13_sequence[] = { - { &hf_lte_rrc_q_Hyst_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_q_Hyst_r13_01 }, - { &hf_lte_rrc_q_RxLevMin_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, - { &hf_lte_rrc_t_ReselectionEUTRA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, +static const per_sequence_t T_criticalExtensionsFuture_32_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_cellReselectionInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_32(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_lte_rrc_T_cellReselectionInfo_r13, T_cellReselectionInfo_r13_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_32, T_criticalExtensionsFuture_32_sequence); return offset; } -static const value_string lte_rrc_T_ul_Bandwidth_r13_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, +static const value_string lte_rrc_T_criticalExtensions_32_vals[] = { + { 0, "rrcConnectionRequest-r8" }, + { 1, "criticalExtensionsFuture" }, { 0, NULL } }; +static const per_choice_t T_criticalExtensions_32_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionRequest_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionRequest_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_32, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_32 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_ul_Bandwidth_r13(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, - 6, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_criticalExtensions_32(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_lte_rrc_T_criticalExtensions_32, T_criticalExtensions_32_choice, + NULL); return offset; } -static const per_sequence_t T_freqInfo_r13_sequence[] = { - { &hf_lte_rrc_ul_CarrierFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA }, - { &hf_lte_rrc_ul_Bandwidth_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth_r13 }, - { &hf_lte_rrc_additionalSpectrumEmission_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSpectrumEmission }, +static const per_sequence_t RRCConnectionRequest_sequence[] = { + { &hf_lte_rrc_criticalExtensions_32, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_32 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_freqInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionRequest"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_freqInfo_r13, T_freqInfo_r13_sequence); + ett_lte_rrc_RRCConnectionRequest, RRCConnectionRequest_sequence); return offset; } -static const per_sequence_t T_freqInfo_v1370_01_sequence[] = { - { &hf_lte_rrc_additionalSpectrumEmission_v1370, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_c1_14_vals[] = { + { 0, "rrcConnectionReestablishmentRequest" }, + { 1, "rrcConnectionRequest" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_14_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionReestablishmentRequest, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentRequest }, + { 1, &hf_lte_rrc_rrcConnectionRequest, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionRequest }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_freqInfo_v1370_01(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_lte_rrc_T_freqInfo_v1370_01, T_freqInfo_v1370_01_sequence); +dissect_lte_rrc_T_c1_14(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_lte_rrc_T_c1_14, T_c1_14_choice, + NULL); return offset; } -static const per_sequence_t SL_DiscSysInfoReport_r13_eag_1_sequence[] = { - { &hf_lte_rrc_freqInfo_v1370_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqInfo_v1370_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_resumeIdentity_r13_vals[] = { + { 0, "resumeID-r13" }, + { 1, "truncatedResumeID-r13" }, + { 0, NULL } +}; + +static const per_choice_t T_resumeIdentity_r13_choice[] = { + { 0, &hf_lte_rrc_resumeID_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ResumeIdentity_r13 }, + { 1, &hf_lte_rrc_truncatedResumeID_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_24 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscSysInfoReport_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_DiscSysInfoReport_r13_eag_1_sequence); +dissect_lte_rrc_T_resumeIdentity_r13(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_lte_rrc_T_resumeIdentity_r13, T_resumeIdentity_r13_choice, + NULL); return offset; } -static const per_sequence_t SL_DiscSysInfoReport_r13_sequence[] = { - { &hf_lte_rrc_plmn_IdentityList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList }, - { &hf_lte_rrc_cellIdentity_13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellIdentity }, - { &hf_lte_rrc_carrierFreqInfo_13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_discRxResources_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscRxPoolList_r12 }, - { &hf_lte_rrc_discTxPoolCommon_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPoolList_r12 }, - { &hf_lte_rrc_discTxPowerInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPowerInfoList_r12 }, - { &hf_lte_rrc_discSyncConfig_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigNFreq_r13 }, - { &hf_lte_rrc_discCellSelectionInfo_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_discCellSelectionInfo_r13 }, - { &hf_lte_rrc_cellReselectionInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_cellReselectionInfo_r13 }, - { &hf_lte_rrc_tdd_Config_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, - { &hf_lte_rrc_freqInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_freqInfo_r13 }, - { &hf_lte_rrc_p_Max_r13 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, - { &hf_lte_rrc_referenceSignalPower_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M60_50 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscSysInfoReport_r13_eag_1 }, +static const value_string lte_rrc_ResumeCause_vals[] = { + { 0, "emergency" }, + { 1, "highPriorityAccess" }, + { 2, "mt-Access" }, + { 3, "mo-Signalling" }, + { 4, "mo-Data" }, + { 5, "delayTolerantAccess-v1020" }, + { 6, "mo-VoiceCall-v1280" }, + { 7, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_ResumeCause(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t RRCConnectionResumeRequest_r13_IEs_sequence[] = { + { &hf_lte_rrc_resumeIdentity_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_resumeIdentity_r13 }, + { &hf_lte_rrc_shortResumeMAC_I_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { &hf_lte_rrc_resumeCause_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ResumeCause }, + { &hf_lte_rrc_spare_04 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscSysInfoReport_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionResumeRequest_r13_IEs(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_lte_rrc_SL_DiscSysInfoReport_r13, SL_DiscSysInfoReport_r13_sequence); + ett_lte_rrc_RRCConnectionResumeRequest_r13_IEs, RRCConnectionResumeRequest_r13_IEs_sequence); return offset; } -static const per_sequence_t SL_DiscSysInfoReportFreqList_r13_sequence_of[1] = { - { &hf_lte_rrc_SL_DiscSysInfoReportFreqList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscSysInfoReport_r13 }, +static const value_string lte_rrc_T_resumeIdentity_r15_vals[] = { + { 0, "fullI-RNTI-r15" }, + { 1, "shortI-RNTI-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_resumeIdentity_r15_choice[] = { + { 0, &hf_lte_rrc_fullI_RNTI_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_I_RNTI_r15 }, + { 1, &hf_lte_rrc_shortI_RNTI_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ShortI_RNTI_r15 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_DiscSysInfoReportFreqList_r13(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_lte_rrc_SL_DiscSysInfoReportFreqList_r13, SL_DiscSysInfoReportFreqList_r13_sequence_of, - 1, maxSL_DiscSysInfoReportFreq_r13, FALSE); +dissect_lte_rrc_T_resumeIdentity_r15(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_lte_rrc_T_resumeIdentity_r15, T_resumeIdentity_r15_choice, + NULL); return offset; } +static const value_string lte_rrc_ResumeCause_r15_vals[] = { + { 0, "emergency" }, + { 1, "highPriorityAccess" }, + { 2, "mt-Access" }, + { 3, "mo-Signalling" }, + { 4, "mo-Data" }, + { 5, "rna-Update" }, + { 6, "mo-VoiceCall" }, + { 7, "spare1" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_0_maxFreqV2X_1_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxFreqV2X_1_r14, NULL, FALSE); +dissect_lte_rrc_ResumeCause_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SL_V2X_CommFreqList_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_V2X_CommFreqList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxFreqV2X_1_r14 }, +static const per_sequence_t RRCConnectionResumeRequest_5GC_r15_IEs_sequence[] = { + { &hf_lte_rrc_resumeIdentity_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_resumeIdentity_r15 }, + { &hf_lte_rrc_shortResumeMAC_I_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { &hf_lte_rrc_resumeCause_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ResumeCause_r15 }, + { &hf_lte_rrc_spare_04 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_1 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_V2X_CommFreqList_r14(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_lte_rrc_SL_V2X_CommFreqList_r14, SL_V2X_CommFreqList_r14_sequence_of, - 1, maxFreqV2X_r14, FALSE); +dissect_lte_rrc_RRCConnectionResumeRequest_5GC_r15_IEs(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_lte_rrc_RRCConnectionResumeRequest_5GC_r15_IEs, RRCConnectionResumeRequest_5GC_r15_IEs_sequence); return offset; } -static const value_string lte_rrc_T_p2x_CommTxType_r14_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_criticalExtensions_35_vals[] = { + { 0, "rrcConnectionResumeRequest-r13" }, + { 1, "rrcConnectionResumeRequest-r15" }, { 0, NULL } }; +static const per_choice_t T_criticalExtensions_35_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionResumeRequest_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeRequest_r13_IEs }, + { 1, &hf_lte_rrc_rrcConnectionResumeRequest_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeRequest_5GC_r15_IEs }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_p2x_CommTxType_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_criticalExtensions_35(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_lte_rrc_T_criticalExtensions_35, T_criticalExtensions_35_choice, + NULL); return offset; } -static const per_sequence_t SL_V2X_CommTxResourceReq_r14_sequence[] = { - { &hf_lte_rrc_carrierFreqCommTx_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_maxFreqV2X_1_r14 }, - { &hf_lte_rrc_v2x_TypeTxSync_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TypeTxSync_r14 }, - { &hf_lte_rrc_v2x_DestinationInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DestinationInfoList_r12 }, +static const per_sequence_t RRCConnectionResumeRequest_r13_sequence[] = { + { &hf_lte_rrc_criticalExtensions_35, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_35 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_V2X_CommTxResourceReq_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionResumeRequest_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionResumeRequest-r13"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SL_V2X_CommTxResourceReq_r14, SL_V2X_CommTxResourceReq_r14_sequence); + ett_lte_rrc_RRCConnectionResumeRequest_r13, RRCConnectionResumeRequest_r13_sequence); return offset; } -static const per_sequence_t SL_V2X_CommTxFreqList_r14_sequence_of[1] = { - { &hf_lte_rrc_SL_V2X_CommTxFreqList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_CommTxResourceReq_r14 }, +static const value_string lte_rrc_T_c2_02_vals[] = { + { 0, "rrcConnectionResumeRequest-r13" }, + { 0, NULL } +}; + +static const per_choice_t T_c2_02_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionResumeRequest_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeRequest_r13 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SL_V2X_CommTxFreqList_r14(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_lte_rrc_SL_V2X_CommTxFreqList_r14, SL_V2X_CommTxFreqList_r14_sequence_of, - 1, maxFreqV2X_r14, FALSE); +dissect_lte_rrc_T_c2_02(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_lte_rrc_T_c2_02, T_c2_02_choice, + NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_49_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_establishmentCause_r15_vals[] = { + { 0, "mo-Data-r15" }, + { 1, "delayTolerantAccess-r15" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_49(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_lte_rrc_T_nonCriticalExtension_49, T_nonCriticalExtension_49_sequence); +dissect_lte_rrc_T_establishmentCause_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SidelinkUEInformation_v1430_IEs_sequence[] = { - { &hf_lte_rrc_v2x_CommRxInterestedFreqList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_CommFreqList_r14 }, - { &hf_lte_rrc_p2x_CommTxType_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_p2x_CommTxType_r14 }, - { &hf_lte_rrc_v2x_CommTxResourceReq_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_CommTxFreqList_r14 }, - { &hf_lte_rrc_nonCriticalExtension_137, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_49 }, +static const per_sequence_t T_nonCriticalExtension_45_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SidelinkUEInformation_v1430_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_45(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_lte_rrc_SidelinkUEInformation_v1430_IEs, SidelinkUEInformation_v1430_IEs_sequence); + ett_lte_rrc_T_nonCriticalExtension_45, T_nonCriticalExtension_45_sequence); return offset; } -static const per_sequence_t SidelinkUEInformation_v1310_IEs_sequence[] = { - { &hf_lte_rrc_commTxResourceReqUC_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxResourceReq_r12 }, - { &hf_lte_rrc_commTxResourceInfoReqRelay_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResourceInfoReqRelay_r13 }, - { &hf_lte_rrc_discTxResourceReq_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxResourceReq_v1310 }, - { &hf_lte_rrc_discTxResourceReqPS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxResourceReq_r13 }, - { &hf_lte_rrc_discRxGapReq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_GapRequest_r13 }, - { &hf_lte_rrc_discTxGapReq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_GapRequest_r13 }, - { &hf_lte_rrc_discSysInfoReportFreqList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscSysInfoReportFreqList_r13 }, - { &hf_lte_rrc_nonCriticalExtension_136, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SidelinkUEInformation_v1430_IEs }, +static const per_sequence_t RRCEarlyDataRequest_r15_IEs_sequence[] = { + { &hf_lte_rrc_s_TMSI_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_S_TMSI }, + { &hf_lte_rrc_establishmentCause_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_establishmentCause_r15 }, + { &hf_lte_rrc_dedicatedInfoNAS_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoNAS }, + { &hf_lte_rrc_nonCriticalExtension_140, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_45 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SidelinkUEInformation_v1310_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCEarlyDataRequest_r15_IEs(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_lte_rrc_SidelinkUEInformation_v1310_IEs, SidelinkUEInformation_v1310_IEs_sequence); + ett_lte_rrc_RRCEarlyDataRequest_r15_IEs, RRCEarlyDataRequest_r15_IEs_sequence); return offset; } -static const per_sequence_t SidelinkUEInformation_r12_IEs_sequence[] = { - { &hf_lte_rrc_commRxInterestedFreq_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_commTxResourceReq_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxResourceReq_r12 }, - { &hf_lte_rrc_discRxInterest_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discRxInterest_r12 }, - { &hf_lte_rrc_discTxResourceReq_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_63 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_135, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SidelinkUEInformation_v1310_IEs }, +static const per_sequence_t T_criticalExtensionsFuture_38_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SidelinkUEInformation_r12_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_38(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_lte_rrc_SidelinkUEInformation_r12_IEs, SidelinkUEInformation_r12_IEs_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_38, T_criticalExtensionsFuture_38_sequence); return offset; } -static const value_string lte_rrc_T_c1_40_vals[] = { - { 0, "sidelinkUEInformation-r12" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_criticalExtensions_39_vals[] = { + { 0, "rrcEarlyDataRequest-r15" }, + { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_c1_40_choice[] = { - { 0, &hf_lte_rrc_sidelinkUEInformation_r12_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SidelinkUEInformation_r12_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t T_criticalExtensions_39_choice[] = { + { 0, &hf_lte_rrc_rrcEarlyDataRequest_r15_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCEarlyDataRequest_r15_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_38, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_38 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_c1_40(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_39(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_lte_rrc_T_c1_40, T_c1_40_choice, + ett_lte_rrc_T_criticalExtensions_39, T_criticalExtensions_39_choice, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_42_sequence[] = { +static const per_sequence_t RRCEarlyDataRequest_r15_sequence[] = { + { &hf_lte_rrc_criticalExtensions_39, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_39 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_42(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCEarlyDataRequest_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCEarlyDataRequest-r15"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_T_criticalExtensionsFuture_42, T_criticalExtensionsFuture_42_sequence); + ett_lte_rrc_RRCEarlyDataRequest_r15, RRCEarlyDataRequest_r15_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_42_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_c3_vals[] = { + { 0, "rrcEarlyDataRequest-r15" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_42_choice[] = { - { 0, &hf_lte_rrc_c1_40 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_40 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_42, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_42 }, +static const per_choice_t T_c3_choice[] = { + { 0, &hf_lte_rrc_rrcEarlyDataRequest_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCEarlyDataRequest_r15 }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_42(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c3(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_lte_rrc_T_criticalExtensions_42, T_criticalExtensions_42_choice, + ett_lte_rrc_T_c3, T_c3_choice, NULL); return offset; } -static const per_sequence_t SidelinkUEInformation_r12_sequence[] = { - { &hf_lte_rrc_criticalExtensions_42, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_42 }, +static const per_sequence_t T_messageClassExtensionFuture_r15_01_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SidelinkUEInformation_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_messageClassExtensionFuture_r15_01(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_lte_rrc_T_messageClassExtensionFuture_r15_01, T_messageClassExtensionFuture_r15_01_sequence); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SidelinkUEInformation-r12"); + return offset; +} - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_SidelinkUEInformation_r12, SidelinkUEInformation_r12_sequence); + +static const value_string lte_rrc_T_messageClassExtensionFuture_r13_vals[] = { + { 0, "c3" }, + { 1, "messageClassExtensionFuture-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_messageClassExtensionFuture_r13_choice[] = { + { 0, &hf_lte_rrc_c3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c3 }, + { 1, &hf_lte_rrc_messageClassExtensionFuture_r15_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtensionFuture_r15_01 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_messageClassExtensionFuture_r13(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_lte_rrc_T_messageClassExtensionFuture_r13, T_messageClassExtensionFuture_r13_choice, + NULL); return offset; } -static const value_string lte_rrc_WLAN_Status_r13_vals[] = { - { 0, "successfulAssociation" }, - { 1, "failureWlanRadioLink" }, - { 2, "failureWlanUnavailable" }, - { 3, "failureTimeout" }, +static const value_string lte_rrc_T_messageClassExtension_07_vals[] = { + { 0, "c2" }, + { 1, "messageClassExtensionFuture-r13" }, { 0, NULL } }; +static const per_choice_t T_messageClassExtension_07_choice[] = { + { 0, &hf_lte_rrc_c2_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c2_02 }, + { 1, &hf_lte_rrc_messageClassExtensionFuture_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtensionFuture_r13 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_WLAN_Status_r13(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); +dissect_lte_rrc_T_messageClassExtension_07(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_lte_rrc_T_messageClassExtension_07, T_messageClassExtension_07_choice, + NULL); return offset; } -static const value_string lte_rrc_WLAN_Status_v1430_vals[] = { - { 0, "suspended" }, - { 1, "resumed" }, +static const value_string lte_rrc_UL_CCCH_MessageType_vals[] = { + { 0, "c1" }, + { 1, "messageClassExtension" }, { 0, NULL } }; +static const per_choice_t UL_CCCH_MessageType_choice[] = { + { 0, &hf_lte_rrc_c1_14 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_14 }, + { 1, &hf_lte_rrc_messageClassExtension_07, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_07 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_WLAN_Status_v1430(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, FALSE, 0, NULL); +dissect_lte_rrc_UL_CCCH_MessageType(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_lte_rrc_UL_CCCH_MessageType, UL_CCCH_MessageType_choice, + NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_63_sequence[] = { +static const per_sequence_t UL_CCCH_Message_sequence[] = { + { &hf_lte_rrc_message_09 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CCCH_MessageType }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UL_CCCH_Message(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_lte_rrc_T_nonCriticalExtension_63, T_nonCriticalExtension_63_sequence); + ett_lte_rrc_UL_CCCH_Message, UL_CCCH_Message_sequence); return offset; } -static const per_sequence_t WLANConnectionStatusReport_v1430_IEs_sequence[] = { - { &hf_lte_rrc_wlan_Status_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Status_v1430 }, - { &hf_lte_rrc_nonCriticalExtension_185, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_63 }, +static const per_sequence_t T_nonCriticalExtension_10_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_WLANConnectionStatusReport_v1430_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_10(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_lte_rrc_WLANConnectionStatusReport_v1430_IEs, WLANConnectionStatusReport_v1430_IEs_sequence); + ett_lte_rrc_T_nonCriticalExtension_10, T_nonCriticalExtension_10_sequence); return offset; } -static const per_sequence_t WLANConnectionStatusReport_r13_IEs_sequence[] = { - { &hf_lte_rrc_wlan_Status_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Status_r13 }, +static const per_sequence_t CSFBParametersRequestCDMA2000_v8a0_IEs_sequence[] = { { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_184, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLANConnectionStatusReport_v1430_IEs }, + { &hf_lte_rrc_nonCriticalExtension_28, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_WLANConnectionStatusReport_r13_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CSFBParametersRequestCDMA2000_v8a0_IEs(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_lte_rrc_WLANConnectionStatusReport_r13_IEs, WLANConnectionStatusReport_r13_IEs_sequence); + ett_lte_rrc_CSFBParametersRequestCDMA2000_v8a0_IEs, CSFBParametersRequestCDMA2000_v8a0_IEs_sequence); return offset; } -static const value_string lte_rrc_T_c1_49_vals[] = { - { 0, "wlanConnectionStatusReport-r13" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_49_choice[] = { - { 0, &hf_lte_rrc_wlanConnectionStatusReport_r13_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_WLANConnectionStatusReport_r13_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t CSFBParametersRequestCDMA2000_r8_IEs_sequence[] = { + { &hf_lte_rrc_nonCriticalExtension_27, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSFBParametersRequestCDMA2000_v8a0_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_49(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_lte_rrc_T_c1_49, T_c1_49_choice, - NULL); +dissect_lte_rrc_CSFBParametersRequestCDMA2000_r8_IEs(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_lte_rrc_CSFBParametersRequestCDMA2000_r8_IEs, CSFBParametersRequestCDMA2000_r8_IEs_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_52_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_09_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_52(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_09(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_lte_rrc_T_criticalExtensionsFuture_52, T_criticalExtensionsFuture_52_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_09, T_criticalExtensionsFuture_09_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_52_vals[] = { - { 0, "c1" }, +static const value_string lte_rrc_T_criticalExtensions_09_vals[] = { + { 0, "csfbParametersRequestCDMA2000-r8" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_52_choice[] = { - { 0, &hf_lte_rrc_c1_49 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_49 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_52, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_52 }, +static const per_choice_t T_criticalExtensions_09_choice[] = { + { 0, &hf_lte_rrc_csfbParametersRequestCDMA2000_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSFBParametersRequestCDMA2000_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_09, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_09 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_52(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_09(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_lte_rrc_T_criticalExtensions_52, T_criticalExtensions_52_choice, + ett_lte_rrc_T_criticalExtensions_09, T_criticalExtensions_09_choice, NULL); return offset; } -static const per_sequence_t WLANConnectionStatusReport_r13_sequence[] = { - { &hf_lte_rrc_criticalExtensions_52, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_52 }, +static const per_sequence_t CSFBParametersRequestCDMA2000_sequence[] = { + { &hf_lte_rrc_criticalExtensions_09, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_09 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_WLANConnectionStatusReport_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CSFBParametersRequestCDMA2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "WLANConnectionStatusReport-r13"); + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CSFBParametersRequestCDMA2000"); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_WLANConnectionStatusReport_r13, WLANConnectionStatusReport_r13_sequence); + ett_lte_rrc_CSFBParametersRequestCDMA2000, CSFBParametersRequestCDMA2000_sequence); return offset; } -static const value_string lte_rrc_T_rlf_InfoAvailable_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_measResultPCell_sequence[] = { + { &hf_lte_rrc_rsrpResult , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResult , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_rlf_InfoAvailable_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_measResultPCell(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_lte_rrc_T_measResultPCell, T_measResultPCell_sequence); return offset; } -static const value_string lte_rrc_T_logMeasAvailable_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t PLMN_IdentityList2_sequence_of[1] = { + { &hf_lte_rrc_PLMN_IdentityList2_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, }; - static int -dissect_lte_rrc_T_logMeasAvailable_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PLMN_IdentityList2(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_lte_rrc_PLMN_IdentityList2, PLMN_IdentityList2_sequence_of, + 1, 5, FALSE); return offset; } -static const value_string lte_rrc_T_connEstFailInfoAvailable_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t T_cgi_Info_sequence[] = { + { &hf_lte_rrc_cellGlobalId, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdEUTRA }, + { &hf_lte_rrc_trackingAreaCode, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, + { &hf_lte_rrc_plmn_IdentityList_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList2 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_connEstFailInfoAvailable_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_cgi_Info(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_lte_rrc_T_cgi_Info, T_cgi_Info_sequence); return offset; } -static const value_string lte_rrc_T_mobilityState_r13_vals[] = { - { 0, "normal" }, - { 1, "medium" }, - { 2, "high" }, - { 3, "spare" }, +static const value_string lte_rrc_T_csg_MemberStatus_r9_vals[] = { + { 0, "member" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mobilityState_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csg_MemberStatus_r9(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); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_mobilityHistoryAvail_r13_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t AdditionalSI_Info_r9_sequence[] = { + { &hf_lte_rrc_csg_MemberStatus_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csg_MemberStatus_r9 }, + { &hf_lte_rrc_csg_Identity_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CSG_Identity }, + { NULL, 0, 0, NULL } }; +static int +dissect_lte_rrc_AdditionalSI_Info_r9(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_lte_rrc_AdditionalSI_Info_r9, AdditionalSI_Info_r9_sequence); + + return offset; +} + + +static const per_sequence_t T_eag_1_03_sequence[] = { + { &hf_lte_rrc_additionalSI_Info_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSI_Info_r9 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_mobilityHistoryAvail_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_eag_1_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_1_03_sequence); return offset; } -static const value_string lte_rrc_T_logMeasAvailableMBSFN_r13_vals[] = { +static const value_string lte_rrc_T_primaryPLMN_Suitable_r12_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_logMeasAvailableMBSFN_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_primaryPLMN_Suitable_r12(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, 1, NULL, FALSE, 0, NULL); @@ -65633,555 +69917,9399 @@ dissect_lte_rrc_T_logMeasAvailableMBSFN_r13(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t T_nonCriticalExtension_38_sequence[] = { +static const per_sequence_t T_eag_2_01_sequence[] = { + { &hf_lte_rrc_primaryPLMN_Suitable_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_primaryPLMN_Suitable_r12 }, + { &hf_lte_rrc_measResult_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_38(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_lte_rrc_T_nonCriticalExtension_38, T_nonCriticalExtension_38_sequence); +dissect_lte_rrc_T_eag_2_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_2_01_sequence); return offset; } -static const per_sequence_t RRCConnectionResumeComplete_r13_IEs_sequence[] = { - { &hf_lte_rrc_selectedPLMN_Identity_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, - { &hf_lte_rrc_dedicatedInfoNAS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DedicatedInfoNAS }, - { &hf_lte_rrc_rlf_InfoAvailable_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlf_InfoAvailable_r13 }, - { &hf_lte_rrc_logMeasAvailable_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailable_r13 }, - { &hf_lte_rrc_connEstFailInfoAvailable_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connEstFailInfoAvailable_r13 }, - { &hf_lte_rrc_mobilityState_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityState_r13 }, - { &hf_lte_rrc_mobilityHistoryAvail_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityHistoryAvail_r13 }, - { &hf_lte_rrc_logMeasAvailableMBSFN_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableMBSFN_r13 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_111, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_38 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_freqBandIndicatorPriority_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRCConnectionResumeComplete_r13_IEs(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_lte_rrc_RRCConnectionResumeComplete_r13_IEs, RRCConnectionResumeComplete_r13_IEs_sequence); +dissect_lte_rrc_T_freqBandIndicatorPriority_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_33_sequence[] = { +static const per_sequence_t T_cgi_Info_v1310_sequence[] = { + { &hf_lte_rrc_freqBandIndicator_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_r11 }, + { &hf_lte_rrc_multiBandInfoList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_r11 }, + { &hf_lte_rrc_freqBandIndicatorPriority_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqBandIndicatorPriority_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_33(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cgi_Info_v1310(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_lte_rrc_T_criticalExtensionsFuture_33, T_criticalExtensionsFuture_33_sequence); + ett_lte_rrc_T_cgi_Info_v1310, T_cgi_Info_v1310_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_33_vals[] = { - { 0, "rrcConnectionResumeComplete-r13" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_33_choice[] = { - { 0, &hf_lte_rrc_rrcConnectionResumeComplete_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeComplete_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_33, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_33 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_eag_3_01_sequence[] = { + { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_Range_r13 }, + { &hf_lte_rrc_cgi_Info_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cgi_Info_v1310 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_33(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_lte_rrc_T_criticalExtensions_33, T_criticalExtensions_33_choice, - NULL); +dissect_lte_rrc_T_eag_3_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_3_01_sequence); return offset; } -static const per_sequence_t RRCConnectionResumeComplete_r13_sequence[] = { - { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_33, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_33 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RRCConnectionResumeComplete_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionResumeComplete-r13"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RRCConnectionResumeComplete_r13, RRCConnectionResumeComplete_r13_sequence); +dissect_lte_rrc_RSRP_Range_v1360(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -17, -1, NULL, FALSE); return offset; } +static const per_sequence_t T_eag_4_01_sequence[] = { + { &hf_lte_rrc_measResult_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range_v1360 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_ul_DCCH_MessageNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *nr_ul_dcch_tvb = NULL; - - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &nr_ul_dcch_tvb); - - - if (nr_ul_dcch_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_ul_DCCH_MessageNR_r15); - dissect_nr_rrc_UL_DCCH_Message_PDU(nr_ul_dcch_tvb, actx->pinfo, subtree, NULL); - } - - +dissect_lte_rrc_T_eag_4_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_4_01_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_62_sequence[] = { +static const per_sequence_t T_eag_5_sequence[] = { + { &hf_lte_rrc_cgi_Info_5GC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_62(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_lte_rrc_T_nonCriticalExtension_62, T_nonCriticalExtension_62_sequence); +dissect_lte_rrc_T_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_5_sequence); return offset; } -static const per_sequence_t ULInformationTransferMRDC_r15_IEs_sequence[] = { - { &hf_lte_rrc_ul_DCCH_MessageNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_DCCH_MessageNR_r15 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_183, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_62 }, +static const per_sequence_t T_measResult_sequence[] = { + { &hf_lte_rrc_rsrpResult , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResult , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_1_03 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_2_01 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_3_01 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_4_01 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_5 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ULInformationTransferMRDC_r15_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_measResult(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_lte_rrc_ULInformationTransferMRDC_r15_IEs, ULInformationTransferMRDC_r15_IEs_sequence); + ett_lte_rrc_T_measResult, T_measResult_sequence); return offset; } -static const value_string lte_rrc_T_c1_48_vals[] = { - { 0, "ulInformationTransferMRDC-r15" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_48_choice[] = { - { 0, &hf_lte_rrc_ulInformationTransferMRDC_r15_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULInformationTransferMRDC_r15_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t MeasResultEUTRA_sequence[] = { + { &hf_lte_rrc_physCellId_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_cgi_Info , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cgi_Info }, + { &hf_lte_rrc_measResult , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResult }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_48(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_lte_rrc_T_c1_48, T_c1_48_choice, - NULL); +dissect_lte_rrc_MeasResultEUTRA(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_lte_rrc_MeasResultEUTRA, MeasResultEUTRA_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_51_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t MeasResultListEUTRA_sequence_of[1] = { + { &hf_lte_rrc_MeasResultListEUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultEUTRA }, }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_51(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_lte_rrc_T_criticalExtensionsFuture_51, T_criticalExtensionsFuture_51_sequence); +dissect_lte_rrc_MeasResultListEUTRA(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_lte_rrc_MeasResultListEUTRA, MeasResultListEUTRA_sequence_of, + 1, maxCellReport, FALSE); return offset; } -static const value_string lte_rrc_T_criticalExtensions_51_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_physCellId_vals[] = { + { 0, "fdd" }, + { 1, "tdd" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_51_choice[] = { - { 0, &hf_lte_rrc_c1_48 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_48 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_51, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_51 }, +static const per_choice_t T_physCellId_choice[] = { + { 0, &hf_lte_rrc_fdd_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_FDD }, + { 1, &hf_lte_rrc_tdd_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_TDD }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_51(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_physCellId(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_lte_rrc_T_criticalExtensions_51, T_criticalExtensions_51_choice, + ett_lte_rrc_T_physCellId, T_physCellId_choice, NULL); return offset; } -static const per_sequence_t ULInformationTransferMRDC_r15_sequence[] = { - { &hf_lte_rrc_criticalExtensions_51, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_51 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_ULInformationTransferMRDC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ULInformationTransferMRDC-r15"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_ULInformationTransferMRDC_r15, ULInformationTransferMRDC_r15_sequence); +dissect_lte_rrc_BIT_STRING_SIZE_28(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, + 28, 28, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_T_failureType_r15_vals[] = { - { 0, "t310-Expiry" }, - { 1, "randomAccessProblem" }, - { 2, "rlc-MaxNumRetx" }, - { 3, "scg-ChangeFailure" }, - { 4, "scg-reconfigFailure" }, - { 5, "srb3-IntegrityFailure" }, - { 0, NULL } +static const per_sequence_t CellGlobalIdUTRA_sequence[] = { + { &hf_lte_rrc_plmn_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, + { &hf_lte_rrc_cellIdentity_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_28 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_failureType_r15(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, - 6, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CellGlobalIdUTRA(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_lte_rrc_CellGlobalIdUTRA, CellGlobalIdUTRA_sequence); return offset; } -static const per_sequence_t MeasResultFreqFailNR_r15_sequence[] = { - { &hf_lte_rrc_carrierFreq_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueNR_r15 }, - { &hf_lte_rrc_measResultCellList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultCellListNR_r15 }, +static const per_sequence_t T_cgi_Info_01_sequence[] = { + { &hf_lte_rrc_cellGlobalId_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdUTRA }, + { &hf_lte_rrc_locationAreaCode, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { &hf_lte_rrc_routingAreaCode, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_8 }, + { &hf_lte_rrc_plmn_IdentityList_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasResultFreqFailNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cgi_Info_01(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_lte_rrc_MeasResultFreqFailNR_r15, MeasResultFreqFailNR_r15_sequence); + ett_lte_rrc_T_cgi_Info_01, T_cgi_Info_01_sequence); return offset; } -static const per_sequence_t MeasResultFreqListFailNR_r15_sequence_of[1] = { - { &hf_lte_rrc_MeasResultFreqListFailNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultFreqFailNR_r15 }, -}; static int -dissect_lte_rrc_MeasResultFreqListFailNR_r15(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_lte_rrc_MeasResultFreqListFailNR_r15, MeasResultFreqListFailNR_r15_sequence_of, - 1, maxFreqNR_r15, FALSE); +dissect_lte_rrc_INTEGER_M5_91(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -5, 91U, NULL, FALSE); return offset; } +static const per_sequence_t T_eag_1_04_sequence[] = { + { &hf_lte_rrc_additionalSI_Info_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSI_Info_r9 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_measResultSCG_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *meas_results_tvb = NULL; +dissect_lte_rrc_T_eag_1_04(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_1_04_sequence); - offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, &meas_results_tvb); + return offset; +} - if (meas_results_tvb) { - proto_tree *subtree; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_measResultSCG_r15); - dissect_nr_rrc_MeasResults_PDU(meas_results_tvb, actx->pinfo, subtree, NULL); - } +static const value_string lte_rrc_T_primaryPLMN_Suitable_r12_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; +static int +dissect_lte_rrc_T_primaryPLMN_Suitable_r12_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, + 1, NULL, FALSE, 0, NULL); + return offset; } -static const per_sequence_t FailureReportSCG_NR_r15_sequence[] = { - { &hf_lte_rrc_failureType_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_failureType_r15 }, - { &hf_lte_rrc_measResultFreqListNR_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultFreqListFailNR_r15 }, - { &hf_lte_rrc_measResultSCG_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultSCG_r15 }, +static const per_sequence_t T_eag_2_02_sequence[] = { + { &hf_lte_rrc_primaryPLMN_Suitable_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_primaryPLMN_Suitable_r12_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FailureReportSCG_NR_r15(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_lte_rrc_FailureReportSCG_NR_r15, FailureReportSCG_NR_r15_sequence); +dissect_lte_rrc_T_eag_2_02(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_2_02_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_43_sequence[] = { +static const per_sequence_t T_measResult_01_sequence[] = { + { &hf_lte_rrc_utra_RSCP , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M5_91 }, + { &hf_lte_rrc_utra_EcN0 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_49 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_1_04 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_2_02 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_43(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_measResult_01(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_lte_rrc_T_nonCriticalExtension_43, T_nonCriticalExtension_43_sequence); + ett_lte_rrc_T_measResult_01, T_measResult_01_sequence); return offset; } -static const per_sequence_t SCGFailureInformationNR_r15_IEs_sequence[] = { - { &hf_lte_rrc_failureReportSCG_NR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FailureReportSCG_NR_r15 }, - { &hf_lte_rrc_nonCriticalExtension_125, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_43 }, +static const per_sequence_t MeasResultUTRA_sequence[] = { + { &hf_lte_rrc_physCellId_05, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_physCellId }, + { &hf_lte_rrc_cgi_Info_01 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cgi_Info_01 }, + { &hf_lte_rrc_measResult_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResult_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCGFailureInformationNR_r15_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasResultUTRA(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_lte_rrc_SCGFailureInformationNR_r15_IEs, SCGFailureInformationNR_r15_IEs_sequence); + ett_lte_rrc_MeasResultUTRA, MeasResultUTRA_sequence); return offset; } -static const value_string lte_rrc_T_c1_38_vals[] = { - { 0, "scgFailureInformationNR-r15" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_38_choice[] = { - { 0, &hf_lte_rrc_scgFailureInformationNR_r15_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCGFailureInformationNR_r15_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t MeasResultListUTRA_sequence_of[1] = { + { &hf_lte_rrc_MeasResultListUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultUTRA }, }; static int -dissect_lte_rrc_T_c1_38(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_lte_rrc_T_c1_38, T_c1_38_choice, - NULL); +dissect_lte_rrc_MeasResultListUTRA(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_lte_rrc_MeasResultListUTRA, MeasResultListUTRA_sequence_of, + 1, maxCellReport, FALSE); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_38_sequence[] = { +static const per_sequence_t CellGlobalIdGERAN_sequence[] = { + { &hf_lte_rrc_plmn_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, + { &hf_lte_rrc_locationAreaCode, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { &hf_lte_rrc_cellIdentity_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_38(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellGlobalIdGERAN(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_lte_rrc_T_criticalExtensionsFuture_38, T_criticalExtensionsFuture_38_sequence); + ett_lte_rrc_CellGlobalIdGERAN, CellGlobalIdGERAN_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_38_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_38_choice[] = { - { 0, &hf_lte_rrc_c1_38 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_38 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_38, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_38 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_cgi_Info_02_sequence[] = { + { &hf_lte_rrc_cellGlobalId_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdGERAN }, + { &hf_lte_rrc_routingAreaCode, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_8 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_38(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_lte_rrc_T_criticalExtensions_38, T_criticalExtensions_38_choice, - NULL); +dissect_lte_rrc_T_cgi_Info_02(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_lte_rrc_T_cgi_Info_02, T_cgi_Info_02_sequence); return offset; } -static const per_sequence_t SCGFailureInformationNR_r15_sequence[] = { - { &hf_lte_rrc_criticalExtensions_38, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_38 }, +static const per_sequence_t T_measResult_02_sequence[] = { + { &hf_lte_rrc_rssi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCGFailureInformationNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SCGFailureInformationNR-r15"); - +dissect_lte_rrc_T_measResult_02(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_lte_rrc_SCGFailureInformationNR_r15, SCGFailureInformationNR_r15_sequence); + ett_lte_rrc_T_measResult_02, T_measResult_02_sequence); return offset; } -static const value_string lte_rrc_T_c2_02_vals[] = { - { 0, "ueAssistanceInformation-r11" }, - { 1, "inDeviceCoexIndication-r11" }, - { 2, "mbmsInterestIndication-r11" }, - { 3, "scgFailureInformation-r12" }, - { 4, "sidelinkUEInformation-r12" }, - { 5, "wlanConnectionStatusReport-r13" }, - { 6, "rrcConnectionResumeComplete-r13" }, - { 7, "ulInformationTransferMRDC-r15" }, - { 8, "scgFailureInformationNR-r15" }, - { 9, "spare7" }, - { 10, "spare6" }, - { 11, "spare5" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c2_02_choice[] = { - { 0, &hf_lte_rrc_ueAssistanceInformation_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEAssistanceInformation_r11 }, - { 1, &hf_lte_rrc_inDeviceCoexIndication_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_InDeviceCoexIndication_r11 }, - { 2, &hf_lte_rrc_mbmsInterestIndication_r11_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBMSInterestIndication_r11 }, - { 3, &hf_lte_rrc_scgFailureInformation_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCGFailureInformation_r12 }, - { 4, &hf_lte_rrc_sidelinkUEInformation_r12_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SidelinkUEInformation_r12 }, - { 5, &hf_lte_rrc_wlanConnectionStatusReport_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_WLANConnectionStatusReport_r13 }, - { 6, &hf_lte_rrc_rrcConnectionResumeComplete_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeComplete_r13 }, - { 7, &hf_lte_rrc_ulInformationTransferMRDC_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULInformationTransferMRDC_r15 }, - { 8, &hf_lte_rrc_scgFailureInformationNR_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCGFailureInformationNR_r15 }, - { 9, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 10, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 11, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 12, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 13, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 14, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 15, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t MeasResultGERAN_sequence[] = { + { &hf_lte_rrc_carrierFreq , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqGERAN }, + { &hf_lte_rrc_physCellId , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdGERAN }, + { &hf_lte_rrc_cgi_Info_02 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cgi_Info_02 }, + { &hf_lte_rrc_measResult_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResult_02 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c2_02(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_lte_rrc_T_c2_02, T_c2_02_choice, - NULL); +dissect_lte_rrc_MeasResultGERAN(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_lte_rrc_MeasResultGERAN, MeasResultGERAN_sequence); return offset; } -static const per_sequence_t T_messageClassExtensionFuture_r11_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t MeasResultListGERAN_sequence_of[1] = { + { &hf_lte_rrc_MeasResultListGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultGERAN }, }; static int -dissect_lte_rrc_T_messageClassExtensionFuture_r11(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_lte_rrc_T_messageClassExtensionFuture_r11, T_messageClassExtensionFuture_r11_sequence); +dissect_lte_rrc_MeasResultListGERAN(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_lte_rrc_MeasResultListGERAN, MeasResultListGERAN_sequence_of, + 1, maxCellReport, FALSE); return offset; } -static const value_string lte_rrc_T_messageClassExtension_08_vals[] = { - { 0, "c2" }, - { 1, "messageClassExtensionFuture-r11" }, - { 0, NULL } -}; -static const per_choice_t T_messageClassExtension_08_choice[] = { - { 0, &hf_lte_rrc_c2_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c2_02 }, - { 1, &hf_lte_rrc_messageClassExtensionFuture_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtensionFuture_r11 }, - { 0, NULL, 0, NULL } -}; +static int +dissect_lte_rrc_BIT_STRING_SIZE_47(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, + 47, 47, FALSE, NULL, NULL); + + return offset; +} + + static int -dissect_lte_rrc_T_messageClassExtension_08(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_lte_rrc_T_messageClassExtension_08, T_messageClassExtension_08_choice, - NULL); +dissect_lte_rrc_BIT_STRING_SIZE_128(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, + 128, 128, FALSE, NULL, NULL); return offset; } -static const value_string lte_rrc_UL_DCCH_MessageType_vals[] = { - { 0, "c1" }, - { 1, "messageClassExtension" }, +static const value_string lte_rrc_CellGlobalIdCDMA2000_vals[] = { + { 0, "cellGlobalId1XRTT" }, + { 1, "cellGlobalIdHRPD" }, { 0, NULL } }; -static const per_choice_t UL_DCCH_MessageType_choice[] = { - { 0, &hf_lte_rrc_c1_15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_15 }, - { 1, &hf_lte_rrc_messageClassExtension_08, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_08 }, +static const per_choice_t CellGlobalIdCDMA2000_choice[] = { + { 0, &hf_lte_rrc_cellGlobalId1XRTT, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_47 }, + { 1, &hf_lte_rrc_cellGlobalIdHRPD, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_128 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_UL_DCCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CellGlobalIdCDMA2000(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_lte_rrc_UL_DCCH_MessageType, UL_DCCH_MessageType_choice, + ett_lte_rrc_CellGlobalIdCDMA2000, CellGlobalIdCDMA2000_choice, NULL); return offset; } -static const per_sequence_t UL_DCCH_Message_sequence[] = { - { &hf_lte_rrc_message_10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_DCCH_MessageType }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UL_DCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - actx->pinfo->link_dir = P2P_DIR_UL; - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_UL_DCCH_Message, UL_DCCH_Message_sequence); +dissect_lte_rrc_INTEGER_0_32767(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 32767U, NULL, FALSE); return offset; } -static const per_sequence_t MBMSSessionInfo_r13_sequence[] = { - { &hf_lte_rrc_tmgi_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TMGI_r9 }, - { &hf_lte_rrc_sessionId_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_1 }, +static const per_sequence_t T_measResult_03_sequence[] = { + { &hf_lte_rrc_pilotPnPhase, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_32767 }, + { &hf_lte_rrc_pilotStrength, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_63 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMSSessionInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_measResult_03(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_lte_rrc_MBMSSessionInfo_r13, MBMSSessionInfo_r13_sequence); + ett_lte_rrc_T_measResult_03, T_measResult_03_sequence); return offset; } -static const value_string lte_rrc_T_onDurationTimerSCPTM_r13_vals[] = { - { 0, "psf1" }, - { 1, "psf2" }, +static const per_sequence_t MeasResultCDMA2000_sequence[] = { + { &hf_lte_rrc_physCellId_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdCDMA2000 }, + { &hf_lte_rrc_cgi_Info_03 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellGlobalIdCDMA2000 }, + { &hf_lte_rrc_measResult_03, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResult_03 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultCDMA2000(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_lte_rrc_MeasResultCDMA2000, MeasResultCDMA2000_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultListCDMA2000_sequence_of[1] = { + { &hf_lte_rrc_MeasResultListCDMA2000_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCDMA2000 }, +}; + +static int +dissect_lte_rrc_MeasResultListCDMA2000(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_lte_rrc_MeasResultListCDMA2000, MeasResultListCDMA2000_sequence_of, + 1, maxCellReport, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResultsCDMA2000_sequence[] = { + { &hf_lte_rrc_preRegistrationStatusHRPD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_measResultListCDMA2000, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultListCDMA2000 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultsCDMA2000(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_lte_rrc_MeasResultsCDMA2000, MeasResultsCDMA2000_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultCellListNR_r15_sequence_of[1] = { + { &hf_lte_rrc_MeasResultCellListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCellNR_r15 }, +}; + +static int +dissect_lte_rrc_MeasResultCellListNR_r15(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_lte_rrc_MeasResultCellListNR_r15, MeasResultCellListNR_r15_sequence_of, + 1, maxCellReport, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_measResultNeighCells_vals[] = { + { 0, "measResultListEUTRA" }, + { 1, "measResultListUTRA" }, + { 2, "measResultListGERAN" }, + { 3, "measResultsCDMA2000" }, + { 4, "measResultNeighCellListNR-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_measResultNeighCells_choice[] = { + { 0, &hf_lte_rrc_measResultListEUTRA, ASN1_EXTENSION_ROOT , dissect_lte_rrc_MeasResultListEUTRA }, + { 1, &hf_lte_rrc_measResultListUTRA, ASN1_EXTENSION_ROOT , dissect_lte_rrc_MeasResultListUTRA }, + { 2, &hf_lte_rrc_measResultListGERAN, ASN1_EXTENSION_ROOT , dissect_lte_rrc_MeasResultListGERAN }, + { 3, &hf_lte_rrc_measResultsCDMA2000, ASN1_EXTENSION_ROOT , dissect_lte_rrc_MeasResultsCDMA2000 }, + { 4, &hf_lte_rrc_measResultNeighCellListNR_r15, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_MeasResultCellListNR_r15 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultNeighCells(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_lte_rrc_T_measResultNeighCells, T_measResultNeighCells_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MeasResultForECID_r9_sequence[] = { + { &hf_lte_rrc_ue_RxTxTimeDiffResult_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_4095 }, + { &hf_lte_rrc_currentSFN_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultForECID_r9(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_lte_rrc_MeasResultForECID_r9, MeasResultForECID_r9_sequence); + + return offset; +} + + +static const per_sequence_t MeasResults_eag_1_sequence[] = { + { &hf_lte_rrc_measResultForECID_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultForECID_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResults_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_1_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_T_ellipsoid_Point_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *ellipsoid_point_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &ellipsoid_point_tvb); + + if (ellipsoid_point_tvb) { + dissect_lpp_Ellipsoid_Point_PDU(ellipsoid_point_tvb, actx->pinfo, tree, NULL); + } + + + return offset; +} + + + +static int +dissect_lte_rrc_T_ellipsoidPointWithAltitude_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *ellipsoid_point_with_alt_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &ellipsoid_point_with_alt_tvb); + + if (ellipsoid_point_with_alt_tvb) { + dissect_lpp_EllipsoidPointWithAltitude_PDU(ellipsoid_point_with_alt_tvb, actx->pinfo, tree, NULL); + } + + + return offset; +} + + + +static int +dissect_lte_rrc_T_ellipsoidPointWithUncertaintyCircle_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *ellipsoid_point_with_uncert_circ_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &ellipsoid_point_with_uncert_circ_tvb); + + if (ellipsoid_point_with_uncert_circ_tvb) { + dissect_lpp_Ellipsoid_PointWithUncertaintyCircle_PDU(ellipsoid_point_with_uncert_circ_tvb, actx->pinfo, tree, NULL); + } + + + return offset; +} + + + +static int +dissect_lte_rrc_T_ellipsoidPointWithUncertaintyEllipse_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *ellipsoid_point_with_uncert_ellipse_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &ellipsoid_point_with_uncert_ellipse_tvb); + + if (ellipsoid_point_with_uncert_ellipse_tvb) { + dissect_lpp_EllipsoidPointWithUncertaintyEllipse_PDU(ellipsoid_point_with_uncert_ellipse_tvb, actx->pinfo, tree, NULL); + } + + + return offset; +} + + + +static int +dissect_lte_rrc_T_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *ellipsoid_point_with_alt_uncert_ellipsoid_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &ellipsoid_point_with_alt_uncert_ellipsoid_tvb); + + if (ellipsoid_point_with_alt_uncert_ellipsoid_tvb) { + dissect_lpp_EllipsoidPointWithAltitudeAndUncertaintyEllipsoid_PDU(ellipsoid_point_with_alt_uncert_ellipsoid_tvb, actx->pinfo, tree, NULL); + } + + + return offset; +} + + + +static int +dissect_lte_rrc_T_ellipsoidArc_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *ellipsoid_arc_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &ellipsoid_arc_tvb); + + if (ellipsoid_arc_tvb) { + dissect_lpp_EllipsoidArc_PDU(ellipsoid_arc_tvb, actx->pinfo, tree, NULL); + } + + + return offset; +} + + + +static int +dissect_lte_rrc_T_polygon_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *polygon_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &polygon_tvb); + + if (polygon_tvb) { + dissect_lpp_Polygon_PDU(polygon_tvb, actx->pinfo, tree, NULL); + } + + + return offset; +} + + +static const value_string lte_rrc_T_locationCoordinates_r10_vals[] = { + { 0, "ellipsoid-Point-r10" }, + { 1, "ellipsoidPointWithAltitude-r10" }, + { 2, "ellipsoidPointWithUncertaintyCircle-r11" }, + { 3, "ellipsoidPointWithUncertaintyEllipse-r11" }, + { 4, "ellipsoidPointWithAltitudeAndUncertaintyEllipsoid-r11" }, + { 5, "ellipsoidArc-r11" }, + { 6, "polygon-r11" }, + { 0, NULL } +}; + +static const per_choice_t T_locationCoordinates_r10_choice[] = { + { 0, &hf_lte_rrc_ellipsoid_Point_r10, ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_ellipsoid_Point_r10 }, + { 1, &hf_lte_rrc_ellipsoidPointWithAltitude_r10, ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_ellipsoidPointWithAltitude_r10 }, + { 2, &hf_lte_rrc_ellipsoidPointWithUncertaintyCircle_r11, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_ellipsoidPointWithUncertaintyCircle_r11 }, + { 3, &hf_lte_rrc_ellipsoidPointWithUncertaintyEllipse_r11, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_ellipsoidPointWithUncertaintyEllipse_r11 }, + { 4, &hf_lte_rrc_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid_r11, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_ellipsoidPointWithAltitudeAndUncertaintyEllipsoid_r11 }, + { 5, &hf_lte_rrc_ellipsoidArc_r11, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_ellipsoidArc_r11 }, + { 6, &hf_lte_rrc_polygon_r11 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_T_polygon_r11 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_locationCoordinates_r10(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_lte_rrc_T_locationCoordinates_r10, T_locationCoordinates_r10_choice, + NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_T_horizontalVelocity_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *horizontal_velocity_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &horizontal_velocity_tvb); + + if (horizontal_velocity_tvb) { + dissect_lpp_HorizontalVelocity_PDU(horizontal_velocity_tvb, actx->pinfo, tree, NULL); + } + + + return offset; +} + + + +static int +dissect_lte_rrc_T_gnss_TOD_msec_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *gnss_tod_msec_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &gnss_tod_msec_tvb); + + if (gnss_tod_msec_tvb) { + asn1_ctx_t asn1_ctx; + asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, FALSE, actx->pinfo); + dissect_per_constrained_integer(gnss_tod_msec_tvb, 0, &asn1_ctx, tree, hf_index, 0U, 3599999U, NULL, FALSE); + } + + + return offset; +} + + + +static int +dissect_lte_rrc_T_verticalVelocity_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *vertical_velocity_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &vertical_velocity_tvb); + + if (vertical_velocity_tvb) { + dissect_lpp_HorizontalWithVerticalVelocity_PDU(vertical_velocity_tvb, actx->pinfo, tree, NULL); + } + + + return offset; +} + + + +static int +dissect_lte_rrc_T_verticalVelocityAndUncertainty_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *vertical_velocity_tvb = NULL; + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &vertical_velocity_tvb); + + if (vertical_velocity_tvb) { + dissect_lpp_HorizontalVelocityWithUncertainty_PDU(vertical_velocity_tvb, actx->pinfo, tree, NULL); + } + + + return offset; +} + + +static const value_string lte_rrc_T_verticalVelocityInfo_r15_vals[] = { + { 0, "verticalVelocity-r15" }, + { 1, "verticalVelocityAndUncertainty-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_verticalVelocityInfo_r15_choice[] = { + { 0, &hf_lte_rrc_verticalVelocity_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_verticalVelocity_r15 }, + { 1, &hf_lte_rrc_verticalVelocityAndUncertainty_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_verticalVelocityAndUncertainty_r15 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_verticalVelocityInfo_r15(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_lte_rrc_T_verticalVelocityInfo_r15, T_verticalVelocityInfo_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t LocationInfo_r10_eag_1_sequence[] = { + { &hf_lte_rrc_verticalVelocityInfo_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_verticalVelocityInfo_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LocationInfo_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LocationInfo_r10_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t LocationInfo_r10_sequence[] = { + { &hf_lte_rrc_locationCoordinates_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_locationCoordinates_r10 }, + { &hf_lte_rrc_horizontalVelocity_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_horizontalVelocity_r10 }, + { &hf_lte_rrc_gnss_TOD_msec_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_gnss_TOD_msec_r10 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LocationInfo_r10_eag_1 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LocationInfo_r10(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_lte_rrc_LocationInfo_r10, LocationInfo_r10_sequence); + + return offset; +} + + +static const per_sequence_t T_measResultSCell_r10_sequence[] = { + { &hf_lte_rrc_rsrpResultSCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResultSCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultSCell_r10(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_lte_rrc_T_measResultSCell_r10, T_measResultSCell_r10_sequence); + + return offset; +} + + +static const per_sequence_t T_measResultBestNeighCell_r10_sequence[] = { + { &hf_lte_rrc_physCellId_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_rsrpResultNCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResultNCell_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultBestNeighCell_r10(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_lte_rrc_T_measResultBestNeighCell_r10, T_measResultBestNeighCell_r10_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultServFreq_r10_eag_1_sequence[] = { + { &hf_lte_rrc_measResultSCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, + { &hf_lte_rrc_measResultBestNeighCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultServFreq_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResultServFreq_r10_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t T_measResultSCell_v1310_01_sequence[] = { + { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_SINR_Range_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultSCell_v1310_01(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_lte_rrc_T_measResultSCell_v1310_01, T_measResultSCell_v1310_01_sequence); + + return offset; +} + + +static const per_sequence_t T_measResultBestNeighCell_v1310_sequence[] = { + { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_SINR_Range_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultBestNeighCell_v1310(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_lte_rrc_T_measResultBestNeighCell_v1310, T_measResultBestNeighCell_v1310_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultServFreq_r10_eag_2_sequence[] = { + { &hf_lte_rrc_measResultSCell_v1310_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultSCell_v1310_01 }, + { &hf_lte_rrc_measResultBestNeighCell_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultBestNeighCell_v1310 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultServFreq_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResultServFreq_r10_eag_2_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultServFreq_r10_sequence[] = { + { &hf_lte_rrc_servFreqId_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r10 }, + { &hf_lte_rrc_measResultSCell_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultSCell_r10 }, + { &hf_lte_rrc_measResultBestNeighCell_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultBestNeighCell_r10 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreq_r10_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreq_r10_eag_2 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultServFreq_r10(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_lte_rrc_MeasResultServFreq_r10, MeasResultServFreq_r10_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultServFreqList_r10_sequence_of[1] = { + { &hf_lte_rrc_MeasResultServFreqList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreq_r10 }, +}; + +static int +dissect_lte_rrc_MeasResultServFreqList_r10(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_lte_rrc_MeasResultServFreqList_r10, MeasResultServFreqList_r10_sequence_of, + 1, maxServCell_r10, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResults_eag_2_sequence[] = { + { &hf_lte_rrc_locationInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LocationInfo_r10 }, + { &hf_lte_rrc_measResultServFreqList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqList_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResults_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_2_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultCSI_RS_r12_sequence[] = { + { &hf_lte_rrc_measCSI_RS_Id_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasCSI_RS_Id_r12 }, + { &hf_lte_rrc_csi_RSRP_Result_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSI_RSRP_Range_r12 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultCSI_RS_r12(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_lte_rrc_MeasResultCSI_RS_r12, MeasResultCSI_RS_r12_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultCSI_RS_List_r12_sequence_of[1] = { + { &hf_lte_rrc_MeasResultCSI_RS_List_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCSI_RS_r12 }, +}; + +static int +dissect_lte_rrc_MeasResultCSI_RS_List_r12(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_lte_rrc_MeasResultCSI_RS_List_r12, MeasResultCSI_RS_List_r12_sequence_of, + 1, maxCellReport, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResults_eag_3_sequence[] = { + { &hf_lte_rrc_measId_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasId_v1250 }, + { &hf_lte_rrc_measResultPCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, + { &hf_lte_rrc_measResultCSI_RS_List_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultCSI_RS_List_r12 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResults_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_3_sequence); + + return offset; +} + + +static const per_sequence_t T_measResultSCell_r13_sequence[] = { + { &hf_lte_rrc_rsrpResultSCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResultSCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range_r13 }, + { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_Range_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultSCell_r13(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_lte_rrc_T_measResultSCell_r13, T_measResultSCell_r13_sequence); + + return offset; +} + + +static const per_sequence_t T_measResultBestNeighCell_r13_sequence[] = { + { &hf_lte_rrc_physCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_rsrpResultNCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResultNCell_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range_r13 }, + { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RS_SINR_Range_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultBestNeighCell_r13(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_lte_rrc_T_measResultBestNeighCell_r13, T_measResultBestNeighCell_r13_sequence); + + return offset; +} + + +static const per_sequence_t T_measResultBestNeighCell_v1360_sequence[] = { + { &hf_lte_rrc_rsrpResultNCell_v1360, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range_v1360 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultBestNeighCell_v1360(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_lte_rrc_T_measResultBestNeighCell_v1360, T_measResultBestNeighCell_v1360_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultServFreq_r13_eag_1_sequence[] = { + { &hf_lte_rrc_measResultBestNeighCell_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultBestNeighCell_v1360 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultServFreq_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResultServFreq_r13_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultServFreq_r13_sequence[] = { + { &hf_lte_rrc_servFreqId_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r13 }, + { &hf_lte_rrc_measResultSCell_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultSCell_r13 }, + { &hf_lte_rrc_measResultBestNeighCell_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultBestNeighCell_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreq_r13_eag_1 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultServFreq_r13(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_lte_rrc_MeasResultServFreq_r13, MeasResultServFreq_r13_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultServFreqListExt_r13_sequence_of[1] = { + { &hf_lte_rrc_MeasResultServFreqListExt_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultServFreq_r13 }, +}; + +static int +dissect_lte_rrc_MeasResultServFreqListExt_r13(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_lte_rrc_MeasResultServFreqListExt_r13, MeasResultServFreqListExt_r13_sequence_of, + 1, maxServCell_r13, FALSE); + + return offset; +} + + +static const per_sequence_t T_measResultPCell_v1310_sequence[] = { + { &hf_lte_rrc_rs_sinr_Result_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RS_SINR_Range_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultPCell_v1310(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_lte_rrc_T_measResultPCell_v1310, T_measResultPCell_v1310_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_qci_Id_r13_vals[] = { + { 0, "qci1" }, + { 1, "qci2" }, + { 2, "qci3" }, + { 3, "qci4" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_qci_Id_r13(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t UL_PDCP_DelayResult_r13_sequence[] = { + { &hf_lte_rrc_qci_Id_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_qci_Id_r13 }, + { &hf_lte_rrc_excessDelay_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UL_PDCP_DelayResult_r13(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_lte_rrc_UL_PDCP_DelayResult_r13, UL_PDCP_DelayResult_r13_sequence); + + return offset; +} + + +static const per_sequence_t UL_PDCP_DelayResultList_r13_sequence_of[1] = { + { &hf_lte_rrc_UL_PDCP_DelayResultList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_PDCP_DelayResult_r13 }, +}; + +static int +dissect_lte_rrc_UL_PDCP_DelayResultList_r13(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_lte_rrc_UL_PDCP_DelayResultList_r13, UL_PDCP_DelayResultList_r13_sequence_of, + 1, maxQCI_r13, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResults_eag_4_sequence[] = { + { &hf_lte_rrc_measResultForRSSI_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultForRSSI_r13 }, + { &hf_lte_rrc_measResultServFreqListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqListExt_r13 }, + { &hf_lte_rrc_measResultSSTD_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultSSTD_r13 }, + { &hf_lte_rrc_measResultPCell_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultPCell_v1310 }, + { &hf_lte_rrc_ul_PDCP_DelayResultList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UL_PDCP_DelayResultList_r13 }, + { &hf_lte_rrc_measResultListWLAN_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListWLAN_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResults_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_4_sequence); + + return offset; +} + + +static const per_sequence_t MeasResults_eag_5_sequence[] = { + { &hf_lte_rrc_measResultPCell_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range_v1360 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResults_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_5_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultCBR_r14_sequence[] = { + { &hf_lte_rrc_poolIdentity_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_TxPoolReportIdentity_r14 }, + { &hf_lte_rrc_cbr_PSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_CBR_r14 }, + { &hf_lte_rrc_cbr_PSCCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CBR_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultCBR_r14(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_lte_rrc_MeasResultCBR_r14, MeasResultCBR_r14_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultListCBR_r14_sequence_of[1] = { + { &hf_lte_rrc_MeasResultListCBR_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCBR_r14 }, +}; + +static int +dissect_lte_rrc_MeasResultListCBR_r14(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_lte_rrc_MeasResultListCBR_r14, MeasResultListCBR_r14_sequence_of, + 1, maxCBR_Report_r14, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResultListWLAN_r14_sequence_of[1] = { + { &hf_lte_rrc_MeasResultListWLAN_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultWLAN_r13 }, +}; + +static int +dissect_lte_rrc_MeasResultListWLAN_r14(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_lte_rrc_MeasResultListWLAN_r14, MeasResultListWLAN_r14_sequence_of, + 1, maxWLAN_Id_Report_r14, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResults_eag_6_sequence[] = { + { &hf_lte_rrc_measResultListCBR_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListCBR_r14 }, + { &hf_lte_rrc_measResultListWLAN_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListWLAN_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResults_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_6_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_M30720_30719(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -30720, 30719U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResultCellSFTD_r15_sequence[] = { + { &hf_lte_rrc_physCellId_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellIdNR_r15 }, + { &hf_lte_rrc_sfn_OffsetResult_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_1023 }, + { &hf_lte_rrc_frameBoundaryOffsetResult_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M30720_30719 }, + { &hf_lte_rrc_rsrpResult_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_RangeNR_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultCellSFTD_r15(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_lte_rrc_MeasResultCellSFTD_r15, MeasResultCellSFTD_r15_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultCellListSFTD_r15_sequence_of[1] = { + { &hf_lte_rrc_MeasResultCellListSFTD_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultCellSFTD_r15 }, +}; + +static int +dissect_lte_rrc_MeasResultCellListSFTD_r15(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_lte_rrc_MeasResultCellListSFTD_r15, MeasResultCellListSFTD_r15_sequence_of, + 1, maxCellSFTD, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResults_eag_7_sequence[] = { + { &hf_lte_rrc_measResultServFreqListNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqListNR_r15 }, + { &hf_lte_rrc_measResultCellListSFTD_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultCellListSFTD_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResults_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_7_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_T_bt_Addr_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *bt_Addr_tvb = NULL; + + offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, + 48, 48, FALSE, &bt_Addr_tvb, NULL); + + actx->created_item = proto_tree_add_item(tree, hf_index, bt_Addr_tvb, 0, 6, ENC_NA); + + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_M128_127(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -128, 127U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t LogMeasResultBT_r15_sequence[] = { + { &hf_lte_rrc_bt_Addr_r15 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_bt_Addr_r15 }, + { &hf_lte_rrc_rssi_BT_r15 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M128_127 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogMeasResultBT_r15(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_lte_rrc_LogMeasResultBT_r15, LogMeasResultBT_r15_sequence); + + return offset; +} + + +static const per_sequence_t LogMeasResultListBT_r15_sequence_of[1] = { + { &hf_lte_rrc_LogMeasResultListBT_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasResultBT_r15 }, +}; + +static int +dissect_lte_rrc_LogMeasResultListBT_r15(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_lte_rrc_LogMeasResultListBT_r15, LogMeasResultListBT_r15_sequence_of, + 1, maxBT_IdReport_r15, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_16777215(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 16777215U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_rttUnits_r15_vals[] = { + { 0, "microseconds" }, + { 1, "hundredsofnanoseconds" }, + { 2, "tensofnanoseconds" }, + { 3, "nanoseconds" }, + { 4, "tenthsofnanoseconds" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rttUnits_r15(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, + 5, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t WLAN_RTT_r15_sequence[] = { + { &hf_lte_rrc_rttValue_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_16777215 }, + { &hf_lte_rrc_rttUnits_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rttUnits_r15 }, + { &hf_lte_rrc_rttAccuracy_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_255 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_WLAN_RTT_r15(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_lte_rrc_WLAN_RTT_r15, WLAN_RTT_r15_sequence); + + return offset; +} + + +static const per_sequence_t LogMeasResultWLAN_r15_sequence[] = { + { &hf_lte_rrc_wlan_Identifiers_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Identifiers_r12 }, + { &hf_lte_rrc_rssiWLAN_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_RSSI_Range_r13 }, + { &hf_lte_rrc_rtt_WLAN_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_RTT_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogMeasResultWLAN_r15(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_lte_rrc_LogMeasResultWLAN_r15, LogMeasResultWLAN_r15_sequence); + + return offset; +} + + +static const per_sequence_t LogMeasResultListWLAN_r15_sequence_of[1] = { + { &hf_lte_rrc_LogMeasResultListWLAN_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasResultWLAN_r15 }, +}; + +static int +dissect_lte_rrc_LogMeasResultListWLAN_r15(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_lte_rrc_LogMeasResultListWLAN_r15, LogMeasResultListWLAN_r15_sequence_of, + 1, maxWLAN_Id_Report_r14, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_1_2000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 2000U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SensingResult_r15_sequence[] = { + { &hf_lte_rrc_resourceIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_2000 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SensingResult_r15(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_lte_rrc_SensingResult_r15, SensingResult_r15_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_0_400_OF_SensingResult_r15_sequence_of[1] = { + { &hf_lte_rrc_sensingResult_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SensingResult_r15 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_0_400_OF_SensingResult_r15(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_lte_rrc_SEQUENCE_SIZE_0_400_OF_SensingResult_r15, SEQUENCE_SIZE_0_400_OF_SensingResult_r15_sequence_of, + 0, 400, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResultSensing_r15_sequence[] = { + { &hf_lte_rrc_sl_SubframeRef_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10239 }, + { &hf_lte_rrc_sensingResult_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_0_400_OF_SensingResult_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultSensing_r15(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_lte_rrc_MeasResultSensing_r15, MeasResultSensing_r15_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_M400_8880(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -400, 8880U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResults_eag_8_sequence[] = { + { &hf_lte_rrc_logMeasResultListBT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogMeasResultListBT_r15 }, + { &hf_lte_rrc_logMeasResultListWLAN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogMeasResultListWLAN_r15 }, + { &hf_lte_rrc_measResultSensing_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultSensing_r15 }, + { &hf_lte_rrc_heightUE_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M400_8880 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResults_eag_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MeasResults_eag_8_sequence); + + return offset; +} + + +static const per_sequence_t MeasResults_sequence[] = { + { &hf_lte_rrc_measId , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasId }, + { &hf_lte_rrc_measResultPCell, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultPCell }, + { &hf_lte_rrc_measResultNeighCells, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultNeighCells }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_7 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults_eag_8 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResults(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_lte_rrc_MeasResults, MeasResults_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_23_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_23(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_lte_rrc_T_nonCriticalExtension_23, T_nonCriticalExtension_23_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementReport_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_59, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_23 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasurementReport_v8a0_IEs(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_lte_rrc_MeasurementReport_v8a0_IEs, MeasurementReport_v8a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t MeasurementReport_r8_IEs_sequence[] = { + { &hf_lte_rrc_measResults , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResults }, + { &hf_lte_rrc_nonCriticalExtension_58, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasurementReport_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasurementReport_r8_IEs(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_lte_rrc_MeasurementReport_r8_IEs, MeasurementReport_r8_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_25_vals[] = { + { 0, "measurementReport-r8" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_25_choice[] = { + { 0, &hf_lte_rrc_measurementReport_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MeasurementReport_r8_IEs }, + { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_25(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_lte_rrc_T_c1_25, T_c1_25_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_19_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_19(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_lte_rrc_T_criticalExtensionsFuture_19, T_criticalExtensionsFuture_19_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_19_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_19_choice[] = { + { 0, &hf_lte_rrc_c1_25 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_25 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_19, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_19 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_19(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_lte_rrc_T_criticalExtensions_19, T_criticalExtensions_19_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MeasurementReport_sequence[] = { + { &hf_lte_rrc_criticalExtensions_19, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_19 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasurementReport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MeasurementReport"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_MeasurementReport, MeasurementReport_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_rlf_InfoAvailable_r10_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rlf_InfoAvailable_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailable_r10_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailable_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_connEstFailInfoAvailable_r11_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_connEstFailInfoAvailable_r11(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableMBSFN_r12_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableMBSFN_r12(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_gapIndication_r14_vals[] = { + { 0, "gap" }, + { 1, "ncsg" }, + { 2, "nogap-noNcsg" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_gapIndication_r14(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PerCC_GapIndication_r14_sequence[] = { + { &hf_lte_rrc_servCellId_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ServCellIndex_r13 }, + { &hf_lte_rrc_gapIndication_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_gapIndication_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PerCC_GapIndication_r14(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_lte_rrc_PerCC_GapIndication_r14, PerCC_GapIndication_r14_sequence); + + return offset; +} + + +static const per_sequence_t PerCC_GapIndicationList_r14_sequence_of[1] = { + { &hf_lte_rrc_PerCC_GapIndicationList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PerCC_GapIndication_r14 }, +}; + +static int +dissect_lte_rrc_PerCC_GapIndicationList_r14(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_lte_rrc_PerCC_GapIndicationList_r14, PerCC_GapIndicationList_r14_sequence_of, + 1, maxServCell_r13, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_T_scg_ConfigResponseNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *rrc_reconfiguration_complete_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &rrc_reconfiguration_complete_tvb); + + + if (rrc_reconfiguration_complete_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_scg_ConfigResponseNR_r15); + dissect_nr_rrc_RRCReconfigurationComplete_PDU(rrc_reconfiguration_complete_tvb, actx->pinfo, subtree, NULL); + } + + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableBT_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableBT_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableWLAN_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableWLAN_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_flightPathInfoAvailable_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_flightPathInfoAvailable_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_32_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_32(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_lte_rrc_T_nonCriticalExtension_32, T_nonCriticalExtension_32_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfigurationComplete_v1530_IEs_sequence[] = { + { &hf_lte_rrc_logMeasAvailableBT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableBT_r15 }, + { &hf_lte_rrc_logMeasAvailableWLAN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableWLAN_r15 }, + { &hf_lte_rrc_flightPathInfoAvailable_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_flightPathInfoAvailable_r15 }, + { &hf_lte_rrc_nonCriticalExtension_99, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_32 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1530_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v1530_IEs, RRCConnectionReconfigurationComplete_v1530_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfigurationComplete_v1510_IEs_sequence[] = { + { &hf_lte_rrc_scg_ConfigResponseNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scg_ConfigResponseNR_r15 }, + { &hf_lte_rrc_nonCriticalExtension_98, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1530_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1510_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v1510_IEs, RRCConnectionReconfigurationComplete_v1510_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfigurationComplete_v1430_IEs_sequence[] = { + { &hf_lte_rrc_perCC_GapIndicationList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PerCC_GapIndicationList_r14 }, + { &hf_lte_rrc_numFreqEffective_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_12 }, + { &hf_lte_rrc_numFreqEffectiveReduced_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_12 }, + { &hf_lte_rrc_nonCriticalExtension_97, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1510_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1430_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v1430_IEs, RRCConnectionReconfigurationComplete_v1430_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfigurationComplete_v1250_IEs_sequence[] = { + { &hf_lte_rrc_logMeasAvailableMBSFN_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableMBSFN_r12 }, + { &hf_lte_rrc_nonCriticalExtension_96, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1430_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1250_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v1250_IEs, RRCConnectionReconfigurationComplete_v1250_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfigurationComplete_v1130_IEs_sequence[] = { + { &hf_lte_rrc_connEstFailInfoAvailable_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connEstFailInfoAvailable_r11 }, + { &hf_lte_rrc_nonCriticalExtension_95, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1250_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1130_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v1130_IEs, RRCConnectionReconfigurationComplete_v1130_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfigurationComplete_v1020_IEs_sequence[] = { + { &hf_lte_rrc_rlf_InfoAvailable_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlf_InfoAvailable_r10 }, + { &hf_lte_rrc_logMeasAvailable_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailable_r10 }, + { &hf_lte_rrc_nonCriticalExtension_94, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1130_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1020_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v1020_IEs, RRCConnectionReconfigurationComplete_v1020_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfigurationComplete_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_93, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v1020_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfigurationComplete_v8a0_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_v8a0_IEs, RRCConnectionReconfigurationComplete_v8a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfigurationComplete_r8_IEs_sequence[] = { + { &hf_lte_rrc_nonCriticalExtension_92, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfigurationComplete_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfigurationComplete_r8_IEs(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_lte_rrc_RRCConnectionReconfigurationComplete_r8_IEs, RRCConnectionReconfigurationComplete_r8_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_25_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_25(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_lte_rrc_T_criticalExtensionsFuture_25, T_criticalExtensionsFuture_25_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_25_vals[] = { + { 0, "rrcConnectionReconfigurationComplete-r8" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_25_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionReconfigurationComplete_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReconfigurationComplete_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_25, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_25 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_25(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_lte_rrc_T_criticalExtensions_25, T_criticalExtensions_25_choice, + NULL); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfigurationComplete_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_25, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_25 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfigurationComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReconfigurationComplete"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RRCConnectionReconfigurationComplete, RRCConnectionReconfigurationComplete_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_rlf_InfoAvailable_r9_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rlf_InfoAvailable_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailable_r10_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailable_r10_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_connEstFailInfoAvailable_r11_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_connEstFailInfoAvailable_r11_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableMBSFN_r12_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableMBSFN_r12_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableBT_r15_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableBT_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableWLAN_r15_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableWLAN_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_flightPathInfoAvailable_r15_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_flightPathInfoAvailable_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_34_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_34(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_lte_rrc_T_nonCriticalExtension_34, T_nonCriticalExtension_34_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReestablishmentComplete_v1530_IEs_sequence[] = { + { &hf_lte_rrc_logMeasAvailableBT_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableBT_r15_01 }, + { &hf_lte_rrc_logMeasAvailableWLAN_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableWLAN_r15_01 }, + { &hf_lte_rrc_flightPathInfoAvailable_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_flightPathInfoAvailable_r15_01 }, + { &hf_lte_rrc_nonCriticalExtension_108, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_34 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1530_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v1530_IEs, RRCConnectionReestablishmentComplete_v1530_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReestablishmentComplete_v1250_IEs_sequence[] = { + { &hf_lte_rrc_logMeasAvailableMBSFN_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableMBSFN_r12_01 }, + { &hf_lte_rrc_nonCriticalExtension_107, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1530_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1250_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v1250_IEs, RRCConnectionReestablishmentComplete_v1250_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReestablishmentComplete_v1130_IEs_sequence[] = { + { &hf_lte_rrc_connEstFailInfoAvailable_r11_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connEstFailInfoAvailable_r11_01 }, + { &hf_lte_rrc_nonCriticalExtension_106, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1250_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1130_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v1130_IEs, RRCConnectionReestablishmentComplete_v1130_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReestablishmentComplete_v1020_IEs_sequence[] = { + { &hf_lte_rrc_logMeasAvailable_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailable_r10_01 }, + { &hf_lte_rrc_nonCriticalExtension_105, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1130_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1020_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v1020_IEs, RRCConnectionReestablishmentComplete_v1020_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReestablishmentComplete_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_104, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v1020_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReestablishmentComplete_v8a0_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v8a0_IEs, RRCConnectionReestablishmentComplete_v8a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReestablishmentComplete_v920_IEs_sequence[] = { + { &hf_lte_rrc_rlf_InfoAvailable_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlf_InfoAvailable_r9 }, + { &hf_lte_rrc_nonCriticalExtension_103, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReestablishmentComplete_v920_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_v920_IEs, RRCConnectionReestablishmentComplete_v920_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReestablishmentComplete_r8_IEs_sequence[] = { + { &hf_lte_rrc_nonCriticalExtension_102, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_v920_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReestablishmentComplete_r8_IEs(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_lte_rrc_RRCConnectionReestablishmentComplete_r8_IEs, RRCConnectionReestablishmentComplete_r8_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_27_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_27(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_lte_rrc_T_criticalExtensionsFuture_27, T_criticalExtensionsFuture_27_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_27_vals[] = { + { 0, "rrcConnectionReestablishmentComplete-r8" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_27_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionReestablishmentComplete_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentComplete_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_27, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_27 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_27(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_lte_rrc_T_criticalExtensions_27, T_criticalExtensions_27_choice, + NULL); + + return offset; +} + + +static const per_sequence_t RRCConnectionReestablishmentComplete_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_27, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_27 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReestablishmentComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionReestablishmentComplete"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RRCConnectionReestablishmentComplete, RRCConnectionReestablishmentComplete_sequence); + + return offset; +} + + +static const per_sequence_t RegisteredMME_sequence[] = { + { &hf_lte_rrc_plmn_Identity, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_Identity }, + { &hf_lte_rrc_mmegi , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { &hf_lte_rrc_mmec , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MMEC }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RegisteredMME(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_lte_rrc_RegisteredMME, RegisteredMME_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_gummei_Type_r10_vals[] = { + { 0, "native" }, + { 1, "mapped" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_gummei_Type_r10(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_rlf_InfoAvailable_r10_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rlf_InfoAvailable_r10_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailable_r10_02_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailable_r10_02(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_rn_SubframeConfigReq_r10_vals[] = { + { 0, "required" }, + { 1, "notRequired" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rn_SubframeConfigReq_r10(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_connEstFailInfoAvailable_r11_02_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_connEstFailInfoAvailable_r11_02(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_mobilityState_r12_vals[] = { + { 0, "normal" }, + { 1, "medium" }, + { 2, "high" }, + { 3, "spare" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mobilityState_r12(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 lte_rrc_T_mobilityHistoryAvail_r12_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mobilityHistoryAvail_r12(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableMBSFN_r12_02_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableMBSFN_r12_02(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_ce_ModeB_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ce_ModeB_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_attachWithoutPDN_Connectivity_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_attachWithoutPDN_Connectivity_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_up_CIoT_EPS_Optimisation_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_up_CIoT_EPS_Optimisation_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_cp_CIoT_EPS_Optimisation_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_cp_CIoT_EPS_Optimisation_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_ue_CE_NeedULGaps_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ue_CE_NeedULGaps_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableBT_r15_03_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableBT_r15_03(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableWLAN_r15_03_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableWLAN_r15_03(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_idleMeasAvailable_r15_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_idleMeasAvailable_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_flightPathInfoAvailable_r15_03_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_flightPathInfoAvailable_r15_03(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_connectTo5GC_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_connectTo5GC_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_AMF_Identifier_r15(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, + 24, 24, FALSE, NULL, NULL); + + return offset; +} + + +static const per_sequence_t RegisteredAMF_r15_sequence[] = { + { &hf_lte_rrc_plmn_Identity_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_Identity }, + { &hf_lte_rrc_amf_Identifier_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AMF_Identifier_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RegisteredAMF_r15(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_lte_rrc_RegisteredAMF_r15, RegisteredAMF_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_S_NSSAI_r15_vals[] = { + { 0, "sst" }, + { 1, "sst-SD" }, + { 0, NULL } +}; + +static const per_choice_t S_NSSAI_r15_choice[] = { + { 0, &hf_lte_rrc_sst , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_8 }, + { 1, &hf_lte_rrc_sst_SD , ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_32 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_S_NSSAI_r15(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_lte_rrc_S_NSSAI_r15, S_NSSAI_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxNrofS_NSSAI_r15_OF_S_NSSAI_r15_sequence_of[1] = { + { &hf_lte_rrc_s_NSSAI_list_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_S_NSSAI_r15 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_r15_OF_S_NSSAI_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_r15_OF_S_NSSAI_r15, SEQUENCE_SIZE_1_maxNrofS_NSSAI_r15_OF_S_NSSAI_r15_sequence_of, + 1, maxNrofS_NSSAI_r15, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_ng_5G_S_TMSI_Bits_r15_vals[] = { + { 0, "ng-5G-S-TMSI-r15" }, + { 1, "ng-5G-S-TMSI-Part2-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_ng_5G_S_TMSI_Bits_r15_choice[] = { + { 0, &hf_lte_rrc_ng_5G_S_TMSI_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NG_5G_S_TMSI_r15 }, + { 1, &hf_lte_rrc_ng_5G_S_TMSI_Part2_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_8 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_ng_5G_S_TMSI_Bits_r15(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_lte_rrc_T_ng_5G_S_TMSI_Bits_r15, T_ng_5G_S_TMSI_Bits_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_43_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_43(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_lte_rrc_T_nonCriticalExtension_43, T_nonCriticalExtension_43_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionSetupComplete_v1530_IEs_sequence[] = { + { &hf_lte_rrc_logMeasAvailableBT_r15_03, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableBT_r15_03 }, + { &hf_lte_rrc_logMeasAvailableWLAN_r15_03, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableWLAN_r15_03 }, + { &hf_lte_rrc_idleMeasAvailable_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_idleMeasAvailable_r15_01 }, + { &hf_lte_rrc_flightPathInfoAvailable_r15_03, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_flightPathInfoAvailable_r15_03 }, + { &hf_lte_rrc_connectTo5GC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connectTo5GC_r15 }, + { &hf_lte_rrc_registeredAMF_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RegisteredAMF_r15 }, + { &hf_lte_rrc_s_NSSAI_list_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_r15_OF_S_NSSAI_r15 }, + { &hf_lte_rrc_ng_5G_S_TMSI_Bits_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ng_5G_S_TMSI_Bits_r15 }, + { &hf_lte_rrc_nonCriticalExtension_138, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_43 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionSetupComplete_v1530_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1530_IEs, RRCConnectionSetupComplete_v1530_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionSetupComplete_v1430_IEs_sequence[] = { + { &hf_lte_rrc_dcn_ID_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, + { &hf_lte_rrc_nonCriticalExtension_137, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1530_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionSetupComplete_v1430_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1430_IEs, RRCConnectionSetupComplete_v1430_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionSetupComplete_v1330_IEs_sequence[] = { + { &hf_lte_rrc_ue_CE_NeedULGaps_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CE_NeedULGaps_r13 }, + { &hf_lte_rrc_nonCriticalExtension_136, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1430_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionSetupComplete_v1330_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1330_IEs, RRCConnectionSetupComplete_v1330_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionSetupComplete_v1320_IEs_sequence[] = { + { &hf_lte_rrc_ce_ModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ModeB_r13 }, + { &hf_lte_rrc_s_TMSI_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_S_TMSI }, + { &hf_lte_rrc_attachWithoutPDN_Connectivity_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_attachWithoutPDN_Connectivity_r13 }, + { &hf_lte_rrc_up_CIoT_EPS_Optimisation_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_up_CIoT_EPS_Optimisation_r13 }, + { &hf_lte_rrc_cp_CIoT_EPS_Optimisation_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cp_CIoT_EPS_Optimisation_r13 }, + { &hf_lte_rrc_nonCriticalExtension_135, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1330_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionSetupComplete_v1320_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1320_IEs, RRCConnectionSetupComplete_v1320_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionSetupComplete_v1250_IEs_sequence[] = { + { &hf_lte_rrc_mobilityState_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityState_r12 }, + { &hf_lte_rrc_mobilityHistoryAvail_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityHistoryAvail_r12 }, + { &hf_lte_rrc_logMeasAvailableMBSFN_r12_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableMBSFN_r12_02 }, + { &hf_lte_rrc_nonCriticalExtension_134, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1320_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionSetupComplete_v1250_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1250_IEs, RRCConnectionSetupComplete_v1250_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionSetupComplete_v1130_IEs_sequence[] = { + { &hf_lte_rrc_connEstFailInfoAvailable_r11_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connEstFailInfoAvailable_r11_02 }, + { &hf_lte_rrc_nonCriticalExtension_133, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1250_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionSetupComplete_v1130_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1130_IEs, RRCConnectionSetupComplete_v1130_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionSetupComplete_v1020_IEs_sequence[] = { + { &hf_lte_rrc_gummei_Type_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gummei_Type_r10 }, + { &hf_lte_rrc_rlf_InfoAvailable_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlf_InfoAvailable_r10_01 }, + { &hf_lte_rrc_logMeasAvailable_r10_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailable_r10_02 }, + { &hf_lte_rrc_rn_SubframeConfigReq_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rn_SubframeConfigReq_r10 }, + { &hf_lte_rrc_nonCriticalExtension_132, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1130_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionSetupComplete_v1020_IEs(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_lte_rrc_RRCConnectionSetupComplete_v1020_IEs, RRCConnectionSetupComplete_v1020_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionSetupComplete_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_131, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v1020_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionSetupComplete_v8a0_IEs(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_lte_rrc_RRCConnectionSetupComplete_v8a0_IEs, RRCConnectionSetupComplete_v8a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionSetupComplete_r8_IEs_sequence[] = { + { &hf_lte_rrc_selectedPLMN_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { &hf_lte_rrc_registeredMME, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RegisteredMME }, + { &hf_lte_rrc_dedicatedInfoNAS, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoNAS }, + { &hf_lte_rrc_nonCriticalExtension_130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionSetupComplete_r8_IEs(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_lte_rrc_RRCConnectionSetupComplete_r8_IEs, RRCConnectionSetupComplete_r8_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_36_vals[] = { + { 0, "rrcConnectionSetupComplete-r8" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_36_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionSetupComplete_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionSetupComplete_r8_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_36(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_lte_rrc_T_c1_36, T_c1_36_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_36_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_36(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_lte_rrc_T_criticalExtensionsFuture_36, T_criticalExtensionsFuture_36_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_37_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_37_choice[] = { + { 0, &hf_lte_rrc_c1_36 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_36 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_36, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_36 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_37(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_lte_rrc_T_criticalExtensions_37, T_criticalExtensions_37_choice, + NULL); + + return offset; +} + + +static const per_sequence_t RRCConnectionSetupComplete_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_37, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_37 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionSetupComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionSetupComplete"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RRCConnectionSetupComplete, RRCConnectionSetupComplete_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_52_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_52(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_lte_rrc_T_nonCriticalExtension_52, T_nonCriticalExtension_52_sequence); + + return offset; +} + + +static const per_sequence_t SecurityModeComplete_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_151, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_52 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SecurityModeComplete_v8a0_IEs(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_lte_rrc_SecurityModeComplete_v8a0_IEs, SecurityModeComplete_v8a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SecurityModeComplete_r8_IEs_sequence[] = { + { &hf_lte_rrc_nonCriticalExtension_150, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityModeComplete_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SecurityModeComplete_r8_IEs(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_lte_rrc_SecurityModeComplete_r8_IEs, SecurityModeComplete_r8_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_42_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_42(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_lte_rrc_T_criticalExtensionsFuture_42, T_criticalExtensionsFuture_42_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_43_vals[] = { + { 0, "securityModeComplete-r8" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_43_choice[] = { + { 0, &hf_lte_rrc_securityModeComplete_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeComplete_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_42, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_42 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_43(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_lte_rrc_T_criticalExtensions_43, T_criticalExtensions_43_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SecurityModeComplete_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_43, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_43 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SecurityModeComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecurityModeComplete"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SecurityModeComplete, SecurityModeComplete_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_53_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_53(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_lte_rrc_T_nonCriticalExtension_53, T_nonCriticalExtension_53_sequence); + + return offset; +} + + +static const per_sequence_t SecurityModeFailure_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_153, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_53 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SecurityModeFailure_v8a0_IEs(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_lte_rrc_SecurityModeFailure_v8a0_IEs, SecurityModeFailure_v8a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SecurityModeFailure_r8_IEs_sequence[] = { + { &hf_lte_rrc_nonCriticalExtension_152, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SecurityModeFailure_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SecurityModeFailure_r8_IEs(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_lte_rrc_SecurityModeFailure_r8_IEs, SecurityModeFailure_r8_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_43_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_43(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_lte_rrc_T_criticalExtensionsFuture_43, T_criticalExtensionsFuture_43_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_44_vals[] = { + { 0, "securityModeFailure-r8" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_44_choice[] = { + { 0, &hf_lte_rrc_securityModeFailure_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeFailure_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_43, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_43 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_44(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_lte_rrc_T_criticalExtensions_44, T_criticalExtensions_44_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SecurityModeFailure_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_44, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_44 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SecurityModeFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + mac_lte_info *p_mac_lte_info; + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SecurityModeFailure, SecurityModeFailure_sequence); + + /* Look for UE identifier */ + p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0); + + if (p_mac_lte_info != NULL) { + /* Inform PDCP that the UE failed to execute the securityModeCommand */ + set_pdcp_lte_security_algorithms_failed(p_mac_lte_info->ueid); + } + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SecurityModeFailure"); + + + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 0U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_ue_CategoryDL_v1310_01_vals[] = { + { 0, "m1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ue_CategoryDL_v1310_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_ce_ModeA_r13_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ce_ModeA_r13_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_ce_ModeB_r13_02_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ce_ModeB_r13_02(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t UE_RadioPagingInfo_r12_eag_1_sequence[] = { + { &hf_lte_rrc_ue_CategoryDL_v1310_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryDL_v1310_01 }, + { &hf_lte_rrc_ce_ModeA_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ModeA_r13_01 }, + { &hf_lte_rrc_ce_ModeB_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ModeB_r13_02 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_RadioPagingInfo_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_RadioPagingInfo_r12_eag_1_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_wakeUpSignal_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_wakeUpSignal_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_wakeUpSignal_TDD_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_wakeUpSignal_TDD_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_wakeUpSignalMinGap_eDRX_r15_vals[] = { + { 0, "ms40" }, + { 1, "ms240" }, + { 2, "ms1000" }, + { 3, "ms2000" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_wakeUpSignalMinGap_eDRX_r15(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 lte_rrc_T_wakeUpSignalMinGap_eDRX_TDD_r15_vals[] = { + { 0, "ms40" }, + { 1, "ms240" }, + { 2, "ms1000" }, + { 3, "ms2000" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_wakeUpSignalMinGap_eDRX_TDD_r15(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 per_sequence_t UE_RadioPagingInfo_r12_eag_2_sequence[] = { + { &hf_lte_rrc_wakeUpSignal_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wakeUpSignal_r15 }, + { &hf_lte_rrc_wakeUpSignal_TDD_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wakeUpSignal_TDD_r15 }, + { &hf_lte_rrc_wakeUpSignalMinGap_eDRX_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wakeUpSignalMinGap_eDRX_r15 }, + { &hf_lte_rrc_wakeUpSignalMinGap_eDRX_TDD_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wakeUpSignalMinGap_eDRX_TDD_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_RadioPagingInfo_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_RadioPagingInfo_r12_eag_2_sequence); + + return offset; +} + + +static const per_sequence_t UE_RadioPagingInfo_r12_sequence[] = { + { &hf_lte_rrc_ue_Category_v1250, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_RadioPagingInfo_r12_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_RadioPagingInfo_r12_eag_2 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_RadioPagingInfo_r12(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_lte_rrc_UE_RadioPagingInfo_r12, UE_RadioPagingInfo_r12_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_62_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_62(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_lte_rrc_T_nonCriticalExtension_62, T_nonCriticalExtension_62_sequence); + + return offset; +} + + +static const per_sequence_t UECapabilityInformation_v1250_IEs_sequence[] = { + { &hf_lte_rrc_ue_RadioPagingInfo_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_RadioPagingInfo_r12 }, + { &hf_lte_rrc_nonCriticalExtension_191, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_62 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UECapabilityInformation_v1250_IEs(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_lte_rrc_UECapabilityInformation_v1250_IEs, UECapabilityInformation_v1250_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UECapabilityInformation_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_190, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityInformation_v1250_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UECapabilityInformation_v8a0_IEs(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_lte_rrc_UECapabilityInformation_v8a0_IEs, UECapabilityInformation_v8a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UECapabilityInformation_r8_IEs_sequence[] = { + { &hf_lte_rrc_ue_CapabilityRAT_ContainerList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_CapabilityRAT_ContainerList }, + { &hf_lte_rrc_nonCriticalExtension_189, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityInformation_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UECapabilityInformation_r8_IEs(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_lte_rrc_UECapabilityInformation_r8_IEs, UECapabilityInformation_r8_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_43_vals[] = { + { 0, "ueCapabilityInformation-r8" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_43_choice[] = { + { 0, &hf_lte_rrc_ueCapabilityInformation_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UECapabilityInformation_r8_IEs }, + { 1, &hf_lte_rrc_spare7 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare6 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_43(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_lte_rrc_T_c1_43, T_c1_43_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_48_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_48(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_lte_rrc_T_criticalExtensionsFuture_48, T_criticalExtensionsFuture_48_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_49_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_49_choice[] = { + { 0, &hf_lte_rrc_c1_43 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_43 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_48, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_48 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_49(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_lte_rrc_T_criticalExtensions_49, T_criticalExtensions_49_choice, + NULL); + + return offset; +} + + +static const per_sequence_t UECapabilityInformation_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_49, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_49 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UECapabilityInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UECapabilityInformation"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_UECapabilityInformation, UECapabilityInformation_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_BIT_STRING_SIZE_56(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, + 56, 56, FALSE, NULL, NULL); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_67_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_67(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_lte_rrc_T_nonCriticalExtension_67, T_nonCriticalExtension_67_sequence); + + return offset; +} + + +static const per_sequence_t ULHandoverPreparationTransfer_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_207, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_67 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ULHandoverPreparationTransfer_v8a0_IEs(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_lte_rrc_ULHandoverPreparationTransfer_v8a0_IEs, ULHandoverPreparationTransfer_v8a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t ULHandoverPreparationTransfer_r8_IEs_sequence[] = { + { &hf_lte_rrc_cdma2000_Type, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CDMA2000_Type }, + { &hf_lte_rrc_meid , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_56 }, + { &hf_lte_rrc_dedicatedInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoCDMA2000 }, + { &hf_lte_rrc_nonCriticalExtension_206, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ULHandoverPreparationTransfer_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ULHandoverPreparationTransfer_r8_IEs(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_lte_rrc_ULHandoverPreparationTransfer_r8_IEs, ULHandoverPreparationTransfer_r8_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_46_vals[] = { + { 0, "ulHandoverPreparationTransfer-r8" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_46_choice[] = { + { 0, &hf_lte_rrc_ulHandoverPreparationTransfer_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULHandoverPreparationTransfer_r8_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_46(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_lte_rrc_T_c1_46, T_c1_46_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_51_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_51(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_lte_rrc_T_criticalExtensionsFuture_51, T_criticalExtensionsFuture_51_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_52_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_52_choice[] = { + { 0, &hf_lte_rrc_c1_46 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_46 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_51, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_51 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_52(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_lte_rrc_T_criticalExtensions_52, T_criticalExtensions_52_choice, + NULL); + + return offset; +} + + +static const per_sequence_t ULHandoverPreparationTransfer_sequence[] = { + { &hf_lte_rrc_criticalExtensions_52, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_52 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ULHandoverPreparationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ULHandoverPreparationTransfer"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_ULHandoverPreparationTransfer, ULHandoverPreparationTransfer_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_dedicatedInfoType_01_vals[] = { + { 0, "dedicatedInfoNAS" }, + { 1, "dedicatedInfoCDMA2000-1XRTT" }, + { 2, "dedicatedInfoCDMA2000-HRPD" }, + { 0, NULL } +}; + +static const per_choice_t T_dedicatedInfoType_01_choice[] = { + { 0, &hf_lte_rrc_dedicatedInfoNAS, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoNAS }, + { 1, &hf_lte_rrc_dedicatedInfoCDMA2000_1XRTT, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoCDMA2000 }, + { 2, &hf_lte_rrc_dedicatedInfoCDMA2000_HRPD, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DedicatedInfoCDMA2000 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_dedicatedInfoType_01(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_lte_rrc_T_dedicatedInfoType_01, T_dedicatedInfoType_01_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_68_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_68(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_lte_rrc_T_nonCriticalExtension_68, T_nonCriticalExtension_68_sequence); + + return offset; +} + + +static const per_sequence_t ULInformationTransfer_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_209, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_68 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ULInformationTransfer_v8a0_IEs(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_lte_rrc_ULInformationTransfer_v8a0_IEs, ULInformationTransfer_v8a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t ULInformationTransfer_r8_IEs_sequence[] = { + { &hf_lte_rrc_dedicatedInfoType_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dedicatedInfoType_01 }, + { &hf_lte_rrc_nonCriticalExtension_208, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ULInformationTransfer_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ULInformationTransfer_r8_IEs(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_lte_rrc_ULInformationTransfer_r8_IEs, ULInformationTransfer_r8_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_47_vals[] = { + { 0, "ulInformationTransfer-r8" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_47_choice[] = { + { 0, &hf_lte_rrc_ulInformationTransfer_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULInformationTransfer_r8_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_47(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_lte_rrc_T_c1_47, T_c1_47_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_52_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_52(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_lte_rrc_T_criticalExtensionsFuture_52, T_criticalExtensionsFuture_52_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_53_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_53_choice[] = { + { 0, &hf_lte_rrc_c1_47 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_47 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_52, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_52 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_53(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_lte_rrc_T_criticalExtensions_53, T_criticalExtensions_53_choice, + NULL); + + return offset; +} + + +static const per_sequence_t ULInformationTransfer_sequence[] = { + { &hf_lte_rrc_criticalExtensions_53, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_53 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ULInformationTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ULInformationTransfer"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_ULInformationTransfer, ULInformationTransfer_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_4294967295(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4294967295U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t DRB_CountInfo_sequence[] = { + { &hf_lte_rrc_drb_Identity, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, + { &hf_lte_rrc_count_Uplink, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_4294967295 }, + { &hf_lte_rrc_count_Downlink, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_4294967295 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_DRB_CountInfo(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_lte_rrc_DRB_CountInfo, DRB_CountInfo_sequence); + + return offset; +} + + +static const per_sequence_t DRB_CountInfoList_sequence_of[1] = { + { &hf_lte_rrc_DRB_CountInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_CountInfo }, +}; + +static int +dissect_lte_rrc_DRB_CountInfoList(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_lte_rrc_DRB_CountInfoList, DRB_CountInfoList_sequence_of, + 0, maxDRB, FALSE); + + return offset; +} + + +static const per_sequence_t DRB_CountInfoListExt_r15_sequence_of[1] = { + { &hf_lte_rrc_DRB_CountInfoListExt_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_CountInfo }, +}; + +static int +dissect_lte_rrc_DRB_CountInfoListExt_r15(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_lte_rrc_DRB_CountInfoListExt_r15, DRB_CountInfoListExt_r15_sequence_of, + 1, maxDRBExt_r15, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_09_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_09(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_lte_rrc_T_nonCriticalExtension_09, T_nonCriticalExtension_09_sequence); + + return offset; +} + + +static const per_sequence_t CounterCheckResponse_v1530_IEs_sequence[] = { + { &hf_lte_rrc_drb_CountInfoListExt_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DRB_CountInfoListExt_r15 }, + { &hf_lte_rrc_nonCriticalExtension_26, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_09 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CounterCheckResponse_v1530_IEs(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_lte_rrc_CounterCheckResponse_v1530_IEs, CounterCheckResponse_v1530_IEs_sequence); + + return offset; +} + + +static const per_sequence_t CounterCheckResponse_v8a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_25, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CounterCheckResponse_v1530_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CounterCheckResponse_v8a0_IEs(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_lte_rrc_CounterCheckResponse_v8a0_IEs, CounterCheckResponse_v8a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t CounterCheckResponse_r8_IEs_sequence[] = { + { &hf_lte_rrc_drb_CountInfoList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_CountInfoList }, + { &hf_lte_rrc_nonCriticalExtension_24, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CounterCheckResponse_v8a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CounterCheckResponse_r8_IEs(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_lte_rrc_CounterCheckResponse_r8_IEs, CounterCheckResponse_r8_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_08_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_08(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_lte_rrc_T_criticalExtensionsFuture_08, T_criticalExtensionsFuture_08_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_08_vals[] = { + { 0, "counterCheckResponse-r8" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_08_choice[] = { + { 0, &hf_lte_rrc_counterCheckResponse_r8, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CounterCheckResponse_r8_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_08, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_08 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_08(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_lte_rrc_T_criticalExtensions_08, T_criticalExtensions_08_choice, + NULL); + + return offset; +} + + +static const per_sequence_t CounterCheckResponse_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_08, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_08 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CounterCheckResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "CounterCheckResponse"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_CounterCheckResponse, CounterCheckResponse_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_NumberOfPreamblesSent_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 200U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_rach_Report_r9_sequence[] = { + { &hf_lte_rrc_numberOfPreamblesSent_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NumberOfPreamblesSent_r11 }, + { &hf_lte_rrc_contentionDetected_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_rach_Report_r9(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_lte_rrc_T_rach_Report_r9, T_rach_Report_r9_sequence); + + return offset; +} + + +static const per_sequence_t T_measResultLastServCell_r9_sequence[] = { + { &hf_lte_rrc_rsrpResult_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResult_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultLastServCell_r9(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_lte_rrc_T_measResultLastServCell_r9, T_measResultLastServCell_r9_sequence); + + return offset; +} + + +static const per_sequence_t MeasResult2EUTRA_r9_sequence[] = { + { &hf_lte_rrc_carrierFreq_r9_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &hf_lte_rrc_measResultList_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultListEUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResult2EUTRA_r9(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_lte_rrc_MeasResult2EUTRA_r9, MeasResult2EUTRA_r9_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultList2EUTRA_r9_sequence_of[1] = { + { &hf_lte_rrc_MeasResultList2EUTRA_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResult2EUTRA_r9 }, +}; + +static int +dissect_lte_rrc_MeasResultList2EUTRA_r9(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_lte_rrc_MeasResultList2EUTRA_r9, MeasResultList2EUTRA_r9_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResult2UTRA_r9_sequence[] = { + { &hf_lte_rrc_carrierFreq_r9_03, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, + { &hf_lte_rrc_measResultList_r9_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultListUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResult2UTRA_r9(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_lte_rrc_MeasResult2UTRA_r9, MeasResult2UTRA_r9_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultList2UTRA_r9_sequence_of[1] = { + { &hf_lte_rrc_MeasResultList2UTRA_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResult2UTRA_r9 }, +}; + +static int +dissect_lte_rrc_MeasResultList2UTRA_r9(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_lte_rrc_MeasResultList2UTRA_r9, MeasResultList2UTRA_r9_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResult2CDMA2000_r9_sequence[] = { + { &hf_lte_rrc_carrierFreq_r9_04, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqCDMA2000 }, + { &hf_lte_rrc_measResultList_r9_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultsCDMA2000 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResult2CDMA2000_r9(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_lte_rrc_MeasResult2CDMA2000_r9, MeasResult2CDMA2000_r9_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultList2CDMA2000_r9_sequence_of[1] = { + { &hf_lte_rrc_MeasResultList2CDMA2000_r9_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResult2CDMA2000_r9 }, +}; + +static int +dissect_lte_rrc_MeasResultList2CDMA2000_r9(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_lte_rrc_MeasResultList2CDMA2000_r9, MeasResultList2CDMA2000_r9_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t T_measResultNeighCells_r9_sequence[] = { + { &hf_lte_rrc_measResultListEUTRA_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_r9 }, + { &hf_lte_rrc_measResultListUTRA_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2UTRA_r9 }, + { &hf_lte_rrc_measResultListGERAN_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListGERAN }, + { &hf_lte_rrc_measResultsCDMA2000_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2CDMA2000_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultNeighCells_r9(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_lte_rrc_T_measResultNeighCells_r9, T_measResultNeighCells_r9_sequence); + + return offset; +} + + +static const per_sequence_t T_pci_arfcn_r10_sequence[] = { + { &hf_lte_rrc_physCellId_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_carrierFreq_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_pci_arfcn_r10(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_lte_rrc_T_pci_arfcn_r10, T_pci_arfcn_r10_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_failedPCellId_r10_vals[] = { + { 0, "cellGlobalId-r10" }, + { 1, "pci-arfcn-r10" }, + { 0, NULL } +}; + +static const per_choice_t T_failedPCellId_r10_choice[] = { + { 0, &hf_lte_rrc_cellGlobalId_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CellGlobalIdEUTRA }, + { 1, &hf_lte_rrc_pci_arfcn_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_pci_arfcn_r10 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_failedPCellId_r10(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_lte_rrc_T_failedPCellId_r10, T_failedPCellId_r10_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_connectionFailureType_r10_vals[] = { + { 0, "rlf" }, + { 1, "hof" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_connectionFailureType_r10(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t RLF_Report_r9_eag_1_sequence[] = { + { &hf_lte_rrc_locationInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LocationInfo_r10 }, + { &hf_lte_rrc_failedPCellId_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_failedPCellId_r10 }, + { &hf_lte_rrc_reestablishmentCellId_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellGlobalIdEUTRA }, + { &hf_lte_rrc_timeConnFailure_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_1023 }, + { &hf_lte_rrc_connectionFailureType_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connectionFailureType_r10 }, + { &hf_lte_rrc_previousPCellId_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellGlobalIdEUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RLF_Report_r9_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t T_failedPCellId_v1090_sequence[] = { + { &hf_lte_rrc_carrierFreq_v1090, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_failedPCellId_v1090(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_lte_rrc_T_failedPCellId_v1090, T_failedPCellId_v1090_sequence); + + return offset; +} + + +static const per_sequence_t RLF_Report_r9_eag_2_sequence[] = { + { &hf_lte_rrc_failedPCellId_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_failedPCellId_v1090 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RLF_Report_r9_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_2_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_rlf_Cause_r11_vals[] = { + { 0, "t310-Expiry" }, + { 1, "randomAccessProblem" }, + { 2, "rlc-MaxNumRetx" }, + { 3, "t312-Expiry-r12" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rlf_Cause_r11(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 int +dissect_lte_rrc_TimeSinceFailure_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 172800U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_basicFields_r11_sequence[] = { + { &hf_lte_rrc_c_RNTI_r11 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_rlf_Cause_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rlf_Cause_r11 }, + { &hf_lte_rrc_timeSinceFailure_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TimeSinceFailure_r11 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_basicFields_r11(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_lte_rrc_T_basicFields_r11, T_basicFields_r11_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_physCellId_r11_vals[] = { + { 0, "fdd-r11" }, + { 1, "tdd-r11" }, + { 0, NULL } +}; + +static const per_choice_t T_physCellId_r11_choice[] = { + { 0, &hf_lte_rrc_fdd_r11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_FDD }, + { 1, &hf_lte_rrc_tdd_r11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_TDD }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_physCellId_r11(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_lte_rrc_T_physCellId_r11, T_physCellId_r11_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_previousUTRA_CellId_r11_sequence[] = { + { &hf_lte_rrc_carrierFreq_r11_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, + { &hf_lte_rrc_physCellId_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_physCellId_r11 }, + { &hf_lte_rrc_cellGlobalId_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellGlobalIdUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_previousUTRA_CellId_r11(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_lte_rrc_T_previousUTRA_CellId_r11, T_previousUTRA_CellId_r11_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_physCellId_r11_01_vals[] = { + { 0, "fdd-r11" }, + { 1, "tdd-r11" }, + { 0, NULL } +}; + +static const per_choice_t T_physCellId_r11_01_choice[] = { + { 0, &hf_lte_rrc_fdd_r11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_FDD }, + { 1, &hf_lte_rrc_tdd_r11 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_PhysCellIdUTRA_TDD }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_physCellId_r11_01(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_lte_rrc_T_physCellId_r11_01, T_physCellId_r11_01_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_selectedUTRA_CellId_r11_sequence[] = { + { &hf_lte_rrc_carrierFreq_r11_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueUTRA }, + { &hf_lte_rrc_physCellId_r11_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_physCellId_r11_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_selectedUTRA_CellId_r11(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_lte_rrc_T_selectedUTRA_CellId_r11, T_selectedUTRA_CellId_r11_sequence); + + return offset; +} + + +static const per_sequence_t RLF_Report_r9_eag_3_sequence[] = { + { &hf_lte_rrc_basicFields_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_basicFields_r11 }, + { &hf_lte_rrc_previousUTRA_CellId_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_previousUTRA_CellId_r11 }, + { &hf_lte_rrc_selectedUTRA_CellId_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_selectedUTRA_CellId_r11 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RLF_Report_r9_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_3_sequence); + + return offset; +} + + +static const per_sequence_t T_failedPCellId_v1250_sequence[] = { + { &hf_lte_rrc_tac_FailedPCell_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrackingAreaCode }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_failedPCellId_v1250(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_lte_rrc_T_failedPCellId_v1250, T_failedPCellId_v1250_sequence); + + return offset; +} + + +static const per_sequence_t RSRQ_Type_r12_sequence[] = { + { &hf_lte_rrc_allSymbols_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_wideBand_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RSRQ_Type_r12(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_lte_rrc_RSRQ_Type_r12, RSRQ_Type_r12_sequence); + + return offset; +} + + +static const per_sequence_t MeasResult2EUTRA_v1250_sequence[] = { + { &hf_lte_rrc_rsrq_Type_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Type_r12 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResult2EUTRA_v1250(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_lte_rrc_MeasResult2EUTRA_v1250, MeasResult2EUTRA_v1250_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultList2EUTRA_v1250_sequence_of[1] = { + { &hf_lte_rrc_MeasResultList2EUTRA_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResult2EUTRA_v1250 }, +}; + +static int +dissect_lte_rrc_MeasResultList2EUTRA_v1250(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_lte_rrc_MeasResultList2EUTRA_v1250, MeasResultList2EUTRA_v1250_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t RLF_Report_r9_eag_4_sequence[] = { + { &hf_lte_rrc_failedPCellId_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_failedPCellId_v1250 }, + { &hf_lte_rrc_measResultLastServCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, + { &hf_lte_rrc_lastServCellRSRQ_Type_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Type_r12 }, + { &hf_lte_rrc_measResultListEUTRA_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v1250 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RLF_Report_r9_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_4_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_drb_EstablishedWithQCI_1_r13_vals[] = { + { 0, "qci1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_drb_EstablishedWithQCI_1_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t RLF_Report_r9_eag_5_sequence[] = { + { &hf_lte_rrc_drb_EstablishedWithQCI_1_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_EstablishedWithQCI_1_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RLF_Report_r9_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_5_sequence); + + return offset; +} + + +static const per_sequence_t RLF_Report_r9_eag_6_sequence[] = { + { &hf_lte_rrc_measResultLastServCell_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range_v1360 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RLF_Report_r9_eag_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_6_sequence); + + return offset; +} + + +static const per_sequence_t RLF_Report_r9_eag_7_sequence[] = { + { &hf_lte_rrc_logMeasResultListBT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogMeasResultListBT_r15 }, + { &hf_lte_rrc_logMeasResultListWLAN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogMeasResultListWLAN_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RLF_Report_r9_eag_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RLF_Report_r9_eag_7_sequence); + + return offset; +} + + +static const per_sequence_t RLF_Report_r9_sequence[] = { + { &hf_lte_rrc_measResultLastServCell_r9, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultLastServCell_r9 }, + { &hf_lte_rrc_measResultNeighCells_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultNeighCells_r9 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_5 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_6 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLF_Report_r9_eag_7 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RLF_Report_r9(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_lte_rrc_RLF_Report_r9, RLF_Report_r9_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_T_lateNonCriticalExtension_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UEInformationResponse_v9e0_IEs_PDU); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_7200(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 7200U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_measResultServCell_r10_sequence[] = { + { &hf_lte_rrc_rsrpResult_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResult_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultServCell_r10(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_lte_rrc_T_measResultServCell_r10, T_measResultServCell_r10_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultList2GERAN_r10_sequence_of[1] = { + { &hf_lte_rrc_MeasResultList2GERAN_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultListGERAN }, +}; + +static int +dissect_lte_rrc_MeasResultList2GERAN_r10(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_lte_rrc_MeasResultList2GERAN_r10, MeasResultList2GERAN_r10_sequence_of, + 1, maxCellListGERAN, FALSE); + + return offset; +} + + +static const per_sequence_t T_measResultNeighCells_r10_sequence[] = { + { &hf_lte_rrc_measResultListEUTRA_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_r9 }, + { &hf_lte_rrc_measResultListUTRA_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2UTRA_r9 }, + { &hf_lte_rrc_measResultListGERAN_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2GERAN_r10 }, + { &hf_lte_rrc_measResultListCDMA2000_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2CDMA2000_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultNeighCells_r10(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_lte_rrc_T_measResultNeighCells_r10, T_measResultNeighCells_r10_sequence); + + return offset; +} + + +static const per_sequence_t MeasResult2EUTRA_v9e0_sequence[] = { + { &hf_lte_rrc_carrierFreq_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResult2EUTRA_v9e0(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_lte_rrc_MeasResult2EUTRA_v9e0, MeasResult2EUTRA_v9e0_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultList2EUTRA_v9e0_sequence_of[1] = { + { &hf_lte_rrc_MeasResultList2EUTRA_v9e0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResult2EUTRA_v9e0 }, +}; + +static int +dissect_lte_rrc_MeasResultList2EUTRA_v9e0(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_lte_rrc_MeasResultList2EUTRA_v9e0, MeasResultList2EUTRA_v9e0_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t LogMeasInfo_r10_eag_1_sequence[] = { + { &hf_lte_rrc_measResultListEUTRA_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v9e0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogMeasInfo_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogMeasInfo_r10_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t T_mbsfn_Area_r12_sequence[] = { + { &hf_lte_rrc_mbsfn_AreaId_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_AreaId_r12 }, + { &hf_lte_rrc_carrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_mbsfn_Area_r12(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_lte_rrc_T_mbsfn_Area_r12, T_mbsfn_Area_r12_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_MBSFN_RSRQ_Range_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 31U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_BLER_Range_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 31U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_T_n_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *n_r12_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, + 3, 3, FALSE, &n_r12_tvb, NULL); + + if (n_r12_tvb) { + guint bitvalue = tvb_get_bits8(n_r12_tvb, 0, 3); + actx->created_item = proto_tree_add_uint(tree, hf_index, n_r12_tvb, 0, 1, bitvalue); + } + + + return offset; +} + + + +static int +dissect_lte_rrc_T_m_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *m_r12_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, + 8, 8, FALSE, &m_r12_tvb, NULL); + + if (m_r12_tvb) { + actx->created_item = proto_tree_add_item(tree, hf_index, m_r12_tvb, 0, 1, ENC_BIG_ENDIAN); + } + + + return offset; +} + + +static const per_sequence_t T_blocksReceived_r12_sequence[] = { + { &hf_lte_rrc_n_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n_r12 }, + { &hf_lte_rrc_m_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_m_r12 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_blocksReceived_r12(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_lte_rrc_T_blocksReceived_r12, T_blocksReceived_r12_sequence); + + return offset; +} + + +static const per_sequence_t BLER_Result_r12_sequence[] = { + { &hf_lte_rrc_bler_r12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BLER_Range_r12 }, + { &hf_lte_rrc_blocksReceived_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_blocksReceived_r12 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_BLER_Result_r12(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_lte_rrc_BLER_Result_r12, BLER_Result_r12_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_1_maxPMCH_PerMBSFN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxPMCH_PerMBSFN, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t DataBLER_MCH_Result_r12_sequence[] = { + { &hf_lte_rrc_mch_Index_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxPMCH_PerMBSFN }, + { &hf_lte_rrc_dataBLER_Result_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BLER_Result_r12 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_DataBLER_MCH_Result_r12(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_lte_rrc_DataBLER_MCH_Result_r12, DataBLER_MCH_Result_r12_sequence); + + return offset; +} + + +static const per_sequence_t DataBLER_MCH_ResultList_r12_sequence_of[1] = { + { &hf_lte_rrc_DataBLER_MCH_ResultList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DataBLER_MCH_Result_r12 }, +}; + +static int +dissect_lte_rrc_DataBLER_MCH_ResultList_r12(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_lte_rrc_DataBLER_MCH_ResultList_r12, DataBLER_MCH_ResultList_r12_sequence_of, + 1, maxPMCH_PerMBSFN, FALSE); + + return offset; +} + + +static const per_sequence_t MeasResultMBSFN_r12_sequence[] = { + { &hf_lte_rrc_mbsfn_Area_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mbsfn_Area_r12 }, + { &hf_lte_rrc_rsrpResultMBSFN_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResultMBSFN_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBSFN_RSRQ_Range_r12 }, + { &hf_lte_rrc_signallingBLER_Result_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BLER_Result_r12 }, + { &hf_lte_rrc_dataBLER_MCH_ResultList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DataBLER_MCH_ResultList_r12 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultMBSFN_r12(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_lte_rrc_MeasResultMBSFN_r12, MeasResultMBSFN_r12_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultListMBSFN_r12_sequence_of[1] = { + { &hf_lte_rrc_MeasResultListMBSFN_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultMBSFN_r12 }, +}; + +static int +dissect_lte_rrc_MeasResultListMBSFN_r12(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_lte_rrc_MeasResultListMBSFN_r12, MeasResultListMBSFN_r12_sequence_of, + 1, maxMBSFN_Area, FALSE); + + return offset; +} + + +static const per_sequence_t LogMeasInfo_r10_eag_2_sequence[] = { + { &hf_lte_rrc_measResultListMBSFN_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListMBSFN_r12 }, + { &hf_lte_rrc_measResultServCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, + { &hf_lte_rrc_servCellRSRQ_Type_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Type_r12 }, + { &hf_lte_rrc_measResultListEUTRA_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v1250 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogMeasInfo_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogMeasInfo_r10_eag_2_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_inDeviceCoexDetected_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_inDeviceCoexDetected_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t LogMeasInfo_r10_eag_3_sequence[] = { + { &hf_lte_rrc_inDeviceCoexDetected_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_inDeviceCoexDetected_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogMeasInfo_r10_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogMeasInfo_r10_eag_3_sequence); + + return offset; +} + + +static const per_sequence_t LogMeasInfo_r10_eag_4_sequence[] = { + { &hf_lte_rrc_measResultServCell_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range_v1360 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogMeasInfo_r10_eag_4(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogMeasInfo_r10_eag_4_sequence); + + return offset; +} + + +static const per_sequence_t LogMeasInfo_r10_eag_5_sequence[] = { + { &hf_lte_rrc_logMeasResultListBT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogMeasResultListBT_r15 }, + { &hf_lte_rrc_logMeasResultListWLAN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogMeasResultListWLAN_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogMeasInfo_r10_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogMeasInfo_r10_eag_5_sequence); + + return offset; +} + + +static const per_sequence_t LogMeasInfo_r10_sequence[] = { + { &hf_lte_rrc_locationInfo_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_LocationInfo_r10 }, + { &hf_lte_rrc_relativeTimeStamp_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_7200 }, + { &hf_lte_rrc_servCellIdentity_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdEUTRA }, + { &hf_lte_rrc_measResultServCell_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultServCell_r10 }, + { &hf_lte_rrc_measResultNeighCells_r10, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultNeighCells_r10 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10_eag_3 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10_eag_5 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogMeasInfo_r10(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_lte_rrc_LogMeasInfo_r10, LogMeasInfo_r10_sequence); + + return offset; +} + + +static const per_sequence_t LogMeasInfoList_r10_sequence_of[1] = { + { &hf_lte_rrc_LogMeasInfoList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfo_r10 }, +}; + +static int +dissect_lte_rrc_LogMeasInfoList_r10(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_lte_rrc_LogMeasInfoList_r10, LogMeasInfoList_r10_sequence_of, + 1, maxLogMeasReport_r10, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailable_r10_03_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailable_r10_03(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableBT_r15_04_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableBT_r15_04(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableWLAN_r15_04_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableWLAN_r15_04(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t LogMeasReport_r10_eag_1_sequence[] = { + { &hf_lte_rrc_logMeasAvailableBT_r15_04, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableBT_r15_04 }, + { &hf_lte_rrc_logMeasAvailableWLAN_r15_04, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableWLAN_r15_04 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogMeasReport_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, LogMeasReport_r10_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t LogMeasReport_r10_sequence[] = { + { &hf_lte_rrc_absoluteTimeStamp_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AbsoluteTimeInfo_r10 }, + { &hf_lte_rrc_traceReference_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TraceReference_r10 }, + { &hf_lte_rrc_traceRecordingSessionRef_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_2 }, + { &hf_lte_rrc_tce_Id_r10 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OCTET_STRING_SIZE_1 }, + { &hf_lte_rrc_logMeasInfoList_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasInfoList_r10 }, + { &hf_lte_rrc_logMeasAvailable_r10_03, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailable_r10_03 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_LogMeasReport_r10_eag_1 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LogMeasReport_r10(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_lte_rrc_LogMeasReport_r10, LogMeasReport_r10_sequence); + + return offset; +} + + +static const per_sequence_t T_measResultFailedCell_r11_sequence[] = { + { &hf_lte_rrc_rsrpResult_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResult_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultFailedCell_r11(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_lte_rrc_T_measResultFailedCell_r11, T_measResultFailedCell_r11_sequence); + + return offset; +} + + +static const per_sequence_t T_measResultNeighCells_r11_sequence[] = { + { &hf_lte_rrc_measResultListEUTRA_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_r9 }, + { &hf_lte_rrc_measResultListUTRA_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2UTRA_r9 }, + { &hf_lte_rrc_measResultListGERAN_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListGERAN }, + { &hf_lte_rrc_measResultsCDMA2000_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2CDMA2000_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultNeighCells_r11(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_lte_rrc_T_measResultNeighCells_r11, T_measResultNeighCells_r11_sequence); + + return offset; +} + + +static const per_sequence_t ConnEstFailReport_r11_eag_1_sequence[] = { + { &hf_lte_rrc_measResultFailedCell_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Range_v1250 }, + { &hf_lte_rrc_failedCellRSRQ_Type_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRQ_Type_r12 }, + { &hf_lte_rrc_measResultListEUTRA_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v1250 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ConnEstFailReport_r11_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, ConnEstFailReport_r11_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t ConnEstFailReport_r11_eag_2_sequence[] = { + { &hf_lte_rrc_measResultFailedCell_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_Range_v1360 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ConnEstFailReport_r11_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, ConnEstFailReport_r11_eag_2_sequence); + + return offset; +} + + +static const per_sequence_t ConnEstFailReport_r11_eag_3_sequence[] = { + { &hf_lte_rrc_logMeasResultListBT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogMeasResultListBT_r15 }, + { &hf_lte_rrc_logMeasResultListWLAN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogMeasResultListWLAN_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ConnEstFailReport_r11_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, ConnEstFailReport_r11_eag_3_sequence); + + return offset; +} + + +static const per_sequence_t ConnEstFailReport_r11_sequence[] = { + { &hf_lte_rrc_failedCellId_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CellGlobalIdEUTRA }, + { &hf_lte_rrc_locationInfo_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_LocationInfo_r10 }, + { &hf_lte_rrc_measResultFailedCell_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultFailedCell_r11 }, + { &hf_lte_rrc_measResultNeighCells_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultNeighCells_r11 }, + { &hf_lte_rrc_numberOfPreamblesSent_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NumberOfPreamblesSent_r11 }, + { &hf_lte_rrc_contentionDetected_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_maxTxPowerReached_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_timeSinceFailure_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TimeSinceFailure_r11 }, + { &hf_lte_rrc_measResultListEUTRA_v1130, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v9e0 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_ConnEstFailReport_r11_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_ConnEstFailReport_r11_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_ConnEstFailReport_r11_eag_3 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ConnEstFailReport_r11(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_lte_rrc_ConnEstFailReport_r11, ConnEstFailReport_r11_sequence); + + return offset; +} + + +static const per_sequence_t T_pci_arfcn_r12_sequence[] = { + { &hf_lte_rrc_physCellId_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_carrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_pci_arfcn_r12(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_lte_rrc_T_pci_arfcn_r12, T_pci_arfcn_r12_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_visitedCellId_r12_vals[] = { + { 0, "cellGlobalId-r12" }, + { 1, "pci-arfcn-r12" }, + { 0, NULL } +}; + +static const per_choice_t T_visitedCellId_r12_choice[] = { + { 0, &hf_lte_rrc_cellGlobalId_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CellGlobalIdEUTRA }, + { 1, &hf_lte_rrc_pci_arfcn_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_pci_arfcn_r12 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_visitedCellId_r12(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_lte_rrc_T_visitedCellId_r12, T_visitedCellId_r12_choice, + NULL); + + return offset; +} + + +static const per_sequence_t VisitedCellInfo_r12_sequence[] = { + { &hf_lte_rrc_visitedCellId_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_visitedCellId_r12 }, + { &hf_lte_rrc_timeSpent_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_4095 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_VisitedCellInfo_r12(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_lte_rrc_VisitedCellInfo_r12, VisitedCellInfo_r12_sequence); + + return offset; +} + + +static const per_sequence_t VisitedCellInfoList_r12_sequence_of[1] = { + { &hf_lte_rrc_VisitedCellInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_VisitedCellInfo_r12 }, +}; + +static int +dissect_lte_rrc_VisitedCellInfoList_r12(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_lte_rrc_VisitedCellInfoList_r12, VisitedCellInfoList_r12_sequence_of, + 1, maxCellHistory_r12, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_MobilityHistoryReport_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_VisitedCellInfoList_r12(tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const per_sequence_t T_measResultServingCell_r15_sequence[] = { + { &hf_lte_rrc_rsrpResult_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResult_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultServingCell_r15(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_lte_rrc_T_measResultServingCell_r15, T_measResultServingCell_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_measResult_r15_sequence[] = { + { &hf_lte_rrc_rsrpResult_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, + { &hf_lte_rrc_rsrqResult_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRQ_Range_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResult_r15(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_lte_rrc_T_measResult_r15, T_measResult_r15_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultIdleEUTRA_r15_sequence[] = { + { &hf_lte_rrc_carrierFreq_r15_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_physCellId_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_measResult_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResult_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultIdleEUTRA_r15(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_lte_rrc_MeasResultIdleEUTRA_r15, MeasResultIdleEUTRA_r15_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultIdleListEUTRA_r15_sequence_of[1] = { + { &hf_lte_rrc_MeasResultIdleListEUTRA_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultIdleEUTRA_r15 }, +}; + +static int +dissect_lte_rrc_MeasResultIdleListEUTRA_r15(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_lte_rrc_MeasResultIdleListEUTRA_r15, MeasResultIdleListEUTRA_r15_sequence_of, + 1, maxCellMeasIdle_r15, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_measResultNeighCells_r15_vals[] = { + { 0, "measResultIdleListEUTRA-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_measResultNeighCells_r15_choice[] = { + { 0, &hf_lte_rrc_measResultIdleListEUTRA_r15, ASN1_EXTENSION_ROOT , dissect_lte_rrc_MeasResultIdleListEUTRA_r15 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measResultNeighCells_r15(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_lte_rrc_T_measResultNeighCells_r15, T_measResultNeighCells_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MeasResultIdle_r15_sequence[] = { + { &hf_lte_rrc_measResultServingCell_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measResultServingCell_r15 }, + { &hf_lte_rrc_measResultNeighCells_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultNeighCells_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultIdle_r15(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_lte_rrc_MeasResultIdle_r15, MeasResultIdle_r15_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultListIdle_r15_sequence_of[1] = { + { &hf_lte_rrc_MeasResultListIdle_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultIdle_r15 }, +}; + +static int +dissect_lte_rrc_MeasResultListIdle_r15(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_lte_rrc_MeasResultListIdle_r15, MeasResultListIdle_r15_sequence_of, + 1, maxIdleMeasCarriers_r15, FALSE); + + return offset; +} + + +static const per_sequence_t WayPointLocation_r15_sequence[] = { + { &hf_lte_rrc_wayPointLocation_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LocationInfo_r10 }, + { &hf_lte_rrc_timeStamp_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AbsoluteTimeInfo_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_WayPointLocation_r15(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_lte_rrc_WayPointLocation_r15, WayPointLocation_r15_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxWayPoint_r15_OF_WayPointLocation_r15_sequence_of[1] = { + { &hf_lte_rrc_flightPath_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WayPointLocation_r15 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxWayPoint_r15_OF_WayPointLocation_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxWayPoint_r15_OF_WayPointLocation_r15, SEQUENCE_SIZE_1_maxWayPoint_r15_OF_WayPointLocation_r15_sequence_of, + 1, maxWayPoint_r15, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_66_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_66(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_lte_rrc_T_nonCriticalExtension_66, T_nonCriticalExtension_66_sequence); + + return offset; +} + + +static const per_sequence_t FlightPathInfoReport_r15_sequence[] = { + { &hf_lte_rrc_flightPath_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxWayPoint_r15_OF_WayPointLocation_r15 }, + { &hf_lte_rrc_nonCriticalExtension_205, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_66 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_FlightPathInfoReport_r15(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_lte_rrc_FlightPathInfoReport_r15, FlightPathInfoReport_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_65_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_65(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_lte_rrc_T_nonCriticalExtension_65, T_nonCriticalExtension_65_sequence); + + return offset; +} + + +static const per_sequence_t UEInformationResponse_v1530_IEs_sequence[] = { + { &hf_lte_rrc_measResultListIdle_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultListIdle_r15 }, + { &hf_lte_rrc_flightPathInfoReport_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FlightPathInfoReport_r15 }, + { &hf_lte_rrc_nonCriticalExtension_204, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_65 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEInformationResponse_v1530_IEs(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_lte_rrc_UEInformationResponse_v1530_IEs, UEInformationResponse_v1530_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UEInformationResponse_v1250_IEs_sequence[] = { + { &hf_lte_rrc_mobilityHistoryReport_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityHistoryReport_r12 }, + { &hf_lte_rrc_nonCriticalExtension_203, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationResponse_v1530_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEInformationResponse_v1250_IEs(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_lte_rrc_UEInformationResponse_v1250_IEs, UEInformationResponse_v1250_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UEInformationResponse_v1130_IEs_sequence[] = { + { &hf_lte_rrc_connEstFailReport_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ConnEstFailReport_r11 }, + { &hf_lte_rrc_nonCriticalExtension_202, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationResponse_v1250_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEInformationResponse_v1130_IEs(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_lte_rrc_UEInformationResponse_v1130_IEs, UEInformationResponse_v1130_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UEInformationResponse_v1020_IEs_sequence[] = { + { &hf_lte_rrc_logMeasReport_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LogMeasReport_r10 }, + { &hf_lte_rrc_nonCriticalExtension_201, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationResponse_v1130_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEInformationResponse_v1020_IEs(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_lte_rrc_UEInformationResponse_v1020_IEs, UEInformationResponse_v1020_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UEInformationResponse_v930_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_06, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_05 }, + { &hf_lte_rrc_nonCriticalExtension_200, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationResponse_v1020_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEInformationResponse_v930_IEs(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_lte_rrc_UEInformationResponse_v930_IEs, UEInformationResponse_v930_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UEInformationResponse_r9_IEs_sequence[] = { + { &hf_lte_rrc_rach_Report_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rach_Report_r9 }, + { &hf_lte_rrc_rlf_Report_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLF_Report_r9 }, + { &hf_lte_rrc_nonCriticalExtension_198, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEInformationResponse_v930_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEInformationResponse_r9_IEs(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_lte_rrc_UEInformationResponse_r9_IEs, UEInformationResponse_r9_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_45_vals[] = { + { 0, "ueInformationResponse-r9" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_45_choice[] = { + { 0, &hf_lte_rrc_ueInformationResponse_r9_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEInformationResponse_r9_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_45(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_lte_rrc_T_c1_45, T_c1_45_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_50_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_50(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_lte_rrc_T_criticalExtensionsFuture_50, T_criticalExtensionsFuture_50_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_51_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_51_choice[] = { + { 0, &hf_lte_rrc_c1_45 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_45 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_50, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_50 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_51(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_lte_rrc_T_criticalExtensions_51, T_criticalExtensions_51_choice, + NULL); + + return offset; +} + + +static const per_sequence_t UEInformationResponse_r9_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_51, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_51 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEInformationResponse_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEInformationResponse-r9"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_UEInformationResponse_r9, UEInformationResponse_r9_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_type_r9_vals[] = { + { 0, "entering" }, + { 1, "leaving" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_type_r9(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_carrierFreq_r9_vals[] = { + { 0, "eutra-r9" }, + { 1, "utra-r9" }, + { 2, "eutra2-v9e0" }, + { 0, NULL } +}; + +static const per_choice_t T_carrierFreq_r9_choice[] = { + { 0, &hf_lte_rrc_eutra_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_ARFCN_ValueEUTRA }, + { 1, &hf_lte_rrc_utra_r9 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_ARFCN_ValueUTRA }, + { 2, &hf_lte_rrc_eutra2_v9e0 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_carrierFreq_r9(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_lte_rrc_T_carrierFreq_r9, T_carrierFreq_r9_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_27_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_27(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_lte_rrc_T_nonCriticalExtension_27, T_nonCriticalExtension_27_sequence); + + return offset; +} + + +static const per_sequence_t ProximityIndication_v930_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_74, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_27 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ProximityIndication_v930_IEs(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_lte_rrc_ProximityIndication_v930_IEs, ProximityIndication_v930_IEs_sequence); + + return offset; +} + + +static const per_sequence_t ProximityIndication_r9_IEs_sequence[] = { + { &hf_lte_rrc_type_r9 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_type_r9 }, + { &hf_lte_rrc_carrierFreq_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_carrierFreq_r9 }, + { &hf_lte_rrc_nonCriticalExtension_73, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ProximityIndication_v930_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ProximityIndication_r9_IEs(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_lte_rrc_ProximityIndication_r9_IEs, ProximityIndication_r9_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_27_vals[] = { + { 0, "proximityIndication-r9" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_27_choice[] = { + { 0, &hf_lte_rrc_proximityIndication_r9_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ProximityIndication_r9_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_27(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_lte_rrc_T_c1_27, T_c1_27_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_21_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_21(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_lte_rrc_T_criticalExtensionsFuture_21, T_criticalExtensionsFuture_21_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_21_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_21_choice[] = { + { 0, &hf_lte_rrc_c1_27 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_27 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_21, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_21 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_21(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_lte_rrc_T_criticalExtensions_21, T_criticalExtensions_21_choice, + NULL); + + return offset; +} + + +static const per_sequence_t ProximityIndication_r9_sequence[] = { + { &hf_lte_rrc_criticalExtensions_21, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_21 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ProximityIndication_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ProximityIndication-r9"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_ProximityIndication_r9, ProximityIndication_r9_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_29_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_29(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_lte_rrc_T_nonCriticalExtension_29, T_nonCriticalExtension_29_sequence); + + return offset; +} + + +static const per_sequence_t RNReconfigurationComplete_r10_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_76, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_29 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RNReconfigurationComplete_r10_IEs(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_lte_rrc_RNReconfigurationComplete_r10_IEs, RNReconfigurationComplete_r10_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_29_vals[] = { + { 0, "rnReconfigurationComplete-r10" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_29_choice[] = { + { 0, &hf_lte_rrc_rnReconfigurationComplete_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RNReconfigurationComplete_r10_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_29(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_lte_rrc_T_c1_29, T_c1_29_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_23_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_23(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_lte_rrc_T_criticalExtensionsFuture_23, T_criticalExtensionsFuture_23_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_23_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_23_choice[] = { + { 0, &hf_lte_rrc_c1_29 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_29 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_23, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_23 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_23(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_lte_rrc_T_criticalExtensions_23, T_criticalExtensions_23_choice, + NULL); + + return offset; +} + + +static const per_sequence_t RNReconfigurationComplete_r10_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_23, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_23 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RNReconfigurationComplete_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RNReconfigurationComplete-r10"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RNReconfigurationComplete_r10, RNReconfigurationComplete_r10_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_maxMBSFN_Area_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxMBSFN_Area_1, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_maxServiceCount_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxServiceCount_1, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t CountingResponseInfo_r10_sequence[] = { + { &hf_lte_rrc_countingResponseService_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxServiceCount_1 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CountingResponseInfo_r10(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_lte_rrc_CountingResponseInfo_r10, CountingResponseInfo_r10_sequence); + + return offset; +} + + +static const per_sequence_t CountingResponseList_r10_sequence_of[1] = { + { &hf_lte_rrc_CountingResponseList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CountingResponseInfo_r10 }, +}; + +static int +dissect_lte_rrc_CountingResponseList_r10(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_lte_rrc_CountingResponseList_r10, CountingResponseList_r10_sequence_of, + 1, maxServiceCount, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_19_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_19(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_lte_rrc_T_nonCriticalExtension_19, T_nonCriticalExtension_19_sequence); + + return offset; +} + + +static const per_sequence_t MBMSCountingResponse_r10_IEs_sequence[] = { + { &hf_lte_rrc_mbsfn_AreaIndex_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_maxMBSFN_Area_1 }, + { &hf_lte_rrc_countingResponseList_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CountingResponseList_r10 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_50, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_19 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MBMSCountingResponse_r10_IEs(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_lte_rrc_MBMSCountingResponse_r10_IEs, MBMSCountingResponse_r10_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_23_vals[] = { + { 0, "countingResponse-r10" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_23_choice[] = { + { 0, &hf_lte_rrc_countingResponse_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBMSCountingResponse_r10_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_23(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_lte_rrc_T_c1_23, T_c1_23_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_16_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_16(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_lte_rrc_T_criticalExtensionsFuture_16, T_criticalExtensionsFuture_16_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_16_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_16_choice[] = { + { 0, &hf_lte_rrc_c1_23 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_23 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_16, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_16 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_16(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_lte_rrc_T_criticalExtensions_16, T_criticalExtensions_16_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MBMSCountingResponse_r10_sequence[] = { + { &hf_lte_rrc_criticalExtensions_16, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MBMSCountingResponse_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBMSCountingResponse-r10"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_MBMSCountingResponse_r10, MBMSCountingResponse_r10_sequence); + + return offset; +} + + +static const per_sequence_t RSTD_InterFreqInfo_r10_eag_1_sequence[] = { + { &hf_lte_rrc_carrierFreq_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RSTD_InterFreqInfo_r10_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RSTD_InterFreqInfo_r10_eag_1_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_measPRS_Offset_r15_vals[] = { + { 0, "rstd0-r15" }, + { 1, "rstd1-r15" }, + { 2, "rstd2-r15" }, + { 3, "rstd3-r15" }, + { 4, "rstd4-r15" }, + { 5, "rstd5-r15" }, + { 6, "rstd6-r15" }, + { 7, "rstd7-r15" }, + { 8, "rstd8-r15" }, + { 9, "rstd9-r15" }, + { 10, "rstd10-r15" }, + { 11, "rstd11-r15" }, + { 12, "rstd12-r15" }, + { 13, "rstd13-r15" }, + { 14, "rstd14-r15" }, + { 15, "rstd15-r15" }, + { 16, "rstd16-r15" }, + { 17, "rstd17-r15" }, + { 18, "rstd18-r15" }, + { 19, "rstd19-r15" }, + { 20, "rstd20-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_measPRS_Offset_r15_choice[] = { + { 0, &hf_lte_rrc_rstd0_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_79 }, + { 1, &hf_lte_rrc_rstd1_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_159 }, + { 2, &hf_lte_rrc_rstd2_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, + { 3, &hf_lte_rrc_rstd3_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, + { 4, &hf_lte_rrc_rstd4_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1279 }, + { 5, &hf_lte_rrc_rstd5_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_159 }, + { 6, &hf_lte_rrc_rstd6_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, + { 7, &hf_lte_rrc_rstd7_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, + { 8, &hf_lte_rrc_rstd8_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1279 }, + { 9, &hf_lte_rrc_rstd9_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, + { 10, &hf_lte_rrc_rstd10_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, + { 11, &hf_lte_rrc_rstd11_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1279 }, + { 12, &hf_lte_rrc_rstd12_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, + { 13, &hf_lte_rrc_rstd13_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, + { 14, &hf_lte_rrc_rstd14_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1279 }, + { 15, &hf_lte_rrc_rstd15_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, + { 16, &hf_lte_rrc_rstd16_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1279 }, + { 17, &hf_lte_rrc_rstd17_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, + { 18, &hf_lte_rrc_rstd18_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1279 }, + { 19, &hf_lte_rrc_rstd19_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, + { 20, &hf_lte_rrc_rstd20_r15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1279 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_measPRS_Offset_r15(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_lte_rrc_T_measPRS_Offset_r15, T_measPRS_Offset_r15_choice, + NULL); + + return offset; +} + + +static const per_sequence_t RSTD_InterFreqInfo_r10_eag_2_sequence[] = { + { &hf_lte_rrc_measPRS_Offset_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measPRS_Offset_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RSTD_InterFreqInfo_r10_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RSTD_InterFreqInfo_r10_eag_2_sequence); + + return offset; +} + + +static const per_sequence_t RSTD_InterFreqInfo_r10_sequence[] = { + { &hf_lte_rrc_carrierFreq_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &hf_lte_rrc_measPRS_Offset_r10, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_39 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSTD_InterFreqInfo_r10_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSTD_InterFreqInfo_r10_eag_2 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RSTD_InterFreqInfo_r10(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_lte_rrc_RSTD_InterFreqInfo_r10, RSTD_InterFreqInfo_r10_sequence); + + return offset; +} + + +static const per_sequence_t RSTD_InterFreqInfoList_r10_sequence_of[1] = { + { &hf_lte_rrc_RSTD_InterFreqInfoList_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSTD_InterFreqInfo_r10 }, +}; + +static int +dissect_lte_rrc_RSTD_InterFreqInfoList_r10(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_lte_rrc_RSTD_InterFreqInfoList_r10, RSTD_InterFreqInfoList_r10_sequence_of, + 1, maxRSTD_Freq_r10, FALSE); + + return offset; +} + + +static const per_sequence_t T_start_sequence[] = { + { &hf_lte_rrc_rstd_InterFreqInfoList_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSTD_InterFreqInfoList_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_start(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_lte_rrc_T_start, T_start_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_rstd_InterFreqIndication_r10_vals[] = { + { 0, "start" }, + { 1, "stop" }, + { 0, NULL } +}; + +static const per_choice_t T_rstd_InterFreqIndication_r10_choice[] = { + { 0, &hf_lte_rrc_start , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_start }, + { 1, &hf_lte_rrc_stop , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_rstd_InterFreqIndication_r10(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_lte_rrc_T_rstd_InterFreqIndication_r10, T_rstd_InterFreqIndication_r10_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_16_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_16(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_lte_rrc_T_nonCriticalExtension_16, T_nonCriticalExtension_16_sequence); + + return offset; +} + + +static const per_sequence_t InterFreqRSTDMeasurementIndication_r10_IEs_sequence[] = { + { &hf_lte_rrc_rstd_InterFreqIndication_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rstd_InterFreqIndication_r10 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_43, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_16 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InterFreqRSTDMeasurementIndication_r10_IEs(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_lte_rrc_InterFreqRSTDMeasurementIndication_r10_IEs, InterFreqRSTDMeasurementIndication_r10_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_21_vals[] = { + { 0, "interFreqRSTDMeasurementIndication-r10" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_21_choice[] = { + { 0, &hf_lte_rrc_interFreqRSTDMeasurementIndication_r10_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_InterFreqRSTDMeasurementIndication_r10_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_21(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_lte_rrc_T_c1_21, T_c1_21_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_14_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_14(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_lte_rrc_T_criticalExtensionsFuture_14, T_criticalExtensionsFuture_14_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_14_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_14_choice[] = { + { 0, &hf_lte_rrc_c1_21 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_21 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_14 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_14(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_lte_rrc_T_criticalExtensions_14, T_criticalExtensions_14_choice, + NULL); + + return offset; +} + + +static const per_sequence_t InterFreqRSTDMeasurementIndication_r10_sequence[] = { + { &hf_lte_rrc_criticalExtensions_14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InterFreqRSTDMeasurementIndication_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InterFreqRSTDMeasurementIndication-r10"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_InterFreqRSTDMeasurementIndication_r10, InterFreqRSTDMeasurementIndication_r10_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_15_vals[] = { + { 0, "csfbParametersRequestCDMA2000" }, + { 1, "measurementReport" }, + { 2, "rrcConnectionReconfigurationComplete" }, + { 3, "rrcConnectionReestablishmentComplete" }, + { 4, "rrcConnectionSetupComplete" }, + { 5, "securityModeComplete" }, + { 6, "securityModeFailure" }, + { 7, "ueCapabilityInformation" }, + { 8, "ulHandoverPreparationTransfer" }, + { 9, "ulInformationTransfer" }, + { 10, "counterCheckResponse" }, + { 11, "ueInformationResponse-r9" }, + { 12, "proximityIndication-r9" }, + { 13, "rnReconfigurationComplete-r10" }, + { 14, "mbmsCountingResponse-r10" }, + { 15, "interFreqRSTDMeasurementIndication-r10" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_15_choice[] = { + { 0, &hf_lte_rrc_csfbParametersRequestCDMA2000, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CSFBParametersRequestCDMA2000 }, + { 1, &hf_lte_rrc_measurementReport, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MeasurementReport }, + { 2, &hf_lte_rrc_rrcConnectionReconfigurationComplete, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReconfigurationComplete }, + { 3, &hf_lte_rrc_rrcConnectionReestablishmentComplete, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentComplete }, + { 4, &hf_lte_rrc_rrcConnectionSetupComplete, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionSetupComplete }, + { 5, &hf_lte_rrc_securityModeComplete, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeComplete }, + { 6, &hf_lte_rrc_securityModeFailure, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SecurityModeFailure }, + { 7, &hf_lte_rrc_ueCapabilityInformation, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UECapabilityInformation }, + { 8, &hf_lte_rrc_ulHandoverPreparationTransfer, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULHandoverPreparationTransfer }, + { 9, &hf_lte_rrc_ulInformationTransfer, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULInformationTransfer }, + { 10, &hf_lte_rrc_counterCheckResponse, ASN1_NO_EXTENSIONS , dissect_lte_rrc_CounterCheckResponse }, + { 11, &hf_lte_rrc_ueInformationResponse_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEInformationResponse_r9 }, + { 12, &hf_lte_rrc_proximityIndication_r9, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ProximityIndication_r9 }, + { 13, &hf_lte_rrc_rnReconfigurationComplete_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RNReconfigurationComplete_r10 }, + { 14, &hf_lte_rrc_mbmsCountingResponse_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBMSCountingResponse_r10 }, + { 15, &hf_lte_rrc_interFreqRSTDMeasurementIndication_r10, ASN1_NO_EXTENSIONS , dissect_lte_rrc_InterFreqRSTDMeasurementIndication_r10 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_15(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_lte_rrc_T_c1_15, T_c1_15_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_powerPrefIndication_r11_01_vals[] = { + { 0, "normal" }, + { 1, "lowPowerConsumption" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_powerPrefIndication_r11_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, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_dl_Preference_r14_vals[] = { + { 0, "mhz1dot4" }, + { 1, "mhz5" }, + { 2, "mhz20" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_dl_Preference_r14(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_ul_Preference_r14_vals[] = { + { 0, "mhz1dot4" }, + { 1, "mhz5" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ul_Preference_r14(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t BW_Preference_r14_sequence[] = { + { &hf_lte_rrc_dl_Preference_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dl_Preference_r14 }, + { &hf_lte_rrc_ul_Preference_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Preference_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_BW_Preference_r14(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_lte_rrc_BW_Preference_r14, BW_Preference_r14_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_trafficPeriodicity_r14_vals[] = { + { 0, "sf20" }, + { 1, "sf50" }, + { 2, "sf100" }, + { 3, "sf200" }, + { 4, "sf300" }, + { 5, "sf400" }, + { 6, "sf500" }, + { 7, "sf600" }, + { 8, "sf700" }, + { 9, "sf800" }, + { 10, "sf900" }, + { 11, "sf1000" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_trafficPeriodicity_r14(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, + 12, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_T_messageSize_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *messageSize_r14_tvb = NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, -1, + 6, 6, FALSE, &messageSize_r14_tvb, NULL); + + if (messageSize_r14_tvb) { + guint bitvalue = tvb_get_bits8(messageSize_r14_tvb, 0, 6); + actx->created_item = proto_tree_add_uint(tree, hf_index, messageSize_r14_tvb, 0, 1, bitvalue); + } + + + return offset; +} + + +static const per_sequence_t TrafficPatternInfo_r14_sequence[] = { + { &hf_lte_rrc_trafficPeriodicity_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_trafficPeriodicity_r14 }, + { &hf_lte_rrc_timingOffset_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_10239 }, + { &hf_lte_rrc_priorityInfoSL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Priority_r13 }, + { &hf_lte_rrc_logicalChannelIdentityUL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_3_10 }, + { &hf_lte_rrc_messageSize_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_messageSize_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_TrafficPatternInfo_r14(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_lte_rrc_TrafficPatternInfo_r14, TrafficPatternInfo_r14_sequence); + + return offset; +} + + +static const per_sequence_t TrafficPatternInfoList_r14_sequence_of[1] = { + { &hf_lte_rrc_TrafficPatternInfoList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrafficPatternInfo_r14 }, +}; + +static int +dissect_lte_rrc_TrafficPatternInfoList_r14(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_lte_rrc_TrafficPatternInfoList_r14, TrafficPatternInfoList_r14_sequence_of, + 1, maxTrafficPattern_r14, FALSE); + + return offset; +} + + +static const per_sequence_t T_sps_AssistanceInformation_r14_sequence[] = { + { &hf_lte_rrc_trafficPatternInfoListSL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TrafficPatternInfoList_r14 }, + { &hf_lte_rrc_trafficPatternInfoListUL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TrafficPatternInfoList_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_sps_AssistanceInformation_r14(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_lte_rrc_T_sps_AssistanceInformation_r14, T_sps_AssistanceInformation_r14_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_rlm_Event_r14_vals[] = { + { 0, "earlyOutOfSync" }, + { 1, "earlyInSync" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rlm_Event_r14(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_excessRep_MPDCCH_r14_vals[] = { + { 0, "excessRep1" }, + { 1, "excessRep2" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_excessRep_MPDCCH_r14(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_rlm_Report_r14_sequence[] = { + { &hf_lte_rrc_rlm_Event_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rlm_Event_r14 }, + { &hf_lte_rrc_excessRep_MPDCCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_excessRep_MPDCCH_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_rlm_Report_r14(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_lte_rrc_T_rlm_Report_r14, T_rlm_Report_r14_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_type1_vals[] = { + { 0, "msMinus1280" }, + { 1, "msMinus640" }, + { 2, "msMinus320" }, + { 3, "msMinus160" }, + { 4, "msMinus80" }, + { 5, "msMinus60" }, + { 6, "msMinus40" }, + { 7, "msMinus20" }, + { 8, "ms0" }, + { 9, "ms20" }, + { 10, "ms40" }, + { 11, "ms60" }, + { 12, "ms80" }, + { 13, "ms160" }, + { 14, "ms320" }, + { 15, "ms640" }, + { 16, "ms1280" }, + { 0, NULL } +}; + +static value_string_ext lte_rrc_T_type1_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_type1_vals); + + +static int +dissect_lte_rrc_T_type1(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, + 17, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_type2_vals[] = { + { 0, "msMinus192" }, + { 1, "msMinus168" }, + { 2, "msMinus144" }, + { 3, "msMinus120" }, + { 4, "msMinus96" }, + { 5, "msMinus72" }, + { 6, "msMinus48" }, + { 7, "msMinus24" }, + { 8, "ms0" }, + { 9, "ms24" }, + { 10, "ms48" }, + { 11, "ms72" }, + { 12, "ms96" }, + { 13, "ms120" }, + { 14, "ms144" }, + { 15, "ms168" }, + { 16, "ms192" }, + { 0, NULL } +}; + +static value_string_ext lte_rrc_T_type2_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_type2_vals); + + +static int +dissect_lte_rrc_T_type2(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, + 17, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_DelayBudgetReport_r14_vals[] = { + { 0, "type1" }, + { 1, "type2" }, + { 0, NULL } +}; + +static const per_choice_t DelayBudgetReport_r14_choice[] = { + { 0, &hf_lte_rrc_type1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_type1 }, + { 1, &hf_lte_rrc_type2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_type2 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_DelayBudgetReport_r14(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_lte_rrc_DelayBudgetReport_r14, DelayBudgetReport_r14_choice, + NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 21U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t T_reducedUE_Category_sequence[] = { + { &hf_lte_rrc_reducedUE_CategoryDL, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_19 }, + { &hf_lte_rrc_reducedUE_CategoryUL, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_21 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_reducedUE_Category(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_lte_rrc_T_reducedUE_Category, T_reducedUE_Category_sequence); + + return offset; +} + + +static const per_sequence_t T_reducedMaxCCs_sequence[] = { + { &hf_lte_rrc_reducedCCsDL, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_reducedCCsUL, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_reducedMaxCCs(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_lte_rrc_T_reducedMaxCCs, T_reducedMaxCCs_sequence); + + return offset; +} + + +static const per_sequence_t OverheatingAssistance_r14_sequence[] = { + { &hf_lte_rrc_reducedUE_Category, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedUE_Category }, + { &hf_lte_rrc_reducedMaxCCs, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedMaxCCs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_OverheatingAssistance_r14(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_lte_rrc_OverheatingAssistance_r14, OverheatingAssistance_r14_sequence); + + return offset; +} + + +static const per_sequence_t TrafficPatternInfo_v1530_sequence[] = { + { &hf_lte_rrc_trafficDestination_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DestinationIdentity_r12 }, + { &hf_lte_rrc_reliabilityInfoSL_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Reliability_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_TrafficPatternInfo_v1530(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_lte_rrc_TrafficPatternInfo_v1530, TrafficPatternInfo_v1530_sequence); + + return offset; +} + + +static const per_sequence_t TrafficPatternInfoList_v1530_sequence_of[1] = { + { &hf_lte_rrc_TrafficPatternInfoList_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrafficPatternInfo_v1530 }, +}; + +static int +dissect_lte_rrc_TrafficPatternInfoList_v1530(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_lte_rrc_TrafficPatternInfoList_v1530, TrafficPatternInfoList_v1530_sequence_of, + 1, maxTrafficPattern_r14, FALSE); + + return offset; +} + + +static const per_sequence_t T_sps_AssistanceInformation_v1530_sequence[] = { + { &hf_lte_rrc_trafficPatternInfoListSL_v1530, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TrafficPatternInfoList_v1530 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_sps_AssistanceInformation_v1530(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_lte_rrc_T_sps_AssistanceInformation_v1530, T_sps_AssistanceInformation_v1530_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_60_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_60(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_lte_rrc_T_nonCriticalExtension_60, T_nonCriticalExtension_60_sequence); + + return offset; +} + + +static const per_sequence_t UEAssistanceInformation_v1530_IEs_sequence[] = { + { &hf_lte_rrc_sps_AssistanceInformation_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sps_AssistanceInformation_v1530 }, + { &hf_lte_rrc_nonCriticalExtension_181, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_60 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEAssistanceInformation_v1530_IEs(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_lte_rrc_UEAssistanceInformation_v1530_IEs, UEAssistanceInformation_v1530_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UEAssistanceInformation_v1450_IEs_sequence[] = { + { &hf_lte_rrc_overheatingAssistance_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OverheatingAssistance_r14 }, + { &hf_lte_rrc_nonCriticalExtension_180, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEAssistanceInformation_v1530_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEAssistanceInformation_v1450_IEs(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_lte_rrc_UEAssistanceInformation_v1450_IEs, UEAssistanceInformation_v1450_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UEAssistanceInformation_v1430_IEs_sequence[] = { + { &hf_lte_rrc_bw_Preference_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BW_Preference_r14 }, + { &hf_lte_rrc_sps_AssistanceInformation_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sps_AssistanceInformation_r14 }, + { &hf_lte_rrc_rlm_Report_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlm_Report_r14 }, + { &hf_lte_rrc_delayBudgetReport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DelayBudgetReport_r14 }, + { &hf_lte_rrc_nonCriticalExtension_179, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEAssistanceInformation_v1450_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEAssistanceInformation_v1430_IEs(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_lte_rrc_UEAssistanceInformation_v1430_IEs, UEAssistanceInformation_v1430_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UEAssistanceInformation_r11_IEs_sequence[] = { + { &hf_lte_rrc_powerPrefIndication_r11_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerPrefIndication_r11_01 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_178, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UEAssistanceInformation_v1430_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEAssistanceInformation_r11_IEs(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_lte_rrc_UEAssistanceInformation_r11_IEs, UEAssistanceInformation_r11_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_41_vals[] = { + { 0, "ueAssistanceInformation-r11" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_41_choice[] = { + { 0, &hf_lte_rrc_ueAssistanceInformation_r11_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEAssistanceInformation_r11_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_41(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_lte_rrc_T_c1_41, T_c1_41_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_46_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_46(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_lte_rrc_T_criticalExtensionsFuture_46, T_criticalExtensionsFuture_46_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_47_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_47_choice[] = { + { 0, &hf_lte_rrc_c1_41 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_41 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_46, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_46 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_47(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_lte_rrc_T_criticalExtensions_47, T_criticalExtensions_47_choice, + NULL); + + return offset; +} + + +static const per_sequence_t UEAssistanceInformation_r11_sequence[] = { + { &hf_lte_rrc_criticalExtensions_47, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_47 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEAssistanceInformation_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "UEAssistanceInformation-r11"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_UEAssistanceInformation_r11, UEAssistanceInformation_r11_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_interferenceDirection_r11_vals[] = { + { 0, "eutra" }, + { 1, "other" }, + { 2, "both" }, + { 3, "spare" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_interferenceDirection_r11(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 per_sequence_t AffectedCarrierFreq_r11_sequence[] = { + { &hf_lte_rrc_carrierFreq_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectId }, + { &hf_lte_rrc_interferenceDirection_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_interferenceDirection_r11 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_AffectedCarrierFreq_r11(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_lte_rrc_AffectedCarrierFreq_r11, AffectedCarrierFreq_r11_sequence); + + return offset; +} + + +static const per_sequence_t AffectedCarrierFreqList_r11_sequence_of[1] = { + { &hf_lte_rrc_AffectedCarrierFreqList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AffectedCarrierFreq_r11 }, +}; + +static int +dissect_lte_rrc_AffectedCarrierFreqList_r11(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_lte_rrc_AffectedCarrierFreqList_r11, AffectedCarrierFreqList_r11_sequence_of, + 1, maxFreqIDC_r11, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_drx_CycleLength_r11_vals[] = { + { 0, "sf40" }, + { 1, "sf64" }, + { 2, "sf80" }, + { 3, "sf128" }, + { 4, "sf160" }, + { 5, "sf256" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_drx_CycleLength_r11(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_drx_ActiveTime_r11_vals[] = { + { 0, "sf20" }, + { 1, "sf30" }, + { 2, "sf40" }, + { 3, "sf60" }, + { 4, "sf80" }, + { 5, "sf100" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_drx_ActiveTime_r11(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_drx_AssistanceInfo_r11_sequence[] = { + { &hf_lte_rrc_drx_CycleLength_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_CycleLength_r11 }, + { &hf_lte_rrc_drx_Offset_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_255 }, + { &hf_lte_rrc_drx_ActiveTime_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_ActiveTime_r11 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_drx_AssistanceInfo_r11(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_lte_rrc_T_drx_AssistanceInfo_r11, T_drx_AssistanceInfo_r11_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_subframePatternTDD_r11_vals[] = { + { 0, "subframeConfig0-r11" }, + { 1, "subframeConfig1-5-r11" }, + { 2, "subframeConfig6-r11" }, + { 0, NULL } +}; + +static const per_choice_t T_subframePatternTDD_r11_choice[] = { + { 0, &hf_lte_rrc_subframeConfig0_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_70 }, + { 1, &hf_lte_rrc_subframeConfig1_5_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { 2, &hf_lte_rrc_subframeConfig6_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_60 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_subframePatternTDD_r11(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_lte_rrc_T_subframePatternTDD_r11, T_subframePatternTDD_r11_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_IDC_SubframePattern_r11_vals[] = { + { 0, "subframePatternFDD-r11" }, + { 1, "subframePatternTDD-r11" }, + { 0, NULL } +}; + +static const per_choice_t IDC_SubframePattern_r11_choice[] = { + { 0, &hf_lte_rrc_subframePatternFDD_r11, ASN1_EXTENSION_ROOT , dissect_lte_rrc_BIT_STRING_SIZE_4 }, + { 1, &hf_lte_rrc_subframePatternTDD_r11, ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_subframePatternTDD_r11 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_IDC_SubframePattern_r11(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_lte_rrc_IDC_SubframePattern_r11, IDC_SubframePattern_r11_choice, + NULL); + + return offset; +} + + +static const per_sequence_t IDC_SubframePatternList_r11_sequence_of[1] = { + { &hf_lte_rrc_IDC_SubframePatternList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IDC_SubframePattern_r11 }, +}; + +static int +dissect_lte_rrc_IDC_SubframePatternList_r11(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_lte_rrc_IDC_SubframePatternList_r11, IDC_SubframePatternList_r11_sequence_of, + 1, maxSubframePatternIDC_r11, FALSE); + + return offset; +} + + +static const value_string lte_rrc_TDM_AssistanceInfo_r11_vals[] = { + { 0, "drx-AssistanceInfo-r11" }, + { 1, "idc-SubframePatternList-r11" }, + { 0, NULL } +}; + +static const per_choice_t TDM_AssistanceInfo_r11_choice[] = { + { 0, &hf_lte_rrc_drx_AssistanceInfo_r11, ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_drx_AssistanceInfo_r11 }, + { 1, &hf_lte_rrc_idc_SubframePatternList_r11, ASN1_EXTENSION_ROOT , dissect_lte_rrc_IDC_SubframePatternList_r11 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_TDM_AssistanceInfo_r11(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_lte_rrc_TDM_AssistanceInfo_r11, TDM_AssistanceInfo_r11_choice, + NULL); + + return offset; +} + + +static const per_sequence_t AffectedCarrierFreqComb_r11_sequence_of[1] = { + { &hf_lte_rrc_AffectedCarrierFreqComb_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectId }, +}; + +static int +dissect_lte_rrc_AffectedCarrierFreqComb_r11(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_lte_rrc_AffectedCarrierFreqComb_r11, AffectedCarrierFreqComb_r11_sequence_of, + 2, maxServCell_r10, FALSE); + + return offset; +} + + +static const per_sequence_t AffectedCarrierFreqCombList_r11_sequence_of[1] = { + { &hf_lte_rrc_AffectedCarrierFreqCombList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AffectedCarrierFreqComb_r11 }, +}; + +static int +dissect_lte_rrc_AffectedCarrierFreqCombList_r11(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_lte_rrc_AffectedCarrierFreqCombList_r11, AffectedCarrierFreqCombList_r11_sequence_of, + 1, maxCombIDC_r11, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_gps_r11_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_gps_r11(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_glonass_r11_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_glonass_r11(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_bds_r11_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_bds_r11(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_galileo_r11_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_galileo_r11(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_wlan_r11_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_wlan_r11(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_bluetooth_r11_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_bluetooth_r11(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t VictimSystemType_r11_sequence[] = { + { &hf_lte_rrc_gps_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gps_r11 }, + { &hf_lte_rrc_glonass_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_glonass_r11 }, + { &hf_lte_rrc_bds_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bds_r11 }, + { &hf_lte_rrc_galileo_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_galileo_r11 }, + { &hf_lte_rrc_wlan_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_r11 }, + { &hf_lte_rrc_bluetooth_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bluetooth_r11 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_VictimSystemType_r11(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_lte_rrc_VictimSystemType_r11, VictimSystemType_r11_sequence); + + return offset; +} + + +static const per_sequence_t T_ul_CA_AssistanceInfo_r11_sequence[] = { + { &hf_lte_rrc_affectedCarrierFreqCombList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AffectedCarrierFreqCombList_r11 }, + { &hf_lte_rrc_victimSystemType_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_VictimSystemType_r11 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_ul_CA_AssistanceInfo_r11(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_lte_rrc_T_ul_CA_AssistanceInfo_r11, T_ul_CA_AssistanceInfo_r11_sequence); + + return offset; +} + + +static const per_sequence_t AffectedCarrierFreq_v1310_sequence[] = { + { &hf_lte_rrc_carrierFreq_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasObjectId_v1310 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_AffectedCarrierFreq_v1310(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_lte_rrc_AffectedCarrierFreq_v1310, AffectedCarrierFreq_v1310_sequence); + + return offset; +} + + +static const per_sequence_t AffectedCarrierFreqList_v1310_sequence_of[1] = { + { &hf_lte_rrc_AffectedCarrierFreqList_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AffectedCarrierFreq_v1310 }, +}; + +static int +dissect_lte_rrc_AffectedCarrierFreqList_v1310(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_lte_rrc_AffectedCarrierFreqList_v1310, AffectedCarrierFreqList_v1310_sequence_of, + 1, maxFreqIDC_r11, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_MeasObjectId_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxObjectId_r13, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t AffectedCarrierFreqComb_r13_sequence_of[1] = { + { &hf_lte_rrc_AffectedCarrierFreqComb_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectId_r13 }, +}; + +static int +dissect_lte_rrc_AffectedCarrierFreqComb_r13(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_lte_rrc_AffectedCarrierFreqComb_r13, AffectedCarrierFreqComb_r13_sequence_of, + 2, maxServCell_r13, FALSE); + + return offset; +} + + +static const per_sequence_t AffectedCarrierFreqCombList_r13_sequence_of[1] = { + { &hf_lte_rrc_AffectedCarrierFreqCombList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AffectedCarrierFreqComb_r13 }, +}; + +static int +dissect_lte_rrc_AffectedCarrierFreqCombList_r13(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_lte_rrc_AffectedCarrierFreqCombList_r13, AffectedCarrierFreqCombList_r13_sequence_of, + 1, maxCombIDC_r11, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_hardwareSharingProblem_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_hardwareSharingProblem_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_interferenceDirectionMRDC_r15_vals[] = { + { 0, "eutra-nr" }, + { 1, "nr" }, + { 2, "other" }, + { 3, "eutra-nr-other" }, + { 4, "nr-other" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_interferenceDirectionMRDC_r15(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t AffectedCarrierFreqComb_r15_sequence_of[1] = { + { &hf_lte_rrc_AffectedCarrierFreqComb_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasObjectId_r13 }, +}; + +static int +dissect_lte_rrc_AffectedCarrierFreqComb_r15(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_lte_rrc_AffectedCarrierFreqComb_r15, AffectedCarrierFreqComb_r15_sequence_of, + 1, maxServCell_r13, FALSE); + + return offset; +} + + +static const per_sequence_t AffectedCarrierFreqCombNR_r15_sequence_of[1] = { + { &hf_lte_rrc_AffectedCarrierFreqCombNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueNR_r15 }, +}; + +static int +dissect_lte_rrc_AffectedCarrierFreqCombNR_r15(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_lte_rrc_AffectedCarrierFreqCombNR_r15, AffectedCarrierFreqCombNR_r15_sequence_of, + 1, maxServCellNR_r15, FALSE); + + return offset; +} + + +static const per_sequence_t T_affectedCarrierFreqCombMRDC_r15_sequence[] = { + { &hf_lte_rrc_affectedCarrierFreqCombEUTRA_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AffectedCarrierFreqComb_r15 }, + { &hf_lte_rrc_affectedCarrierFreqCombNR_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AffectedCarrierFreqCombNR_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_affectedCarrierFreqCombMRDC_r15(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_lte_rrc_T_affectedCarrierFreqCombMRDC_r15, T_affectedCarrierFreqCombMRDC_r15_sequence); + + return offset; +} + + +static const per_sequence_t AffectedCarrierFreqCombInfoMRDC_r15_sequence[] = { + { &hf_lte_rrc_victimSystemType_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_VictimSystemType_r11 }, + { &hf_lte_rrc_interferenceDirectionMRDC_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_interferenceDirectionMRDC_r15 }, + { &hf_lte_rrc_affectedCarrierFreqCombMRDC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_affectedCarrierFreqCombMRDC_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_AffectedCarrierFreqCombInfoMRDC_r15(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_lte_rrc_AffectedCarrierFreqCombInfoMRDC_r15, AffectedCarrierFreqCombInfoMRDC_r15_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxCombIDC_r11_OF_AffectedCarrierFreqCombInfoMRDC_r15_sequence_of[1] = { + { &hf_lte_rrc_affectedCarrierFreqCombInfoListMRDC_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AffectedCarrierFreqCombInfoMRDC_r15 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxCombIDC_r11_OF_AffectedCarrierFreqCombInfoMRDC_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxCombIDC_r11_OF_AffectedCarrierFreqCombInfoMRDC_r15, SEQUENCE_SIZE_1_maxCombIDC_r11_OF_AffectedCarrierFreqCombInfoMRDC_r15_sequence_of, + 1, maxCombIDC_r11, FALSE); + + return offset; +} + + +static const per_sequence_t MRDC_AssistanceInfo_r15_sequence[] = { + { &hf_lte_rrc_affectedCarrierFreqCombInfoListMRDC_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxCombIDC_r11_OF_AffectedCarrierFreqCombInfoMRDC_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MRDC_AssistanceInfo_r15(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_lte_rrc_MRDC_AssistanceInfo_r15, MRDC_AssistanceInfo_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_15_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_15(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_lte_rrc_T_nonCriticalExtension_15, T_nonCriticalExtension_15_sequence); + + return offset; +} + + +static const per_sequence_t InDeviceCoexIndication_v1530_IEs_sequence[] = { + { &hf_lte_rrc_mrdc_AssistanceInfo_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MRDC_AssistanceInfo_r15 }, + { &hf_lte_rrc_nonCriticalExtension_42, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InDeviceCoexIndication_v1530_IEs(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_lte_rrc_InDeviceCoexIndication_v1530_IEs, InDeviceCoexIndication_v1530_IEs_sequence); + + return offset; +} + + +static const per_sequence_t InDeviceCoexIndication_v1360_IEs_sequence[] = { + { &hf_lte_rrc_hardwareSharingProblem_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hardwareSharingProblem_r13 }, + { &hf_lte_rrc_nonCriticalExtension_41, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InDeviceCoexIndication_v1530_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InDeviceCoexIndication_v1360_IEs(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_lte_rrc_InDeviceCoexIndication_v1360_IEs, InDeviceCoexIndication_v1360_IEs_sequence); + + return offset; +} + + +static const per_sequence_t InDeviceCoexIndication_v1310_IEs_sequence[] = { + { &hf_lte_rrc_affectedCarrierFreqList_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AffectedCarrierFreqList_v1310 }, + { &hf_lte_rrc_affectedCarrierFreqCombList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AffectedCarrierFreqCombList_r13 }, + { &hf_lte_rrc_nonCriticalExtension_40, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InDeviceCoexIndication_v1360_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InDeviceCoexIndication_v1310_IEs(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_lte_rrc_InDeviceCoexIndication_v1310_IEs, InDeviceCoexIndication_v1310_IEs_sequence); + + return offset; +} + + +static const per_sequence_t InDeviceCoexIndication_v11d0_IEs_sequence[] = { + { &hf_lte_rrc_ul_CA_AssistanceInfo_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_CA_AssistanceInfo_r11 }, + { &hf_lte_rrc_nonCriticalExtension_39, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InDeviceCoexIndication_v1310_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InDeviceCoexIndication_v11d0_IEs(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_lte_rrc_InDeviceCoexIndication_v11d0_IEs, InDeviceCoexIndication_v11d0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t InDeviceCoexIndication_r11_IEs_sequence[] = { + { &hf_lte_rrc_affectedCarrierFreqList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AffectedCarrierFreqList_r11 }, + { &hf_lte_rrc_tdm_AssistanceInfo_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDM_AssistanceInfo_r11 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_38, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InDeviceCoexIndication_v11d0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InDeviceCoexIndication_r11_IEs(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_lte_rrc_InDeviceCoexIndication_r11_IEs, InDeviceCoexIndication_r11_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_20_vals[] = { + { 0, "inDeviceCoexIndication-r11" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_20_choice[] = { + { 0, &hf_lte_rrc_inDeviceCoexIndication_r11_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_InDeviceCoexIndication_r11_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_20(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_lte_rrc_T_c1_20, T_c1_20_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_13_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_13(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_lte_rrc_T_criticalExtensionsFuture_13, T_criticalExtensionsFuture_13_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_13_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_13_choice[] = { + { 0, &hf_lte_rrc_c1_20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_20 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_13 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_13(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_lte_rrc_T_criticalExtensions_13, T_criticalExtensions_13_choice, + NULL); + + return offset; +} + + +static const per_sequence_t InDeviceCoexIndication_r11_sequence[] = { + { &hf_lte_rrc_criticalExtensions_13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InDeviceCoexIndication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "InDeviceCoexIndication-r11"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_InDeviceCoexIndication_r11, InDeviceCoexIndication_r11_sequence); + + return offset; +} + + +static const per_sequence_t CarrierFreqListMBMS_r11_sequence_of[1] = { + { &hf_lte_rrc_CarrierFreqListMBMS_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, +}; + +static int +dissect_lte_rrc_CarrierFreqListMBMS_r11(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_lte_rrc_CarrierFreqListMBMS_r11, CarrierFreqListMBMS_r11_sequence_of, + 1, maxFreqMBMS_r11, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_mbms_Priority_r11_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mbms_Priority_r11(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t MBMS_ServiceInfo_r13_sequence[] = { + { &hf_lte_rrc_tmgi_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TMGI_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MBMS_ServiceInfo_r13(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_lte_rrc_MBMS_ServiceInfo_r13, MBMS_ServiceInfo_r13_sequence); + + return offset; +} + + +static const per_sequence_t MBMS_ServiceList_r13_sequence_of[1] = { + { &hf_lte_rrc_MBMS_ServiceList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_ServiceInfo_r13 }, +}; + +static int +dissect_lte_rrc_MBMS_ServiceList_r13(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_lte_rrc_MBMS_ServiceList_r13, MBMS_ServiceList_r13_sequence_of, + 0, maxMBMS_ServiceListPerUE_r13, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_20_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_20(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_lte_rrc_T_nonCriticalExtension_20, T_nonCriticalExtension_20_sequence); + + return offset; +} + + +static const per_sequence_t MBMSInterestIndication_v1310_IEs_sequence[] = { + { &hf_lte_rrc_mbms_Services_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_ServiceList_r13 }, + { &hf_lte_rrc_nonCriticalExtension_52, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_20 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MBMSInterestIndication_v1310_IEs(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_lte_rrc_MBMSInterestIndication_v1310_IEs, MBMSInterestIndication_v1310_IEs_sequence); + + return offset; +} + + +static const per_sequence_t MBMSInterestIndication_r11_IEs_sequence[] = { + { &hf_lte_rrc_mbms_FreqList_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreqListMBMS_r11 }, + { &hf_lte_rrc_mbms_Priority_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_Priority_r11 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_51, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMSInterestIndication_v1310_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MBMSInterestIndication_r11_IEs(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_lte_rrc_MBMSInterestIndication_r11_IEs, MBMSInterestIndication_r11_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_24_vals[] = { + { 0, "interestIndication-r11" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_24_choice[] = { + { 0, &hf_lte_rrc_interestIndication_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBMSInterestIndication_r11_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_24(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_lte_rrc_T_c1_24, T_c1_24_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_17_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_17(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_lte_rrc_T_criticalExtensionsFuture_17, T_criticalExtensionsFuture_17_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_17_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_17_choice[] = { + { 0, &hf_lte_rrc_c1_24 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_24 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_17, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_17 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_17(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_lte_rrc_T_criticalExtensions_17, T_criticalExtensions_17_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MBMSInterestIndication_r11_sequence[] = { + { &hf_lte_rrc_criticalExtensions_17, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_17 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MBMSInterestIndication_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MBMSInterestIndication-r11"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_MBMSInterestIndication_r11, MBMSInterestIndication_r11_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_failureType_r12_vals[] = { + { 0, "t313-Expiry" }, + { 1, "randomAccessProblem" }, + { 2, "rlc-MaxNumRetx" }, + { 3, "scg-ChangeFailure" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_failureType_r12(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 lte_rrc_T_failureType_v1290_vals[] = { + { 0, "maxUL-TimingDiff-v1290" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_failureType_v1290(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t FailureReportSCG_r12_eag_1_sequence[] = { + { &hf_lte_rrc_failureType_v1290, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_failureType_v1290 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_FailureReportSCG_r12_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, FailureReportSCG_r12_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t FailureReportSCG_r12_eag_2_sequence[] = { + { &hf_lte_rrc_measResultServFreqListExt_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqListExt_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_FailureReportSCG_r12_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, FailureReportSCG_r12_eag_2_sequence); + + return offset; +} + + +static const per_sequence_t FailureReportSCG_r12_sequence[] = { + { &hf_lte_rrc_failureType_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_failureType_r12 }, + { &hf_lte_rrc_measResultServFreqList_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServFreqList_r10 }, + { &hf_lte_rrc_measResultNeighCells_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_r9 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_FailureReportSCG_r12_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_FailureReportSCG_r12_eag_2 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_FailureReportSCG_r12(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_lte_rrc_FailureReportSCG_r12, FailureReportSCG_r12_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_T_lateNonCriticalExtension_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SCGFailureInformation_v12d0_IEs_PDU); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_46_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_46(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_lte_rrc_T_nonCriticalExtension_46, T_nonCriticalExtension_46_sequence); + + return offset; +} + + +static const per_sequence_t SCGFailureInformation_v1310_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_04, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_03 }, + { &hf_lte_rrc_nonCriticalExtension_142, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_46 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCGFailureInformation_v1310_IEs(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_lte_rrc_SCGFailureInformation_v1310_IEs, SCGFailureInformation_v1310_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SCGFailureInformation_r12_IEs_sequence[] = { + { &hf_lte_rrc_failureReportSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FailureReportSCG_r12 }, + { &hf_lte_rrc_nonCriticalExtension_141, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCGFailureInformation_v1310_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCGFailureInformation_r12_IEs(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_lte_rrc_SCGFailureInformation_r12_IEs, SCGFailureInformation_r12_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_37_vals[] = { + { 0, "scgFailureInformation-r12" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_37_choice[] = { + { 0, &hf_lte_rrc_scgFailureInformation_r12_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCGFailureInformation_r12_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_37(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_lte_rrc_T_c1_37, T_c1_37_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_39_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_39(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_lte_rrc_T_criticalExtensionsFuture_39, T_criticalExtensionsFuture_39_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_40_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_40_choice[] = { + { 0, &hf_lte_rrc_c1_37 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_37 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_39, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_39 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_40(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_lte_rrc_T_criticalExtensions_40, T_criticalExtensions_40_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SCGFailureInformation_r12_sequence[] = { + { &hf_lte_rrc_criticalExtensions_40, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_40 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCGFailureInformation_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SCGFailureInformation-r12"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SCGFailureInformation_r12, SCGFailureInformation_r12_sequence); + + return offset; +} + + +static const per_sequence_t SL_CommTxResourceReq_r12_sequence[] = { + { &hf_lte_rrc_carrierFreq_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_destinationInfoList_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DestinationInfoList_r12 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SL_CommTxResourceReq_r12(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_lte_rrc_SL_CommTxResourceReq_r12, SL_CommTxResourceReq_r12_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_discRxInterest_r12_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_discRxInterest_r12(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_1_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 63U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_ue_Type_r13_vals[] = { + { 0, "relayUE" }, + { 1, "remoteUE" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ue_Type_r13(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_commTxResourceInfoReqRelay_r13_sequence[] = { + { &hf_lte_rrc_commTxResourceReqRelay_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxResourceReq_r12 }, + { &hf_lte_rrc_commTxResourceReqRelayUC_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxResourceReq_r12 }, + { &hf_lte_rrc_ue_Type_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_Type_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_commTxResourceInfoReqRelay_r13(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_lte_rrc_T_commTxResourceInfoReqRelay_r13, T_commTxResourceInfoReqRelay_r13_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_1_maxFreq(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxFreq, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SL_DiscTxResourceReq_r13_sequence[] = { + { &hf_lte_rrc_carrierFreqDiscTx_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxFreq }, + { &hf_lte_rrc_discTxResourceReq_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_63 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SL_DiscTxResourceReq_r13(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_lte_rrc_SL_DiscTxResourceReq_r13, SL_DiscTxResourceReq_r13_sequence); + + return offset; +} + + +static const per_sequence_t SL_DiscTxResourceReqPerFreqList_r13_sequence_of[1] = { + { &hf_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscTxResourceReq_r13 }, +}; + +static int +dissect_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13(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_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13, SL_DiscTxResourceReqPerFreqList_r13_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t T_discTxResourceReq_v1310_sequence[] = { + { &hf_lte_rrc_carrierFreqDiscTx_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxFreq }, + { &hf_lte_rrc_discTxResourceReqAddFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_discTxResourceReq_v1310(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_lte_rrc_T_discTxResourceReq_v1310, T_discTxResourceReq_v1310_sequence); + + return offset; +} + + +static const per_sequence_t SL_GapFreqInfo_r13_sequence[] = { + { &hf_lte_rrc_carrierFreq_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_gapPatternList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_GapPatternList_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SL_GapFreqInfo_r13(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_lte_rrc_SL_GapFreqInfo_r13, SL_GapFreqInfo_r13_sequence); + + return offset; +} + + +static const per_sequence_t SL_GapRequest_r13_sequence_of[1] = { + { &hf_lte_rrc_SL_GapRequest_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_GapFreqInfo_r13 }, +}; + +static int +dissect_lte_rrc_SL_GapRequest_r13(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_lte_rrc_SL_GapRequest_r13, SL_GapRequest_r13_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t T_discCellSelectionInfo_r13_sequence[] = { + { &hf_lte_rrc_q_RxLevMin_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_q_RxLevMinOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_8 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_discCellSelectionInfo_r13(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_lte_rrc_T_discCellSelectionInfo_r13, T_discCellSelectionInfo_r13_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_q_Hyst_r13_01_vals[] = { + { 0, "dB0" }, + { 1, "dB1" }, + { 2, "dB2" }, + { 3, "dB3" }, + { 4, "dB4" }, + { 5, "dB5" }, + { 6, "dB6" }, + { 7, "dB8" }, + { 8, "dB10" }, + { 9, "dB12" }, + { 10, "dB14" }, + { 11, "dB16" }, + { 12, "dB18" }, + { 13, "dB20" }, + { 14, "dB22" }, + { 15, "dB24" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_q_Hyst_r13_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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_cellReselectionInfo_r13_sequence[] = { + { &hf_lte_rrc_q_Hyst_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_q_Hyst_r13_01 }, + { &hf_lte_rrc_q_RxLevMin_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, + { &hf_lte_rrc_t_ReselectionEUTRA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_Reselection }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_cellReselectionInfo_r13(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_lte_rrc_T_cellReselectionInfo_r13, T_cellReselectionInfo_r13_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_ul_Bandwidth_r13_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ul_Bandwidth_r13(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, + 6, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_freqInfo_r13_sequence[] = { + { &hf_lte_rrc_ul_CarrierFreq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA }, + { &hf_lte_rrc_ul_Bandwidth_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_Bandwidth_r13 }, + { &hf_lte_rrc_additionalSpectrumEmission_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSpectrumEmission }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_freqInfo_r13(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_lte_rrc_T_freqInfo_r13, T_freqInfo_r13_sequence); + + return offset; +} + + +static const per_sequence_t T_freqInfo_v1370_01_sequence[] = { + { &hf_lte_rrc_additionalSpectrumEmission_v1370, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_freqInfo_v1370_01(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_lte_rrc_T_freqInfo_v1370_01, T_freqInfo_v1370_01_sequence); + + return offset; +} + + +static const per_sequence_t SL_DiscSysInfoReport_r13_eag_1_sequence[] = { + { &hf_lte_rrc_freqInfo_v1370_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqInfo_v1370_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SL_DiscSysInfoReport_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SL_DiscSysInfoReport_r13_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t SL_DiscSysInfoReport_r13_sequence[] = { + { &hf_lte_rrc_plmn_IdentityList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PLMN_IdentityList }, + { &hf_lte_rrc_cellIdentity_13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CellIdentity }, + { &hf_lte_rrc_carrierFreqInfo_13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_discRxResources_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscRxPoolList_r12 }, + { &hf_lte_rrc_discTxPoolCommon_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPoolList_r12 }, + { &hf_lte_rrc_discTxPowerInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxPowerInfoList_r12 }, + { &hf_lte_rrc_discSyncConfig_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SL_SyncConfigNFreq_r13 }, + { &hf_lte_rrc_discCellSelectionInfo_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_discCellSelectionInfo_r13 }, + { &hf_lte_rrc_cellReselectionInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_cellReselectionInfo_r13 }, + { &hf_lte_rrc_tdd_Config_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_TDD_Config }, + { &hf_lte_rrc_freqInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_freqInfo_r13 }, + { &hf_lte_rrc_p_Max_r13 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_P_Max }, + { &hf_lte_rrc_referenceSignalPower_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_M60_50 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscSysInfoReport_r13_eag_1 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SL_DiscSysInfoReport_r13(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_lte_rrc_SL_DiscSysInfoReport_r13, SL_DiscSysInfoReport_r13_sequence); + + return offset; +} + + +static const per_sequence_t SL_DiscSysInfoReportFreqList_r13_sequence_of[1] = { + { &hf_lte_rrc_SL_DiscSysInfoReportFreqList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_DiscSysInfoReport_r13 }, +}; + +static int +dissect_lte_rrc_SL_DiscSysInfoReportFreqList_r13(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_lte_rrc_SL_DiscSysInfoReportFreqList_r13, SL_DiscSysInfoReportFreqList_r13_sequence_of, + 1, maxSL_DiscSysInfoReportFreq_r13, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_maxFreqV2X_1_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxFreqV2X_1_r14, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t SL_V2X_CommFreqList_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_V2X_CommFreqList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxFreqV2X_1_r14 }, +}; + +static int +dissect_lte_rrc_SL_V2X_CommFreqList_r14(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_lte_rrc_SL_V2X_CommFreqList_r14, SL_V2X_CommFreqList_r14_sequence_of, + 1, maxFreqV2X_r14, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_p2x_CommTxType_r14_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_p2x_CommTxType_r14(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SL_V2X_CommTxResourceReq_r14_sequence[] = { + { &hf_lte_rrc_carrierFreqCommTx_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_maxFreqV2X_1_r14 }, + { &hf_lte_rrc_v2x_TypeTxSync_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_TypeTxSync_r14 }, + { &hf_lte_rrc_v2x_DestinationInfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DestinationInfoList_r12 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SL_V2X_CommTxResourceReq_r14(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_lte_rrc_SL_V2X_CommTxResourceReq_r14, SL_V2X_CommTxResourceReq_r14_sequence); + + return offset; +} + + +static const per_sequence_t SL_V2X_CommTxFreqList_r14_sequence_of[1] = { + { &hf_lte_rrc_SL_V2X_CommTxFreqList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SL_V2X_CommTxResourceReq_r14 }, +}; + +static int +dissect_lte_rrc_SL_V2X_CommTxFreqList_r14(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_lte_rrc_SL_V2X_CommTxFreqList_r14, SL_V2X_CommTxFreqList_r14_sequence_of, + 1, maxFreqV2X_r14, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_54_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_54(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_lte_rrc_T_nonCriticalExtension_54, T_nonCriticalExtension_54_sequence); + + return offset; +} + + +static const per_sequence_t SidelinkUEInformation_v1530_IEs_sequence[] = { + { &hf_lte_rrc_reliabilityInfoListSL_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_ReliabilityList_r15 }, + { &hf_lte_rrc_nonCriticalExtension_157, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_54 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SidelinkUEInformation_v1530_IEs(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_lte_rrc_SidelinkUEInformation_v1530_IEs, SidelinkUEInformation_v1530_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SidelinkUEInformation_v1430_IEs_sequence[] = { + { &hf_lte_rrc_v2x_CommRxInterestedFreqList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_CommFreqList_r14 }, + { &hf_lte_rrc_p2x_CommTxType_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_p2x_CommTxType_r14 }, + { &hf_lte_rrc_v2x_CommTxResourceReq_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_V2X_CommTxFreqList_r14 }, + { &hf_lte_rrc_nonCriticalExtension_156, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SidelinkUEInformation_v1530_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SidelinkUEInformation_v1430_IEs(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_lte_rrc_SidelinkUEInformation_v1430_IEs, SidelinkUEInformation_v1430_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SidelinkUEInformation_v1310_IEs_sequence[] = { + { &hf_lte_rrc_commTxResourceReqUC_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxResourceReq_r12 }, + { &hf_lte_rrc_commTxResourceInfoReqRelay_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commTxResourceInfoReqRelay_r13 }, + { &hf_lte_rrc_discTxResourceReq_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discTxResourceReq_v1310 }, + { &hf_lte_rrc_discTxResourceReqPS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscTxResourceReq_r13 }, + { &hf_lte_rrc_discRxGapReq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_GapRequest_r13 }, + { &hf_lte_rrc_discTxGapReq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_GapRequest_r13 }, + { &hf_lte_rrc_discSysInfoReportFreqList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_DiscSysInfoReportFreqList_r13 }, + { &hf_lte_rrc_nonCriticalExtension_155, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SidelinkUEInformation_v1430_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SidelinkUEInformation_v1310_IEs(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_lte_rrc_SidelinkUEInformation_v1310_IEs, SidelinkUEInformation_v1310_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SidelinkUEInformation_r12_IEs_sequence[] = { + { &hf_lte_rrc_commRxInterestedFreq_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_commTxResourceReq_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_CommTxResourceReq_r12 }, + { &hf_lte_rrc_discRxInterest_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discRxInterest_r12 }, + { &hf_lte_rrc_discTxResourceReq_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_63 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_154, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SidelinkUEInformation_v1310_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SidelinkUEInformation_r12_IEs(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_lte_rrc_SidelinkUEInformation_r12_IEs, SidelinkUEInformation_r12_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_40_vals[] = { + { 0, "sidelinkUEInformation-r12" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_40_choice[] = { + { 0, &hf_lte_rrc_sidelinkUEInformation_r12_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SidelinkUEInformation_r12_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_40(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_lte_rrc_T_c1_40, T_c1_40_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_44_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_44(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_lte_rrc_T_criticalExtensionsFuture_44, T_criticalExtensionsFuture_44_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_45_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_45_choice[] = { + { 0, &hf_lte_rrc_c1_40 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_40 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_44, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_44 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_45(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_lte_rrc_T_criticalExtensions_45, T_criticalExtensions_45_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SidelinkUEInformation_r12_sequence[] = { + { &hf_lte_rrc_criticalExtensions_45, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_45 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SidelinkUEInformation_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SidelinkUEInformation-r12"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SidelinkUEInformation_r12, SidelinkUEInformation_r12_sequence); + + return offset; +} + + +static const value_string lte_rrc_WLAN_Status_r13_vals[] = { + { 0, "successfulAssociation" }, + { 1, "failureWlanRadioLink" }, + { 2, "failureWlanUnavailable" }, + { 3, "failureTimeout" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_WLAN_Status_r13(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 lte_rrc_WLAN_Status_v1430_vals[] = { + { 0, "suspended" }, + { 1, "resumed" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_WLAN_Status_v1430(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_70_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_70(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_lte_rrc_T_nonCriticalExtension_70, T_nonCriticalExtension_70_sequence); + + return offset; +} + + +static const per_sequence_t WLANConnectionStatusReport_v1430_IEs_sequence[] = { + { &hf_lte_rrc_wlan_Status_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Status_v1430 }, + { &hf_lte_rrc_nonCriticalExtension_212, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_70 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_WLANConnectionStatusReport_v1430_IEs(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_lte_rrc_WLANConnectionStatusReport_v1430_IEs, WLANConnectionStatusReport_v1430_IEs_sequence); + + return offset; +} + + +static const per_sequence_t WLANConnectionStatusReport_r13_IEs_sequence[] = { + { &hf_lte_rrc_wlan_Status_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_Status_r13 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_211, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLANConnectionStatusReport_v1430_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_WLANConnectionStatusReport_r13_IEs(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_lte_rrc_WLANConnectionStatusReport_r13_IEs, WLANConnectionStatusReport_r13_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_49_vals[] = { + { 0, "wlanConnectionStatusReport-r13" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_49_choice[] = { + { 0, &hf_lte_rrc_wlanConnectionStatusReport_r13_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_WLANConnectionStatusReport_r13_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_49(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_lte_rrc_T_c1_49, T_c1_49_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_54_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_54(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_lte_rrc_T_criticalExtensionsFuture_54, T_criticalExtensionsFuture_54_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_55_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_55_choice[] = { + { 0, &hf_lte_rrc_c1_49 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_49 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_54, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_54 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_55(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_lte_rrc_T_criticalExtensions_55, T_criticalExtensions_55_choice, + NULL); + + return offset; +} + + +static const per_sequence_t WLANConnectionStatusReport_r13_sequence[] = { + { &hf_lte_rrc_criticalExtensions_55, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_55 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_WLANConnectionStatusReport_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "WLANConnectionStatusReport-r13"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_WLANConnectionStatusReport_r13, WLANConnectionStatusReport_r13_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_rlf_InfoAvailable_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rlf_InfoAvailable_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailable_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailable_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_connEstFailInfoAvailable_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_connEstFailInfoAvailable_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_mobilityState_r13_vals[] = { + { 0, "normal" }, + { 1, "medium" }, + { 2, "high" }, + { 3, "spare" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mobilityState_r13(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 lte_rrc_T_mobilityHistoryAvail_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mobilityHistoryAvail_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableMBSFN_r13_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableMBSFN_r13(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableBT_r15_02_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableBT_r15_02(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_logMeasAvailableWLAN_r15_02_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_logMeasAvailableWLAN_r15_02(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_idleMeasAvailable_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_idleMeasAvailable_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_flightPathInfoAvailable_r15_02_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_flightPathInfoAvailable_r15_02(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_41_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_41(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_lte_rrc_T_nonCriticalExtension_41, T_nonCriticalExtension_41_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionResumeComplete_v1530_IEs_sequence[] = { + { &hf_lte_rrc_logMeasAvailableBT_r15_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableBT_r15_02 }, + { &hf_lte_rrc_logMeasAvailableWLAN_r15_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableWLAN_r15_02 }, + { &hf_lte_rrc_idleMeasAvailable_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_idleMeasAvailable_r15 }, + { &hf_lte_rrc_flightPathInfoAvailable_r15_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_flightPathInfoAvailable_r15_02 }, + { &hf_lte_rrc_nonCriticalExtension_127, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_41 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionResumeComplete_v1530_IEs(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_lte_rrc_RRCConnectionResumeComplete_v1530_IEs, RRCConnectionResumeComplete_v1530_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionResumeComplete_r13_IEs_sequence[] = { + { &hf_lte_rrc_selectedPLMN_Identity_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, + { &hf_lte_rrc_dedicatedInfoNAS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DedicatedInfoNAS }, + { &hf_lte_rrc_rlf_InfoAvailable_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlf_InfoAvailable_r13 }, + { &hf_lte_rrc_logMeasAvailable_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailable_r13 }, + { &hf_lte_rrc_connEstFailInfoAvailable_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_connEstFailInfoAvailable_r13 }, + { &hf_lte_rrc_mobilityState_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityState_r13 }, + { &hf_lte_rrc_mobilityHistoryAvail_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mobilityHistoryAvail_r13 }, + { &hf_lte_rrc_logMeasAvailableMBSFN_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logMeasAvailableMBSFN_r13 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_126, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionResumeComplete_v1530_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionResumeComplete_r13_IEs(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_lte_rrc_RRCConnectionResumeComplete_r13_IEs, RRCConnectionResumeComplete_r13_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_34_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_34(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_lte_rrc_T_criticalExtensionsFuture_34, T_criticalExtensionsFuture_34_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_34_vals[] = { + { 0, "rrcConnectionResumeComplete-r13" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_34_choice[] = { + { 0, &hf_lte_rrc_rrcConnectionResumeComplete_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeComplete_r13_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_34, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_34 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_34(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_lte_rrc_T_criticalExtensions_34, T_criticalExtensions_34_choice, + NULL); + + return offset; +} + + +static const per_sequence_t RRCConnectionResumeComplete_r13_sequence[] = { + { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, + { &hf_lte_rrc_criticalExtensions_34, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_34 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionResumeComplete_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCConnectionResumeComplete-r13"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RRCConnectionResumeComplete_r13, RRCConnectionResumeComplete_r13_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_T_ul_DCCH_MessageNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *nr_ul_dcch_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &nr_ul_dcch_tvb); + + + if (nr_ul_dcch_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_ul_DCCH_MessageNR_r15); + dissect_nr_rrc_UL_DCCH_Message_PDU(nr_ul_dcch_tvb, actx->pinfo, subtree, NULL); + } + + + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_69_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_69(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_lte_rrc_T_nonCriticalExtension_69, T_nonCriticalExtension_69_sequence); + + return offset; +} + + +static const per_sequence_t ULInformationTransferMRDC_r15_IEs_sequence[] = { + { &hf_lte_rrc_ul_DCCH_MessageNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_DCCH_MessageNR_r15 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_210, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_69 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ULInformationTransferMRDC_r15_IEs(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_lte_rrc_ULInformationTransferMRDC_r15_IEs, ULInformationTransferMRDC_r15_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_48_vals[] = { + { 0, "ulInformationTransferMRDC-r15" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_48_choice[] = { + { 0, &hf_lte_rrc_ulInformationTransferMRDC_r15_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULInformationTransferMRDC_r15_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_48(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_lte_rrc_T_c1_48, T_c1_48_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_53_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_53(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_lte_rrc_T_criticalExtensionsFuture_53, T_criticalExtensionsFuture_53_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_54_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_54_choice[] = { + { 0, &hf_lte_rrc_c1_48 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_48 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_53, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_53 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_54(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_lte_rrc_T_criticalExtensions_54, T_criticalExtensions_54_choice, + NULL); + + return offset; +} + + +static const per_sequence_t ULInformationTransferMRDC_r15_sequence[] = { + { &hf_lte_rrc_criticalExtensions_54, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_54 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ULInformationTransferMRDC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "ULInformationTransferMRDC-r15"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_ULInformationTransferMRDC_r15, ULInformationTransferMRDC_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_failureType_r15_vals[] = { + { 0, "t310-Expiry" }, + { 1, "randomAccessProblem" }, + { 2, "rlc-MaxNumRetx" }, + { 3, "scg-ChangeFailure" }, + { 4, "scg-reconfigFailure" }, + { 5, "srb3-IntegrityFailure" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_failureType_r15(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, + 6, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t MeasResultFreqFailNR_r15_sequence[] = { + { &hf_lte_rrc_carrierFreq_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueNR_r15 }, + { &hf_lte_rrc_measResultCellList_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultCellListNR_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasResultFreqFailNR_r15(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_lte_rrc_MeasResultFreqFailNR_r15, MeasResultFreqFailNR_r15_sequence); + + return offset; +} + + +static const per_sequence_t MeasResultFreqListFailNR_r15_sequence_of[1] = { + { &hf_lte_rrc_MeasResultFreqListFailNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultFreqFailNR_r15 }, +}; + +static int +dissect_lte_rrc_MeasResultFreqListFailNR_r15(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_lte_rrc_MeasResultFreqListFailNR_r15, MeasResultFreqListFailNR_r15_sequence_of, + 1, maxFreqNR_r15, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_T_measResultSCG_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *meas_results_tvb = NULL; + + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, &meas_results_tvb); + + + if (meas_results_tvb) { + proto_tree *subtree; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_measResultSCG_r15); + dissect_nr_rrc_MeasResults_PDU(meas_results_tvb, actx->pinfo, subtree, NULL); + } + + + return offset; +} + + +static const per_sequence_t FailureReportSCG_NR_r15_sequence[] = { + { &hf_lte_rrc_failureType_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_failureType_r15 }, + { &hf_lte_rrc_measResultFreqListNR_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultFreqListFailNR_r15 }, + { &hf_lte_rrc_measResultSCG_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_measResultSCG_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_FailureReportSCG_NR_r15(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_lte_rrc_FailureReportSCG_NR_r15, FailureReportSCG_NR_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_48_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_48(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_lte_rrc_T_nonCriticalExtension_48, T_nonCriticalExtension_48_sequence); + + return offset; +} + + +static const per_sequence_t SCGFailureInformationNR_r15_IEs_sequence[] = { + { &hf_lte_rrc_failureReportSCG_NR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FailureReportSCG_NR_r15 }, + { &hf_lte_rrc_nonCriticalExtension_144, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_48 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCGFailureInformationNR_r15_IEs(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_lte_rrc_SCGFailureInformationNR_r15_IEs, SCGFailureInformationNR_r15_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_38_vals[] = { + { 0, "scgFailureInformationNR-r15" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_38_choice[] = { + { 0, &hf_lte_rrc_scgFailureInformationNR_r15_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCGFailureInformationNR_r15_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_38(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_lte_rrc_T_c1_38, T_c1_38_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_40_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_40(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_lte_rrc_T_criticalExtensionsFuture_40, T_criticalExtensionsFuture_40_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_41_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_41_choice[] = { + { 0, &hf_lte_rrc_c1_38 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_38 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_40, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_40 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_41(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_lte_rrc_T_criticalExtensions_41, T_criticalExtensions_41_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SCGFailureInformationNR_r15_sequence[] = { + { &hf_lte_rrc_criticalExtensions_41, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_41 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCGFailureInformationNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SCGFailureInformationNR-r15"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SCGFailureInformationNR_r15, SCGFailureInformationNR_r15_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_OCTET_STRING_SIZE_1_8000(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index, + 1, 8000, FALSE, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_serviceType_vals[] = { + { 0, "qoe" }, + { 1, "qoemtsi" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_serviceType(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_22_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_22(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_lte_rrc_T_nonCriticalExtension_22, T_nonCriticalExtension_22_sequence); + + return offset; +} + + +static const per_sequence_t MeasReportAppLayer_r15_IEs_sequence[] = { + { &hf_lte_rrc_measReportAppLayerContainer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_1_8000 }, + { &hf_lte_rrc_serviceType , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_serviceType }, + { &hf_lte_rrc_nonCriticalExtension_57, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_22 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasReportAppLayer_r15_IEs(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_lte_rrc_MeasReportAppLayer_r15_IEs, MeasReportAppLayer_r15_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_18_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_18(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_lte_rrc_T_criticalExtensionsFuture_18, T_criticalExtensionsFuture_18_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_18_vals[] = { + { 0, "measReportAppLayer-r15" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_18_choice[] = { + { 0, &hf_lte_rrc_measReportAppLayer_r15_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MeasReportAppLayer_r15_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_18, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_18 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_18(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_lte_rrc_T_criticalExtensions_18, T_criticalExtensions_18_choice, + NULL); + + return offset; +} + + +static const per_sequence_t MeasReportAppLayer_r15_sequence[] = { + { &hf_lte_rrc_criticalExtensions_18, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_18 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasReportAppLayer_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MeasReportAppLayer-r15"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_MeasReportAppLayer_r15, MeasReportAppLayer_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_cellGroupIndication_r15_vals[] = { + { 0, "mn" }, + { 1, "sn" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_cellGroupIndication_r15(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_failedLogicalChannelIdentity_r15_sequence[] = { + { &hf_lte_rrc_cellGroupIndication_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellGroupIndication_r15 }, + { &hf_lte_rrc_logicalChannelIdentity_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_10 }, + { &hf_lte_rrc_logicalChannelIdentityExt_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_32_38 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_failedLogicalChannelIdentity_r15(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_lte_rrc_T_failedLogicalChannelIdentity_r15, T_failedLogicalChannelIdentity_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_failureType_vals[] = { + { 0, "duplication" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_failureType(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 per_sequence_t FailedLogicalChannelInfo_r15_sequence[] = { + { &hf_lte_rrc_failedLogicalChannelIdentity_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_failedLogicalChannelIdentity_r15 }, + { &hf_lte_rrc_failureType , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_failureType }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_FailedLogicalChannelInfo_r15(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_lte_rrc_FailedLogicalChannelInfo_r15, FailedLogicalChannelInfo_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_13_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_13(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_lte_rrc_T_nonCriticalExtension_13, T_nonCriticalExtension_13_sequence); + + return offset; +} + + +static const per_sequence_t FailureInformation_r15_sequence[] = { + { &hf_lte_rrc_failedLogicalChannelInfo_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FailedLogicalChannelInfo_r15 }, + { &hf_lte_rrc_nonCriticalExtension_33, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nonCriticalExtension_13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_FailureInformation_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "FailureInformation-r15"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_FailureInformation_r15, FailureInformation_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c2_03_vals[] = { + { 0, "ueAssistanceInformation-r11" }, + { 1, "inDeviceCoexIndication-r11" }, + { 2, "mbmsInterestIndication-r11" }, + { 3, "scgFailureInformation-r12" }, + { 4, "sidelinkUEInformation-r12" }, + { 5, "wlanConnectionStatusReport-r13" }, + { 6, "rrcConnectionResumeComplete-r13" }, + { 7, "ulInformationTransferMRDC-r15" }, + { 8, "scgFailureInformationNR-r15" }, + { 9, "measReportAppLayer-r15" }, + { 10, "failureInformation-r15" }, + { 11, "spare5" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c2_03_choice[] = { + { 0, &hf_lte_rrc_ueAssistanceInformation_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEAssistanceInformation_r11 }, + { 1, &hf_lte_rrc_inDeviceCoexIndication_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_InDeviceCoexIndication_r11 }, + { 2, &hf_lte_rrc_mbmsInterestIndication_r11_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MBMSInterestIndication_r11 }, + { 3, &hf_lte_rrc_scgFailureInformation_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCGFailureInformation_r12 }, + { 4, &hf_lte_rrc_sidelinkUEInformation_r12_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SidelinkUEInformation_r12 }, + { 5, &hf_lte_rrc_wlanConnectionStatusReport_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_WLANConnectionStatusReport_r13 }, + { 6, &hf_lte_rrc_rrcConnectionResumeComplete_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeComplete_r13 }, + { 7, &hf_lte_rrc_ulInformationTransferMRDC_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULInformationTransferMRDC_r15 }, + { 8, &hf_lte_rrc_scgFailureInformationNR_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCGFailureInformationNR_r15 }, + { 9, &hf_lte_rrc_measReportAppLayer_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MeasReportAppLayer_r15 }, + { 10, &hf_lte_rrc_failureInformation_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_FailureInformation_r15 }, + { 11, &hf_lte_rrc_spare5 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 12, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 13, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 14, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 15, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c2_03(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_lte_rrc_T_c2_03, T_c2_03_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_messageClassExtensionFuture_r11_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_messageClassExtensionFuture_r11(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_lte_rrc_T_messageClassExtensionFuture_r11, T_messageClassExtensionFuture_r11_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_messageClassExtension_08_vals[] = { + { 0, "c2" }, + { 1, "messageClassExtensionFuture-r11" }, + { 0, NULL } +}; + +static const per_choice_t T_messageClassExtension_08_choice[] = { + { 0, &hf_lte_rrc_c2_03 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c2_03 }, + { 1, &hf_lte_rrc_messageClassExtensionFuture_r11, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtensionFuture_r11 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_messageClassExtension_08(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_lte_rrc_T_messageClassExtension_08, T_messageClassExtension_08_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_UL_DCCH_MessageType_vals[] = { + { 0, "c1" }, + { 1, "messageClassExtension" }, + { 0, NULL } +}; + +static const per_choice_t UL_DCCH_MessageType_choice[] = { + { 0, &hf_lte_rrc_c1_15 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_15 }, + { 1, &hf_lte_rrc_messageClassExtension_08, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_08 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_UL_DCCH_MessageType(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_lte_rrc_UL_DCCH_MessageType, UL_DCCH_MessageType_choice, + NULL); + + return offset; +} + + +static const per_sequence_t UL_DCCH_Message_sequence[] = { + { &hf_lte_rrc_message_10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_DCCH_MessageType }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UL_DCCH_Message(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + actx->pinfo->link_dir = P2P_DIR_UL; + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_UL_DCCH_Message, UL_DCCH_Message_sequence); + + return offset; +} + + +static const per_sequence_t MBMSSessionInfo_r13_sequence[] = { + { &hf_lte_rrc_tmgi_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TMGI_r9 }, + { &hf_lte_rrc_sessionId_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_1 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MBMSSessionInfo_r13(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_lte_rrc_MBMSSessionInfo_r13, MBMSSessionInfo_r13_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_onDurationTimerSCPTM_r13_vals[] = { + { 0, "psf1" }, + { 1, "psf2" }, { 2, "psf3" }, { 3, "psf4" }, { 4, "psf5" }, @@ -66201,1142 +79329,4618 @@ static const value_string lte_rrc_T_onDurationTimerSCPTM_r13_vals[] = { static int -dissect_lte_rrc_T_onDurationTimerSCPTM_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_onDurationTimerSCPTM_r13(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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_drx_InactivityTimerSCPTM_r13_vals[] = { + { 0, "psf0" }, + { 1, "psf1" }, + { 2, "psf2" }, + { 3, "psf4" }, + { 4, "psf8" }, + { 5, "psf10" }, + { 6, "psf20" }, + { 7, "psf40" }, + { 8, "psf80" }, + { 9, "psf160" }, + { 10, "ps320" }, + { 11, "psf640" }, + { 12, "psf960" }, + { 13, "psf1280" }, + { 14, "psf1920" }, + { 15, "psf2560" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r13(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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_2048(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 2048U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_4096(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 4096U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_8192(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 8192U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r13_vals[] = { + { 0, "sf10" }, + { 1, "sf20" }, + { 2, "sf32" }, + { 3, "sf40" }, + { 4, "sf64" }, + { 5, "sf80" }, + { 6, "sf128" }, + { 7, "sf160" }, + { 8, "sf256" }, + { 9, "sf320" }, + { 10, "sf512" }, + { 11, "sf640" }, + { 12, "sf1024" }, + { 13, "sf2048" }, + { 14, "sf4096" }, + { 15, "sf8192" }, + { 0, NULL } +}; + +static const per_choice_t T_schedulingPeriodStartOffsetSCPTM_r13_choice[] = { + { 0, &hf_lte_rrc_sf10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_9 }, + { 1, &hf_lte_rrc_sf20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_19 }, + { 2, &hf_lte_rrc_sf32 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_31 }, + { 3, &hf_lte_rrc_sf40 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_39 }, + { 4, &hf_lte_rrc_sf64 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_63 }, + { 5, &hf_lte_rrc_sf80 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_79 }, + { 6, &hf_lte_rrc_sf128 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_127 }, + { 7, &hf_lte_rrc_sf160 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_159 }, + { 8, &hf_lte_rrc_sf256 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_255 }, + { 9, &hf_lte_rrc_sf320 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, + { 10, &hf_lte_rrc_sf512 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_511 }, + { 11, &hf_lte_rrc_sf640 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, + { 12, &hf_lte_rrc_sf1024 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1023 }, + { 13, &hf_lte_rrc_sf2048_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_2048 }, + { 14, &hf_lte_rrc_sf4096_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_4096 }, + { 15, &hf_lte_rrc_sf8192_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_8192 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r13(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_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r13, T_schedulingPeriodStartOffsetSCPTM_r13_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SC_MTCH_SchedulingInfo_r13_sequence[] = { + { &hf_lte_rrc_onDurationTimerSCPTM_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_onDurationTimerSCPTM_r13 }, + { &hf_lte_rrc_drx_InactivityTimerSCPTM_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r13 }, + { &hf_lte_rrc_schedulingPeriodStartOffsetSCPTM_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SC_MTCH_SchedulingInfo_r13(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_lte_rrc_SC_MTCH_SchedulingInfo_r13, SC_MTCH_SchedulingInfo_r13_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_BIT_STRING_SIZE_maxNeighCell_SCPTM_r13(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, + maxNeighCell_SCPTM_r13, maxNeighCell_SCPTM_r13, FALSE, NULL, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_p_a_r13_vals[] = { + { 0, "dB-6" }, + { 1, "dB-4dot77" }, + { 2, "dB-3" }, + { 3, "dB-1dot77" }, + { 4, "dB0" }, + { 5, "dB1" }, + { 6, "dB2" }, + { 7, "dB3" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_p_a_r13(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SC_MTCH_Info_r13_eag_1_sequence[] = { + { &hf_lte_rrc_p_a_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_p_a_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SC_MTCH_Info_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SC_MTCH_Info_r13_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t SC_MTCH_Info_r13_sequence[] = { + { &hf_lte_rrc_mbmsSessionInfo_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMSSessionInfo_r13 }, + { &hf_lte_rrc_g_RNTI_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { &hf_lte_rrc_sc_mtch_schedulingInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SC_MTCH_SchedulingInfo_r13 }, + { &hf_lte_rrc_sc_mtch_neighbourCell_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_maxNeighCell_SCPTM_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_Info_r13_eag_1 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SC_MTCH_Info_r13(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_lte_rrc_SC_MTCH_Info_r13, SC_MTCH_Info_r13_sequence); + + return offset; +} + + +static const per_sequence_t SC_MTCH_InfoList_r13_sequence_of[1] = { + { &hf_lte_rrc_SC_MTCH_InfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_Info_r13 }, +}; + +static int +dissect_lte_rrc_SC_MTCH_InfoList_r13(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_lte_rrc_SC_MTCH_InfoList_r13, SC_MTCH_InfoList_r13_sequence_of, + 0, maxSC_MTCH_r13, FALSE); + + return offset; +} + + +static const per_sequence_t PCI_ARFCN_r13_sequence[] = { + { &hf_lte_rrc_physCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_carrierFreq_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PCI_ARFCN_r13(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_lte_rrc_PCI_ARFCN_r13, PCI_ARFCN_r13_sequence); + + return offset; +} + + +static const per_sequence_t SCPTM_NeighbourCellList_r13_sequence_of[1] = { + { &hf_lte_rrc_SCPTM_NeighbourCellList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PCI_ARFCN_r13 }, +}; + +static int +dissect_lte_rrc_SCPTM_NeighbourCellList_r13(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_lte_rrc_SCPTM_NeighbourCellList_r13, SCPTM_NeighbourCellList_r13_sequence_of, + 1, maxNeighCell_SCPTM_r13, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_49_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_49(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_lte_rrc_T_nonCriticalExtension_49, T_nonCriticalExtension_49_sequence); + + return offset; +} + + +static const per_sequence_t SCPTMConfiguration_v1340_sequence[] = { + { &hf_lte_rrc_p_b_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_nonCriticalExtension_146, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_49 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCPTMConfiguration_v1340(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_lte_rrc_SCPTMConfiguration_v1340, SCPTMConfiguration_v1340_sequence); + + return offset; +} + + +static const per_sequence_t SCPTMConfiguration_r13_sequence[] = { + { &hf_lte_rrc_sc_mtch_InfoList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_InfoList_r13 }, + { &hf_lte_rrc_scptm_NeighbourCellList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTM_NeighbourCellList_r13 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_145, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTMConfiguration_v1340 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCPTMConfiguration_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SCPTMConfiguration-r13"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SCPTMConfiguration_r13, SCPTMConfiguration_r13_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c1_16_vals[] = { + { 0, "scptmConfiguration-r13" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_16_choice[] = { + { 0, &hf_lte_rrc_scptmConfiguration_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCPTMConfiguration_r13 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c1_16(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_lte_rrc_T_c1_16, T_c1_16_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_onDurationTimerSCPTM_r14_01_vals[] = { + { 0, "psf300" }, + { 1, "psf400" }, + { 2, "psf500" }, + { 3, "psf600" }, + { 4, "psf800" }, + { 5, "psf1000" }, + { 6, "psf1200" }, + { 7, "psf1600" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_onDurationTimerSCPTM_r14_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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_drx_InactivityTimerSCPTM_r14_01_vals[] = { + { 0, "psf0" }, + { 1, "psf1" }, + { 2, "psf2" }, + { 3, "psf4" }, + { 4, "psf8" }, + { 5, "psf16" }, + { 6, "psf32" }, + { 7, "psf64" }, + { 8, "psf128" }, + { 9, "psf256" }, + { 10, "ps512" }, + { 11, "psf1024" }, + { 12, "psf2048" }, + { 13, "psf4096" }, + { 14, "psf8192" }, + { 15, "psf16384" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r14_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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_01_vals[] = { + { 0, "sf10" }, + { 1, "sf20" }, + { 2, "sf32" }, + { 3, "sf40" }, + { 4, "sf64" }, + { 5, "sf80" }, + { 6, "sf128" }, + { 7, "sf160" }, + { 8, "sf256" }, + { 9, "sf320" }, + { 10, "sf512" }, + { 11, "sf640" }, + { 12, "sf1024" }, + { 13, "sf2048" }, + { 14, "sf4096" }, + { 15, "sf8192" }, + { 0, NULL } +}; + +static const per_choice_t T_schedulingPeriodStartOffsetSCPTM_r14_01_choice[] = { + { 0, &hf_lte_rrc_sf10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_9 }, + { 1, &hf_lte_rrc_sf20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_19 }, + { 2, &hf_lte_rrc_sf32 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_31 }, + { 3, &hf_lte_rrc_sf40 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_39 }, + { 4, &hf_lte_rrc_sf64 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_63 }, + { 5, &hf_lte_rrc_sf80 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_79 }, + { 6, &hf_lte_rrc_sf128 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_127 }, + { 7, &hf_lte_rrc_sf160 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_159 }, + { 8, &hf_lte_rrc_sf256 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_255 }, + { 9, &hf_lte_rrc_sf320 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, + { 10, &hf_lte_rrc_sf512 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_511 }, + { 11, &hf_lte_rrc_sf640 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, + { 12, &hf_lte_rrc_sf1024 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1023 }, + { 13, &hf_lte_rrc_sf2048 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_2047 }, + { 14, &hf_lte_rrc_sf4096 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_4095 }, + { 15, &hf_lte_rrc_sf8192 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_8191 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_01(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_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_01, T_schedulingPeriodStartOffsetSCPTM_r14_01_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SC_MTCH_SchedulingInfo_BR_r14_sequence[] = { + { &hf_lte_rrc_onDurationTimerSCPTM_r14_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_onDurationTimerSCPTM_r14_01 }, + { &hf_lte_rrc_drx_InactivityTimerSCPTM_r14_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r14_01 }, + { &hf_lte_rrc_schedulingPeriodStartOffsetSCPTM_r14_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SC_MTCH_SchedulingInfo_BR_r14(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_lte_rrc_SC_MTCH_SchedulingInfo_BR_r14, SC_MTCH_SchedulingInfo_BR_r14_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_mpdcch_NumRepetition_SC_MTCH_r14_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "r128" }, + { 8, "r256" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mpdcch_NumRepetition_SC_MTCH_r14(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_fdd_r14_01_vals[] = { + { 0, "v1" }, + { 1, "v1dot5" }, + { 2, "v2" }, + { 3, "v2dot5" }, + { 4, "v4" }, + { 5, "v5" }, + { 6, "v8" }, + { 7, "v10" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_fdd_r14_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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_tdd_r14_01_vals[] = { + { 0, "v1" }, + { 1, "v2" }, + { 2, "v4" }, + { 3, "v5" }, + { 4, "v8" }, + { 5, "v10" }, + { 6, "v20" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_tdd_r14_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, + 7, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_mpdcch_StartSF_SC_MTCH_r14_vals[] = { + { 0, "fdd-r14" }, + { 1, "tdd-r14" }, + { 0, NULL } +}; + +static const per_choice_t T_mpdcch_StartSF_SC_MTCH_r14_choice[] = { + { 0, &hf_lte_rrc_fdd_r14_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fdd_r14_01 }, + { 1, &hf_lte_rrc_tdd_r14_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tdd_r14_01 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_mpdcch_StartSF_SC_MTCH_r14(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_lte_rrc_T_mpdcch_StartSF_SC_MTCH_r14, T_mpdcch_StartSF_SC_MTCH_r14_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MTCH_r14_vals[] = { + { 0, "on" }, + { 1, "off" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MTCH_r14(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_mpdcch_PDSCH_CEmodeConfig_SC_MTCH_r14_vals[] = { + { 0, "ce-ModeA" }, + { 1, "ce-ModeB" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mpdcch_PDSCH_CEmodeConfig_SC_MTCH_r14(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_mpdcch_PDSCH_MaxBandwidth_SC_MTCH_r14_vals[] = { + { 0, "bw1dot4" }, + { 1, "bw5" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mpdcch_PDSCH_MaxBandwidth_SC_MTCH_r14(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_mpdcch_Offset_SC_MTCH_r14_vals[] = { + { 0, "zero" }, + { 1, "oneEighth" }, + { 2, "oneQuarter" }, + { 3, "threeEighth" }, + { 4, "oneHalf" }, + { 5, "fiveEighth" }, + { 6, "threeQuarter" }, + { 7, "sevenEighth" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mpdcch_Offset_SC_MTCH_r14(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_p_a_r14_vals[] = { + { 0, "dB-6" }, + { 1, "dB-4dot77" }, + { 2, "dB-3" }, + { 3, "dB-1dot77" }, + { 4, "dB0" }, + { 5, "dB1" }, + { 6, "dB2" }, + { 7, "dB3" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_p_a_r14(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SC_MTCH_Info_BR_r14_sequence[] = { + { &hf_lte_rrc_sc_mtch_CarrierFreq_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_mbmsSessionInfo_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMSSessionInfo_r13 }, + { &hf_lte_rrc_g_RNTI_r14 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, + { &hf_lte_rrc_sc_mtch_schedulingInfo_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SC_MTCH_SchedulingInfo_BR_r14 }, + { &hf_lte_rrc_sc_mtch_neighbourCell_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_maxNeighCell_SCPTM_r13 }, + { &hf_lte_rrc_mpdcch_Narrowband_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, + { &hf_lte_rrc_mpdcch_NumRepetition_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NumRepetition_SC_MTCH_r14 }, + { &hf_lte_rrc_mpdcch_StartSF_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_StartSF_SC_MTCH_r14 }, + { &hf_lte_rrc_mpdcch_PDSCH_HoppingConfig_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MTCH_r14 }, + { &hf_lte_rrc_mpdcch_PDSCH_CEmodeConfig_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_PDSCH_CEmodeConfig_SC_MTCH_r14 }, + { &hf_lte_rrc_mpdcch_PDSCH_MaxBandwidth_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_PDSCH_MaxBandwidth_SC_MTCH_r14 }, + { &hf_lte_rrc_mpdcch_Offset_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_Offset_SC_MTCH_r14 }, + { &hf_lte_rrc_p_a_r14 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_p_a_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SC_MTCH_Info_BR_r14(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_lte_rrc_SC_MTCH_Info_BR_r14, SC_MTCH_Info_BR_r14_sequence); + + return offset; +} + + +static const per_sequence_t SC_MTCH_InfoList_BR_r14_sequence_of[1] = { + { &hf_lte_rrc_SC_MTCH_InfoList_BR_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_Info_BR_r14 }, +}; + +static int +dissect_lte_rrc_SC_MTCH_InfoList_BR_r14(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_lte_rrc_SC_MTCH_InfoList_BR_r14, SC_MTCH_InfoList_BR_r14_sequence_of, + 0, maxSC_MTCH_BR_r14, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_50_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_50(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_lte_rrc_T_nonCriticalExtension_50, T_nonCriticalExtension_50_sequence); + + return offset; +} + + +static const per_sequence_t SCPTMConfiguration_BR_r14_sequence[] = { + { &hf_lte_rrc_sc_mtch_InfoList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_InfoList_BR_r14 }, + { &hf_lte_rrc_scptm_NeighbourCellList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTM_NeighbourCellList_r13 }, + { &hf_lte_rrc_p_b_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_147, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_50 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCPTMConfiguration_BR_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SCPTMConfiguration-BR-r14"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SCPTMConfiguration_BR_r14, SCPTMConfiguration_BR_r14_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_c2_04_vals[] = { + { 0, "scptmConfiguration-BR-r14" }, + { 1, "spare" }, + { 0, NULL } +}; + +static const per_choice_t T_c2_04_choice[] = { + { 0, &hf_lte_rrc_scptmConfiguration_BR_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCPTMConfiguration_BR_r14 }, + { 1, &hf_lte_rrc_spare , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_c2_04(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_lte_rrc_T_c2_04, T_c2_04_choice, + NULL); + + return offset; +} + + +static const per_sequence_t T_messageClassExtensionFuture_r14_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_messageClassExtensionFuture_r14(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_lte_rrc_T_messageClassExtensionFuture_r14, T_messageClassExtensionFuture_r14_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_messageClassExtension_09_vals[] = { + { 0, "c2" }, + { 1, "messageClassExtensionFuture-r14" }, + { 0, NULL } +}; + +static const per_choice_t T_messageClassExtension_09_choice[] = { + { 0, &hf_lte_rrc_c2_04 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c2_04 }, + { 1, &hf_lte_rrc_messageClassExtensionFuture_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtensionFuture_r14 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_messageClassExtension_09(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_lte_rrc_T_messageClassExtension_09, T_messageClassExtension_09_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_SC_MCCH_MessageType_r13_vals[] = { + { 0, "c1" }, + { 1, "messageClassExtension" }, + { 0, NULL } +}; + +static const per_choice_t SC_MCCH_MessageType_r13_choice[] = { + { 0, &hf_lte_rrc_c1_16 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_16 }, + { 1, &hf_lte_rrc_messageClassExtension_09, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_09 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_SC_MCCH_MessageType_r13(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_lte_rrc_SC_MCCH_MessageType_r13, SC_MCCH_MessageType_r13_choice, + NULL); + + return offset; +} + + +static const per_sequence_t SC_MCCH_Message_r13_sequence[] = { + { &hf_lte_rrc_message_11 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MCCH_MessageType_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SC_MCCH_Message_r13(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_lte_rrc_SC_MCCH_Message_r13, SC_MCCH_Message_r13_sequence); + + return offset; +} + + +static const per_sequence_t MobilityControlInfo_v10l0_sequence[] = { + { &hf_lte_rrc_additionalSpectrumEmission_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MobilityControlInfo_v10l0(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_lte_rrc_MobilityControlInfo_v10l0, MobilityControlInfo_v10l0_sequence); + + return offset; +} + + +static const per_sequence_t SCellToAddMod_v10l0_sequence[] = { + { &hf_lte_rrc_radioResourceConfigCommonSCell_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonSCell_v10l0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCellToAddMod_v10l0(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_lte_rrc_SCellToAddMod_v10l0, SCellToAddMod_v10l0_sequence); + + return offset; +} + + +static const per_sequence_t SCellToAddModList_v10l0_sequence_of[1] = { + { &hf_lte_rrc_SCellToAddModList_v10l0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_v10l0 }, +}; + +static int +dissect_lte_rrc_SCellToAddModList_v10l0(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_lte_rrc_SCellToAddModList_v10l0, SCellToAddModList_v10l0_sequence_of, + 1, maxSCell_r10, FALSE); + + return offset; +} + + +static const per_sequence_t RadioResourceConfigCommonPSCell_v12f0_sequence[] = { + { &hf_lte_rrc_basicFields_v12f0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_v10l0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RadioResourceConfigCommonPSCell_v12f0(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_lte_rrc_RadioResourceConfigCommonPSCell_v12f0, RadioResourceConfigCommonPSCell_v12f0_sequence); + + return offset; +} + + +static const per_sequence_t PSCellToAddMod_v12f0_sequence[] = { + { &hf_lte_rrc_radioResourceConfigCommonPSCell_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonPSCell_v12f0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PSCellToAddMod_v12f0(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_lte_rrc_PSCellToAddMod_v12f0, PSCellToAddMod_v12f0_sequence); + + return offset; +} + + +static const per_sequence_t SCG_ConfigPartSCG_v12f0_sequence[] = { + { &hf_lte_rrc_pSCellToAddMod_v12f0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PSCellToAddMod_v12f0 }, + { &hf_lte_rrc_sCellToAddModListSCG_v12f0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_v10l0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCG_ConfigPartSCG_v12f0(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_lte_rrc_SCG_ConfigPartSCG_v12f0, SCG_ConfigPartSCG_v12f0_sequence); + + return offset; +} + + +static const per_sequence_t T_setup_04_sequence[] = { + { &hf_lte_rrc_scg_ConfigPartSCG_v12f0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigPartSCG_v12f0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_04(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_lte_rrc_T_setup_04, T_setup_04_sequence); + + return offset; +} + + +static const value_string lte_rrc_SCG_Configuration_v12f0_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t SCG_Configuration_v12f0_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_04 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_04 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_SCG_Configuration_v12f0(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_lte_rrc_SCG_Configuration_v12f0, SCG_Configuration_v12f0_choice, + NULL); + + return offset; +} + + +static const per_sequence_t RadioResourceConfigDedicated_v1370_sequence[] = { + { &hf_lte_rrc_physicalConfigDedicated_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicated_v1370 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RadioResourceConfigDedicated_v1370(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_lte_rrc_RadioResourceConfigDedicated_v1370, RadioResourceConfigDedicated_v1370_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_30_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_30(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_lte_rrc_T_nonCriticalExtension_30, T_nonCriticalExtension_30_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfiguration_v1370_IEs_sequence[] = { + { &hf_lte_rrc_radioResourceConfigDedicated_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicated_v1370 }, + { &hf_lte_rrc_sCellToAddModListExt_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_v1370 }, + { &hf_lte_rrc_nonCriticalExtension_83, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_30 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfiguration_v1370_IEs(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_lte_rrc_RRCConnectionReconfiguration_v1370_IEs, RRCConnectionReconfiguration_v1370_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfiguration_v12f0_IEs_sequence[] = { + { &hf_lte_rrc_scg_Configuration_v12f0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_Configuration_v12f0 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_82, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1370_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfiguration_v12f0_IEs(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_lte_rrc_RRCConnectionReconfiguration_v12f0_IEs, RRCConnectionReconfiguration_v12f0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfiguration_v10l0_IEs_sequence[] = { + { &hf_lte_rrc_mobilityControlInfo_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityControlInfo_v10l0 }, + { &hf_lte_rrc_sCellToAddModList_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_v10l0 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_81, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v12f0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfiguration_v10l0_IEs(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_lte_rrc_RRCConnectionReconfiguration_v10l0_IEs, RRCConnectionReconfiguration_v10l0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfiguration_v10i0_IEs_sequence[] = { + { &hf_lte_rrc_antennaInfoDedicatedPCell_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, + { &hf_lte_rrc_nonCriticalExtension_80, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v10l0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfiguration_v10i0_IEs(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_lte_rrc_RRCConnectionReconfiguration_v10i0_IEs, RRCConnectionReconfiguration_v10i0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionReconfiguration_v8m0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_79, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v10i0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionReconfiguration_v8m0_IEs(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_lte_rrc_RRCConnectionReconfiguration_v8m0_IEs, RRCConnectionReconfiguration_v8m0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RedirectedCarrierInfo_v9e0_sequence[] = { + { &hf_lte_rrc_eutra_v9e0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RedirectedCarrierInfo_v9e0(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_lte_rrc_RedirectedCarrierInfo_v9e0, RedirectedCarrierInfo_v9e0_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_37_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_37(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_lte_rrc_T_nonCriticalExtension_37, T_nonCriticalExtension_37_sequence); + + return offset; +} + + +static const per_sequence_t RRCConnectionRelease_v9e0_IEs_sequence[] = { + { &hf_lte_rrc_redirectedCarrierInfo_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedirectedCarrierInfo_v9e0 }, + { &hf_lte_rrc_idleModeMobilityControlInfo_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IdleModeMobilityControlInfo_v9e0 }, + { &hf_lte_rrc_nonCriticalExtension_118, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_37 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCConnectionRelease_v9e0_IEs(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_lte_rrc_RRCConnectionRelease_v9e0_IEs, RRCConnectionRelease_v9e0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t FailureReportSCG_v12d0_sequence[] = { + { &hf_lte_rrc_measResultNeighCells_v12d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v9e0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_FailureReportSCG_v12d0(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_lte_rrc_FailureReportSCG_v12d0, FailureReportSCG_v12d0_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_47_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_47(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_lte_rrc_T_nonCriticalExtension_47, T_nonCriticalExtension_47_sequence); + + return offset; +} + + +static const per_sequence_t SCGFailureInformation_v12d0_IEs_sequence[] = { + { &hf_lte_rrc_failureReportSCG_v12d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FailureReportSCG_v12d0 }, + { &hf_lte_rrc_nonCriticalExtension_143, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_47 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SCGFailureInformation_v12d0_IEs(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_lte_rrc_SCGFailureInformation_v12d0_IEs, SCGFailureInformation_v12d0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t MultiBandInfoList_sequence_of[1] = { + { &hf_lte_rrc_MultiBandInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator }, +}; + +static int +dissect_lte_rrc_MultiBandInfoList(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_lte_rrc_MultiBandInfoList, MultiBandInfoList_sequence_of, + 1, maxMultiBands, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_FreqBandIndicator_v9e0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + maxFBI_Plus1, maxFBI2, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t MultiBandInfo_v9e0_sequence[] = { + { &hf_lte_rrc_freqBandIndicator_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_v9e0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MultiBandInfo_v9e0(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_lte_rrc_MultiBandInfo_v9e0, MultiBandInfo_v9e0_sequence); + + return offset; +} + + +static const per_sequence_t MultiBandInfoList_v9e0_sequence_of[1] = { + { &hf_lte_rrc_MultiBandInfoList_v9e0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MultiBandInfo_v9e0 }, +}; + +static int +dissect_lte_rrc_MultiBandInfoList_v9e0(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_lte_rrc_MultiBandInfoList_v9e0, MultiBandInfoList_v9e0_sequence_of, + 1, maxMultiBands, FALSE); + + return offset; +} + + +static const per_sequence_t NS_PmaxValue_v10l0_sequence[] = { + { &hf_lte_rrc_additionalSpectrumEmission_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_NS_PmaxValue_v10l0(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_lte_rrc_NS_PmaxValue_v10l0, NS_PmaxValue_v10l0_sequence); + + return offset; +} + + +static const per_sequence_t NS_PmaxList_v10l0_sequence_of[1] = { + { &hf_lte_rrc_NS_PmaxList_v10l0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NS_PmaxValue_v10l0 }, +}; + +static int +dissect_lte_rrc_NS_PmaxList_v10l0(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_lte_rrc_NS_PmaxList_v10l0, NS_PmaxList_v10l0_sequence_of, + 1, maxNS_Pmax_r10, FALSE); + + return offset; +} + + +static const per_sequence_t MultiBandInfoList_v10l0_sequence_of[1] = { + { &hf_lte_rrc_MultiBandInfoList_v10l0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NS_PmaxList_v10l0 }, +}; + +static int +dissect_lte_rrc_MultiBandInfoList_v10l0(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_lte_rrc_MultiBandInfoList_v10l0, MultiBandInfoList_v10l0_sequence_of, + 1, maxMultiBands, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_57_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_57(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_lte_rrc_T_nonCriticalExtension_57, T_nonCriticalExtension_57_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType1_v10l0_IEs_sequence[] = { + { &hf_lte_rrc_freqBandInfo_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_v10l0 }, + { &hf_lte_rrc_multiBandInfoList_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10l0 }, + { &hf_lte_rrc_nonCriticalExtension_166, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_57 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType1_v10l0_IEs(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_lte_rrc_SystemInformationBlockType1_v10l0_IEs, SystemInformationBlockType1_v10l0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType1_v10j0_IEs_sequence[] = { + { &hf_lte_rrc_freqBandInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_r10 }, + { &hf_lte_rrc_multiBandInfoList_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10j0 }, + { &hf_lte_rrc_nonCriticalExtension_165, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v10l0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType1_v10j0_IEs(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_lte_rrc_SystemInformationBlockType1_v10j0_IEs, SystemInformationBlockType1_v10j0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType1_v9e0_IEs_sequence[] = { + { &hf_lte_rrc_freqBandIndicator_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_v9e0 }, + { &hf_lte_rrc_multiBandInfoList_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v9e0 }, + { &hf_lte_rrc_nonCriticalExtension_164, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v10j0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType1_v9e0_IEs(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_lte_rrc_SystemInformationBlockType1_v9e0_IEs, SystemInformationBlockType1_v9e0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType1_v8h0_IEs_sequence[] = { + { &hf_lte_rrc_multiBandInfoList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList }, + { &hf_lte_rrc_nonCriticalExtension_163, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v9e0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType1_v8h0_IEs(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_lte_rrc_SystemInformationBlockType1_v8h0_IEs, SystemInformationBlockType1_v8h0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t RLF_Report_v9e0_sequence[] = { + { &hf_lte_rrc_measResultListEUTRA_v9e0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultList2EUTRA_v9e0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RLF_Report_v9e0(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_lte_rrc_RLF_Report_v9e0, RLF_Report_v9e0_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_64_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_64(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_lte_rrc_T_nonCriticalExtension_64, T_nonCriticalExtension_64_sequence); + + return offset; +} + + +static const per_sequence_t UEInformationResponse_v9e0_IEs_sequence[] = { + { &hf_lte_rrc_rlf_Report_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLF_Report_v9e0 }, + { &hf_lte_rrc_nonCriticalExtension_199, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_64 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UEInformationResponse_v9e0_IEs(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_lte_rrc_UEInformationResponse_v9e0_IEs, UEInformationResponse_v9e0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_sequence_of[1] = { + { &hf_lte_rrc_multiBandInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission(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_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission, SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_sequence_of, + 1, maxMultiBands, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_T_nonCriticalExtension_71(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType2_v10m0_IEs_PDU); + + return offset; +} + + +static const per_sequence_t T_dummy_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_dummy(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_lte_rrc_T_dummy, T_dummy_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType2_v9i0_IEs_sequence[] = { + { &hf_lte_rrc_nonCriticalExtension_215, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_71 }, + { &hf_lte_rrc_dummy , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dummy }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType2_v9i0_IEs(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_lte_rrc_SystemInformationBlockType2_v9i0_IEs, SystemInformationBlockType2_v9i0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType2_v9e0_IEs_sequence[] = { + { &hf_lte_rrc_ul_CarrierFreq_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, + { &hf_lte_rrc_nonCriticalExtension_214, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType2_v9i0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType2_v9e0_IEs(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_lte_rrc_SystemInformationBlockType2_v9e0_IEs, SystemInformationBlockType2_v9e0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType2_v8h0_IEs_sequence[] = { + { &hf_lte_rrc_multiBandInfoList_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission }, + { &hf_lte_rrc_nonCriticalExtension_213, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType2_v9e0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType2_v8h0_IEs(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_lte_rrc_SystemInformationBlockType2_v8h0_IEs, SystemInformationBlockType2_v8h0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_freqInfo_v10l0_sequence[] = { + { &hf_lte_rrc_additionalSpectrumEmission_v10l0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_freqInfo_v10l0(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_lte_rrc_T_freqInfo_v10l0, T_freqInfo_v10l0_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0_sequence_of[1] = { + { &hf_lte_rrc_multiBandInfoList_v10l0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0(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_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0, SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0_sequence_of, + 1, maxMultiBands, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_72_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_72(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_lte_rrc_T_nonCriticalExtension_72, T_nonCriticalExtension_72_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType2_v10m0_IEs_sequence[] = { + { &hf_lte_rrc_freqInfo_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqInfo_v10l0 }, + { &hf_lte_rrc_multiBandInfoList_v10l0_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0 }, + { &hf_lte_rrc_nonCriticalExtension_216, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_72 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType2_v10m0_IEs(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_lte_rrc_SystemInformationBlockType2_v10m0_IEs, SystemInformationBlockType2_v10m0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_73_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_73(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_lte_rrc_T_nonCriticalExtension_73, T_nonCriticalExtension_73_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType3_v10l0_IEs_sequence[] = { + { &hf_lte_rrc_freqBandInfo_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_v10l0 }, + { &hf_lte_rrc_multiBandInfoList_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10l0 }, + { &hf_lte_rrc_nonCriticalExtension_218, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_73 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType3_v10l0_IEs(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_lte_rrc_SystemInformationBlockType3_v10l0_IEs, SystemInformationBlockType3_v10l0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType3_v10j0_IEs_sequence[] = { + { &hf_lte_rrc_freqBandInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_r10 }, + { &hf_lte_rrc_multiBandInfoList_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10j0 }, + { &hf_lte_rrc_nonCriticalExtension_217, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType3_v10l0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType3_v10j0_IEs(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_lte_rrc_SystemInformationBlockType3_v10j0_IEs, SystemInformationBlockType3_v10j0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t InterFreqCarrierFreqInfo_v8h0_sequence[] = { + { &hf_lte_rrc_multiBandInfoList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InterFreqCarrierFreqInfo_v8h0(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_lte_rrc_InterFreqCarrierFreqInfo_v8h0, InterFreqCarrierFreqInfo_v8h0_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0_sequence_of[1] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v8h0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v8h0 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0, SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t InterFreqCarrierFreqInfo_v9e0_sequence[] = { + { &hf_lte_rrc_dl_CarrierFreq_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, + { &hf_lte_rrc_multiBandInfoList_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v9e0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InterFreqCarrierFreqInfo_v9e0(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_lte_rrc_InterFreqCarrierFreqInfo_v9e0, InterFreqCarrierFreqInfo_v9e0_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0_sequence_of[1] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v9e0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v9e0 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0, SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0_sequence_of[1] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v10j0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v10j0 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0, SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t InterFreqCarrierFreqInfo_v10l0_sequence[] = { + { &hf_lte_rrc_freqBandInfo_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_v10l0 }, + { &hf_lte_rrc_multiBandInfoList_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10l0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InterFreqCarrierFreqInfo_v10l0(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_lte_rrc_InterFreqCarrierFreqInfo_v10l0, InterFreqCarrierFreqInfo_v10l0_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0_sequence_of[1] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v10l0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v10l0 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0, SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t InterFreqCarrierFreqList_v13a0_sequence_of[1] = { + { &hf_lte_rrc_InterFreqCarrierFreqList_v13a0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1360 }, +}; + +static int +dissect_lte_rrc_InterFreqCarrierFreqList_v13a0(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_lte_rrc_InterFreqCarrierFreqList_v13a0, InterFreqCarrierFreqList_v13a0_sequence_of, + 1, maxFreq, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_74_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_74(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_lte_rrc_T_nonCriticalExtension_74, T_nonCriticalExtension_74_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType5_v13a0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_interFreqCarrierFreqList_v13a0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqList_v13a0 }, + { &hf_lte_rrc_nonCriticalExtension_223, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_74 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType5_v13a0_IEs(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_lte_rrc_SystemInformationBlockType5_v13a0_IEs, SystemInformationBlockType5_v13a0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType5_v10l0_IEs_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0 }, + { &hf_lte_rrc_nonCriticalExtension_222, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType5_v13a0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType5_v10l0_IEs(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_lte_rrc_SystemInformationBlockType5_v10l0_IEs, SystemInformationBlockType5_v10l0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType5_v10j0_IEs_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0 }, + { &hf_lte_rrc_nonCriticalExtension_221, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType5_v10l0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType5_v10j0_IEs(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_lte_rrc_SystemInformationBlockType5_v10j0_IEs, SystemInformationBlockType5_v10j0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType5_v9e0_IEs_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0 }, + { &hf_lte_rrc_nonCriticalExtension_220, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType5_v10j0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType5_v9e0_IEs(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_lte_rrc_SystemInformationBlockType5_v9e0_IEs, SystemInformationBlockType5_v9e0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType5_v8h0_IEs_sequence[] = { + { &hf_lte_rrc_interFreqCarrierFreqList_v8h0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0 }, + { &hf_lte_rrc_nonCriticalExtension_219, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType5_v9e0_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType5_v8h0_IEs(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_lte_rrc_SystemInformationBlockType5_v8h0_IEs, SystemInformationBlockType5_v8h0_IEs_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxMultiBands_OF_FreqBandIndicator_UTRA_FDD_sequence_of[1] = { + { &hf_lte_rrc_multiBandInfoList_item_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_UTRA_FDD }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_FreqBandIndicator_UTRA_FDD(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_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_FreqBandIndicator_UTRA_FDD, SEQUENCE_SIZE_1_maxMultiBands_OF_FreqBandIndicator_UTRA_FDD_sequence_of, + 1, maxMultiBands, FALSE); + + return offset; +} + + +static const per_sequence_t CarrierFreqInfoUTRA_FDD_v8h0_sequence[] = { + { &hf_lte_rrc_multiBandInfoList_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_FreqBandIndicator_UTRA_FDD }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CarrierFreqInfoUTRA_FDD_v8h0(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_lte_rrc_CarrierFreqInfoUTRA_FDD_v8h0, CarrierFreqInfoUTRA_FDD_v8h0_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0_sequence_of[1] = { + { &hf_lte_rrc_carrierFreqListUTRA_FDD_v8h0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqInfoUTRA_FDD_v8h0 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0(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_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0, SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0_sequence_of, + 1, maxUTRA_FDD_Carrier, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_75_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_75(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_lte_rrc_T_nonCriticalExtension_75, T_nonCriticalExtension_75_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType6_v8h0_IEs_sequence[] = { + { &hf_lte_rrc_carrierFreqListUTRA_FDD_v8h0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0 }, + { &hf_lte_rrc_nonCriticalExtension_224, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_75 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType6_v8h0_IEs(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_lte_rrc_SystemInformationBlockType6_v8h0_IEs, SystemInformationBlockType6_v8h0_IEs_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_subframeAssignmentSL_r12_vals[] = { + { 0, "none" }, + { 1, "sa0" }, + { 2, "sa1" }, + { 3, "sa2" }, + { 4, "sa3" }, + { 5, "sa4" }, + { 6, "sa5" }, + { 7, "sa6" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_subframeAssignmentSL_r12(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t TDD_ConfigSL_r12_sequence[] = { + { &hf_lte_rrc_subframeAssignmentSL_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subframeAssignmentSL_r12 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_TDD_ConfigSL_r12(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_lte_rrc_TDD_ConfigSL_r12, TDD_ConfigSL_r12_sequence); + + return offset; +} + + +static const value_string lte_rrc_AccessStratumRelease_vals[] = { + { 0, "rel8" }, + { 1, "rel9" }, + { 2, "rel10" }, + { 3, "rel11" }, + { 4, "rel12" }, + { 5, "rel13" }, + { 6, "rel14" }, + { 7, "rel15" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_AccessStratumRelease(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, + 8, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t ROHC_ProfileSupportList_r15_sequence[] = { + { &hf_lte_rrc_profile0x0001_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0002_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0003_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0004_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0006_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0101_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0102_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0103_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0104_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_ROHC_ProfileSupportList_r15(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_lte_rrc_ROHC_ProfileSupportList_r15, ROHC_ProfileSupportList_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_maxNumberROHC_ContextSessions_vals[] = { + { 0, "cs2" }, + { 1, "cs4" }, + { 2, "cs8" }, + { 3, "cs12" }, + { 4, "cs16" }, + { 5, "cs24" }, + { 6, "cs32" }, + { 7, "cs48" }, + { 8, "cs64" }, + { 9, "cs128" }, + { 10, "cs256" }, + { 11, "cs512" }, + { 12, "cs1024" }, + { 13, "cs16384" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_maxNumberROHC_ContextSessions(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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PDCP_Parameters_sequence[] = { + { &hf_lte_rrc_supportedROHC_Profiles, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ROHC_ProfileSupportList_r15 }, + { &hf_lte_rrc_maxNumberROHC_ContextSessions, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumberROHC_ContextSessions }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PDCP_Parameters(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_lte_rrc_PDCP_Parameters, PDCP_Parameters_sequence); + + return offset; +} + + +static const per_sequence_t PhyLayerParameters_sequence[] = { + { &hf_lte_rrc_ue_TxAntennaSelectionSupported, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_ue_SpecificRefSigsSupported, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PhyLayerParameters(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_lte_rrc_PhyLayerParameters, PhyLayerParameters_sequence); + + return offset; +} + + +static const per_sequence_t SupportedBandEUTRA_sequence[] = { + { &hf_lte_rrc_bandEUTRA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator }, + { &hf_lte_rrc_halfDuplex , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SupportedBandEUTRA(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_lte_rrc_SupportedBandEUTRA, SupportedBandEUTRA_sequence); + + return offset; +} + + +static const per_sequence_t SupportedBandListEUTRA_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListEUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandEUTRA }, +}; + +static int +dissect_lte_rrc_SupportedBandListEUTRA(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_lte_rrc_SupportedBandListEUTRA, SupportedBandListEUTRA_sequence_of, + 1, maxBands, FALSE); + + return offset; +} + + +static const per_sequence_t RF_Parameters_sequence[] = { + { &hf_lte_rrc_supportedBandListEUTRA, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListEUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RF_Parameters(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_lte_rrc_RF_Parameters, RF_Parameters_sequence); + + return offset; +} + + +static const per_sequence_t InterFreqBandInfo_sequence[] = { + { &hf_lte_rrc_interFreqNeedForGaps, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InterFreqBandInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + meas_capabilities_item_band_mappings_t *mappings; + proto_item *it; + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_InterFreqBandInfo, InterFreqBandInfo_sequence); + + mappings = private_data_meas_capabilities_item_band_mappings(actx); + if (mappings->number_of_interfreq_serving_read < mappings->number_of_bands_set) { + guint16 serving_band = mappings->band_by_item[mappings->number_of_interfreq_serving_read]; + guint16 target_band = mappings->band_by_item[mappings->number_of_interfreq_target_read++]; + if (mappings->number_of_interfreq_target_read == mappings->number_of_bands_set) { + mappings->number_of_interfreq_target_read = 0; + mappings->number_of_interfreq_serving_read++; + } + + /* Add a generated item showing serving & target band for this entry */ + it = proto_tree_add_uint(tree, hf_lte_rrc_bandEUTRA, tvb, 0, 0, serving_band); + proto_item_append_text(it, " -> band %u", target_band); + PROTO_ITEM_SET_GENERATED(it); + } + + + return offset; +} + + +static const per_sequence_t InterFreqBandList_sequence_of[1] = { + { &hf_lte_rrc_InterFreqBandList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqBandInfo }, +}; + +static int +dissect_lte_rrc_InterFreqBandList(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_lte_rrc_InterFreqBandList, InterFreqBandList_sequence_of, + 1, maxBands, FALSE); + + return offset; +} + + +static const per_sequence_t InterRAT_BandInfo_sequence[] = { + { &hf_lte_rrc_interRAT_NeedForGaps, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InterRAT_BandInfo(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_lte_rrc_InterRAT_BandInfo, InterRAT_BandInfo_sequence); + + return offset; +} + + +static const per_sequence_t InterRAT_BandList_sequence_of[1] = { + { &hf_lte_rrc_InterRAT_BandList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterRAT_BandInfo }, +}; + +static int +dissect_lte_rrc_InterRAT_BandList(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_lte_rrc_InterRAT_BandList, InterRAT_BandList_sequence_of, + 1, maxBands, FALSE); + + return offset; +} + + +static const per_sequence_t BandInfoEUTRA_sequence[] = { + { &hf_lte_rrc_interFreqBandList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqBandList }, + { &hf_lte_rrc_interRAT_BandList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterRAT_BandList }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_BandInfoEUTRA(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_lte_rrc_BandInfoEUTRA, BandInfoEUTRA_sequence); + + return offset; +} + + +static const per_sequence_t BandListEUTRA_sequence_of[1] = { + { &hf_lte_rrc_BandListEUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandInfoEUTRA }, +}; + +static int +dissect_lte_rrc_BandListEUTRA(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_lte_rrc_BandListEUTRA, BandListEUTRA_sequence_of, + 1, maxBands, FALSE); + + return offset; +} + + +static const per_sequence_t MeasParameters_sequence[] = { + { &hf_lte_rrc_bandListEUTRA, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandListEUTRA }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasParameters(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_lte_rrc_MeasParameters, MeasParameters_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_T_measParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + meas_capabilities_item_band_mappings_t *mappings; + offset = dissect_lte_rrc_MeasParameters(tvb, offset, actx, tree, hf_index); + + /* Clear band mapping once measParameters IE has been decoded */ + mappings = private_data_meas_capabilities_item_band_mappings(actx); + mappings->number_of_bands_set = 0; + + + return offset; +} + + + +static int +dissect_lte_rrc_T_featureGroupIndicators(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *featureGroupIndicators_tvb=NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 32, 32, FALSE, &featureGroupIndicators_tvb, NULL); + + if(featureGroupIndicators_tvb){ + /* Dissect featureGroupIndicators */ + dissect_lte_rrc_featureGroupIndicators(featureGroupIndicators_tvb, actx); + } + + + return offset; +} + + +static const value_string lte_rrc_SupportedBandUTRA_FDD_vals[] = { + { 0, "bandI" }, + { 1, "bandII" }, + { 2, "bandIII" }, + { 3, "bandIV" }, + { 4, "bandV" }, + { 5, "bandVI" }, + { 6, "bandVII" }, + { 7, "bandVIII" }, + { 8, "bandIX" }, + { 9, "bandX" }, + { 10, "bandXI" }, + { 11, "bandXII" }, + { 12, "bandXIII" }, + { 13, "bandXIV" }, + { 14, "bandXV" }, + { 15, "bandXVI" }, + { 16, "bandXVII-8a0" }, + { 17, "bandXVIII-8a0" }, + { 18, "bandXIX-8a0" }, + { 19, "bandXX-8a0" }, + { 20, "bandXXI-8a0" }, + { 21, "bandXXII-8a0" }, + { 22, "bandXXIII-8a0" }, + { 23, "bandXXIV-8a0" }, + { 24, "bandXXV-8a0" }, + { 25, "bandXXVI-8a0" }, + { 26, "bandXXVII-8a0" }, + { 27, "bandXXVIII-8a0" }, + { 28, "bandXXIX-8a0" }, + { 29, "bandXXX-8a0" }, + { 30, "bandXXXI-8a0" }, + { 31, "bandXXXII-8a0" }, + { 0, NULL } +}; + +static value_string_ext lte_rrc_SupportedBandUTRA_FDD_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_SupportedBandUTRA_FDD_vals); + + +static int +dissect_lte_rrc_SupportedBandUTRA_FDD(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, + 16, NULL, TRUE, 16, NULL); + + return offset; +} + + +static const per_sequence_t SupportedBandListUTRA_FDD_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListUTRA_FDD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandUTRA_FDD }, +}; + +static int +dissect_lte_rrc_SupportedBandListUTRA_FDD(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_lte_rrc_SupportedBandListUTRA_FDD, SupportedBandListUTRA_FDD_sequence_of, + 1, maxBands, FALSE); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersUTRA_FDD_sequence[] = { + { &hf_lte_rrc_supportedBandListUTRA_FDD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListUTRA_FDD }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersUTRA_FDD(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_lte_rrc_IRAT_ParametersUTRA_FDD, IRAT_ParametersUTRA_FDD_sequence); + + return offset; +} + + +static const value_string lte_rrc_SupportedBandUTRA_TDD128_vals[] = { + { 0, "a" }, + { 1, "b" }, + { 2, "c" }, + { 3, "d" }, + { 4, "e" }, + { 5, "f" }, + { 6, "g" }, + { 7, "h" }, + { 8, "i" }, + { 9, "j" }, + { 10, "k" }, + { 11, "l" }, + { 12, "m" }, + { 13, "n" }, + { 14, "o" }, + { 15, "p" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_SupportedBandUTRA_TDD128(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, + 16, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SupportedBandListUTRA_TDD128_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListUTRA_TDD128_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandUTRA_TDD128 }, +}; + +static int +dissect_lte_rrc_SupportedBandListUTRA_TDD128(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_lte_rrc_SupportedBandListUTRA_TDD128, SupportedBandListUTRA_TDD128_sequence_of, + 1, maxBands, FALSE); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersUTRA_TDD128_sequence[] = { + { &hf_lte_rrc_supportedBandListUTRA_TDD128, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListUTRA_TDD128 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersUTRA_TDD128(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_lte_rrc_IRAT_ParametersUTRA_TDD128, IRAT_ParametersUTRA_TDD128_sequence); + + return offset; +} + + +static const value_string lte_rrc_SupportedBandUTRA_TDD384_vals[] = { + { 0, "a" }, + { 1, "b" }, + { 2, "c" }, + { 3, "d" }, + { 4, "e" }, + { 5, "f" }, + { 6, "g" }, + { 7, "h" }, + { 8, "i" }, + { 9, "j" }, + { 10, "k" }, + { 11, "l" }, + { 12, "m" }, + { 13, "n" }, + { 14, "o" }, + { 15, "p" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_SupportedBandUTRA_TDD384(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, + 16, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SupportedBandListUTRA_TDD384_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListUTRA_TDD384_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandUTRA_TDD384 }, +}; + +static int +dissect_lte_rrc_SupportedBandListUTRA_TDD384(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_lte_rrc_SupportedBandListUTRA_TDD384, SupportedBandListUTRA_TDD384_sequence_of, + 1, maxBands, FALSE); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersUTRA_TDD384_sequence[] = { + { &hf_lte_rrc_supportedBandListUTRA_TDD384, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListUTRA_TDD384 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersUTRA_TDD384(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_lte_rrc_IRAT_ParametersUTRA_TDD384, IRAT_ParametersUTRA_TDD384_sequence); + + return offset; +} + + +static const value_string lte_rrc_SupportedBandUTRA_TDD768_vals[] = { + { 0, "a" }, + { 1, "b" }, + { 2, "c" }, + { 3, "d" }, + { 4, "e" }, + { 5, "f" }, + { 6, "g" }, + { 7, "h" }, + { 8, "i" }, + { 9, "j" }, + { 10, "k" }, + { 11, "l" }, + { 12, "m" }, + { 13, "n" }, + { 14, "o" }, + { 15, "p" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_SupportedBandUTRA_TDD768(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, + 16, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SupportedBandListUTRA_TDD768_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListUTRA_TDD768_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandUTRA_TDD768 }, +}; + +static int +dissect_lte_rrc_SupportedBandListUTRA_TDD768(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_lte_rrc_SupportedBandListUTRA_TDD768, SupportedBandListUTRA_TDD768_sequence_of, + 1, maxBands, FALSE); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersUTRA_TDD768_sequence[] = { + { &hf_lte_rrc_supportedBandListUTRA_TDD768, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListUTRA_TDD768 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersUTRA_TDD768(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_lte_rrc_IRAT_ParametersUTRA_TDD768, IRAT_ParametersUTRA_TDD768_sequence); + + return offset; +} + + +static const value_string lte_rrc_SupportedBandGERAN_vals[] = { + { 0, "gsm450" }, + { 1, "gsm480" }, + { 2, "gsm710" }, + { 3, "gsm750" }, + { 4, "gsm810" }, + { 5, "gsm850" }, + { 6, "gsm900P" }, + { 7, "gsm900E" }, + { 8, "gsm900R" }, + { 9, "gsm1800" }, + { 10, "gsm1900" }, + { 11, "spare5" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_SupportedBandGERAN(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, + 16, NULL, TRUE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SupportedBandListGERAN_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandGERAN }, +}; + +static int +dissect_lte_rrc_SupportedBandListGERAN(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_lte_rrc_SupportedBandListGERAN, SupportedBandListGERAN_sequence_of, + 1, maxBands, FALSE); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersGERAN_sequence[] = { + { &hf_lte_rrc_supportedBandListGERAN, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListGERAN }, + { &hf_lte_rrc_interRAT_PS_HO_ToGERAN, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersGERAN(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_lte_rrc_IRAT_ParametersGERAN, IRAT_ParametersGERAN_sequence); + + return offset; +} + + +static const per_sequence_t SupportedBandListHRPD_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListHRPD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, +}; + +static int +dissect_lte_rrc_SupportedBandListHRPD(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_lte_rrc_SupportedBandListHRPD, SupportedBandListHRPD_sequence_of, + 1, maxCDMA_BandClass, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_tx_ConfigHRPD_vals[] = { + { 0, "single" }, + { 1, "dual" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_tx_ConfigHRPD(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_rx_ConfigHRPD_vals[] = { + { 0, "single" }, + { 1, "dual" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rx_ConfigHRPD(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersCDMA2000_HRPD_sequence[] = { + { &hf_lte_rrc_supportedBandListHRPD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListHRPD }, + { &hf_lte_rrc_tx_ConfigHRPD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_tx_ConfigHRPD }, + { &hf_lte_rrc_rx_ConfigHRPD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rx_ConfigHRPD }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersCDMA2000_HRPD(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_lte_rrc_IRAT_ParametersCDMA2000_HRPD, IRAT_ParametersCDMA2000_HRPD_sequence); + + return offset; +} + + +static const per_sequence_t SupportedBandList1XRTT_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandList1XRTT_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, +}; + +static int +dissect_lte_rrc_SupportedBandList1XRTT(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_lte_rrc_SupportedBandList1XRTT, SupportedBandList1XRTT_sequence_of, + 1, maxCDMA_BandClass, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_tx_Config1XRTT_vals[] = { + { 0, "single" }, + { 1, "dual" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_tx_Config1XRTT(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_rx_Config1XRTT_vals[] = { + { 0, "single" }, + { 1, "dual" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rx_Config1XRTT(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersCDMA2000_1XRTT_sequence[] = { + { &hf_lte_rrc_supportedBandList1XRTT, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandList1XRTT }, + { &hf_lte_rrc_tx_Config1XRTT, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_tx_Config1XRTT }, + { &hf_lte_rrc_rx_Config1XRTT, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rx_Config1XRTT }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT(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_lte_rrc_IRAT_ParametersCDMA2000_1XRTT, IRAT_ParametersCDMA2000_1XRTT_sequence); + + return offset; +} + + +static const per_sequence_t T_interRAT_Parameters_sequence[] = { + { &hf_lte_rrc_utraFDD , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_FDD }, + { &hf_lte_rrc_utraTDD128 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_TDD128 }, + { &hf_lte_rrc_utraTDD384 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_TDD384 }, + { &hf_lte_rrc_utraTDD768 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_TDD768 }, + { &hf_lte_rrc_geran_02 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersGERAN }, + { &hf_lte_rrc_cdma2000_HRPD_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_HRPD }, + { &hf_lte_rrc_cdma2000_1xRTT_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_interRAT_Parameters(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_lte_rrc_T_interRAT_Parameters, T_interRAT_Parameters_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_enhancedDualLayerFDD_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_enhancedDualLayerFDD_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_enhancedDualLayerTDD_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_enhancedDualLayerTDD_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PhyLayerParameters_v920_sequence[] = { + { &hf_lte_rrc_enhancedDualLayerFDD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enhancedDualLayerFDD_r9 }, + { &hf_lte_rrc_enhancedDualLayerTDD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enhancedDualLayerTDD_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PhyLayerParameters_v920(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_lte_rrc_PhyLayerParameters_v920, PhyLayerParameters_v920_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_dtm_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_dtm_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_e_RedirectionGERAN_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_e_RedirectionGERAN_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersGERAN_v920_sequence[] = { + { &hf_lte_rrc_dtm_r9 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dtm_r9 }, + { &hf_lte_rrc_e_RedirectionGERAN_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_e_RedirectionGERAN_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersGERAN_v920(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_lte_rrc_IRAT_ParametersGERAN_v920, IRAT_ParametersGERAN_v920_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_e_RedirectionUTRA_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_e_RedirectionUTRA_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersUTRA_v920_sequence[] = { + { &hf_lte_rrc_e_RedirectionUTRA_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_e_RedirectionUTRA_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersUTRA_v920(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_lte_rrc_IRAT_ParametersUTRA_v920, IRAT_ParametersUTRA_v920_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_e_CSFB_1XRTT_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_e_CSFB_1XRTT_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_e_CSFB_ConcPS_Mob1XRTT_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_e_CSFB_ConcPS_Mob1XRTT_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersCDMA2000_1XRTT_v920_sequence[] = { + { &hf_lte_rrc_e_CSFB_1XRTT_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_e_CSFB_1XRTT_r9 }, + { &hf_lte_rrc_e_CSFB_ConcPS_Mob1XRTT_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_e_CSFB_ConcPS_Mob1XRTT_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v920(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_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v920, IRAT_ParametersCDMA2000_1XRTT_v920_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_deviceType_r9_vals[] = { + { 0, "noBenFromBatConsumpOpt" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_deviceType_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_intraFreqProximityIndication_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_intraFreqProximityIndication_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_interFreqProximityIndication_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_interFreqProximityIndication_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_utran_ProximityIndication_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_utran_ProximityIndication_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t CSG_ProximityIndicationParameters_r9_sequence[] = { + { &hf_lte_rrc_intraFreqProximityIndication_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqProximityIndication_r9 }, + { &hf_lte_rrc_interFreqProximityIndication_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interFreqProximityIndication_r9 }, + { &hf_lte_rrc_utran_ProximityIndication_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_utran_ProximityIndication_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CSG_ProximityIndicationParameters_r9(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_lte_rrc_CSG_ProximityIndicationParameters_r9, CSG_ProximityIndicationParameters_r9_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_intraFreqSI_AcquisitionForHO_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_intraFreqSI_AcquisitionForHO_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_interFreqSI_AcquisitionForHO_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_interFreqSI_AcquisitionForHO_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_utran_SI_AcquisitionForHO_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_utran_SI_AcquisitionForHO_r9(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NeighCellSI_AcquisitionParameters_r9_sequence[] = { + { &hf_lte_rrc_intraFreqSI_AcquisitionForHO_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqSI_AcquisitionForHO_r9 }, + { &hf_lte_rrc_interFreqSI_AcquisitionForHO_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interFreqSI_AcquisitionForHO_r9 }, + { &hf_lte_rrc_utran_SI_AcquisitionForHO_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_utran_SI_AcquisitionForHO_r9 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_NeighCellSI_AcquisitionParameters_r9(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_lte_rrc_NeighCellSI_AcquisitionParameters_r9, NeighCellSI_AcquisitionParameters_r9_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_rach_Report_r9_01_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rach_Report_r9_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SON_Parameters_r9_sequence[] = { + { &hf_lte_rrc_rach_Report_r9_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rach_Report_r9_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SON_Parameters_r9(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_lte_rrc_SON_Parameters_r9, SON_Parameters_r9_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_T_lateNonCriticalExtension_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UE_EUTRA_Capability_v9a0_IEs_PDU); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_6_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 6U, 8U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_twoAntennaPortsForPUCCH_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_twoAntennaPortsForPUCCH_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_tm9_With_8Tx_FDD_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_tm9_With_8Tx_FDD_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_pmi_Disabling_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_pmi_Disabling_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_crossCarrierScheduling_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_crossCarrierScheduling_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_simultaneousPUCCH_PUSCH_r10_01_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_simultaneousPUCCH_PUSCH_r10_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_multiClusterPUSCH_WithinCC_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_multiClusterPUSCH_WithinCC_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_nonContiguousUL_RA_WithinCC_Info_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_nonContiguousUL_RA_WithinCC_Info_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t NonContiguousUL_RA_WithinCC_r10_sequence[] = { + { &hf_lte_rrc_nonContiguousUL_RA_WithinCC_Info_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonContiguousUL_RA_WithinCC_Info_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_NonContiguousUL_RA_WithinCC_r10(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_lte_rrc_NonContiguousUL_RA_WithinCC_r10, NonContiguousUL_RA_WithinCC_r10_sequence); + + return offset; +} + + +static const per_sequence_t NonContiguousUL_RA_WithinCC_List_r10_sequence_of[1] = { + { &hf_lte_rrc_NonContiguousUL_RA_WithinCC_List_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NonContiguousUL_RA_WithinCC_r10 }, +}; + +static int +dissect_lte_rrc_NonContiguousUL_RA_WithinCC_List_r10(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_lte_rrc_NonContiguousUL_RA_WithinCC_List_r10, NonContiguousUL_RA_WithinCC_List_r10_sequence_of, + 1, maxBands, FALSE); + + return offset; +} + + +static const per_sequence_t PhyLayerParameters_v1020_sequence[] = { + { &hf_lte_rrc_twoAntennaPortsForPUCCH_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_twoAntennaPortsForPUCCH_r10 }, + { &hf_lte_rrc_tm9_With_8Tx_FDD_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm9_With_8Tx_FDD_r10 }, + { &hf_lte_rrc_pmi_Disabling_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pmi_Disabling_r10 }, + { &hf_lte_rrc_crossCarrierScheduling_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crossCarrierScheduling_r10 }, + { &hf_lte_rrc_simultaneousPUCCH_PUSCH_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_simultaneousPUCCH_PUSCH_r10_01 }, + { &hf_lte_rrc_multiClusterPUSCH_WithinCC_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiClusterPUSCH_WithinCC_r10 }, + { &hf_lte_rrc_nonContiguousUL_RA_WithinCC_List_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NonContiguousUL_RA_WithinCC_List_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PhyLayerParameters_v1020(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_lte_rrc_PhyLayerParameters_v1020, PhyLayerParameters_v1020_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_T_bandEUTRA_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_FreqBandIndicator(tvb, offset, actx, tree, hf_index); + + remove_last_freq_band_indicator(actx); + + return offset; +} + + +static const value_string lte_rrc_MIMO_CapabilityUL_r10_vals[] = { + { 0, "twoLayers" }, + { 1, "fourLayers" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_MIMO_CapabilityUL_r10(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t CA_MIMO_ParametersUL_r10_sequence[] = { + { &hf_lte_rrc_ca_BandwidthClassUL_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_BandwidthClass_r10 }, + { &hf_lte_rrc_supportedMIMO_CapabilityUL_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityUL_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CA_MIMO_ParametersUL_r10(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_lte_rrc_CA_MIMO_ParametersUL_r10, CA_MIMO_ParametersUL_r10_sequence); + + return offset; +} + + +static const per_sequence_t BandParametersUL_r10_sequence_of[1] = { + { &hf_lte_rrc_BandParametersUL_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_MIMO_ParametersUL_r10 }, +}; + +static int +dissect_lte_rrc_BandParametersUL_r10(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_lte_rrc_BandParametersUL_r10, BandParametersUL_r10_sequence_of, + 1, maxBandwidthClass_r10, FALSE); + + return offset; +} + + +static const value_string lte_rrc_MIMO_CapabilityDL_r10_vals[] = { + { 0, "twoLayers" }, + { 1, "fourLayers" }, + { 2, "eightLayers" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_MIMO_CapabilityDL_r10(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t CA_MIMO_ParametersDL_r10_sequence[] = { + { &hf_lte_rrc_ca_BandwidthClassDL_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_BandwidthClass_r10 }, + { &hf_lte_rrc_supportedMIMO_CapabilityDL_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityDL_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_CA_MIMO_ParametersDL_r10(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_lte_rrc_CA_MIMO_ParametersDL_r10, CA_MIMO_ParametersDL_r10_sequence); + + return offset; +} + + +static const per_sequence_t BandParametersDL_r10_sequence_of[1] = { + { &hf_lte_rrc_BandParametersDL_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_MIMO_ParametersDL_r10 }, +}; + +static int +dissect_lte_rrc_BandParametersDL_r10(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_lte_rrc_BandParametersDL_r10, BandParametersDL_r10_sequence_of, + 1, maxBandwidthClass_r10, FALSE); + + return offset; +} + + +static const per_sequence_t BandParameters_r10_sequence[] = { + { &hf_lte_rrc_bandEUTRA_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_bandEUTRA_r10 }, + { &hf_lte_rrc_bandParametersUL_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersUL_r10 }, + { &hf_lte_rrc_bandParametersDL_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersDL_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_BandParameters_r10(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_lte_rrc_BandParameters_r10, BandParameters_r10_sequence); + + return offset; +} + + +static const per_sequence_t BandCombinationParameters_r10_sequence_of[1] = { + { &hf_lte_rrc_BandCombinationParameters_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_r10 }, +}; + +static int +dissect_lte_rrc_BandCombinationParameters_r10(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_lte_rrc_BandCombinationParameters_r10, BandCombinationParameters_r10_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); + + return offset; +} + + +static const per_sequence_t SupportedBandCombination_r10_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_r10 }, +}; + +static int +dissect_lte_rrc_SupportedBandCombination_r10(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_lte_rrc_SupportedBandCombination_r10, SupportedBandCombination_r10_sequence_of, + 1, maxBandComb_r10, FALSE); + + return offset; +} + + +static const per_sequence_t RF_Parameters_v1020_sequence[] = { + { &hf_lte_rrc_supportedBandCombination_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandCombination_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RF_Parameters_v1020(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_lte_rrc_RF_Parameters_v1020, RF_Parameters_v1020_sequence); + + return offset; +} + + +static const per_sequence_t BandCombinationListEUTRA_r10_sequence_of[1] = { + { &hf_lte_rrc_BandCombinationListEUTRA_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandInfoEUTRA }, +}; + +static int +dissect_lte_rrc_BandCombinationListEUTRA_r10(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_lte_rrc_BandCombinationListEUTRA_r10, BandCombinationListEUTRA_r10_sequence_of, + 1, maxBandComb_r10, FALSE); + + return offset; +} + + +static const per_sequence_t MeasParameters_v1020_sequence[] = { + { &hf_lte_rrc_bandCombinationListEUTRA_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationListEUTRA_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MeasParameters_v1020(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_lte_rrc_MeasParameters_v1020, MeasParameters_v1020_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_T_featureGroupIndRel10_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *featureGroupIndRel10_tvb=NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 32, 32, FALSE, &featureGroupIndRel10_tvb, NULL); + + if(featureGroupIndRel10_tvb){ + /* Dissect featureGroupIndRel10-r10 */ + dissect_lte_rrc_featureGroupIndRel10(featureGroupIndRel10_tvb, actx); + } + + + return offset; +} + + +static const value_string lte_rrc_T_e_CSFB_dual_1XRTT_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_e_CSFB_dual_1XRTT_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersCDMA2000_1XRTT_v1020_sequence[] = { + { &hf_lte_rrc_e_CSFB_dual_1XRTT_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_e_CSFB_dual_1XRTT_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v1020(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_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v1020, IRAT_ParametersCDMA2000_1XRTT_v1020_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_loggedMeasurementsIdle_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_loggedMeasurementsIdle_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_standaloneGNSS_Location_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_standaloneGNSS_Location_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t UE_BasedNetwPerfMeasParameters_r10_sequence[] = { + { &hf_lte_rrc_loggedMeasurementsIdle_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_loggedMeasurementsIdle_r10 }, + { &hf_lte_rrc_standaloneGNSS_Location_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_standaloneGNSS_Location_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_r10(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_lte_rrc_UE_BasedNetwPerfMeasParameters_r10, UE_BasedNetwPerfMeasParameters_r10_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_e_RedirectionUTRA_TDD_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_e_RedirectionUTRA_TDD_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t IRAT_ParametersUTRA_TDD_v1020_sequence[] = { + { &hf_lte_rrc_e_RedirectionUTRA_TDD_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_e_RedirectionUTRA_TDD_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IRAT_ParametersUTRA_TDD_v1020(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_lte_rrc_IRAT_ParametersUTRA_TDD_v1020, IRAT_ParametersUTRA_TDD_v1020_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_T_featureGroupIndRel10_v1060(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *featureGroupIndRel10_tvb=NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 32, 32, FALSE, &featureGroupIndRel10_tvb, NULL); + + if(featureGroupIndRel10_tvb){ + /* Dissect featureGroupIndRel10-v1060 */ + dissect_lte_rrc_featureGroupIndRel10(featureGroupIndRel10_tvb, actx); + } + + + return offset; +} + + +static const value_string lte_rrc_T_otdoa_UE_Assisted_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_otdoa_UE_Assisted_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_interFreqRSTD_Measurement_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_interFreqRSTD_Measurement_r10(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t OTDOA_PositioningCapabilities_r10_sequence[] = { + { &hf_lte_rrc_otdoa_UE_Assisted_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_otdoa_UE_Assisted_r10 }, + { &hf_lte_rrc_interFreqRSTD_Measurement_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interFreqRSTD_Measurement_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_OTDOA_PositioningCapabilities_r10(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_lte_rrc_OTDOA_PositioningCapabilities_r10, OTDOA_PositioningCapabilities_r10_sequence); + + return offset; +} + + +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1060_eag_1_sequence[] = { + { &hf_lte_rrc_otdoa_PositioningCapabilities_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OTDOA_PositioningCapabilities_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_EUTRA_CapabilityAddXDD_Mode_v1060_eag_1_sequence); + + return offset; +} + + +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1060_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1060, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1020 }, + { &hf_lte_rrc_featureGroupIndRel10_v1060, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndRel10_v1060 }, + { &hf_lte_rrc_interRAT_ParametersCDMA2000_v1060, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v1020 }, + { &hf_lte_rrc_interRAT_ParametersUTRA_TDD_v1060, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_TDD_v1020 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060_eag_1 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060, UE_EUTRA_CapabilityAddXDD_Mode_v1060_sequence); + + return offset; +} + + + +static int +dissect_lte_rrc_SupportedBandwidthCombinationSet_r10(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, + 1, maxBandwidthCombSet_r10, FALSE, NULL, NULL); + + return offset; +} + + +static const per_sequence_t BandCombinationParametersExt_r10_sequence[] = { + { &hf_lte_rrc_supportedBandwidthCombinationSet_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandwidthCombinationSet_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_BandCombinationParametersExt_r10(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_lte_rrc_BandCombinationParametersExt_r10, BandCombinationParametersExt_r10_sequence); + + return offset; +} + + +static const per_sequence_t SupportedBandCombinationExt_r10_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationExt_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParametersExt_r10 }, +}; + +static int +dissect_lte_rrc_SupportedBandCombinationExt_r10(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_lte_rrc_SupportedBandCombinationExt_r10, SupportedBandCombinationExt_r10_sequence_of, + 1, maxBandComb_r10, FALSE); + + return offset; +} + + +static const per_sequence_t RF_Parameters_v1060_sequence[] = { + { &hf_lte_rrc_supportedBandCombinationExt_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandCombinationExt_r10 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RF_Parameters_v1060(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_lte_rrc_RF_Parameters_v1060, RF_Parameters_v1060_sequence); + + return offset; +} + + +static const per_sequence_t BandParameters_v1090_sequence[] = { + { &hf_lte_rrc_bandEUTRA_v1090, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_v9e0 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_BandParameters_v1090(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_lte_rrc_BandParameters_v1090, BandParameters_v1090_sequence); + + return offset; +} + + +static const per_sequence_t BandCombinationParameters_v1090_sequence_of[1] = { + { &hf_lte_rrc_BandCombinationParameters_v1090_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1090 }, +}; + +static int +dissect_lte_rrc_BandCombinationParameters_v1090(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_lte_rrc_BandCombinationParameters_v1090, BandCombinationParameters_v1090_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); + + return offset; +} + + +static const per_sequence_t SupportedBandCombination_v1090_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1090_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1090 }, +}; + +static int +dissect_lte_rrc_SupportedBandCombination_v1090(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_lte_rrc_SupportedBandCombination_v1090, SupportedBandCombination_v1090_sequence_of, + 1, maxBandComb_r10, FALSE); + + return offset; +} + + +static const per_sequence_t RF_Parameters_v1090_sequence[] = { + { &hf_lte_rrc_supportedBandCombination_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1090 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RF_Parameters_v1090(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_lte_rrc_RF_Parameters_v1090, RF_Parameters_v1090_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_pdcp_SN_Extension_r11_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_pdcp_SN_Extension_r11(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, - 16, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_drx_InactivityTimerSCPTM_r13_vals[] = { - { 0, "psf0" }, - { 1, "psf1" }, - { 2, "psf2" }, - { 3, "psf4" }, - { 4, "psf8" }, - { 5, "psf10" }, - { 6, "psf20" }, - { 7, "psf40" }, - { 8, "psf80" }, - { 9, "psf160" }, - { 10, "ps320" }, - { 11, "psf640" }, - { 12, "psf960" }, - { 13, "psf1280" }, - { 14, "psf1920" }, - { 15, "psf2560" }, +static const value_string lte_rrc_T_supportRohcContextContinue_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_supportRohcContextContinue_r11(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, - 16, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t PDCP_Parameters_v1130_sequence[] = { + { &hf_lte_rrc_pdcp_SN_Extension_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcp_SN_Extension_r11 }, + { &hf_lte_rrc_supportRohcContextContinue_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportRohcContextContinue_r11 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_0_2048(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 2048U, NULL, FALSE); +dissect_lte_rrc_PDCP_Parameters_v1130(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_lte_rrc_PDCP_Parameters_v1130, PDCP_Parameters_v1130_sequence); return offset; } +static const value_string lte_rrc_T_crs_InterfHandl_r11_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_0_4096(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 4096U, NULL, FALSE); +dissect_lte_rrc_T_crs_InterfHandl_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_ePDCCH_r11_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_0_8192(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 8192U, NULL, FALSE); +dissect_lte_rrc_T_ePDCCH_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r13_vals[] = { - { 0, "sf10" }, - { 1, "sf20" }, - { 2, "sf32" }, - { 3, "sf40" }, - { 4, "sf64" }, - { 5, "sf80" }, - { 6, "sf128" }, - { 7, "sf160" }, - { 8, "sf256" }, - { 9, "sf320" }, - { 10, "sf512" }, - { 11, "sf640" }, - { 12, "sf1024" }, - { 13, "sf2048" }, - { 14, "sf4096" }, - { 15, "sf8192" }, +static const value_string lte_rrc_T_multiACK_CSI_Reporting_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; -static const per_choice_t T_schedulingPeriodStartOffsetSCPTM_r13_choice[] = { - { 0, &hf_lte_rrc_sf10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_9 }, - { 1, &hf_lte_rrc_sf20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_19 }, - { 2, &hf_lte_rrc_sf32 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_31 }, - { 3, &hf_lte_rrc_sf40 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_39 }, - { 4, &hf_lte_rrc_sf64 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_63 }, - { 5, &hf_lte_rrc_sf80 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_79 }, - { 6, &hf_lte_rrc_sf128 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_127 }, - { 7, &hf_lte_rrc_sf160 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_159 }, - { 8, &hf_lte_rrc_sf256 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_255 }, - { 9, &hf_lte_rrc_sf320 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, - { 10, &hf_lte_rrc_sf512 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_511 }, - { 11, &hf_lte_rrc_sf640 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, - { 12, &hf_lte_rrc_sf1024 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1023 }, - { 13, &hf_lte_rrc_sf2048_02 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_2048 }, - { 14, &hf_lte_rrc_sf4096_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_4096 }, - { 15, &hf_lte_rrc_sf8192_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_8192 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r13(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_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r13, T_schedulingPeriodStartOffsetSCPTM_r13_choice, - NULL); +dissect_lte_rrc_T_multiACK_CSI_Reporting_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SC_MTCH_SchedulingInfo_r13_sequence[] = { - { &hf_lte_rrc_onDurationTimerSCPTM_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_onDurationTimerSCPTM_r13 }, - { &hf_lte_rrc_drx_InactivityTimerSCPTM_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r13 }, - { &hf_lte_rrc_schedulingPeriodStartOffsetSCPTM_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ss_CCH_InterfHandl_r11_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SC_MTCH_SchedulingInfo_r13(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_lte_rrc_SC_MTCH_SchedulingInfo_r13, SC_MTCH_SchedulingInfo_r13_sequence); +dissect_lte_rrc_T_ss_CCH_InterfHandl_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_tdd_SpecialSubframe_r11_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_BIT_STRING_SIZE_maxNeighCell_SCPTM_r13(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, - maxNeighCell_SCPTM_r13, maxNeighCell_SCPTM_r13, FALSE, NULL, NULL); +dissect_lte_rrc_T_tdd_SpecialSubframe_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_p_a_r13_vals[] = { - { 0, "dB-6" }, - { 1, "dB-4dot77" }, - { 2, "dB-3" }, - { 3, "dB-1dot77" }, - { 4, "dB0" }, - { 5, "dB1" }, - { 6, "dB2" }, - { 7, "dB3" }, +static const value_string lte_rrc_T_txDiv_PUCCH1b_ChSelect_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_p_a_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_txDiv_PUCCH1b_ChSelect_r11(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SC_MTCH_Info_r13_eag_1_sequence[] = { - { &hf_lte_rrc_p_a_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_p_a_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ul_CoMP_r11_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SC_MTCH_Info_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SC_MTCH_Info_r13_eag_1_sequence); +dissect_lte_rrc_T_ul_CoMP_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SC_MTCH_Info_r13_sequence[] = { - { &hf_lte_rrc_mbmsSessionInfo_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMSSessionInfo_r13 }, - { &hf_lte_rrc_g_RNTI_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { &hf_lte_rrc_sc_mtch_schedulingInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SC_MTCH_SchedulingInfo_r13 }, - { &hf_lte_rrc_sc_mtch_neighbourCell_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_maxNeighCell_SCPTM_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_Info_r13_eag_1 }, +static const per_sequence_t PhyLayerParameters_v1130_sequence[] = { + { &hf_lte_rrc_crs_InterfHandl_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_InterfHandl_r11 }, + { &hf_lte_rrc_ePDCCH_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ePDCCH_r11 }, + { &hf_lte_rrc_multiACK_CSI_Reporting_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiACK_CSI_Reporting_r11 }, + { &hf_lte_rrc_ss_CCH_InterfHandl_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ss_CCH_InterfHandl_r11 }, + { &hf_lte_rrc_tdd_SpecialSubframe_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdd_SpecialSubframe_r11 }, + { &hf_lte_rrc_txDiv_PUCCH1b_ChSelect_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_txDiv_PUCCH1b_ChSelect_r11 }, + { &hf_lte_rrc_ul_CoMP_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_CoMP_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SC_MTCH_Info_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhyLayerParameters_v1130(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_lte_rrc_SC_MTCH_Info_r13, SC_MTCH_Info_r13_sequence); + ett_lte_rrc_PhyLayerParameters_v1130, PhyLayerParameters_v1130_sequence); return offset; } -static const per_sequence_t SC_MTCH_InfoList_r13_sequence_of[1] = { - { &hf_lte_rrc_SC_MTCH_InfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_Info_r13 }, +static const value_string lte_rrc_T_multipleTimingAdvance_r11_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SC_MTCH_InfoList_r13(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_lte_rrc_SC_MTCH_InfoList_r13, SC_MTCH_InfoList_r13_sequence_of, - 0, maxSC_MTCH_r13, FALSE); +dissect_lte_rrc_T_multipleTimingAdvance_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PCI_ARFCN_r13_sequence[] = { - { &hf_lte_rrc_physCellId_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_carrierFreq_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_simultaneousRx_Tx_r11_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PCI_ARFCN_r13(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_lte_rrc_PCI_ARFCN_r13, PCI_ARFCN_r13_sequence); +dissect_lte_rrc_T_simultaneousRx_Tx_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCPTM_NeighbourCellList_r13_sequence_of[1] = { - { &hf_lte_rrc_SCPTM_NeighbourCellList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PCI_ARFCN_r13 }, +static const value_string lte_rrc_T_supportedCSI_Proc_r11_vals[] = { + { 0, "n1" }, + { 1, "n3" }, + { 2, "n4" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCPTM_NeighbourCellList_r13(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_lte_rrc_SCPTM_NeighbourCellList_r13, SCPTM_NeighbourCellList_r13_sequence_of, - 1, maxNeighCell_SCPTM_r13, FALSE); +dissect_lte_rrc_T_supportedCSI_Proc_r11(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_44_sequence[] = { +static const per_sequence_t BandParameters_v1130_sequence[] = { + { &hf_lte_rrc_supportedCSI_Proc_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_supportedCSI_Proc_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_44(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandParameters_v1130(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_lte_rrc_T_nonCriticalExtension_44, T_nonCriticalExtension_44_sequence); + ett_lte_rrc_BandParameters_v1130, BandParameters_v1130_sequence); return offset; } -static const per_sequence_t SCPTMConfiguration_v1340_sequence[] = { - { &hf_lte_rrc_p_b_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, - { &hf_lte_rrc_nonCriticalExtension_127, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_44 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1130_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1130 }, }; static int -dissect_lte_rrc_SCPTMConfiguration_v1340(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_lte_rrc_SCPTMConfiguration_v1340, SCPTMConfiguration_v1340_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1130(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1130, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1130_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); return offset; } -static const per_sequence_t SCPTMConfiguration_r13_sequence[] = { - { &hf_lte_rrc_sc_mtch_InfoList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_InfoList_r13 }, - { &hf_lte_rrc_scptm_NeighbourCellList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTM_NeighbourCellList_r13 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_126, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTMConfiguration_v1340 }, +static const per_sequence_t BandCombinationParameters_v1130_sequence[] = { + { &hf_lte_rrc_multipleTimingAdvance_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleTimingAdvance_r11 }, + { &hf_lte_rrc_simultaneousRx_Tx_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_simultaneousRx_Tx_r11 }, + { &hf_lte_rrc_bandParameterList_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1130 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCPTMConfiguration_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SCPTMConfiguration-r13"); - +dissect_lte_rrc_BandCombinationParameters_v1130(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_lte_rrc_SCPTMConfiguration_r13, SCPTMConfiguration_r13_sequence); + ett_lte_rrc_BandCombinationParameters_v1130, BandCombinationParameters_v1130_sequence); return offset; } -static const value_string lte_rrc_T_c1_16_vals[] = { - { 0, "scptmConfiguration-r13" }, - { 0, NULL } +static const per_sequence_t SupportedBandCombination_v1130_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1130_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1130 }, }; -static const per_choice_t T_c1_16_choice[] = { - { 0, &hf_lte_rrc_scptmConfiguration_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCPTMConfiguration_r13 }, - { 0, NULL, 0, NULL } +static int +dissect_lte_rrc_SupportedBandCombination_v1130(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_lte_rrc_SupportedBandCombination_v1130, SupportedBandCombination_v1130_sequence_of, + 1, maxBandComb_r10, FALSE); + + return offset; +} + + +static const per_sequence_t RF_Parameters_v1130_sequence[] = { + { &hf_lte_rrc_supportedBandCombination_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1130 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_16(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_lte_rrc_T_c1_16, T_c1_16_choice, - NULL); +dissect_lte_rrc_RF_Parameters_v1130(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_lte_rrc_RF_Parameters_v1130, RF_Parameters_v1130_sequence); return offset; } -static const value_string lte_rrc_T_onDurationTimerSCPTM_r14_01_vals[] = { - { 0, "psf300" }, - { 1, "psf400" }, - { 2, "psf500" }, - { 3, "psf600" }, - { 4, "psf800" }, - { 5, "psf1000" }, - { 6, "psf1200" }, - { 7, "psf1600" }, +static const value_string lte_rrc_T_rsrqMeasWideband_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_onDurationTimerSCPTM_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rsrqMeasWideband_r11(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_drx_InactivityTimerSCPTM_r14_01_vals[] = { - { 0, "psf0" }, - { 1, "psf1" }, - { 2, "psf2" }, - { 3, "psf4" }, - { 4, "psf8" }, - { 5, "psf16" }, - { 6, "psf32" }, - { 7, "psf64" }, - { 8, "psf128" }, - { 9, "psf256" }, - { 10, "ps512" }, - { 11, "psf1024" }, - { 12, "psf2048" }, - { 13, "psf4096" }, - { 14, "psf8192" }, - { 15, "psf16384" }, - { 0, NULL } +static const per_sequence_t MeasParameters_v1130_sequence[] = { + { &hf_lte_rrc_rsrqMeasWideband_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rsrqMeasWideband_r11 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r14_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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MeasParameters_v1130(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_lte_rrc_MeasParameters_v1130, MeasParameters_v1130_sequence); return offset; } -static const value_string lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_01_vals[] = { - { 0, "sf10" }, - { 1, "sf20" }, - { 2, "sf32" }, - { 3, "sf40" }, - { 4, "sf64" }, - { 5, "sf80" }, - { 6, "sf128" }, - { 7, "sf160" }, - { 8, "sf256" }, - { 9, "sf320" }, - { 10, "sf512" }, - { 11, "sf640" }, - { 12, "sf1024" }, - { 13, "sf2048" }, - { 14, "sf4096" }, - { 15, "sf8192" }, +static const value_string lte_rrc_T_cdma2000_NW_Sharing_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; -static const per_choice_t T_schedulingPeriodStartOffsetSCPTM_r14_01_choice[] = { - { 0, &hf_lte_rrc_sf10 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_9 }, - { 1, &hf_lte_rrc_sf20 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_19 }, - { 2, &hf_lte_rrc_sf32 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_31 }, - { 3, &hf_lte_rrc_sf40 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_39 }, - { 4, &hf_lte_rrc_sf64 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_63 }, - { 5, &hf_lte_rrc_sf80 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_79 }, - { 6, &hf_lte_rrc_sf128 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_127 }, - { 7, &hf_lte_rrc_sf160 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_159 }, - { 8, &hf_lte_rrc_sf256 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_255 }, - { 9, &hf_lte_rrc_sf320 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_319 }, - { 10, &hf_lte_rrc_sf512 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_511 }, - { 11, &hf_lte_rrc_sf640 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_639 }, - { 12, &hf_lte_rrc_sf1024 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_1023 }, - { 13, &hf_lte_rrc_sf2048 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_2047 }, - { 14, &hf_lte_rrc_sf4096 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_4095 }, - { 15, &hf_lte_rrc_sf8192 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_8191 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_01(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_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_01, T_schedulingPeriodStartOffsetSCPTM_r14_01_choice, - NULL); +dissect_lte_rrc_T_cdma2000_NW_Sharing_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SC_MTCH_SchedulingInfo_BR_r14_sequence[] = { - { &hf_lte_rrc_onDurationTimerSCPTM_r14_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_onDurationTimerSCPTM_r14_01 }, - { &hf_lte_rrc_drx_InactivityTimerSCPTM_r14_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_InactivityTimerSCPTM_r14_01 }, - { &hf_lte_rrc_schedulingPeriodStartOffsetSCPTM_r14_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_01 }, +static const per_sequence_t IRAT_ParametersCDMA2000_v1130_sequence[] = { + { &hf_lte_rrc_cdma2000_NW_Sharing_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cdma2000_NW_Sharing_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SC_MTCH_SchedulingInfo_BR_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_IRAT_ParametersCDMA2000_v1130(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_lte_rrc_SC_MTCH_SchedulingInfo_BR_r14, SC_MTCH_SchedulingInfo_BR_r14_sequence); + ett_lte_rrc_IRAT_ParametersCDMA2000_v1130, IRAT_ParametersCDMA2000_v1130_sequence); return offset; } -static const value_string lte_rrc_T_mpdcch_NumRepetition_SC_MTCH_r14_vals[] = { - { 0, "r1" }, - { 1, "r2" }, - { 2, "r4" }, - { 3, "r8" }, - { 4, "r16" }, - { 5, "r32" }, - { 6, "r64" }, - { 7, "r128" }, - { 8, "r256" }, +static const value_string lte_rrc_T_inDeviceCoexInd_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mpdcch_NumRepetition_SC_MTCH_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_inDeviceCoexInd_r11(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_fdd_r14_01_vals[] = { - { 0, "v1" }, - { 1, "v1dot5" }, - { 2, "v2" }, - { 3, "v2dot5" }, - { 4, "v4" }, - { 5, "v5" }, - { 6, "v8" }, - { 7, "v10" }, +static const value_string lte_rrc_T_powerPrefInd_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_fdd_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_powerPrefInd_r11(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_tdd_r14_01_vals[] = { - { 0, "v1" }, - { 1, "v2" }, - { 2, "v4" }, - { 3, "v5" }, - { 4, "v8" }, - { 5, "v10" }, - { 6, "v20" }, +static const value_string lte_rrc_T_ue_Rx_TxTimeDiffMeasurements_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; - + +static int +dissect_lte_rrc_T_ue_Rx_TxTimeDiffMeasurements_r11(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t Other_Parameters_r11_sequence[] = { + { &hf_lte_rrc_inDeviceCoexInd_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_inDeviceCoexInd_r11 }, + { &hf_lte_rrc_powerPrefInd_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerPrefInd_r11 }, + { &hf_lte_rrc_ue_Rx_TxTimeDiffMeasurements_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_Rx_TxTimeDiffMeasurements_r11 }, + { NULL, 0, 0, NULL } +}; + static int -dissect_lte_rrc_T_tdd_r14_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, - 7, NULL, FALSE, 0, NULL); +dissect_lte_rrc_Other_Parameters_r11(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_lte_rrc_Other_Parameters_r11, Other_Parameters_r11_sequence); return offset; } -static const value_string lte_rrc_T_mpdcch_StartSF_SC_MTCH_r14_vals[] = { - { 0, "fdd-r14" }, - { 1, "tdd-r14" }, - { 0, NULL } -}; - -static const per_choice_t T_mpdcch_StartSF_SC_MTCH_r14_choice[] = { - { 0, &hf_lte_rrc_fdd_r14_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_fdd_r14_01 }, - { 1, &hf_lte_rrc_tdd_r14_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_tdd_r14_01 }, - { 0, NULL, 0, NULL } +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1130_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1130, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1130 }, + { &hf_lte_rrc_measParameters_v1130, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1130 }, + { &hf_lte_rrc_otherParameters_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Other_Parameters_r11 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_mpdcch_StartSF_SC_MTCH_r14(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_lte_rrc_T_mpdcch_StartSF_SC_MTCH_r14, T_mpdcch_StartSF_SC_MTCH_r14_choice, - NULL); +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1130(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1130, UE_EUTRA_CapabilityAddXDD_Mode_v1130_sequence); return offset; } -static const value_string lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MTCH_r14_vals[] = { - { 0, "on" }, - { 1, "off" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MTCH_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_T_interBandTDD_CA_WithDifferentConfig_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *inter_band_tdd_ca_tvb=NULL; + proto_tree *subtree; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 2, 2, FALSE, &inter_band_tdd_ca_tvb, NULL); + + if (inter_band_tdd_ca_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_interBandTDD_CA_WithDifferentConfig); + proto_tree_add_bits_item(subtree, hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit1, inter_band_tdd_ca_tvb, 0, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit2, inter_band_tdd_ca_tvb, 1, 1, ENC_BIG_ENDIAN); + } + return offset; } -static const value_string lte_rrc_T_mpdcch_PDSCH_CEmodeConfig_SC_MTCH_r14_vals[] = { - { 0, "ce-ModeA" }, - { 1, "ce-ModeB" }, - { 0, NULL } +static const per_sequence_t PhyLayerParameters_v1170_sequence[] = { + { &hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interBandTDD_CA_WithDifferentConfig_r11 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_mpdcch_PDSCH_CEmodeConfig_SC_MTCH_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_PhyLayerParameters_v1170(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_lte_rrc_PhyLayerParameters_v1170, PhyLayerParameters_v1170_sequence); return offset; } -static const value_string lte_rrc_T_mpdcch_PDSCH_MaxBandwidth_SC_MTCH_r14_vals[] = { - { 0, "bw1dot4" }, - { 1, "bw5" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_mpdcch_PDSCH_MaxBandwidth_SC_MTCH_r14(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, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_9_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 9U, 10U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_mpdcch_Offset_SC_MTCH_r14_vals[] = { - { 0, "zero" }, - { 1, "oneEighth" }, - { 2, "oneQuarter" }, - { 3, "threeEighth" }, - { 4, "oneHalf" }, - { 5, "fiveEighth" }, - { 6, "threeQuarter" }, - { 7, "sevenEighth" }, +static const value_string lte_rrc_T_freqBandRetrieval_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mpdcch_Offset_SC_MTCH_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_freqBandRetrieval_r11(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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_p_a_r14_vals[] = { - { 0, "dB-6" }, - { 1, "dB-4dot77" }, - { 2, "dB-3" }, - { 3, "dB-1dot77" }, - { 4, "dB0" }, - { 5, "dB1" }, - { 6, "dB2" }, - { 7, "dB3" }, +static const value_string lte_rrc_T_supportedCSI_Proc_r11_01_vals[] = { + { 0, "n1" }, + { 1, "n3" }, + { 2, "n4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_p_a_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_supportedCSI_Proc_r11_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, - 8, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SC_MTCH_Info_BR_r14_sequence[] = { - { &hf_lte_rrc_sc_mtch_CarrierFreq_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_mbmsSessionInfo_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMSSessionInfo_r13 }, - { &hf_lte_rrc_g_RNTI_r14 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { &hf_lte_rrc_sc_mtch_schedulingInfo_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SC_MTCH_SchedulingInfo_BR_r14 }, - { &hf_lte_rrc_sc_mtch_neighbourCell_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_maxNeighCell_SCPTM_r13 }, - { &hf_lte_rrc_mpdcch_Narrowband_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxAvailNarrowBands_r13 }, - { &hf_lte_rrc_mpdcch_NumRepetition_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_NumRepetition_SC_MTCH_r14 }, - { &hf_lte_rrc_mpdcch_StartSF_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_StartSF_SC_MTCH_r14 }, - { &hf_lte_rrc_mpdcch_PDSCH_HoppingConfig_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_PDSCH_HoppingConfig_SC_MTCH_r14 }, - { &hf_lte_rrc_mpdcch_PDSCH_CEmodeConfig_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_PDSCH_CEmodeConfig_SC_MTCH_r14 }, - { &hf_lte_rrc_mpdcch_PDSCH_MaxBandwidth_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_PDSCH_MaxBandwidth_SC_MTCH_r14 }, - { &hf_lte_rrc_mpdcch_Offset_SC_MTCH_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mpdcch_Offset_SC_MTCH_r14 }, - { &hf_lte_rrc_p_a_r14 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_p_a_r14 }, +static const per_sequence_t BandParameters_r11_sequence[] = { + { &hf_lte_rrc_bandEUTRA_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, + { &hf_lte_rrc_bandParametersUL_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersUL_r10 }, + { &hf_lte_rrc_bandParametersDL_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersDL_r10 }, + { &hf_lte_rrc_supportedCSI_Proc_r11_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCSI_Proc_r11_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SC_MTCH_Info_BR_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandParameters_r11(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_lte_rrc_SC_MTCH_Info_BR_r14, SC_MTCH_Info_BR_r14_sequence); + ett_lte_rrc_BandParameters_r11, BandParameters_r11_sequence); return offset; } -static const per_sequence_t SC_MTCH_InfoList_BR_r14_sequence_of[1] = { - { &hf_lte_rrc_SC_MTCH_InfoList_BR_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_Info_BR_r14 }, +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r11_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_r11_item_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_r11 }, }; static int -dissect_lte_rrc_SC_MTCH_InfoList_BR_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r11(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_lte_rrc_SC_MTCH_InfoList_BR_r14, SC_MTCH_InfoList_BR_r14_sequence_of, - 0, maxSC_MTCH_BR_r14, FALSE); + ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r11, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r11_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); return offset; } -static const per_sequence_t T_nonCriticalExtension_45_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_multipleTimingAdvance_r11_01_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_45(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_lte_rrc_T_nonCriticalExtension_45, T_nonCriticalExtension_45_sequence); +dissect_lte_rrc_T_multipleTimingAdvance_r11_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCPTMConfiguration_BR_r14_sequence[] = { - { &hf_lte_rrc_sc_mtch_InfoList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_InfoList_BR_r14 }, - { &hf_lte_rrc_scptm_NeighbourCellList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTM_NeighbourCellList_r13 }, - { &hf_lte_rrc_p_b_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_128, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_45 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_simultaneousRx_Tx_r11_01_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCPTMConfiguration_BR_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_simultaneousRx_Tx_r11_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, + 1, NULL, FALSE, 0, NULL); - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "SCPTMConfiguration-BR-r14"); + return offset; +} + + +static const per_sequence_t BandCombinationParameters_r11_sequence[] = { + { &hf_lte_rrc_bandParameterList_r11_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r11 }, + { &hf_lte_rrc_supportedBandwidthCombinationSet_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandwidthCombinationSet_r10 }, + { &hf_lte_rrc_multipleTimingAdvance_r11_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleTimingAdvance_r11_01 }, + { &hf_lte_rrc_simultaneousRx_Tx_r11_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_simultaneousRx_Tx_r11_01 }, + { &hf_lte_rrc_bandInfoEUTRA_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandInfoEUTRA }, + { NULL, 0, 0, NULL } +}; +static int +dissect_lte_rrc_BandCombinationParameters_r11(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_lte_rrc_SCPTMConfiguration_BR_r14, SCPTMConfiguration_BR_r14_sequence); + ett_lte_rrc_BandCombinationParameters_r11, BandCombinationParameters_r11_sequence); return offset; } -static const value_string lte_rrc_T_c2_03_vals[] = { - { 0, "scptmConfiguration-BR-r14" }, - { 1, "spare" }, - { 0, NULL } -}; - -static const per_choice_t T_c2_03_choice[] = { - { 0, &hf_lte_rrc_scptmConfiguration_BR_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SCPTMConfiguration_BR_r14 }, - { 1, &hf_lte_rrc_spare , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t SupportedBandCombinationAdd_r11_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_r11 }, }; static int -dissect_lte_rrc_T_c2_03(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_lte_rrc_T_c2_03, T_c2_03_choice, - NULL); +dissect_lte_rrc_SupportedBandCombinationAdd_r11(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_lte_rrc_SupportedBandCombinationAdd_r11, SupportedBandCombinationAdd_r11_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const per_sequence_t T_messageClassExtensionFuture_r14_sequence[] = { +static const per_sequence_t RF_Parameters_v1180_sequence[] = { + { &hf_lte_rrc_freqBandRetrieval_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqBandRetrieval_r11 }, + { &hf_lte_rrc_requestedBands_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11 }, + { &hf_lte_rrc_supportedBandCombinationAdd_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_messageClassExtensionFuture_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v1180(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_lte_rrc_T_messageClassExtensionFuture_r14, T_messageClassExtensionFuture_r14_sequence); + ett_lte_rrc_RF_Parameters_v1180, RF_Parameters_v1180_sequence); return offset; } -static const value_string lte_rrc_T_messageClassExtension_09_vals[] = { - { 0, "c2" }, - { 1, "messageClassExtensionFuture-r14" }, +static const value_string lte_rrc_T_mbms_SCell_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; -static const per_choice_t T_messageClassExtension_09_choice[] = { - { 0, &hf_lte_rrc_c2_03 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c2_03 }, - { 1, &hf_lte_rrc_messageClassExtensionFuture_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtensionFuture_r14 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_messageClassExtension_09(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_lte_rrc_T_messageClassExtension_09, T_messageClassExtension_09_choice, - NULL); +dissect_lte_rrc_T_mbms_SCell_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_SC_MCCH_MessageType_r13_vals[] = { - { 0, "c1" }, - { 1, "messageClassExtension" }, +static const value_string lte_rrc_T_mbms_NonServingCell_r11_vals[] = { + { 0, "supported" }, { 0, NULL } }; -static const per_choice_t SC_MCCH_MessageType_r13_choice[] = { - { 0, &hf_lte_rrc_c1_16 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_16 }, - { 1, &hf_lte_rrc_messageClassExtension_09, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_messageClassExtension_09 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_SC_MCCH_MessageType_r13(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_lte_rrc_SC_MCCH_MessageType_r13, SC_MCCH_MessageType_r13_choice, - NULL); +dissect_lte_rrc_T_mbms_NonServingCell_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SC_MCCH_Message_r13_sequence[] = { - { &hf_lte_rrc_message_11 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MCCH_MessageType_r13 }, +static const per_sequence_t MBMS_Parameters_r11_sequence[] = { + { &hf_lte_rrc_mbms_SCell_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_SCell_r11 }, + { &hf_lte_rrc_mbms_NonServingCell_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_NonServingCell_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SC_MCCH_Message_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBMS_Parameters_r11(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_lte_rrc_SC_MCCH_Message_r13, SC_MCCH_Message_r13_sequence); + ett_lte_rrc_MBMS_Parameters_r11, MBMS_Parameters_r11_sequence); return offset; } -static const per_sequence_t MobilityControlInfo_v10l0_sequence[] = { - { &hf_lte_rrc_additionalSpectrumEmission_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1180_sequence[] = { + { &hf_lte_rrc_mbms_Parameters_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_Parameters_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MobilityControlInfo_v10l0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1180(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_lte_rrc_MobilityControlInfo_v10l0, MobilityControlInfo_v10l0_sequence); + ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1180, UE_EUTRA_CapabilityAddXDD_Mode_v1180_sequence); return offset; } -static const per_sequence_t SCellToAddMod_v10l0_sequence[] = { - { &hf_lte_rrc_radioResourceConfigCommonSCell_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonSCell_v10l0 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SCellToAddMod_v10l0(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_lte_rrc_SCellToAddMod_v10l0, SCellToAddMod_v10l0_sequence); +dissect_lte_rrc_INTEGER_11_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 11U, 12U, NULL, FALSE); return offset; } -static const per_sequence_t SCellToAddModList_v10l0_sequence_of[1] = { - { &hf_lte_rrc_SCellToAddModList_v10l0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SCellToAddMod_v10l0 }, +static const value_string lte_rrc_T_benefitsFromInterruption_r11_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCellToAddModList_v10l0(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_lte_rrc_SCellToAddModList_v10l0, SCellToAddModList_v10l0_sequence_of, - 1, maxSCell_r10, FALSE); +dissect_lte_rrc_T_benefitsFromInterruption_r11(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigCommonPSCell_v12f0_sequence[] = { - { &hf_lte_rrc_basicFields_v12f0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSCell_v10l0 }, +static const per_sequence_t MeasParameters_v11a0_sequence[] = { + { &hf_lte_rrc_benefitsFromInterruption_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_benefitsFromInterruption_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonPSCell_v12f0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasParameters_v11a0(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_lte_rrc_RadioResourceConfigCommonPSCell_v12f0, RadioResourceConfigCommonPSCell_v12f0_sequence); + ett_lte_rrc_MeasParameters_v11a0, MeasParameters_v11a0_sequence); return offset; } -static const per_sequence_t PSCellToAddMod_v12f0_sequence[] = { - { &hf_lte_rrc_radioResourceConfigCommonPSCell_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigCommonPSCell_v12f0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_e_HARQ_Pattern_FDD_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PSCellToAddMod_v12f0(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_lte_rrc_PSCellToAddMod_v12f0, PSCellToAddMod_v12f0_sequence); +dissect_lte_rrc_T_e_HARQ_Pattern_FDD_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SCG_ConfigPartSCG_v12f0_sequence[] = { - { &hf_lte_rrc_pSCellToAddMod_v12f0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PSCellToAddMod_v12f0 }, - { &hf_lte_rrc_sCellToAddModListSCG_v12f0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_v10l0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_enhanced_4TxCodebook_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCG_ConfigPartSCG_v12f0(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_lte_rrc_SCG_ConfigPartSCG_v12f0, SCG_ConfigPartSCG_v12f0_sequence); +dissect_lte_rrc_T_enhanced_4TxCodebook_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_04_sequence[] = { - { &hf_lte_rrc_scg_ConfigPartSCG_v12f0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_ConfigPartSCG_v12f0 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_setup_04(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_lte_rrc_T_setup_04, T_setup_04_sequence); +dissect_lte_rrc_T_tdd_FDD_CA_PCellDuplex_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *pcellduplex_tvb=NULL; + proto_tree *subtree; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 2, 2, FALSE, &pcellduplex_tvb, NULL); + + if (pcellduplex_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_tdd_FDD_CA_PCellDuplex_r12); + proto_tree_add_bits_item(subtree, hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1, pcellduplex_tvb, 0, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2, pcellduplex_tvb, 1, 1, ENC_BIG_ENDIAN); + } + return offset; } -static const value_string lte_rrc_SCG_Configuration_v12f0_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_phy_TDD_ReConfig_TDD_PCell_r12_vals[] = { + { 0, "supported" }, { 0, NULL } }; -static const per_choice_t SCG_Configuration_v12f0_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_04 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_04 }, - { 0, NULL, 0, NULL } + +static int +dissect_lte_rrc_T_phy_TDD_ReConfig_TDD_PCell_r12(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_phy_TDD_ReConfig_FDD_PCell_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SCG_Configuration_v12f0(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_lte_rrc_SCG_Configuration_v12f0, SCG_Configuration_v12f0_choice, - NULL); +dissect_lte_rrc_T_phy_TDD_ReConfig_FDD_PCell_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicated_v1370_sequence[] = { - { &hf_lte_rrc_physicalConfigDedicated_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicated_v1370 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_pusch_FeedbackMode_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RadioResourceConfigDedicated_v1370(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_lte_rrc_RadioResourceConfigDedicated_v1370, RadioResourceConfigDedicated_v1370_sequence); +dissect_lte_rrc_T_pusch_FeedbackMode_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_28_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_pusch_SRS_PowerControl_SubframeSet_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_28(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_lte_rrc_T_nonCriticalExtension_28, T_nonCriticalExtension_28_sequence); +dissect_lte_rrc_T_pusch_SRS_PowerControl_SubframeSet_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v1370_IEs_sequence[] = { - { &hf_lte_rrc_radioResourceConfigDedicated_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicated_v1370 }, - { &hf_lte_rrc_sCellToAddModListExt_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModListExt_v1370 }, - { &hf_lte_rrc_nonCriticalExtension_74, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_28 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_csi_SubframeSet_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRCConnectionReconfiguration_v1370_IEs(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_lte_rrc_RRCConnectionReconfiguration_v1370_IEs, RRCConnectionReconfiguration_v1370_IEs_sequence); +dissect_lte_rrc_T_csi_SubframeSet_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v12f0_IEs_sequence[] = { - { &hf_lte_rrc_scg_Configuration_v12f0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCG_Configuration_v12f0 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_73, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v1370_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_noResourceRestrictionForTTIBundling_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRCConnectionReconfiguration_v12f0_IEs(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_lte_rrc_RRCConnectionReconfiguration_v12f0_IEs, RRCConnectionReconfiguration_v12f0_IEs_sequence); +dissect_lte_rrc_T_noResourceRestrictionForTTIBundling_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v10l0_IEs_sequence[] = { - { &hf_lte_rrc_mobilityControlInfo_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityControlInfo_v10l0 }, - { &hf_lte_rrc_sCellToAddModList_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCellToAddModList_v10l0 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_72, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v12f0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_discoverySignalsInDeactSCell_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRCConnectionReconfiguration_v10l0_IEs(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_lte_rrc_RRCConnectionReconfiguration_v10l0_IEs, RRCConnectionReconfiguration_v10l0_IEs_sequence); +dissect_lte_rrc_T_discoverySignalsInDeactSCell_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v10i0_IEs_sequence[] = { - { &hf_lte_rrc_antennaInfoDedicatedPCell_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AntennaInfoDedicated_v10i0 }, - { &hf_lte_rrc_nonCriticalExtension_71, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v10l0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_numberOfAggregatedPRB_r12_vals[] = { + { 0, "n50" }, + { 1, "n75" }, + { 2, "n100" }, + { 3, "n125" }, + { 4, "n150" }, + { 5, "n175" }, + { 6, "n200" }, + { 7, "n225" }, + { 8, "n250" }, + { 9, "n275" }, + { 10, "n300" }, + { 11, "n350" }, + { 12, "n400" }, + { 13, "n450" }, + { 14, "n500" }, + { 15, "spare" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRCConnectionReconfiguration_v10i0_IEs(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_lte_rrc_RRCConnectionReconfiguration_v10i0_IEs, RRCConnectionReconfiguration_v10i0_IEs_sequence); +dissect_lte_rrc_T_numberOfAggregatedPRB_r12(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRCConnectionReconfiguration_v8m0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_70, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReconfiguration_v10i0_IEs }, +static const per_sequence_t NAICS_Capability_Entry_r12_sequence[] = { + { &hf_lte_rrc_numberOfNAICS_CapableCC_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_5 }, + { &hf_lte_rrc_numberOfAggregatedPRB_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numberOfAggregatedPRB_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RRCConnectionReconfiguration_v8m0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NAICS_Capability_Entry_r12(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_lte_rrc_RRCConnectionReconfiguration_v8m0_IEs, RRCConnectionReconfiguration_v8m0_IEs_sequence); + ett_lte_rrc_NAICS_Capability_Entry_r12, NAICS_Capability_Entry_r12_sequence); return offset; } -static const per_sequence_t RedirectedCarrierInfo_v9e0_sequence[] = { - { &hf_lte_rrc_eutra_v9e0 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, - { NULL, 0, 0, NULL } +static const per_sequence_t NAICS_Capability_List_r12_sequence_of[1] = { + { &hf_lte_rrc_NAICS_Capability_List_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NAICS_Capability_Entry_r12 }, }; static int -dissect_lte_rrc_RedirectedCarrierInfo_v9e0(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_lte_rrc_RedirectedCarrierInfo_v9e0, RedirectedCarrierInfo_v9e0_sequence); +dissect_lte_rrc_NAICS_Capability_List_r12(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_lte_rrc_NAICS_Capability_List_r12, NAICS_Capability_List_r12_sequence_of, + 1, maxNAICS_Entries_r12, FALSE); return offset; } -static const per_sequence_t FreqPriorityEUTRA_v9e0_sequence[] = { - { &hf_lte_rrc_carrierFreq_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, +static const per_sequence_t PhyLayerParameters_v1250_sequence[] = { + { &hf_lte_rrc_e_HARQ_Pattern_FDD_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_e_HARQ_Pattern_FDD_r12 }, + { &hf_lte_rrc_enhanced_4TxCodebook_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enhanced_4TxCodebook_r12 }, + { &hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdd_FDD_CA_PCellDuplex_r12 }, + { &hf_lte_rrc_phy_TDD_ReConfig_TDD_PCell_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_phy_TDD_ReConfig_TDD_PCell_r12 }, + { &hf_lte_rrc_phy_TDD_ReConfig_FDD_PCell_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_phy_TDD_ReConfig_FDD_PCell_r12 }, + { &hf_lte_rrc_pusch_FeedbackMode_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_FeedbackMode_r12 }, + { &hf_lte_rrc_pusch_SRS_PowerControl_SubframeSet_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SRS_PowerControl_SubframeSet_r12 }, + { &hf_lte_rrc_csi_SubframeSet_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_SubframeSet_r12 }, + { &hf_lte_rrc_noResourceRestrictionForTTIBundling_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_noResourceRestrictionForTTIBundling_r12 }, + { &hf_lte_rrc_discoverySignalsInDeactSCell_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discoverySignalsInDeactSCell_r12 }, + { &hf_lte_rrc_naics_Capability_List_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NAICS_Capability_List_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FreqPriorityEUTRA_v9e0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhyLayerParameters_v1250(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_lte_rrc_FreqPriorityEUTRA_v9e0, FreqPriorityEUTRA_v9e0_sequence); + ett_lte_rrc_PhyLayerParameters_v1250, PhyLayerParameters_v1250_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0_sequence_of[1] = { - { &hf_lte_rrc_freqPriorityListEUTRA_v9e0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqPriorityEUTRA_v9e0 }, +static const value_string lte_rrc_T_dl_256QAM_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0, SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_dl_256QAM_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t IdleModeMobilityControlInfo_v9e0_sequence[] = { - { &hf_lte_rrc_freqPriorityListEUTRA_v9e0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_FreqPriorityEUTRA_v9e0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ul_64QAM_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_IdleModeMobilityControlInfo_v9e0(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_lte_rrc_IdleModeMobilityControlInfo_v9e0, IdleModeMobilityControlInfo_v9e0_sequence); +dissect_lte_rrc_T_ul_64QAM_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_35_sequence[] = { +static const per_sequence_t SupportedBandEUTRA_v1250_sequence[] = { + { &hf_lte_rrc_dl_256QAM_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dl_256QAM_r12 }, + { &hf_lte_rrc_ul_64QAM_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_64QAM_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_35(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandEUTRA_v1250(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_lte_rrc_T_nonCriticalExtension_35, T_nonCriticalExtension_35_sequence); + ett_lte_rrc_SupportedBandEUTRA_v1250, SupportedBandEUTRA_v1250_sequence); return offset; } -static const per_sequence_t RRCConnectionRelease_v9e0_IEs_sequence[] = { - { &hf_lte_rrc_redirectedCarrierInfo_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedirectedCarrierInfo_v9e0 }, - { &hf_lte_rrc_idleModeMobilityControlInfo_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IdleModeMobilityControlInfo_v9e0 }, - { &hf_lte_rrc_nonCriticalExtension_106, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_35 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SupportedBandListEUTRA_v1250_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListEUTRA_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandEUTRA_v1250 }, }; static int -dissect_lte_rrc_RRCConnectionRelease_v9e0_IEs(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_lte_rrc_RRCConnectionRelease_v9e0_IEs, RRCConnectionRelease_v9e0_IEs_sequence); +dissect_lte_rrc_SupportedBandListEUTRA_v1250(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_lte_rrc_SupportedBandListEUTRA_v1250, SupportedBandListEUTRA_v1250_sequence_of, + 1, maxBands, FALSE); return offset; } -static const per_sequence_t FailureReportSCG_v12d0_sequence[] = { - { &hf_lte_rrc_measResultNeighCells_v12d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultList2EUTRA_v9e0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_asynchronous_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_FailureReportSCG_v12d0(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_lte_rrc_FailureReportSCG_v12d0, FailureReportSCG_v12d0_sequence); +dissect_lte_rrc_T_asynchronous_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_42_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_supportedCellGrouping_r12_vals[] = { + { 0, "threeEntries-r12" }, + { 1, "fourEntries-r12" }, + { 2, "fiveEntries-r12" }, + { 0, NULL } +}; + +static const per_choice_t T_supportedCellGrouping_r12_choice[] = { + { 0, &hf_lte_rrc_threeEntries_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_3 }, + { 1, &hf_lte_rrc_fourEntries_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_7 }, + { 2, &hf_lte_rrc_fiveEntries_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_15 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_42(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_lte_rrc_T_nonCriticalExtension_42, T_nonCriticalExtension_42_sequence); +dissect_lte_rrc_T_supportedCellGrouping_r12(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_lte_rrc_T_supportedCellGrouping_r12, T_supportedCellGrouping_r12_choice, + NULL); return offset; } -static const per_sequence_t SCGFailureInformation_v12d0_IEs_sequence[] = { - { &hf_lte_rrc_failureReportSCG_v12d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FailureReportSCG_v12d0 }, - { &hf_lte_rrc_nonCriticalExtension_124, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_42 }, +static const per_sequence_t T_dc_Support_r12_sequence[] = { + { &hf_lte_rrc_asynchronous_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_asynchronous_r12 }, + { &hf_lte_rrc_supportedCellGrouping_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCellGrouping_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCGFailureInformation_v12d0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dc_Support_r12(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_lte_rrc_SCGFailureInformation_v12d0_IEs, SCGFailureInformation_v12d0_IEs_sequence); + ett_lte_rrc_T_dc_Support_r12, T_dc_Support_r12_sequence); return offset; } -static const per_sequence_t MultiBandInfoList_sequence_of[1] = { - { &hf_lte_rrc_MultiBandInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator }, -}; static int -dissect_lte_rrc_MultiBandInfoList(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_lte_rrc_MultiBandInfoList, MultiBandInfoList_sequence_of, - 1, maxMultiBands, FALSE); +dissect_lte_rrc_BIT_STRING_SIZE_1_maxNAICS_Entries_r12(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, + 1, maxNAICS_Entries_r12, FALSE, NULL, NULL); return offset; } @@ -67344,1452 +83948,1356 @@ dissect_lte_rrc_MultiBandInfoList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t static int -dissect_lte_rrc_FreqBandIndicator_v9e0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - maxFBI_Plus1, maxFBI2, NULL, FALSE); +dissect_lte_rrc_BIT_STRING_SIZE_1_maxBands(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, + 1, maxBands, FALSE, NULL, NULL); return offset; } -static const per_sequence_t MultiBandInfo_v9e0_sequence[] = { - { &hf_lte_rrc_freqBandIndicator_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_v9e0 }, +static const per_sequence_t BandCombinationParameters_v1250_sequence[] = { + { &hf_lte_rrc_dc_Support_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dc_Support_r12 }, + { &hf_lte_rrc_supportedNAICS_2CRS_AP_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxNAICS_Entries_r12 }, + { &hf_lte_rrc_commSupportedBandsPerBC_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxBands }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MultiBandInfo_v9e0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandCombinationParameters_v1250(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_lte_rrc_MultiBandInfo_v9e0, MultiBandInfo_v9e0_sequence); + ett_lte_rrc_BandCombinationParameters_v1250, BandCombinationParameters_v1250_sequence); return offset; } -static const per_sequence_t MultiBandInfoList_v9e0_sequence_of[1] = { - { &hf_lte_rrc_MultiBandInfoList_v9e0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MultiBandInfo_v9e0 }, +static const per_sequence_t SupportedBandCombination_v1250_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1250 }, }; static int -dissect_lte_rrc_MultiBandInfoList_v9e0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandCombination_v1250(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_lte_rrc_MultiBandInfoList_v9e0, MultiBandInfoList_v9e0_sequence_of, - 1, maxMultiBands, FALSE); + ett_lte_rrc_SupportedBandCombination_v1250, SupportedBandCombination_v1250_sequence_of, + 1, maxBandComb_r10, FALSE); return offset; } -static const per_sequence_t NS_PmaxValue_v10l0_sequence[] = { - { &hf_lte_rrc_additionalSpectrumEmission_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SupportedBandCombinationAdd_v1250_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1250 }, }; static int -dissect_lte_rrc_NS_PmaxValue_v10l0(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_lte_rrc_NS_PmaxValue_v10l0, NS_PmaxValue_v10l0_sequence); +dissect_lte_rrc_SupportedBandCombinationAdd_v1250(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_lte_rrc_SupportedBandCombinationAdd_v1250, SupportedBandCombinationAdd_v1250_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const per_sequence_t NS_PmaxList_v10l0_sequence_of[1] = { - { &hf_lte_rrc_NS_PmaxList_v10l0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NS_PmaxValue_v10l0 }, +static const value_string lte_rrc_T_freqBandPriorityAdjustment_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_NS_PmaxList_v10l0(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_lte_rrc_NS_PmaxList_v10l0, NS_PmaxList_v10l0_sequence_of, - 1, maxNS_Pmax_r10, FALSE); +dissect_lte_rrc_T_freqBandPriorityAdjustment_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MultiBandInfoList_v10l0_sequence_of[1] = { - { &hf_lte_rrc_MultiBandInfoList_v10l0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NS_PmaxList_v10l0 }, +static const per_sequence_t RF_Parameters_v1250_sequence[] = { + { &hf_lte_rrc_supportedBandListEUTRA_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListEUTRA_v1250 }, + { &hf_lte_rrc_supportedBandCombination_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1250 }, + { &hf_lte_rrc_supportedBandCombinationAdd_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1250 }, + { &hf_lte_rrc_freqBandPriorityAdjustment_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqBandPriorityAdjustment_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MultiBandInfoList_v10l0(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_lte_rrc_MultiBandInfoList_v10l0, MultiBandInfoList_v10l0_sequence_of, - 1, maxMultiBands, FALSE); +dissect_lte_rrc_RF_Parameters_v1250(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_lte_rrc_RF_Parameters_v1250, RF_Parameters_v1250_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_51_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_extended_RLC_LI_Field_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_51(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_lte_rrc_T_nonCriticalExtension_51, T_nonCriticalExtension_51_sequence); +dissect_lte_rrc_T_extended_RLC_LI_Field_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType1_v10l0_IEs_sequence[] = { - { &hf_lte_rrc_freqBandInfo_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_v10l0 }, - { &hf_lte_rrc_multiBandInfoList_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10l0 }, - { &hf_lte_rrc_nonCriticalExtension_145, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_51 }, +static const per_sequence_t RLC_Parameters_r12_sequence[] = { + { &hf_lte_rrc_extended_RLC_LI_Field_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_extended_RLC_LI_Field_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType1_v10l0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RLC_Parameters_r12(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_lte_rrc_SystemInformationBlockType1_v10l0_IEs, SystemInformationBlockType1_v10l0_IEs_sequence); + ett_lte_rrc_RLC_Parameters_r12, RLC_Parameters_r12_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType1_v10j0_IEs_sequence[] = { - { &hf_lte_rrc_freqBandInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_r10 }, - { &hf_lte_rrc_multiBandInfoList_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10j0 }, - { &hf_lte_rrc_nonCriticalExtension_144, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v10l0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_loggedMBSFNMeasurements_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType1_v10j0_IEs(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_lte_rrc_SystemInformationBlockType1_v10j0_IEs, SystemInformationBlockType1_v10j0_IEs_sequence); +dissect_lte_rrc_T_loggedMBSFNMeasurements_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType1_v9e0_IEs_sequence[] = { - { &hf_lte_rrc_freqBandIndicator_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_v9e0 }, - { &hf_lte_rrc_multiBandInfoList_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v9e0 }, - { &hf_lte_rrc_nonCriticalExtension_143, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v10j0_IEs }, +static const per_sequence_t UE_BasedNetwPerfMeasParameters_v1250_sequence[] = { + { &hf_lte_rrc_loggedMBSFNMeasurements_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_loggedMBSFNMeasurements_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType1_v9e0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_v1250(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_lte_rrc_SystemInformationBlockType1_v9e0_IEs, SystemInformationBlockType1_v9e0_IEs_sequence); + ett_lte_rrc_UE_BasedNetwPerfMeasParameters_v1250, UE_BasedNetwPerfMeasParameters_v1250_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType1_v8h0_IEs_sequence[] = { - { &hf_lte_rrc_multiBandInfoList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList }, - { &hf_lte_rrc_nonCriticalExtension_142, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_v9e0_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SystemInformationBlockType1_v8h0_IEs(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_lte_rrc_SystemInformationBlockType1_v8h0_IEs, SystemInformationBlockType1_v8h0_IEs_sequence); +dissect_lte_rrc_INTEGER_0_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 14U, NULL, FALSE); return offset; } -static const per_sequence_t RLF_Report_v9e0_sequence[] = { - { &hf_lte_rrc_measResultListEUTRA_v9e0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasResultList2EUTRA_v9e0 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RLF_Report_v9e0(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_lte_rrc_RLF_Report_v9e0, RLF_Report_v9e0_sequence); +dissect_lte_rrc_INTEGER_0_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 13U, NULL, FALSE); return offset; } -static const per_sequence_t T_nonCriticalExtension_58_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_wlan_IW_RAN_Rules_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_58(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_lte_rrc_T_nonCriticalExtension_58, T_nonCriticalExtension_58_sequence); +dissect_lte_rrc_T_wlan_IW_RAN_Rules_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UEInformationResponse_v9e0_IEs_sequence[] = { - { &hf_lte_rrc_rlf_Report_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLF_Report_v9e0 }, - { &hf_lte_rrc_nonCriticalExtension_174, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_58 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_wlan_IW_ANDSF_Policies_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UEInformationResponse_v9e0_IEs(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_lte_rrc_UEInformationResponse_v9e0_IEs, UEInformationResponse_v9e0_IEs_sequence); +dissect_lte_rrc_T_wlan_IW_ANDSF_Policies_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_sequence_of[1] = { - { &hf_lte_rrc_multiBandInfoList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission }, +static const per_sequence_t WLAN_IW_Parameters_r12_sequence[] = { + { &hf_lte_rrc_wlan_IW_RAN_Rules_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_IW_RAN_Rules_r12 }, + { &hf_lte_rrc_wlan_IW_ANDSF_Policies_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_IW_ANDSF_Policies_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission(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_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission, SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_sequence_of, - 1, maxMultiBands, FALSE); +dissect_lte_rrc_WLAN_IW_Parameters_r12(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_lte_rrc_WLAN_IW_Parameters_r12, WLAN_IW_Parameters_r12_sequence); return offset; } +static const value_string lte_rrc_T_timerT312_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_nonCriticalExtension_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_SystemInformationBlockType2_v10m0_IEs_PDU); +dissect_lte_rrc_T_timerT312_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_dummy_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_alternativeTimeToTrigger_r12_01_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_dummy(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_lte_rrc_T_dummy, T_dummy_sequence); +dissect_lte_rrc_T_alternativeTimeToTrigger_r12_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType2_v9i0_IEs_sequence[] = { - { &hf_lte_rrc_nonCriticalExtension_188, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_64 }, - { &hf_lte_rrc_dummy , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dummy }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_incMonEUTRA_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType2_v9i0_IEs(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_lte_rrc_SystemInformationBlockType2_v9i0_IEs, SystemInformationBlockType2_v9i0_IEs_sequence); +dissect_lte_rrc_T_incMonEUTRA_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType2_v9e0_IEs_sequence[] = { - { &hf_lte_rrc_ul_CarrierFreq_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, - { &hf_lte_rrc_nonCriticalExtension_187, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType2_v9i0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_incMonUTRA_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType2_v9e0_IEs(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_lte_rrc_SystemInformationBlockType2_v9e0_IEs, SystemInformationBlockType2_v9e0_IEs_sequence); +dissect_lte_rrc_T_incMonUTRA_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType2_v8h0_IEs_sequence[] = { - { &hf_lte_rrc_multiBandInfoList_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission }, - { &hf_lte_rrc_nonCriticalExtension_186, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType2_v9e0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_extendedMaxMeasId_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType2_v8h0_IEs(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_lte_rrc_SystemInformationBlockType2_v8h0_IEs, SystemInformationBlockType2_v8h0_IEs_sequence); +dissect_lte_rrc_T_extendedMaxMeasId_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_freqInfo_v10l0_sequence[] = { - { &hf_lte_rrc_additionalSpectrumEmission_v10l0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_extendedRSRQ_LowerRange_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_freqInfo_v10l0(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_lte_rrc_T_freqInfo_v10l0, T_freqInfo_v10l0_sequence); +dissect_lte_rrc_T_extendedRSRQ_LowerRange_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0_sequence_of[1] = { - { &hf_lte_rrc_multiBandInfoList_v10l0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AdditionalSpectrumEmission_v10l0 }, +static const value_string lte_rrc_T_rsrq_OnAllSymbols_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0(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_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0, SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0_sequence_of, - 1, maxMultiBands, FALSE); +dissect_lte_rrc_T_rsrq_OnAllSymbols_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_65_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_crs_DiscoverySignalsMeas_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_65(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_lte_rrc_T_nonCriticalExtension_65, T_nonCriticalExtension_65_sequence); +dissect_lte_rrc_T_crs_DiscoverySignalsMeas_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType2_v10m0_IEs_sequence[] = { - { &hf_lte_rrc_freqInfo_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqInfo_v10l0 }, - { &hf_lte_rrc_multiBandInfoList_v10l0_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0 }, - { &hf_lte_rrc_nonCriticalExtension_189, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_65 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_csi_RS_DiscoverySignalsMeas_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType2_v10m0_IEs(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_lte_rrc_SystemInformationBlockType2_v10m0_IEs, SystemInformationBlockType2_v10m0_IEs_sequence); +dissect_lte_rrc_T_csi_RS_DiscoverySignalsMeas_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_66_sequence[] = { +static const per_sequence_t MeasParameters_v1250_sequence[] = { + { &hf_lte_rrc_timerT312_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_timerT312_r12 }, + { &hf_lte_rrc_alternativeTimeToTrigger_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_alternativeTimeToTrigger_r12_01 }, + { &hf_lte_rrc_incMonEUTRA_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_incMonEUTRA_r12 }, + { &hf_lte_rrc_incMonUTRA_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_incMonUTRA_r12 }, + { &hf_lte_rrc_extendedMaxMeasId_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedMaxMeasId_r12 }, + { &hf_lte_rrc_extendedRSRQ_LowerRange_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedRSRQ_LowerRange_r12 }, + { &hf_lte_rrc_rsrq_OnAllSymbols_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rsrq_OnAllSymbols_r12 }, + { &hf_lte_rrc_crs_DiscoverySignalsMeas_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_DiscoverySignalsMeas_r12 }, + { &hf_lte_rrc_csi_RS_DiscoverySignalsMeas_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_RS_DiscoverySignalsMeas_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_66(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasParameters_v1250(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_lte_rrc_T_nonCriticalExtension_66, T_nonCriticalExtension_66_sequence); + ett_lte_rrc_MeasParameters_v1250, MeasParameters_v1250_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType3_v10l0_IEs_sequence[] = { - { &hf_lte_rrc_freqBandInfo_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_v10l0 }, - { &hf_lte_rrc_multiBandInfoList_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10l0 }, - { &hf_lte_rrc_nonCriticalExtension_191, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_66 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_drb_TypeSplit_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType3_v10l0_IEs(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_lte_rrc_SystemInformationBlockType3_v10l0_IEs, SystemInformationBlockType3_v10l0_IEs_sequence); +dissect_lte_rrc_T_drb_TypeSplit_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType3_v10j0_IEs_sequence[] = { - { &hf_lte_rrc_freqBandInfo_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_r10 }, - { &hf_lte_rrc_multiBandInfoList_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10j0 }, - { &hf_lte_rrc_nonCriticalExtension_190, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType3_v10l0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_drb_TypeSCG_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType3_v10j0_IEs(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_lte_rrc_SystemInformationBlockType3_v10j0_IEs, SystemInformationBlockType3_v10j0_IEs_sequence); +dissect_lte_rrc_T_drb_TypeSCG_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_v8h0_sequence[] = { - { &hf_lte_rrc_multiBandInfoList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList }, +static const per_sequence_t DC_Parameters_r12_sequence[] = { + { &hf_lte_rrc_drb_TypeSplit_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_TypeSplit_r12 }, + { &hf_lte_rrc_drb_TypeSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_TypeSCG_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_v8h0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DC_Parameters_r12(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_lte_rrc_InterFreqCarrierFreqInfo_v8h0, InterFreqCarrierFreqInfo_v8h0_sequence); + ett_lte_rrc_DC_Parameters_r12, DC_Parameters_r12_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0_sequence_of[1] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v8h0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v8h0 }, +static const value_string lte_rrc_T_mbms_AsyncDC_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0, SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_mbms_AsyncDC_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_v9e0_sequence[] = { - { &hf_lte_rrc_dl_CarrierFreq_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ARFCN_ValueEUTRA_v9e0 }, - { &hf_lte_rrc_multiBandInfoList_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v9e0 }, +static const per_sequence_t MBMS_Parameters_v1250_sequence[] = { + { &hf_lte_rrc_mbms_AsyncDC_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_AsyncDC_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_v9e0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBMS_Parameters_v1250(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_lte_rrc_InterFreqCarrierFreqInfo_v9e0, InterFreqCarrierFreqInfo_v9e0_sequence); + ett_lte_rrc_MBMS_Parameters_v1250, MBMS_Parameters_v1250_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0_sequence_of[1] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v9e0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v9e0 }, +static const value_string lte_rrc_T_logicalChannelSR_ProhibitTimer_r12_01_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0, SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r12_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0_sequence_of[1] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v10j0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v10j0 }, +static const value_string lte_rrc_T_longDRX_Command_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0, SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_longDRX_Command_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t InterFreqCarrierFreqInfo_v10l0_sequence[] = { - { &hf_lte_rrc_freqBandInfo_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NS_PmaxList_v10l0 }, - { &hf_lte_rrc_multiBandInfoList_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_v10l0 }, +static const per_sequence_t MAC_Parameters_r12_sequence[] = { + { &hf_lte_rrc_logicalChannelSR_ProhibitTimer_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r12_01 }, + { &hf_lte_rrc_longDRX_Command_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_longDRX_Command_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqCarrierFreqInfo_v10l0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MAC_Parameters_r12(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_lte_rrc_InterFreqCarrierFreqInfo_v10l0, InterFreqCarrierFreqInfo_v10l0_sequence); + ett_lte_rrc_MAC_Parameters_r12, MAC_Parameters_r12_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0_sequence_of[1] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v10l0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v10l0 }, +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1250_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1250 }, + { &hf_lte_rrc_measParameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1250 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0(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_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0, SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1250(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1250, UE_EUTRA_CapabilityAddXDD_Mode_v1250_sequence); return offset; } -static const per_sequence_t InterFreqCarrierFreqList_v13a0_sequence_of[1] = { - { &hf_lte_rrc_InterFreqCarrierFreqList_v13a0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_v1360 }, +static const value_string lte_rrc_T_commSimultaneousTx_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_InterFreqCarrierFreqList_v13a0(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_lte_rrc_InterFreqCarrierFreqList_v13a0, InterFreqCarrierFreqList_v13a0_sequence_of, - 1, maxFreq, FALSE); +dissect_lte_rrc_T_commSimultaneousTx_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_67_sequence[] = { - { NULL, 0, 0, NULL } +static const per_sequence_t FreqBandIndicatorListEUTRA_r12_sequence_of[1] = { + { &hf_lte_rrc_FreqBandIndicatorListEUTRA_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, }; static int -dissect_lte_rrc_T_nonCriticalExtension_67(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_lte_rrc_T_nonCriticalExtension_67, T_nonCriticalExtension_67_sequence); +dissect_lte_rrc_FreqBandIndicatorListEUTRA_r12(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_lte_rrc_FreqBandIndicatorListEUTRA_r12, FreqBandIndicatorListEUTRA_r12_sequence_of, + 1, maxBands, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType5_v13a0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_interFreqCarrierFreqList_v13a0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqCarrierFreqList_v13a0 }, - { &hf_lte_rrc_nonCriticalExtension_196, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_67 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_support_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType5_v13a0_IEs(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_lte_rrc_SystemInformationBlockType5_v13a0_IEs, SystemInformationBlockType5_v13a0_IEs_sequence); +dissect_lte_rrc_T_support_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType5_v10l0_IEs_sequence[] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v10l0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0 }, - { &hf_lte_rrc_nonCriticalExtension_195, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType5_v13a0_IEs }, +static const per_sequence_t SupportedBandInfo_r12_sequence[] = { + { &hf_lte_rrc_support_r12 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_support_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SystemInformationBlockType5_v10l0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandInfo_r12(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_lte_rrc_SystemInformationBlockType5_v10l0_IEs, SystemInformationBlockType5_v10l0_IEs_sequence); + ett_lte_rrc_SupportedBandInfo_r12, SupportedBandInfo_r12_sequence); return offset; } -static const per_sequence_t SystemInformationBlockType5_v10j0_IEs_sequence[] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10j0 }, - { &hf_lte_rrc_nonCriticalExtension_194, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType5_v10l0_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t SupportedBandInfoList_r12_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandInfo_r12 }, }; static int -dissect_lte_rrc_SystemInformationBlockType5_v10j0_IEs(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_lte_rrc_SystemInformationBlockType5_v10j0_IEs, SystemInformationBlockType5_v10j0_IEs_sequence); +dissect_lte_rrc_SupportedBandInfoList_r12(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_lte_rrc_SupportedBandInfoList_r12, SupportedBandInfoList_r12_sequence_of, + 1, maxBands, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType5_v9e0_IEs_sequence[] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v9e0 }, - { &hf_lte_rrc_nonCriticalExtension_193, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType5_v10j0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_discScheduledResourceAlloc_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType5_v9e0_IEs(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_lte_rrc_SystemInformationBlockType5_v9e0_IEs, SystemInformationBlockType5_v9e0_IEs_sequence); +dissect_lte_rrc_T_discScheduledResourceAlloc_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SystemInformationBlockType5_v8h0_IEs_sequence[] = { - { &hf_lte_rrc_interFreqCarrierFreqList_v8h0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v8h0 }, - { &hf_lte_rrc_nonCriticalExtension_192, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType5_v9e0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_disc_UE_SelectedResourceAlloc_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType5_v8h0_IEs(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_lte_rrc_SystemInformationBlockType5_v8h0_IEs, SystemInformationBlockType5_v8h0_IEs_sequence); +dissect_lte_rrc_T_disc_UE_SelectedResourceAlloc_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxMultiBands_OF_FreqBandIndicator_UTRA_FDD_sequence_of[1] = { - { &hf_lte_rrc_multiBandInfoList_item_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_UTRA_FDD }, +static const value_string lte_rrc_T_disc_SLSS_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_FreqBandIndicator_UTRA_FDD(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_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_FreqBandIndicator_UTRA_FDD, SEQUENCE_SIZE_1_maxMultiBands_OF_FreqBandIndicator_UTRA_FDD_sequence_of, - 1, maxMultiBands, FALSE); +dissect_lte_rrc_T_disc_SLSS_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CarrierFreqInfoUTRA_FDD_v8h0_sequence[] = { - { &hf_lte_rrc_multiBandInfoList_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_FreqBandIndicator_UTRA_FDD }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_discSupportedProc_r12_vals[] = { + { 0, "n50" }, + { 1, "n400" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CarrierFreqInfoUTRA_FDD_v8h0(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_lte_rrc_CarrierFreqInfoUTRA_FDD_v8h0, CarrierFreqInfoUTRA_FDD_v8h0_sequence); +dissect_lte_rrc_T_discSupportedProc_r12(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0_sequence_of[1] = { - { &hf_lte_rrc_carrierFreqListUTRA_FDD_v8h0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreqInfoUTRA_FDD_v8h0 }, +static const per_sequence_t SL_Parameters_r12_sequence[] = { + { &hf_lte_rrc_commSimultaneousTx_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commSimultaneousTx_r12 }, + { &hf_lte_rrc_commSupportedBands_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicatorListEUTRA_r12 }, + { &hf_lte_rrc_discSupportedBands_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandInfoList_r12 }, + { &hf_lte_rrc_discScheduledResourceAlloc_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discScheduledResourceAlloc_r12 }, + { &hf_lte_rrc_disc_UE_SelectedResourceAlloc_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_disc_UE_SelectedResourceAlloc_r12 }, + { &hf_lte_rrc_disc_SLSS_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_disc_SLSS_r12 }, + { &hf_lte_rrc_discSupportedProc_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discSupportedProc_r12 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0(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_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0, SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0_sequence_of, - 1, maxUTRA_FDD_Carrier, FALSE); +dissect_lte_rrc_SL_Parameters_r12(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_lte_rrc_SL_Parameters_r12, SL_Parameters_r12_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_68_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_nonCriticalExtension_68(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_lte_rrc_T_nonCriticalExtension_68, T_nonCriticalExtension_68_sequence); +dissect_lte_rrc_INTEGER_15_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 15U, 16U, NULL, FALSE); return offset; } -static const per_sequence_t SystemInformationBlockType6_v8h0_IEs_sequence[] = { - { &hf_lte_rrc_carrierFreqListUTRA_FDD_v8h0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0 }, - { &hf_lte_rrc_nonCriticalExtension_197, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_68 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_fourLayerTM3_TM4_perCC_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SystemInformationBlockType6_v8h0_IEs(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_lte_rrc_SystemInformationBlockType6_v8h0_IEs, SystemInformationBlockType6_v8h0_IEs_sequence); +dissect_lte_rrc_T_fourLayerTM3_TM4_perCC_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_subframeAssignmentSL_r12_vals[] = { - { 0, "none" }, - { 1, "sa0" }, - { 2, "sa1" }, - { 3, "sa2" }, - { 4, "sa3" }, - { 5, "sa4" }, - { 6, "sa5" }, - { 7, "sa6" }, +static const value_string lte_rrc_T_supportedCSI_Proc_r12_vals[] = { + { 0, "n1" }, + { 1, "n3" }, + { 2, "n4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_subframeAssignmentSL_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_supportedCSI_Proc_r12(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, - 8, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t TDD_ConfigSL_r12_sequence[] = { - { &hf_lte_rrc_subframeAssignmentSL_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subframeAssignmentSL_r12 }, +static const per_sequence_t IntraBandContiguousCC_Info_r12_sequence[] = { + { &hf_lte_rrc_fourLayerTM3_TM4_perCC_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fourLayerTM3_TM4_perCC_r12 }, + { &hf_lte_rrc_supportedMIMO_CapabilityDL_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityDL_r10 }, + { &hf_lte_rrc_supportedCSI_Proc_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCSI_Proc_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_TDD_ConfigSL_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_IntraBandContiguousCC_Info_r12(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_lte_rrc_TDD_ConfigSL_r12, TDD_ConfigSL_r12_sequence); + ett_lte_rrc_IntraBandContiguousCC_Info_r12, IntraBandContiguousCC_Info_r12_sequence); return offset; } -static const value_string lte_rrc_AccessStratumRelease_vals[] = { - { 0, "rel8" }, - { 1, "rel9" }, - { 2, "rel10" }, - { 3, "rel11" }, - { 4, "rel12" }, - { 5, "rel13" }, - { 6, "rel14" }, - { 7, "rel15" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12_sequence_of[1] = { + { &hf_lte_rrc_intraBandContiguousCC_InfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IntraBandContiguousCC_Info_r12 }, }; - static int -dissect_lte_rrc_AccessStratumRelease(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, - 8, NULL, TRUE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12(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_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12, SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12_sequence_of, + 1, maxServCell_r10, FALSE); return offset; } -static const per_sequence_t ROHC_ProfileSupportList_r15_sequence[] = { - { &hf_lte_rrc_profile0x0001_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0002_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0003_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0004_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0006_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0101_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0102_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0103_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0104_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t CA_MIMO_ParametersDL_v1270_sequence[] = { + { &hf_lte_rrc_intraBandContiguousCC_InfoList_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_ROHC_ProfileSupportList_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CA_MIMO_ParametersDL_v1270(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_lte_rrc_ROHC_ProfileSupportList_r15, ROHC_ProfileSupportList_r15_sequence); + ett_lte_rrc_CA_MIMO_ParametersDL_v1270, CA_MIMO_ParametersDL_v1270_sequence); return offset; } -static const value_string lte_rrc_T_maxNumberROHC_ContextSessions_vals[] = { - { 0, "cs2" }, - { 1, "cs4" }, - { 2, "cs8" }, - { 3, "cs12" }, - { 4, "cs16" }, - { 5, "cs24" }, - { 6, "cs32" }, - { 7, "cs48" }, - { 8, "cs64" }, - { 9, "cs128" }, - { 10, "cs256" }, - { 11, "cs512" }, - { 12, "cs1024" }, - { 13, "cs16384" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v1270_sequence_of[1] = { + { &hf_lte_rrc_bandParametersDL_v1270_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_MIMO_ParametersDL_v1270 }, }; - static int -dissect_lte_rrc_T_maxNumberROHC_ContextSessions(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v1270(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_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v1270, SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v1270_sequence_of, + 1, maxBandwidthClass_r10, FALSE); return offset; } -static const per_sequence_t PDCP_Parameters_sequence[] = { - { &hf_lte_rrc_supportedROHC_Profiles, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ROHC_ProfileSupportList_r15 }, - { &hf_lte_rrc_maxNumberROHC_ContextSessions, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumberROHC_ContextSessions }, +static const per_sequence_t BandParameters_v1270_sequence[] = { + { &hf_lte_rrc_bandParametersDL_v1270, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v1270 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PDCP_Parameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandParameters_v1270(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_lte_rrc_PDCP_Parameters, PDCP_Parameters_sequence); + ett_lte_rrc_BandParameters_v1270, BandParameters_v1270_sequence); return offset; } -static const per_sequence_t PhyLayerParameters_sequence[] = { - { &hf_lte_rrc_ue_TxAntennaSelectionSupported, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_ue_SpecificRefSigsSupported, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1270_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_v1270_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1270 }, }; static int -dissect_lte_rrc_PhyLayerParameters(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_lte_rrc_PhyLayerParameters, PhyLayerParameters_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1270(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1270, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1270_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); return offset; } -static const per_sequence_t SupportedBandEUTRA_sequence[] = { - { &hf_lte_rrc_bandEUTRA , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator }, - { &hf_lte_rrc_halfDuplex , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t BandCombinationParameters_v1270_sequence[] = { + { &hf_lte_rrc_bandParameterList_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1270 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandCombinationParameters_v1270(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_lte_rrc_SupportedBandEUTRA, SupportedBandEUTRA_sequence); + ett_lte_rrc_BandCombinationParameters_v1270, BandCombinationParameters_v1270_sequence); return offset; } -static const per_sequence_t SupportedBandListEUTRA_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListEUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandEUTRA }, +static const per_sequence_t SupportedBandCombination_v1270_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1270_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1270 }, }; static int -dissect_lte_rrc_SupportedBandListEUTRA(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandCombination_v1270(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_lte_rrc_SupportedBandListEUTRA, SupportedBandListEUTRA_sequence_of, - 1, maxBands, FALSE); + ett_lte_rrc_SupportedBandCombination_v1270, SupportedBandCombination_v1270_sequence_of, + 1, maxBandComb_r10, FALSE); return offset; } -static const per_sequence_t RF_Parameters_sequence[] = { - { &hf_lte_rrc_supportedBandListEUTRA, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListEUTRA }, - { NULL, 0, 0, NULL } +static const per_sequence_t SupportedBandCombinationAdd_v1270_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_v1270_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1270 }, }; static int -dissect_lte_rrc_RF_Parameters(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_lte_rrc_RF_Parameters, RF_Parameters_sequence); +dissect_lte_rrc_SupportedBandCombinationAdd_v1270(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_lte_rrc_SupportedBandCombinationAdd_v1270, SupportedBandCombinationAdd_v1270_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const per_sequence_t InterFreqBandInfo_sequence[] = { - { &hf_lte_rrc_interFreqNeedForGaps, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t RF_Parameters_v1270_sequence[] = { + { &hf_lte_rrc_supportedBandCombination_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1270 }, + { &hf_lte_rrc_supportedBandCombinationAdd_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1270 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterFreqBandInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - meas_capabilities_item_band_mappings_t *mappings; - proto_item *it; +dissect_lte_rrc_RF_Parameters_v1270(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_lte_rrc_InterFreqBandInfo, InterFreqBandInfo_sequence); - - mappings = private_data_meas_capabilities_item_band_mappings(actx); - if (mappings->number_of_interfreq_serving_read < mappings->number_of_bands_set) { - guint16 serving_band = mappings->band_by_item[mappings->number_of_interfreq_serving_read]; - guint16 target_band = mappings->band_by_item[mappings->number_of_interfreq_target_read++]; - if (mappings->number_of_interfreq_target_read == mappings->number_of_bands_set) { - mappings->number_of_interfreq_target_read = 0; - mappings->number_of_interfreq_serving_read++; - } - - /* Add a generated item showing serving & target band for this entry */ - it = proto_tree_add_uint(tree, hf_lte_rrc_bandEUTRA, tvb, 0, 0, serving_band); - proto_item_append_text(it, " -> band %u", target_band); - PROTO_ITEM_SET_GENERATED(it); - } - + ett_lte_rrc_RF_Parameters_v1270, RF_Parameters_v1270_sequence); return offset; } -static const per_sequence_t InterFreqBandList_sequence_of[1] = { - { &hf_lte_rrc_InterFreqBandList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqBandInfo }, +static const value_string lte_rrc_T_alternativeTBS_Indices_r12_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_InterFreqBandList(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_lte_rrc_InterFreqBandList, InterFreqBandList_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_alternativeTBS_Indices_r12(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t InterRAT_BandInfo_sequence[] = { - { &hf_lte_rrc_interRAT_NeedForGaps, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t PhyLayerParameters_v1280_sequence[] = { + { &hf_lte_rrc_alternativeTBS_Indices_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_alternativeTBS_Indices_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_InterRAT_BandInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhyLayerParameters_v1280(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_lte_rrc_InterRAT_BandInfo, InterRAT_BandInfo_sequence); + ett_lte_rrc_PhyLayerParameters_v1280, PhyLayerParameters_v1280_sequence); return offset; } -static const per_sequence_t InterRAT_BandList_sequence_of[1] = { - { &hf_lte_rrc_InterRAT_BandList_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterRAT_BandInfo }, +static const value_string lte_rrc_T_ue_CategoryDL_v1310_vals[] = { + { 0, "n17" }, + { 1, "m1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_InterRAT_BandList(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_lte_rrc_InterRAT_BandList, InterRAT_BandList_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_ue_CategoryDL_v1310(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandInfoEUTRA_sequence[] = { - { &hf_lte_rrc_interFreqBandList, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqBandList }, - { &hf_lte_rrc_interRAT_BandList, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterRAT_BandList }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ue_CategoryUL_v1310_vals[] = { + { 0, "n14" }, + { 1, "m1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_BandInfoEUTRA(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_lte_rrc_BandInfoEUTRA, BandInfoEUTRA_sequence); +dissect_lte_rrc_T_ue_CategoryUL_v1310(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandListEUTRA_sequence_of[1] = { - { &hf_lte_rrc_BandListEUTRA_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandInfoEUTRA }, +static const value_string lte_rrc_T_pdcp_SN_Extension_18bits_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_BandListEUTRA(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_lte_rrc_BandListEUTRA, BandListEUTRA_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_pdcp_SN_Extension_18bits_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MeasParameters_sequence[] = { - { &hf_lte_rrc_bandListEUTRA, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandListEUTRA }, +static const per_sequence_t PDCP_Parameters_v1310_sequence[] = { + { &hf_lte_rrc_pdcp_SN_Extension_18bits_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcp_SN_Extension_18bits_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PDCP_Parameters_v1310(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_lte_rrc_MeasParameters, MeasParameters_sequence); + ett_lte_rrc_PDCP_Parameters_v1310, PDCP_Parameters_v1310_sequence); return offset; } +static const value_string lte_rrc_T_extendedRLC_SN_SO_Field_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_measParameters(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - meas_capabilities_item_band_mappings_t *mappings; - offset = dissect_lte_rrc_MeasParameters(tvb, offset, actx, tree, hf_index); - - /* Clear band mapping once measParameters IE has been decoded */ - mappings = private_data_meas_capabilities_item_band_mappings(actx); - mappings->number_of_bands_set = 0; +static int +dissect_lte_rrc_T_extendedRLC_SN_SO_Field_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t RLC_Parameters_v1310_sequence[] = { + { &hf_lte_rrc_extendedRLC_SN_SO_Field_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedRLC_SN_SO_Field_r13 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_featureGroupIndicators(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *featureGroupIndicators_tvb=NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndicators_tvb, NULL); - - if(featureGroupIndicators_tvb){ - /* Dissect featureGroupIndicators */ - dissect_lte_rrc_featureGroupIndicators(featureGroupIndicators_tvb, actx); - } - +dissect_lte_rrc_RLC_Parameters_v1310(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_lte_rrc_RLC_Parameters_v1310, RLC_Parameters_v1310_sequence); return offset; } -static const value_string lte_rrc_SupportedBandUTRA_FDD_vals[] = { - { 0, "bandI" }, - { 1, "bandII" }, - { 2, "bandIII" }, - { 3, "bandIV" }, - { 4, "bandV" }, - { 5, "bandVI" }, - { 6, "bandVII" }, - { 7, "bandVIII" }, - { 8, "bandIX" }, - { 9, "bandX" }, - { 10, "bandXI" }, - { 11, "bandXII" }, - { 12, "bandXIII" }, - { 13, "bandXIV" }, - { 14, "bandXV" }, - { 15, "bandXVI" }, - { 16, "bandXVII-8a0" }, - { 17, "bandXVIII-8a0" }, - { 18, "bandXIX-8a0" }, - { 19, "bandXX-8a0" }, - { 20, "bandXXI-8a0" }, - { 21, "bandXXII-8a0" }, - { 22, "bandXXIII-8a0" }, - { 23, "bandXXIV-8a0" }, - { 24, "bandXXV-8a0" }, - { 25, "bandXXVI-8a0" }, - { 26, "bandXXVII-8a0" }, - { 27, "bandXXVIII-8a0" }, - { 28, "bandXXIX-8a0" }, - { 29, "bandXXX-8a0" }, - { 30, "bandXXXI-8a0" }, - { 31, "bandXXXII-8a0" }, +static const value_string lte_rrc_T_extendedMAC_LengthField_r13_vals[] = { + { 0, "supported" }, { 0, NULL } }; -static value_string_ext lte_rrc_SupportedBandUTRA_FDD_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_SupportedBandUTRA_FDD_vals); - static int -dissect_lte_rrc_SupportedBandUTRA_FDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_extendedMAC_LengthField_r13(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, - 16, NULL, TRUE, 16, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandListUTRA_FDD_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListUTRA_FDD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandUTRA_FDD }, +static const value_string lte_rrc_T_extendedLongDRX_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandListUTRA_FDD(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_lte_rrc_SupportedBandListUTRA_FDD, SupportedBandListUTRA_FDD_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_extendedLongDRX_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t IRAT_ParametersUTRA_FDD_sequence[] = { - { &hf_lte_rrc_supportedBandListUTRA_FDD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListUTRA_FDD }, +static const per_sequence_t MAC_Parameters_v1310_sequence[] = { + { &hf_lte_rrc_extendedMAC_LengthField_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedMAC_LengthField_r13 }, + { &hf_lte_rrc_extendedLongDRX_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedLongDRX_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IRAT_ParametersUTRA_FDD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MAC_Parameters_v1310(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_lte_rrc_IRAT_ParametersUTRA_FDD, IRAT_ParametersUTRA_FDD_sequence); + ett_lte_rrc_MAC_Parameters_v1310, MAC_Parameters_v1310_sequence); return offset; } -static const value_string lte_rrc_SupportedBandUTRA_TDD128_vals[] = { - { 0, "a" }, - { 1, "b" }, - { 2, "c" }, - { 3, "d" }, - { 4, "e" }, - { 5, "f" }, - { 6, "g" }, - { 7, "h" }, - { 8, "i" }, - { 9, "j" }, - { 10, "k" }, - { 11, "l" }, - { 12, "m" }, - { 13, "n" }, - { 14, "o" }, - { 15, "p" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_SupportedBandUTRA_TDD128(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, - 16, NULL, TRUE, 0, NULL); +dissect_lte_rrc_T_aperiodicCSI_Reporting_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *aperiodicCSI_tvb=NULL; + proto_tree *subtree; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 2, 2, FALSE, &aperiodicCSI_tvb, NULL); + + if (aperiodicCSI_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_aperiodicCSI_Reporting_r13); + proto_tree_add_bits_item(subtree, hf_lte_rrc_aperiodicCSI_Reporting_r13_bit1, aperiodicCSI_tvb, 0, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_aperiodicCSI_Reporting_r13_bit2, aperiodicCSI_tvb, 1, 1, ENC_BIG_ENDIAN); + } + return offset; } -static const per_sequence_t SupportedBandListUTRA_TDD128_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListUTRA_TDD128_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandUTRA_TDD128 }, -}; static int -dissect_lte_rrc_SupportedBandListUTRA_TDD128(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_lte_rrc_SupportedBandListUTRA_TDD128, SupportedBandListUTRA_TDD128_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_codebook_HARQ_ACK_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *codebook_tvb=NULL; + proto_tree *subtree; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 2, 2, FALSE, &codebook_tvb, NULL); + + if (codebook_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_codebook_HARQ_ACK_r13); + proto_tree_add_bits_item(subtree, hf_lte_rrc_codebook_HARQ_ACK_r13_bit1, codebook_tvb, 0, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_codebook_HARQ_ACK_r13_bit2, codebook_tvb, 1, 1, ENC_BIG_ENDIAN); + } + return offset; } -static const per_sequence_t IRAT_ParametersUTRA_TDD128_sequence[] = { - { &hf_lte_rrc_supportedBandListUTRA_TDD128, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListUTRA_TDD128 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_crossCarrierScheduling_B5C_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_IRAT_ParametersUTRA_TDD128(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_lte_rrc_IRAT_ParametersUTRA_TDD128, IRAT_ParametersUTRA_TDD128_sequence); +dissect_lte_rrc_T_crossCarrierScheduling_B5C_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_SupportedBandUTRA_TDD384_vals[] = { - { 0, "a" }, - { 1, "b" }, - { 2, "c" }, - { 3, "d" }, - { 4, "e" }, - { 5, "f" }, - { 6, "g" }, - { 7, "h" }, - { 8, "i" }, - { 9, "j" }, - { 10, "k" }, - { 11, "l" }, - { 12, "m" }, - { 13, "n" }, - { 14, "o" }, - { 15, "p" }, +static const value_string lte_rrc_T_fdd_HARQ_TimingTDD_r13_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_SupportedBandUTRA_TDD384(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_fdd_HARQ_TimingTDD_r13(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, - 16, NULL, TRUE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandListUTRA_TDD384_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListUTRA_TDD384_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandUTRA_TDD384 }, -}; static int -dissect_lte_rrc_SupportedBandListUTRA_TDD384(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_lte_rrc_SupportedBandListUTRA_TDD384, SupportedBandListUTRA_TDD384_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_INTEGER_5_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 5U, 32U, NULL, FALSE); return offset; } -static const per_sequence_t IRAT_ParametersUTRA_TDD384_sequence[] = { - { &hf_lte_rrc_supportedBandListUTRA_TDD384, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListUTRA_TDD384 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_pucch_Format4_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_IRAT_ParametersUTRA_TDD384(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_lte_rrc_IRAT_ParametersUTRA_TDD384, IRAT_ParametersUTRA_TDD384_sequence); +dissect_lte_rrc_T_pucch_Format4_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_SupportedBandUTRA_TDD768_vals[] = { - { 0, "a" }, - { 1, "b" }, - { 2, "c" }, - { 3, "d" }, - { 4, "e" }, - { 5, "f" }, - { 6, "g" }, - { 7, "h" }, - { 8, "i" }, - { 9, "j" }, - { 10, "k" }, - { 11, "l" }, - { 12, "m" }, - { 13, "n" }, - { 14, "o" }, - { 15, "p" }, +static const value_string lte_rrc_T_pucch_Format5_r13_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_SupportedBandUTRA_TDD768(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pucch_Format5_r13(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, - 16, NULL, TRUE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandListUTRA_TDD768_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListUTRA_TDD768_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandUTRA_TDD768 }, +static const value_string lte_rrc_T_pucch_SCell_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandListUTRA_TDD768(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_lte_rrc_SupportedBandListUTRA_TDD768, SupportedBandListUTRA_TDD768_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_pucch_SCell_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t IRAT_ParametersUTRA_TDD768_sequence[] = { - { &hf_lte_rrc_supportedBandListUTRA_TDD768, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListUTRA_TDD768 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_spatialBundling_HARQ_ACK_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_IRAT_ParametersUTRA_TDD768(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_lte_rrc_IRAT_ParametersUTRA_TDD768, IRAT_ParametersUTRA_TDD768_sequence); +dissect_lte_rrc_T_spatialBundling_HARQ_ACK_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_SupportedBandGERAN_vals[] = { - { 0, "gsm450" }, - { 1, "gsm480" }, - { 2, "gsm710" }, - { 3, "gsm750" }, - { 4, "gsm810" }, - { 5, "gsm850" }, - { 6, "gsm900P" }, - { 7, "gsm900E" }, - { 8, "gsm900R" }, - { 9, "gsm1800" }, - { 10, "gsm1900" }, - { 11, "spare5" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, + +static int +dissect_lte_rrc_INTEGER_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 32U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_pdcch_CandidateReductions_r13_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_SupportedBandGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pdcch_CandidateReductions_r13(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, - 16, NULL, TRUE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandListGERAN_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListGERAN_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandGERAN }, +static const value_string lte_rrc_T_skipMonitoringDCI_Format0_1A_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandListGERAN(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_lte_rrc_SupportedBandListGERAN, SupportedBandListGERAN_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_skipMonitoringDCI_Format0_1A_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t IRAT_ParametersGERAN_sequence[] = { - { &hf_lte_rrc_supportedBandListGERAN, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListGERAN }, - { &hf_lte_rrc_interRAT_PS_HO_ToGERAN, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t T_supportedBlindDecoding_r13_sequence[] = { + { &hf_lte_rrc_maxNumberDecoding_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, + { &hf_lte_rrc_pdcch_CandidateReductions_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcch_CandidateReductions_r13 }, + { &hf_lte_rrc_skipMonitoringDCI_Format0_1A_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipMonitoringDCI_Format0_1A_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IRAT_ParametersGERAN(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_supportedBlindDecoding_r13(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_lte_rrc_IRAT_ParametersGERAN, IRAT_ParametersGERAN_sequence); + ett_lte_rrc_T_supportedBlindDecoding_r13, T_supportedBlindDecoding_r13_sequence); return offset; } -static const per_sequence_t SupportedBandListHRPD_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListHRPD_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, +static const value_string lte_rrc_T_uci_PUSCH_Ext_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandListHRPD(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_lte_rrc_SupportedBandListHRPD, SupportedBandListHRPD_sequence_of, - 1, maxCDMA_BandClass, FALSE); +dissect_lte_rrc_T_uci_PUSCH_Ext_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_tx_ConfigHRPD_vals[] = { - { 0, "single" }, - { 1, "dual" }, +static const value_string lte_rrc_T_crs_InterfMitigationTM10_r13_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_tx_ConfigHRPD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_crs_InterfMitigationTM10_r13(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_rx_ConfigHRPD_vals[] = { - { 0, "single" }, - { 1, "dual" }, +static const value_string lte_rrc_T_pdsch_CollisionHandling_r13_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rx_ConfigHRPD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pdsch_CollisionHandling_r13(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t IRAT_ParametersCDMA2000_HRPD_sequence[] = { - { &hf_lte_rrc_supportedBandListHRPD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandListHRPD }, - { &hf_lte_rrc_tx_ConfigHRPD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_tx_ConfigHRPD }, - { &hf_lte_rrc_rx_ConfigHRPD, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rx_ConfigHRPD }, +static const per_sequence_t PhyLayerParameters_v1310_sequence[] = { + { &hf_lte_rrc_aperiodicCSI_Reporting_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_aperiodicCSI_Reporting_r13 }, + { &hf_lte_rrc_codebook_HARQ_ACK_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_codebook_HARQ_ACK_r13 }, + { &hf_lte_rrc_crossCarrierScheduling_B5C_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crossCarrierScheduling_B5C_r13 }, + { &hf_lte_rrc_fdd_HARQ_TimingTDD_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fdd_HARQ_TimingTDD_r13 }, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_5_32 }, + { &hf_lte_rrc_pucch_Format4_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_Format4_r13 }, + { &hf_lte_rrc_pucch_Format5_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_Format5_r13 }, + { &hf_lte_rrc_pucch_SCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_SCell_r13 }, + { &hf_lte_rrc_spatialBundling_HARQ_ACK_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_spatialBundling_HARQ_ACK_r13 }, + { &hf_lte_rrc_supportedBlindDecoding_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedBlindDecoding_r13 }, + { &hf_lte_rrc_uci_PUSCH_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_uci_PUSCH_Ext_r13 }, + { &hf_lte_rrc_crs_InterfMitigationTM10_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_InterfMitigationTM10_r13 }, + { &hf_lte_rrc_pdsch_CollisionHandling_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_CollisionHandling_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IRAT_ParametersCDMA2000_HRPD(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhyLayerParameters_v1310(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_lte_rrc_IRAT_ParametersCDMA2000_HRPD, IRAT_ParametersCDMA2000_HRPD_sequence); + ett_lte_rrc_PhyLayerParameters_v1310, PhyLayerParameters_v1310_sequence); return offset; } -static const per_sequence_t SupportedBandList1XRTT_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandList1XRTT_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandclassCDMA2000 }, +static const value_string lte_rrc_T_reducedIntNonContCombRequested_r13_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandList1XRTT(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_lte_rrc_SupportedBandList1XRTT, SupportedBandList1XRTT_sequence_of, - 1, maxCDMA_BandClass, FALSE); +dissect_lte_rrc_T_reducedIntNonContCombRequested_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_tx_Config1XRTT_vals[] = { - { 0, "single" }, - { 1, "dual" }, +static const value_string lte_rrc_T_skipFallbackCombRequested_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_tx_Config1XRTT(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_skipFallbackCombRequested_r13(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_rx_Config1XRTT_vals[] = { - { 0, "single" }, - { 1, "dual" }, - { 0, NULL } +static const per_sequence_t T_eNB_RequestedParameters_r13_sequence[] = { + { &hf_lte_rrc_reducedIntNonContCombRequested_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedIntNonContCombRequested_r13 }, + { &hf_lte_rrc_requestedCCsDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_32 }, + { &hf_lte_rrc_requestedCCsUL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_32 }, + { &hf_lte_rrc_skipFallbackCombRequested_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipFallbackCombRequested_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_rx_Config1XRTT(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, FALSE, 0, NULL); +dissect_lte_rrc_T_eNB_RequestedParameters_r13(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_lte_rrc_T_eNB_RequestedParameters_r13, T_eNB_RequestedParameters_r13_sequence); return offset; } -static const per_sequence_t IRAT_ParametersCDMA2000_1XRTT_sequence[] = { - { &hf_lte_rrc_supportedBandList1XRTT, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandList1XRTT }, - { &hf_lte_rrc_tx_Config1XRTT, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_tx_Config1XRTT }, - { &hf_lte_rrc_rx_Config1XRTT, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rx_Config1XRTT }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_maximumCCsRetrieval_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT(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_lte_rrc_IRAT_ParametersCDMA2000_1XRTT, IRAT_ParametersCDMA2000_1XRTT_sequence); +dissect_lte_rrc_T_maximumCCsRetrieval_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_interRAT_Parameters_sequence[] = { - { &hf_lte_rrc_utraFDD , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_FDD }, - { &hf_lte_rrc_utraTDD128 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_TDD128 }, - { &hf_lte_rrc_utraTDD384 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_TDD384 }, - { &hf_lte_rrc_utraTDD768 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_TDD768 }, - { &hf_lte_rrc_geran_02 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersGERAN }, - { &hf_lte_rrc_cdma2000_HRPD_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_HRPD }, - { &hf_lte_rrc_cdma2000_1xRTT_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_skipFallbackCombinations_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_interRAT_Parameters(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_lte_rrc_T_interRAT_Parameters, T_interRAT_Parameters_sequence); +dissect_lte_rrc_T_skipFallbackCombinations_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_enhancedDualLayerFDD_r9_vals[] = { +static const value_string lte_rrc_T_reducedIntNonContComb_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_enhancedDualLayerFDD_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_reducedIntNonContComb_r13(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, 1, NULL, FALSE, 0, NULL); @@ -68797,14 +85305,14 @@ dissect_lte_rrc_T_enhancedDualLayerFDD_r9(tvbuff_t *tvb _U_, int offset _U_, asn } -static const value_string lte_rrc_T_enhancedDualLayerTDD_r9_vals[] = { +static const value_string lte_rrc_T_ue_PowerClass_5_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_enhancedDualLayerTDD_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_PowerClass_5_r13(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, 1, NULL, FALSE, 0, NULL); @@ -68812,44 +85320,42 @@ dissect_lte_rrc_T_enhancedDualLayerTDD_r9(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t PhyLayerParameters_v920_sequence[] = { - { &hf_lte_rrc_enhancedDualLayerFDD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enhancedDualLayerFDD_r9 }, - { &hf_lte_rrc_enhancedDualLayerTDD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enhancedDualLayerTDD_r9 }, +static const per_sequence_t SupportedBandEUTRA_v1310_sequence[] = { + { &hf_lte_rrc_ue_PowerClass_5_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_PowerClass_5_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhyLayerParameters_v920(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandEUTRA_v1310(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_lte_rrc_PhyLayerParameters_v920, PhyLayerParameters_v920_sequence); + ett_lte_rrc_SupportedBandEUTRA_v1310, SupportedBandEUTRA_v1310_sequence); return offset; } -static const value_string lte_rrc_T_dtm_r9_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SupportedBandListEUTRA_v1310_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListEUTRA_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandEUTRA_v1310 }, }; - static int -dissect_lte_rrc_T_dtm_r9(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandListEUTRA_v1310(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_lte_rrc_SupportedBandListEUTRA_v1310, SupportedBandListEUTRA_v1310_sequence_of, + 1, maxBands, FALSE); return offset; } -static const value_string lte_rrc_T_e_RedirectionGERAN_r9_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_differentFallbackSupported_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_e_RedirectionGERAN_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_differentFallbackSupported_r13(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, 1, NULL, FALSE, 0, NULL); @@ -68857,29 +85363,23 @@ dissect_lte_rrc_T_e_RedirectionGERAN_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const per_sequence_t IRAT_ParametersGERAN_v920_sequence[] = { - { &hf_lte_rrc_dtm_r9 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dtm_r9 }, - { &hf_lte_rrc_e_RedirectionGERAN_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_e_RedirectionGERAN_r9 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_IRAT_ParametersGERAN_v920(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_lte_rrc_IRAT_ParametersGERAN_v920, IRAT_ParametersGERAN_v920_sequence); +dissect_lte_rrc_BandParametersUL_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_CA_MIMO_ParametersUL_r10(tvb, offset, actx, tree, hf_index); return offset; } -static const value_string lte_rrc_T_e_RedirectionUTRA_r9_vals[] = { +static const value_string lte_rrc_T_fourLayerTM3_TM4_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_e_RedirectionUTRA_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_fourLayerTM3_TM4_r13(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, 1, NULL, FALSE, 0, NULL); @@ -68887,88 +85387,102 @@ dissect_lte_rrc_T_e_RedirectionUTRA_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t IRAT_ParametersUTRA_v920_sequence[] = { - { &hf_lte_rrc_e_RedirectionUTRA_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_e_RedirectionUTRA_r9 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12_sequence_of[1] = { + { &hf_lte_rrc_intraBandContiguousCC_InfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IntraBandContiguousCC_Info_r12 }, }; static int -dissect_lte_rrc_IRAT_ParametersUTRA_v920(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_lte_rrc_IRAT_ParametersUTRA_v920, IRAT_ParametersUTRA_v920_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12(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_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12, SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12_sequence_of, + 1, maxServCell_r13, FALSE); return offset; } -static const value_string lte_rrc_T_e_CSFB_1XRTT_r9_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t CA_MIMO_ParametersDL_r13_sequence[] = { + { &hf_lte_rrc_ca_BandwidthClassDL_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_BandwidthClass_r10 }, + { &hf_lte_rrc_supportedMIMO_CapabilityDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityDL_r10 }, + { &hf_lte_rrc_fourLayerTM3_TM4_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fourLayerTM3_TM4_r13 }, + { &hf_lte_rrc_intraBandContiguousCC_InfoList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12 }, + { NULL, 0, 0, NULL } }; +static int +dissect_lte_rrc_CA_MIMO_ParametersDL_r13(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_lte_rrc_CA_MIMO_ParametersDL_r13, CA_MIMO_ParametersDL_r13_sequence); + + return offset; +} + + static int -dissect_lte_rrc_T_e_CSFB_1XRTT_r9(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BandParametersDL_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_CA_MIMO_ParametersDL_r13(tvb, offset, actx, tree, hf_index); return offset; } -static const value_string lte_rrc_T_e_CSFB_ConcPS_Mob1XRTT_r9_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_supportedCSI_Proc_r13_vals[] = { + { 0, "n1" }, + { 1, "n3" }, + { 2, "n4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_e_CSFB_ConcPS_Mob1XRTT_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_supportedCSI_Proc_r13(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, - 1, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t IRAT_ParametersCDMA2000_1XRTT_v920_sequence[] = { - { &hf_lte_rrc_e_CSFB_1XRTT_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_e_CSFB_1XRTT_r9 }, - { &hf_lte_rrc_e_CSFB_ConcPS_Mob1XRTT_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_e_CSFB_ConcPS_Mob1XRTT_r9 }, +static const per_sequence_t BandParameters_r13_sequence[] = { + { &hf_lte_rrc_bandEUTRA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, + { &hf_lte_rrc_bandParametersUL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersUL_r13 }, + { &hf_lte_rrc_bandParametersDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersDL_r13 }, + { &hf_lte_rrc_supportedCSI_Proc_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCSI_Proc_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v920(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandParameters_r13(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_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v920, IRAT_ParametersCDMA2000_1XRTT_v920_sequence); + ett_lte_rrc_BandParameters_r13, BandParameters_r13_sequence); return offset; } -static const value_string lte_rrc_T_deviceType_r9_vals[] = { - { 0, "noBenFromBatConsumpOpt" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r13_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_r13 }, }; - static int -dissect_lte_rrc_T_deviceType_r9(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r13(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r13, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r13_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); return offset; } -static const value_string lte_rrc_T_intraFreqProximityIndication_r9_vals[] = { +static const value_string lte_rrc_T_multipleTimingAdvance_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_intraFreqProximityIndication_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_multipleTimingAdvance_r13(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, 1, NULL, FALSE, 0, NULL); @@ -68976,14 +85490,14 @@ dissect_lte_rrc_T_intraFreqProximityIndication_r9(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_T_interFreqProximityIndication_r9_vals[] = { +static const value_string lte_rrc_T_simultaneousRx_Tx_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_interFreqProximityIndication_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_simultaneousRx_Tx_r13(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, 1, NULL, FALSE, 0, NULL); @@ -68991,14 +85505,14 @@ dissect_lte_rrc_T_interFreqProximityIndication_r9(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_T_utran_ProximityIndication_r9_vals[] = { +static const value_string lte_rrc_T_asynchronous_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_utran_ProximityIndication_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_asynchronous_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69006,91 +85520,108 @@ dissect_lte_rrc_T_utran_ProximityIndication_r9(tvbuff_t *tvb _U_, int offset _U_ } -static const per_sequence_t CSG_ProximityIndicationParameters_r9_sequence[] = { - { &hf_lte_rrc_intraFreqProximityIndication_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqProximityIndication_r9 }, - { &hf_lte_rrc_interFreqProximityIndication_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interFreqProximityIndication_r9 }, - { &hf_lte_rrc_utran_ProximityIndication_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_utran_ProximityIndication_r9 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_supportedCellGrouping_r13_vals[] = { + { 0, "threeEntries-r13" }, + { 1, "fourEntries-r13" }, + { 2, "fiveEntries-r13" }, + { 0, NULL } +}; + +static const per_choice_t T_supportedCellGrouping_r13_choice[] = { + { 0, &hf_lte_rrc_threeEntries_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_3 }, + { 1, &hf_lte_rrc_fourEntries_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_7 }, + { 2, &hf_lte_rrc_fiveEntries_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_15 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_CSG_ProximityIndicationParameters_r9(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_lte_rrc_CSG_ProximityIndicationParameters_r9, CSG_ProximityIndicationParameters_r9_sequence); +dissect_lte_rrc_T_supportedCellGrouping_r13(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_lte_rrc_T_supportedCellGrouping_r13, T_supportedCellGrouping_r13_choice, + NULL); return offset; } -static const value_string lte_rrc_T_intraFreqSI_AcquisitionForHO_r9_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t T_dc_Support_r13_sequence[] = { + { &hf_lte_rrc_asynchronous_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_asynchronous_r13 }, + { &hf_lte_rrc_supportedCellGrouping_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCellGrouping_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_intraFreqSI_AcquisitionForHO_r9(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_dc_Support_r13(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_lte_rrc_T_dc_Support_r13, T_dc_Support_r13_sequence); return offset; } -static const value_string lte_rrc_T_interFreqSI_AcquisitionForHO_r9_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t BandCombinationParameters_r13_sequence[] = { + { &hf_lte_rrc_differentFallbackSupported_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_differentFallbackSupported_r13 }, + { &hf_lte_rrc_bandParameterList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r13 }, + { &hf_lte_rrc_supportedBandwidthCombinationSet_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandwidthCombinationSet_r10 }, + { &hf_lte_rrc_multipleTimingAdvance_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleTimingAdvance_r13 }, + { &hf_lte_rrc_simultaneousRx_Tx_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_simultaneousRx_Tx_r13 }, + { &hf_lte_rrc_bandInfoEUTRA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandInfoEUTRA }, + { &hf_lte_rrc_dc_Support_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dc_Support_r13 }, + { &hf_lte_rrc_supportedNAICS_2CRS_AP_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxNAICS_Entries_r12 }, + { &hf_lte_rrc_commSupportedBandsPerBC_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxBands }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_interFreqSI_AcquisitionForHO_r9(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BandCombinationParameters_r13(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_lte_rrc_BandCombinationParameters_r13, BandCombinationParameters_r13_sequence); return offset; } -static const value_string lte_rrc_T_utran_SI_AcquisitionForHO_r9_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SupportedBandCombinationReduced_r13_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationReduced_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_r13 }, }; - static int -dissect_lte_rrc_T_utran_SI_AcquisitionForHO_r9(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandCombinationReduced_r13(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_lte_rrc_SupportedBandCombinationReduced_r13, SupportedBandCombinationReduced_r13_sequence_of, + 1, maxBandComb_r13, FALSE); return offset; } -static const per_sequence_t NeighCellSI_AcquisitionParameters_r9_sequence[] = { - { &hf_lte_rrc_intraFreqSI_AcquisitionForHO_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqSI_AcquisitionForHO_r9 }, - { &hf_lte_rrc_interFreqSI_AcquisitionForHO_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interFreqSI_AcquisitionForHO_r9 }, - { &hf_lte_rrc_utran_SI_AcquisitionForHO_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_utran_SI_AcquisitionForHO_r9 }, +static const per_sequence_t RF_Parameters_v1310_sequence[] = { + { &hf_lte_rrc_eNB_RequestedParameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eNB_RequestedParameters_r13 }, + { &hf_lte_rrc_maximumCCsRetrieval_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maximumCCsRetrieval_r13 }, + { &hf_lte_rrc_skipFallbackCombinations_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipFallbackCombinations_r13 }, + { &hf_lte_rrc_reducedIntNonContComb_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedIntNonContComb_r13 }, + { &hf_lte_rrc_supportedBandListEUTRA_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListEUTRA_v1310 }, + { &hf_lte_rrc_supportedBandCombinationReduced_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NeighCellSI_AcquisitionParameters_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v1310(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_lte_rrc_NeighCellSI_AcquisitionParameters_r9, NeighCellSI_AcquisitionParameters_r9_sequence); + ett_lte_rrc_RF_Parameters_v1310, RF_Parameters_v1310_sequence); return offset; } -static const value_string lte_rrc_T_rach_Report_r9_01_vals[] = { +static const value_string lte_rrc_T_rs_SINR_Meas_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rach_Report_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rs_SINR_Meas_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69098,48 +85629,44 @@ dissect_lte_rrc_T_rach_Report_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const per_sequence_t SON_Parameters_r9_sequence[] = { - { &hf_lte_rrc_rach_Report_r9_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rach_Report_r9_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_whiteCellList_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; -static int -dissect_lte_rrc_SON_Parameters_r9(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_lte_rrc_SON_Parameters_r9, SON_Parameters_r9_sequence); - - return offset; -} - - static int -dissect_lte_rrc_T_lateNonCriticalExtension_11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UE_EUTRA_Capability_v9a0_IEs_PDU); +dissect_lte_rrc_T_whiteCellList_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_extendedMaxObjectId_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_6_8(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 6U, 8U, NULL, FALSE); +dissect_lte_rrc_T_extendedMaxObjectId_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_twoAntennaPortsForPUCCH_r10_vals[] = { +static const value_string lte_rrc_T_ul_PDCP_Delay_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_twoAntennaPortsForPUCCH_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_PDCP_Delay_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69147,14 +85674,14 @@ dissect_lte_rrc_T_twoAntennaPortsForPUCCH_r10(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_tm9_With_8Tx_FDD_r10_vals[] = { +static const value_string lte_rrc_T_extendedFreqPriorities_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_tm9_With_8Tx_FDD_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_extendedFreqPriorities_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69162,14 +85689,14 @@ dissect_lte_rrc_T_tm9_With_8Tx_FDD_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const value_string lte_rrc_T_pmi_Disabling_r10_vals[] = { +static const value_string lte_rrc_T_multiBandInfoReport_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pmi_Disabling_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_multiBandInfoReport_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69177,14 +85704,14 @@ dissect_lte_rrc_T_pmi_Disabling_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const value_string lte_rrc_T_crossCarrierScheduling_r10_vals[] = { +static const value_string lte_rrc_T_rssi_AndChannelOccupancyReporting_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_crossCarrierScheduling_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rssi_AndChannelOccupancyReporting_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69192,29 +85719,34 @@ dissect_lte_rrc_T_crossCarrierScheduling_r10(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_simultaneousPUCCH_PUSCH_r10_01_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t MeasParameters_v1310_sequence[] = { + { &hf_lte_rrc_rs_SINR_Meas_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rs_SINR_Meas_r13 }, + { &hf_lte_rrc_whiteCellList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_whiteCellList_r13 }, + { &hf_lte_rrc_extendedMaxObjectId_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedMaxObjectId_r13 }, + { &hf_lte_rrc_ul_PDCP_Delay_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_PDCP_Delay_r13 }, + { &hf_lte_rrc_extendedFreqPriorities_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedFreqPriorities_r13 }, + { &hf_lte_rrc_multiBandInfoReport_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiBandInfoReport_r13 }, + { &hf_lte_rrc_rssi_AndChannelOccupancyReporting_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rssi_AndChannelOccupancyReporting_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_simultaneousPUCCH_PUSCH_r10_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MeasParameters_v1310(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_lte_rrc_MeasParameters_v1310, MeasParameters_v1310_sequence); return offset; } -static const value_string lte_rrc_T_multiClusterPUSCH_WithinCC_r10_vals[] = { +static const value_string lte_rrc_T_pdcp_TransferSplitUL_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multiClusterPUSCH_WithinCC_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pdcp_TransferSplitUL_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69222,14 +85754,14 @@ dissect_lte_rrc_T_multiClusterPUSCH_WithinCC_r10(tvbuff_t *tvb _U_, int offset _ } -static const value_string lte_rrc_T_nonContiguousUL_RA_WithinCC_Info_r10_vals[] = { +static const value_string lte_rrc_T_ue_SSTD_Meas_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_nonContiguousUL_RA_WithinCC_Info_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_SSTD_Meas_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69237,267 +85769,271 @@ dissect_lte_rrc_T_nonContiguousUL_RA_WithinCC_Info_r10(tvbuff_t *tvb _U_, int of } -static const per_sequence_t NonContiguousUL_RA_WithinCC_r10_sequence[] = { - { &hf_lte_rrc_nonContiguousUL_RA_WithinCC_Info_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonContiguousUL_RA_WithinCC_Info_r10 }, +static const per_sequence_t DC_Parameters_v1310_sequence[] = { + { &hf_lte_rrc_pdcp_TransferSplitUL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcp_TransferSplitUL_r13 }, + { &hf_lte_rrc_ue_SSTD_Meas_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_SSTD_Meas_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NonContiguousUL_RA_WithinCC_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DC_Parameters_v1310(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_lte_rrc_NonContiguousUL_RA_WithinCC_r10, NonContiguousUL_RA_WithinCC_r10_sequence); + ett_lte_rrc_DC_Parameters_v1310, DC_Parameters_v1310_sequence); return offset; } -static const per_sequence_t NonContiguousUL_RA_WithinCC_List_r10_sequence_of[1] = { - { &hf_lte_rrc_NonContiguousUL_RA_WithinCC_List_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NonContiguousUL_RA_WithinCC_r10 }, +static const value_string lte_rrc_T_discSysInfoReporting_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_NonContiguousUL_RA_WithinCC_List_r10(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_lte_rrc_NonContiguousUL_RA_WithinCC_List_r10, NonContiguousUL_RA_WithinCC_List_r10_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_discSysInfoReporting_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PhyLayerParameters_v1020_sequence[] = { - { &hf_lte_rrc_twoAntennaPortsForPUCCH_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_twoAntennaPortsForPUCCH_r10 }, - { &hf_lte_rrc_tm9_With_8Tx_FDD_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm9_With_8Tx_FDD_r10 }, - { &hf_lte_rrc_pmi_Disabling_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pmi_Disabling_r10 }, - { &hf_lte_rrc_crossCarrierScheduling_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crossCarrierScheduling_r10 }, - { &hf_lte_rrc_simultaneousPUCCH_PUSCH_r10_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_simultaneousPUCCH_PUSCH_r10_01 }, - { &hf_lte_rrc_multiClusterPUSCH_WithinCC_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiClusterPUSCH_WithinCC_r10 }, - { &hf_lte_rrc_nonContiguousUL_RA_WithinCC_List_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NonContiguousUL_RA_WithinCC_List_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_commMultipleTx_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhyLayerParameters_v1020(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_lte_rrc_PhyLayerParameters_v1020, PhyLayerParameters_v1020_sequence); +dissect_lte_rrc_T_commMultipleTx_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_discInterFreqTx_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_bandEUTRA_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_lte_rrc_FreqBandIndicator(tvb, offset, actx, tree, hf_index); - remove_last_freq_band_indicator(actx); +static int +dissect_lte_rrc_T_discInterFreqTx_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_MIMO_CapabilityUL_r10_vals[] = { - { 0, "twoLayers" }, - { 1, "fourLayers" }, +static const value_string lte_rrc_T_discPeriodicSLSS_r13_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_MIMO_CapabilityUL_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_discPeriodicSLSS_r13(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CA_MIMO_ParametersUL_r10_sequence[] = { - { &hf_lte_rrc_ca_BandwidthClassUL_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_BandwidthClass_r10 }, - { &hf_lte_rrc_supportedMIMO_CapabilityUL_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityUL_r10 }, +static const per_sequence_t SL_Parameters_v1310_sequence[] = { + { &hf_lte_rrc_discSysInfoReporting_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discSysInfoReporting_r13 }, + { &hf_lte_rrc_commMultipleTx_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commMultipleTx_r13 }, + { &hf_lte_rrc_discInterFreqTx_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discInterFreqTx_r13 }, + { &hf_lte_rrc_discPeriodicSLSS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discPeriodicSLSS_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CA_MIMO_ParametersUL_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_Parameters_v1310(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_lte_rrc_CA_MIMO_ParametersUL_r10, CA_MIMO_ParametersUL_r10_sequence); + ett_lte_rrc_SL_Parameters_v1310, SL_Parameters_v1310_sequence); return offset; } -static const per_sequence_t BandParametersUL_r10_sequence_of[1] = { - { &hf_lte_rrc_BandParametersUL_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_MIMO_ParametersUL_r10 }, +static const value_string lte_rrc_T_scptm_ParallelReception_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_BandParametersUL_r10(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_lte_rrc_BandParametersUL_r10, BandParametersUL_r10_sequence_of, - 1, maxBandwidthClass_r10, FALSE); +dissect_lte_rrc_T_scptm_ParallelReception_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_MIMO_CapabilityDL_r10_vals[] = { - { 0, "twoLayers" }, - { 1, "fourLayers" }, - { 2, "eightLayers" }, +static const value_string lte_rrc_T_scptm_SCell_r13_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_MIMO_CapabilityDL_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_scptm_SCell_r13(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CA_MIMO_ParametersDL_r10_sequence[] = { - { &hf_lte_rrc_ca_BandwidthClassDL_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_BandwidthClass_r10 }, - { &hf_lte_rrc_supportedMIMO_CapabilityDL_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityDL_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_scptm_NonServingCell_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CA_MIMO_ParametersDL_r10(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_lte_rrc_CA_MIMO_ParametersDL_r10, CA_MIMO_ParametersDL_r10_sequence); +dissect_lte_rrc_T_scptm_NonServingCell_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandParametersDL_r10_sequence_of[1] = { - { &hf_lte_rrc_BandParametersDL_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_MIMO_ParametersDL_r10 }, +static const value_string lte_rrc_T_scptm_AsyncDC_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_BandParametersDL_r10(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_lte_rrc_BandParametersDL_r10, BandParametersDL_r10_sequence_of, - 1, maxBandwidthClass_r10, FALSE); +dissect_lte_rrc_T_scptm_AsyncDC_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandParameters_r10_sequence[] = { - { &hf_lte_rrc_bandEUTRA_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_bandEUTRA_r10 }, - { &hf_lte_rrc_bandParametersUL_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersUL_r10 }, - { &hf_lte_rrc_bandParametersDL_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersDL_r10 }, +static const per_sequence_t SCPTM_Parameters_r13_sequence[] = { + { &hf_lte_rrc_scptm_ParallelReception_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scptm_ParallelReception_r13 }, + { &hf_lte_rrc_scptm_SCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scptm_SCell_r13 }, + { &hf_lte_rrc_scptm_NonServingCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scptm_NonServingCell_r13 }, + { &hf_lte_rrc_scptm_AsyncDC_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scptm_AsyncDC_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandParameters_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SCPTM_Parameters_r13(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_lte_rrc_BandParameters_r10, BandParameters_r10_sequence); + ett_lte_rrc_SCPTM_Parameters_r13, SCPTM_Parameters_r13_sequence); return offset; } -static const per_sequence_t BandCombinationParameters_r10_sequence_of[1] = { - { &hf_lte_rrc_BandCombinationParameters_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_r10 }, +static const value_string lte_rrc_T_ce_ModeA_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_BandCombinationParameters_r10(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_lte_rrc_BandCombinationParameters_r10, BandCombinationParameters_r10_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_T_ce_ModeA_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandCombination_r10_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_r10 }, +static const value_string lte_rrc_T_ce_ModeB_r13_01_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombination_r10(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_lte_rrc_SupportedBandCombination_r10, SupportedBandCombination_r10_sequence_of, - 1, maxBandComb_r10, FALSE); +dissect_lte_rrc_T_ce_ModeB_r13_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v1020_sequence[] = { - { &hf_lte_rrc_supportedBandCombination_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandCombination_r10 }, +static const per_sequence_t CE_Parameters_r13_sequence[] = { + { &hf_lte_rrc_ce_ModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ModeA_r13 }, + { &hf_lte_rrc_ce_ModeB_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ModeB_r13_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v1020(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CE_Parameters_r13(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_lte_rrc_RF_Parameters_v1020, RF_Parameters_v1020_sequence); + ett_lte_rrc_CE_Parameters_r13, CE_Parameters_r13_sequence); return offset; } -static const per_sequence_t BandCombinationListEUTRA_r10_sequence_of[1] = { - { &hf_lte_rrc_BandCombinationListEUTRA_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandInfoEUTRA }, +static const per_sequence_t SupportedBandListWLAN_r13_sequence_of[1] = { + { &hf_lte_rrc_supportedBandListWLAN_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_BandIndicator_r13 }, }; static int -dissect_lte_rrc_BandCombinationListEUTRA_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandListWLAN_r13(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_lte_rrc_BandCombinationListEUTRA_r10, BandCombinationListEUTRA_r10_sequence_of, - 1, maxBandComb_r10, FALSE); + ett_lte_rrc_SupportedBandListWLAN_r13, SupportedBandListWLAN_r13_sequence_of, + 1, maxWLAN_Bands_r13, FALSE); return offset; } -static const per_sequence_t MeasParameters_v1020_sequence[] = { - { &hf_lte_rrc_bandCombinationListEUTRA_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationListEUTRA_r10 }, +static const per_sequence_t IRAT_ParametersWLAN_r13_sequence[] = { + { &hf_lte_rrc_supportedBandListWLAN_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListWLAN_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasParameters_v1020(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_IRAT_ParametersWLAN_r13(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_lte_rrc_MeasParameters_v1020, MeasParameters_v1020_sequence); + ett_lte_rrc_IRAT_ParametersWLAN_r13, IRAT_ParametersWLAN_r13_sequence); return offset; } +static const value_string lte_rrc_T_crossCarrierSchedulingLAA_DL_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_featureGroupIndRel10_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *featureGroupIndRel10_tvb=NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndRel10_tvb, NULL); - - if(featureGroupIndRel10_tvb){ - /* Dissect featureGroupIndRel10-r10 */ - dissect_lte_rrc_featureGroupIndRel10(featureGroupIndRel10_tvb, actx); - } +static int +dissect_lte_rrc_T_crossCarrierSchedulingLAA_DL_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_e_CSFB_dual_1XRTT_r10_vals[] = { +static const value_string lte_rrc_T_csi_RS_DRS_RRM_MeasurementsLAA_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_e_CSFB_dual_1XRTT_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csi_RS_DRS_RRM_MeasurementsLAA_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69505,28 +86041,29 @@ dissect_lte_rrc_T_e_CSFB_dual_1XRTT_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const per_sequence_t IRAT_ParametersCDMA2000_1XRTT_v1020_sequence[] = { - { &hf_lte_rrc_e_CSFB_dual_1XRTT_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_e_CSFB_dual_1XRTT_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_downlinkLAA_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v1020(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_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v1020, IRAT_ParametersCDMA2000_1XRTT_v1020_sequence); +dissect_lte_rrc_T_downlinkLAA_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_loggedMeasurementsIdle_r10_vals[] = { +static const value_string lte_rrc_T_endingDwPTS_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_loggedMeasurementsIdle_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_endingDwPTS_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69534,14 +86071,14 @@ dissect_lte_rrc_T_loggedMeasurementsIdle_r10(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_standaloneGNSS_Location_r10_vals[] = { +static const value_string lte_rrc_T_secondSlotStartingPosition_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_standaloneGNSS_Location_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_secondSlotStartingPosition_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69549,29 +86086,29 @@ dissect_lte_rrc_T_standaloneGNSS_Location_r10(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t UE_BasedNetwPerfMeasParameters_r10_sequence[] = { - { &hf_lte_rrc_loggedMeasurementsIdle_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_loggedMeasurementsIdle_r10 }, - { &hf_lte_rrc_standaloneGNSS_Location_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_standaloneGNSS_Location_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_tm9_LAA_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_r10(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_lte_rrc_UE_BasedNetwPerfMeasParameters_r10, UE_BasedNetwPerfMeasParameters_r10_sequence); +dissect_lte_rrc_T_tm9_LAA_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_e_RedirectionUTRA_TDD_r10_vals[] = { +static const value_string lte_rrc_T_tm10_LAA_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_e_RedirectionUTRA_TDD_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tm10_LAA_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69579,45 +86116,34 @@ dissect_lte_rrc_T_e_RedirectionUTRA_TDD_r10(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t IRAT_ParametersUTRA_TDD_v1020_sequence[] = { - { &hf_lte_rrc_e_RedirectionUTRA_TDD_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_e_RedirectionUTRA_TDD_r10 }, +static const per_sequence_t LAA_Parameters_r13_sequence[] = { + { &hf_lte_rrc_crossCarrierSchedulingLAA_DL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crossCarrierSchedulingLAA_DL_r13 }, + { &hf_lte_rrc_csi_RS_DRS_RRM_MeasurementsLAA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_RS_DRS_RRM_MeasurementsLAA_r13 }, + { &hf_lte_rrc_downlinkLAA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_downlinkLAA_r13 }, + { &hf_lte_rrc_endingDwPTS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_endingDwPTS_r13 }, + { &hf_lte_rrc_secondSlotStartingPosition_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_secondSlotStartingPosition_r13 }, + { &hf_lte_rrc_tm9_LAA_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm9_LAA_r13 }, + { &hf_lte_rrc_tm10_LAA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm10_LAA_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IRAT_ParametersUTRA_TDD_v1020(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LAA_Parameters_r13(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_lte_rrc_IRAT_ParametersUTRA_TDD_v1020, IRAT_ParametersUTRA_TDD_v1020_sequence); - - return offset; -} - - - -static int -dissect_lte_rrc_T_featureGroupIndRel10_v1060(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *featureGroupIndRel10_tvb=NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndRel10_tvb, NULL); - - if(featureGroupIndRel10_tvb){ - /* Dissect featureGroupIndRel10-v1060 */ - dissect_lte_rrc_featureGroupIndRel10(featureGroupIndRel10_tvb, actx); - } - + ett_lte_rrc_LAA_Parameters_r13, LAA_Parameters_r13_sequence); return offset; } -static const value_string lte_rrc_T_otdoa_UE_Assisted_r10_vals[] = { +static const value_string lte_rrc_T_lwa_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_otdoa_UE_Assisted_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_lwa_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69625,14 +86151,14 @@ dissect_lte_rrc_T_otdoa_UE_Assisted_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_interFreqRSTD_Measurement_r10_vals[] = { +static const value_string lte_rrc_T_lwa_SplitBearer_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_interFreqRSTD_Measurement_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_lwa_SplitBearer_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69640,168 +86166,148 @@ dissect_lte_rrc_T_interFreqRSTD_Measurement_r10(tvbuff_t *tvb _U_, int offset _U } -static const per_sequence_t OTDOA_PositioningCapabilities_r10_sequence[] = { - { &hf_lte_rrc_otdoa_UE_Assisted_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_otdoa_UE_Assisted_r10 }, - { &hf_lte_rrc_interFreqRSTD_Measurement_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interFreqRSTD_Measurement_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_lwa_BufferSize_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; -static int -dissect_lte_rrc_OTDOA_PositioningCapabilities_r10(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_lte_rrc_OTDOA_PositioningCapabilities_r10, OTDOA_PositioningCapabilities_r10_sequence); - - return offset; -} - - -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1060_eag_1_sequence[] = { - { &hf_lte_rrc_otdoa_PositioningCapabilities_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OTDOA_PositioningCapabilities_r10 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_EUTRA_CapabilityAddXDD_Mode_v1060_eag_1_sequence); +dissect_lte_rrc_T_lwa_BufferSize_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1060_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1060, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1020 }, - { &hf_lte_rrc_featureGroupIndRel10_v1060, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndRel10_v1060 }, - { &hf_lte_rrc_interRAT_ParametersCDMA2000_v1060, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v1020 }, - { &hf_lte_rrc_interRAT_ParametersUTRA_TDD_v1060, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_TDD_v1020 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060_eag_1 }, +static const per_sequence_t LWA_Parameters_r13_sequence[] = { + { &hf_lte_rrc_lwa_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_r13 }, + { &hf_lte_rrc_lwa_SplitBearer_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_SplitBearer_r13 }, + { &hf_lte_rrc_wlan_MAC_Address_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_6 }, + { &hf_lte_rrc_lwa_BufferSize_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_BufferSize_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LWA_Parameters_r13(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060, UE_EUTRA_CapabilityAddXDD_Mode_v1060_sequence); + ett_lte_rrc_LWA_Parameters_r13, LWA_Parameters_r13_sequence); return offset; } +static const value_string lte_rrc_T_rclwi_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_SupportedBandwidthCombinationSet_r10(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, - 1, maxBandwidthCombSet_r10, FALSE, NULL, NULL); +dissect_lte_rrc_T_rclwi_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandCombinationParametersExt_r10_sequence[] = { - { &hf_lte_rrc_supportedBandwidthCombinationSet_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandwidthCombinationSet_r10 }, +static const per_sequence_t WLAN_IW_Parameters_v1310_sequence[] = { + { &hf_lte_rrc_rclwi_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rclwi_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombinationParametersExt_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_WLAN_IW_Parameters_v1310(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_lte_rrc_BandCombinationParametersExt_r10, BandCombinationParametersExt_r10_sequence); + ett_lte_rrc_WLAN_IW_Parameters_v1310, WLAN_IW_Parameters_v1310_sequence); return offset; } -static const per_sequence_t SupportedBandCombinationExt_r10_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationExt_r10_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParametersExt_r10 }, +static const value_string lte_rrc_T_lwip_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationExt_r10(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_lte_rrc_SupportedBandCombinationExt_r10, SupportedBandCombinationExt_r10_sequence_of, - 1, maxBandComb_r10, FALSE); +dissect_lte_rrc_T_lwip_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v1060_sequence[] = { - { &hf_lte_rrc_supportedBandCombinationExt_r10, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandCombinationExt_r10 }, +static const per_sequence_t LWIP_Parameters_r13_sequence[] = { + { &hf_lte_rrc_lwip_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwip_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v1060(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LWIP_Parameters_r13(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_lte_rrc_RF_Parameters_v1060, RF_Parameters_v1060_sequence); + ett_lte_rrc_LWIP_Parameters_r13, LWIP_Parameters_r13_sequence); return offset; } -static const per_sequence_t BandParameters_v1090_sequence[] = { - { &hf_lte_rrc_bandEUTRA_v1090, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_v9e0 }, +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1310_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1310 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandParameters_v1090(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1310(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_lte_rrc_BandParameters_v1090, BandParameters_v1090_sequence); + ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1310, UE_EUTRA_CapabilityAddXDD_Mode_v1310_sequence); return offset; } -static const per_sequence_t BandCombinationParameters_v1090_sequence_of[1] = { - { &hf_lte_rrc_BandCombinationParameters_v1090_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1090 }, +static const value_string lte_rrc_T_intraFreqA3_CE_ModeA_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; -static int -dissect_lte_rrc_BandCombinationParameters_v1090(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_lte_rrc_BandCombinationParameters_v1090, BandCombinationParameters_v1090_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); - - return offset; -} - - -static const per_sequence_t SupportedBandCombination_v1090_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v1090_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1090 }, -}; static int -dissect_lte_rrc_SupportedBandCombination_v1090(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_lte_rrc_SupportedBandCombination_v1090, SupportedBandCombination_v1090_sequence_of, - 1, maxBandComb_r10, FALSE); +dissect_lte_rrc_T_intraFreqA3_CE_ModeA_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v1090_sequence[] = { - { &hf_lte_rrc_supportedBandCombination_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1090 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_intraFreqA3_CE_ModeB_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RF_Parameters_v1090(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_lte_rrc_RF_Parameters_v1090, RF_Parameters_v1090_sequence); +dissect_lte_rrc_T_intraFreqA3_CE_ModeB_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_pdcp_SN_Extension_r11_vals[] = { +static const value_string lte_rrc_T_intraFreqHO_CE_ModeA_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pdcp_SN_Extension_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_intraFreqHO_CE_ModeA_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69809,14 +86315,14 @@ dissect_lte_rrc_T_pdcp_SN_Extension_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_supportRohcContextContinue_r11_vals[] = { +static const value_string lte_rrc_T_intraFreqHO_CE_ModeB_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_supportRohcContextContinue_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_intraFreqHO_CE_ModeB_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69824,29 +86330,31 @@ dissect_lte_rrc_T_supportRohcContextContinue_r11(tvbuff_t *tvb _U_, int offset _ } -static const per_sequence_t PDCP_Parameters_v1130_sequence[] = { - { &hf_lte_rrc_pdcp_SN_Extension_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcp_SN_Extension_r11 }, - { &hf_lte_rrc_supportRohcContextContinue_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportRohcContextContinue_r11 }, +static const per_sequence_t CE_Parameters_v1320_sequence[] = { + { &hf_lte_rrc_intraFreqA3_CE_ModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqA3_CE_ModeA_r13 }, + { &hf_lte_rrc_intraFreqA3_CE_ModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqA3_CE_ModeB_r13 }, + { &hf_lte_rrc_intraFreqHO_CE_ModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqHO_CE_ModeA_r13 }, + { &hf_lte_rrc_intraFreqHO_CE_ModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqHO_CE_ModeB_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PDCP_Parameters_v1130(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CE_Parameters_v1320(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_lte_rrc_PDCP_Parameters_v1130, PDCP_Parameters_v1130_sequence); + ett_lte_rrc_CE_Parameters_v1320, CE_Parameters_v1320_sequence); return offset; } -static const value_string lte_rrc_T_crs_InterfHandl_r11_vals[] = { +static const value_string lte_rrc_T_config1_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_crs_InterfHandl_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_config1_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69854,14 +86362,14 @@ dissect_lte_rrc_T_crs_InterfHandl_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const value_string lte_rrc_T_ePDCCH_r11_vals[] = { +static const value_string lte_rrc_T_config2_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ePDCCH_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_config2_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69869,14 +86377,14 @@ dissect_lte_rrc_T_ePDCCH_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const value_string lte_rrc_T_multiACK_CSI_Reporting_r11_vals[] = { +static const value_string lte_rrc_T_config3_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multiACK_CSI_Reporting_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_config3_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69884,14 +86392,14 @@ dissect_lte_rrc_T_multiACK_CSI_Reporting_r11(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_ss_CCH_InterfHandl_r11_vals[] = { +static const value_string lte_rrc_T_config4_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ss_CCH_InterfHandl_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_config4_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69899,29 +86407,31 @@ dissect_lte_rrc_T_ss_CCH_InterfHandl_r11(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_tdd_SpecialSubframe_r11_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t MIMO_NonPrecodedCapabilities_r13_sequence[] = { + { &hf_lte_rrc_config1_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_config1_r13 }, + { &hf_lte_rrc_config2_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_config2_r13 }, + { &hf_lte_rrc_config3_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_config3_r13 }, + { &hf_lte_rrc_config4_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_config4_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_tdd_SpecialSubframe_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MIMO_NonPrecodedCapabilities_r13(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_lte_rrc_MIMO_NonPrecodedCapabilities_r13, MIMO_NonPrecodedCapabilities_r13_sequence); return offset; } -static const value_string lte_rrc_T_txDiv_PUCCH1b_ChSelect_r11_vals[] = { +static const value_string lte_rrc_T_altCodebook_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_txDiv_PUCCH1b_ChSelect_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_altCodebook_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69929,49 +86439,68 @@ dissect_lte_rrc_T_txDiv_PUCCH1b_ChSelect_r11(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_ul_CoMP_r11_vals[] = { - { 0, "supported" }, - { 0, NULL } + +static int +dissect_lte_rrc_BIT_STRING_SIZE_1_7(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, + 1, 7, FALSE, NULL, NULL); + + return offset; +} + + +static const per_sequence_t MIMO_BeamformedCapabilities_r13_sequence[] = { + { &hf_lte_rrc_k_Max_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_8 }, + { &hf_lte_rrc_n_MaxList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_7 }, + { NULL, 0, 0, NULL } }; +static int +dissect_lte_rrc_MIMO_BeamformedCapabilities_r13(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_lte_rrc_MIMO_BeamformedCapabilities_r13, MIMO_BeamformedCapabilities_r13_sequence); + + return offset; +} + + +static const per_sequence_t MIMO_BeamformedCapabilityList_r13_sequence_of[1] = { + { &hf_lte_rrc_MIMO_BeamformedCapabilityList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_BeamformedCapabilities_r13 }, +}; static int -dissect_lte_rrc_T_ul_CoMP_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MIMO_BeamformedCapabilityList_r13(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_lte_rrc_MIMO_BeamformedCapabilityList_r13, MIMO_BeamformedCapabilityList_r13_sequence_of, + 1, maxCSI_Proc_r11, FALSE); return offset; } -static const per_sequence_t PhyLayerParameters_v1130_sequence[] = { - { &hf_lte_rrc_crs_InterfHandl_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_InterfHandl_r11 }, - { &hf_lte_rrc_ePDCCH_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ePDCCH_r11 }, - { &hf_lte_rrc_multiACK_CSI_Reporting_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiACK_CSI_Reporting_r11 }, - { &hf_lte_rrc_ss_CCH_InterfHandl_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ss_CCH_InterfHandl_r11 }, - { &hf_lte_rrc_tdd_SpecialSubframe_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdd_SpecialSubframe_r11 }, - { &hf_lte_rrc_txDiv_PUCCH1b_ChSelect_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_txDiv_PUCCH1b_ChSelect_r11 }, - { &hf_lte_rrc_ul_CoMP_r11 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_CoMP_r11 }, +static const per_sequence_t MIMO_UE_BeamformedCapabilities_r13_sequence[] = { + { &hf_lte_rrc_altCodebook_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_altCodebook_r13 }, + { &hf_lte_rrc_mimo_BeamformedCapabilities_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_BeamformedCapabilityList_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhyLayerParameters_v1130(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MIMO_UE_BeamformedCapabilities_r13(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_lte_rrc_PhyLayerParameters_v1130, PhyLayerParameters_v1130_sequence); + ett_lte_rrc_MIMO_UE_BeamformedCapabilities_r13, MIMO_UE_BeamformedCapabilities_r13_sequence); return offset; } -static const value_string lte_rrc_T_multipleTimingAdvance_r11_vals[] = { +static const value_string lte_rrc_T_channelMeasRestriction_r13_01_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multipleTimingAdvance_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_channelMeasRestriction_r13_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, 1, NULL, FALSE, 0, NULL); @@ -69979,14 +86508,14 @@ dissect_lte_rrc_T_multipleTimingAdvance_r11(tvbuff_t *tvb _U_, int offset _U_, a } -static const value_string lte_rrc_T_simultaneousRx_Tx_r11_vals[] = { +static const value_string lte_rrc_T_dmrs_Enhancements_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_simultaneousRx_Tx_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dmrs_Enhancements_r13(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, 1, NULL, FALSE, 0, NULL); @@ -69994,176 +86523,185 @@ dissect_lte_rrc_T_simultaneousRx_Tx_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_supportedCSI_Proc_r11_vals[] = { - { 0, "n1" }, - { 1, "n3" }, - { 2, "n4" }, +static const value_string lte_rrc_T_csi_RS_EnhancementsTDD_r13_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_supportedCSI_Proc_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csi_RS_EnhancementsTDD_r13(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandParameters_v1130_sequence[] = { - { &hf_lte_rrc_supportedCSI_Proc_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_supportedCSI_Proc_r11 }, +static const per_sequence_t MIMO_UE_ParametersPerTM_r13_sequence[] = { + { &hf_lte_rrc_nonPrecoded_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_NonPrecodedCapabilities_r13 }, + { &hf_lte_rrc_beamformed_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_BeamformedCapabilities_r13 }, + { &hf_lte_rrc_channelMeasRestriction_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_channelMeasRestriction_r13_01 }, + { &hf_lte_rrc_dmrs_Enhancements_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_Enhancements_r13 }, + { &hf_lte_rrc_csi_RS_EnhancementsTDD_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_RS_EnhancementsTDD_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandParameters_v1130(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MIMO_UE_ParametersPerTM_r13(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_lte_rrc_BandParameters_v1130, BandParameters_v1130_sequence); + ett_lte_rrc_MIMO_UE_ParametersPerTM_r13, MIMO_UE_ParametersPerTM_r13_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1130_sequence_of[1] = { - { &hf_lte_rrc_bandParameterList_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1130 }, +static const value_string lte_rrc_T_srs_EnhancementsTDD_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1130(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1130, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1130_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_T_srs_EnhancementsTDD_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandCombinationParameters_v1130_sequence[] = { - { &hf_lte_rrc_multipleTimingAdvance_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleTimingAdvance_r11 }, - { &hf_lte_rrc_simultaneousRx_Tx_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_simultaneousRx_Tx_r11 }, - { &hf_lte_rrc_bandParameterList_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1130 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_srs_Enhancements_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_BandCombinationParameters_v1130(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_lte_rrc_BandCombinationParameters_v1130, BandCombinationParameters_v1130_sequence); +dissect_lte_rrc_T_srs_Enhancements_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandCombination_v1130_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v1130_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1130 }, +static const value_string lte_rrc_T_interferenceMeasRestriction_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombination_v1130(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_lte_rrc_SupportedBandCombination_v1130, SupportedBandCombination_v1130_sequence_of, - 1, maxBandComb_r10, FALSE); +dissect_lte_rrc_T_interferenceMeasRestriction_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v1130_sequence[] = { - { &hf_lte_rrc_supportedBandCombination_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1130 }, +static const per_sequence_t MIMO_UE_Parameters_r13_sequence[] = { + { &hf_lte_rrc_parametersTM9_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_ParametersPerTM_r13 }, + { &hf_lte_rrc_parametersTM10_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_ParametersPerTM_r13 }, + { &hf_lte_rrc_srs_EnhancementsTDD_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_EnhancementsTDD_r13 }, + { &hf_lte_rrc_srs_Enhancements_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_Enhancements_r13 }, + { &hf_lte_rrc_interferenceMeasRestriction_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interferenceMeasRestriction_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v1130(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MIMO_UE_Parameters_r13(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_lte_rrc_RF_Parameters_v1130, RF_Parameters_v1130_sequence); + ett_lte_rrc_MIMO_UE_Parameters_r13, MIMO_UE_Parameters_r13_sequence); return offset; } -static const value_string lte_rrc_T_rsrqMeasWideband_r11_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t PhyLayerParameters_v1320_sequence[] = { + { &hf_lte_rrc_mimo_UE_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_Parameters_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_rsrqMeasWideband_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PhyLayerParameters_v1320(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_lte_rrc_PhyLayerParameters_v1320, PhyLayerParameters_v1320_sequence); return offset; } -static const per_sequence_t MeasParameters_v1130_sequence[] = { - { &hf_lte_rrc_rsrqMeasWideband_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rsrqMeasWideband_r11 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_intraFreq_CE_NeedForGaps_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MeasParameters_v1130(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_lte_rrc_MeasParameters_v1130, MeasParameters_v1130_sequence); +dissect_lte_rrc_T_intraFreq_CE_NeedForGaps_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_cdma2000_NW_Sharing_r11_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_ue_PowerClass_N_r13_vals[] = { + { 0, "class1" }, + { 1, "class2" }, + { 2, "class4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_cdma2000_NW_Sharing_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_PowerClass_N_r13(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, - 1, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t IRAT_ParametersCDMA2000_v1130_sequence[] = { - { &hf_lte_rrc_cdma2000_NW_Sharing_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cdma2000_NW_Sharing_r11 }, +static const per_sequence_t SupportedBandEUTRA_v1320_sequence[] = { + { &hf_lte_rrc_intraFreq_CE_NeedForGaps_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreq_CE_NeedForGaps_r13 }, + { &hf_lte_rrc_ue_PowerClass_N_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_PowerClass_N_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IRAT_ParametersCDMA2000_v1130(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandEUTRA_v1320(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_lte_rrc_IRAT_ParametersCDMA2000_v1130, IRAT_ParametersCDMA2000_v1130_sequence); + ett_lte_rrc_SupportedBandEUTRA_v1320, SupportedBandEUTRA_v1320_sequence); return offset; } -static const value_string lte_rrc_T_inDeviceCoexInd_r11_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SupportedBandListEUTRA_v1320_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListEUTRA_v1320_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandEUTRA_v1320 }, }; - static int -dissect_lte_rrc_T_inDeviceCoexInd_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandListEUTRA_v1320(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_lte_rrc_SupportedBandListEUTRA_v1320, SupportedBandListEUTRA_v1320_sequence_of, + 1, maxBands, FALSE); return offset; } -static const value_string lte_rrc_T_powerPrefInd_r11_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_dmrs_Enhancements_r13_01_vals[] = { + { 0, "different" }, { 0, NULL } }; static int -dissect_lte_rrc_T_powerPrefInd_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dmrs_Enhancements_r13_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, 1, NULL, FALSE, 0, NULL); @@ -70171,167 +86709,187 @@ dissect_lte_rrc_T_powerPrefInd_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const value_string lte_rrc_T_ue_Rx_TxTimeDiffMeasurements_r11_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t MIMO_CA_ParametersPerBoBCPerTM_r13_sequence[] = { + { &hf_lte_rrc_nonPrecoded_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_NonPrecodedCapabilities_r13 }, + { &hf_lte_rrc_beamformed_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_BeamformedCapabilityList_r13 }, + { &hf_lte_rrc_dmrs_Enhancements_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_Enhancements_r13_01 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ue_Rx_TxTimeDiffMeasurements_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r13(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_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r13, MIMO_CA_ParametersPerBoBCPerTM_r13_sequence); return offset; } -static const per_sequence_t Other_Parameters_r11_sequence[] = { - { &hf_lte_rrc_inDeviceCoexInd_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_inDeviceCoexInd_r11 }, - { &hf_lte_rrc_powerPrefInd_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerPrefInd_r11 }, - { &hf_lte_rrc_ue_Rx_TxTimeDiffMeasurements_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_Rx_TxTimeDiffMeasurements_r11 }, +static const per_sequence_t MIMO_CA_ParametersPerBoBC_r13_sequence[] = { + { &hf_lte_rrc_parametersTM9_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r13 }, + { &hf_lte_rrc_parametersTM10_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_Other_Parameters_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_r13(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_lte_rrc_Other_Parameters_r11, Other_Parameters_r11_sequence); + ett_lte_rrc_MIMO_CA_ParametersPerBoBC_r13, MIMO_CA_ParametersPerBoBC_r13_sequence); return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1130_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1130, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1130 }, - { &hf_lte_rrc_measParameters_v1130, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1130 }, - { &hf_lte_rrc_otherParameters_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_Other_Parameters_r11 }, +static const per_sequence_t BandParameters_v1320_sequence[] = { + { &hf_lte_rrc_bandParametersDL_v1320, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1130(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandParameters_v1320(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1130, UE_EUTRA_CapabilityAddXDD_Mode_v1130_sequence); + ett_lte_rrc_BandParameters_v1320, BandParameters_v1320_sequence); return offset; } +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1320_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_v1320_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1320 }, +}; static int -dissect_lte_rrc_T_interBandTDD_CA_WithDifferentConfig_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *inter_band_tdd_ca_tvb=NULL; - proto_tree *subtree; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, &inter_band_tdd_ca_tvb, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1320(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1320, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1320_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); - if (inter_band_tdd_ca_tvb) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_interBandTDD_CA_WithDifferentConfig); - proto_tree_add_bits_item(subtree, hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit1, inter_band_tdd_ca_tvb, 0, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_bit2, inter_band_tdd_ca_tvb, 1, 1, ENC_BIG_ENDIAN); - } + return offset; +} + + +static const value_string lte_rrc_T_additionalRx_Tx_PerformanceReq_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; +static int +dissect_lte_rrc_T_additionalRx_Tx_PerformanceReq_r13(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, + 1, NULL, FALSE, 0, NULL); + return offset; } -static const per_sequence_t PhyLayerParameters_v1170_sequence[] = { - { &hf_lte_rrc_interBandTDD_CA_WithDifferentConfig_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interBandTDD_CA_WithDifferentConfig_r11 }, +static const per_sequence_t BandCombinationParameters_v1320_sequence[] = { + { &hf_lte_rrc_bandParameterList_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1320 }, + { &hf_lte_rrc_additionalRx_Tx_PerformanceReq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_additionalRx_Tx_PerformanceReq_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhyLayerParameters_v1170(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandCombinationParameters_v1320(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_lte_rrc_PhyLayerParameters_v1170, PhyLayerParameters_v1170_sequence); + ett_lte_rrc_BandCombinationParameters_v1320, BandCombinationParameters_v1320_sequence); return offset; } +static const per_sequence_t SupportedBandCombination_v1320_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1320_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1320 }, +}; static int -dissect_lte_rrc_INTEGER_9_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 9U, 10U, NULL, FALSE); +dissect_lte_rrc_SupportedBandCombination_v1320(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_lte_rrc_SupportedBandCombination_v1320, SupportedBandCombination_v1320_sequence_of, + 1, maxBandComb_r10, FALSE); return offset; } -static const value_string lte_rrc_T_freqBandRetrieval_r11_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SupportedBandCombinationAdd_v1320_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_v1320_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1320 }, }; - static int -dissect_lte_rrc_T_freqBandRetrieval_r11(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandCombinationAdd_v1320(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_lte_rrc_SupportedBandCombinationAdd_v1320, SupportedBandCombinationAdd_v1320_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const value_string lte_rrc_T_supportedCSI_Proc_r11_01_vals[] = { - { 0, "n1" }, - { 1, "n3" }, - { 2, "n4" }, - { 0, NULL } +static const per_sequence_t SupportedBandCombinationReduced_v1320_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationReduced_v1320_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1320 }, }; - static int -dissect_lte_rrc_T_supportedCSI_Proc_r11_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, - 3, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandCombinationReduced_v1320(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_lte_rrc_SupportedBandCombinationReduced_v1320, SupportedBandCombinationReduced_v1320_sequence_of, + 1, maxBandComb_r13, FALSE); return offset; } -static const per_sequence_t BandParameters_r11_sequence[] = { - { &hf_lte_rrc_bandEUTRA_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, - { &hf_lte_rrc_bandParametersUL_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersUL_r10 }, - { &hf_lte_rrc_bandParametersDL_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersDL_r10 }, - { &hf_lte_rrc_supportedCSI_Proc_r11_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCSI_Proc_r11_01 }, +static const per_sequence_t RF_Parameters_v1320_sequence[] = { + { &hf_lte_rrc_supportedBandListEUTRA_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListEUTRA_v1320 }, + { &hf_lte_rrc_supportedBandCombination_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1320 }, + { &hf_lte_rrc_supportedBandCombinationAdd_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1320 }, + { &hf_lte_rrc_supportedBandCombinationReduced_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1320 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandParameters_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v1320(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_lte_rrc_BandParameters_r11, BandParameters_r11_sequence); + ett_lte_rrc_RF_Parameters_v1320, RF_Parameters_v1320_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r11_sequence_of[1] = { - { &hf_lte_rrc_bandParameterList_r11_item_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_r11 }, +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1320_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1320 }, + { &hf_lte_rrc_scptm_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTM_Parameters_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r11(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r11, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r11_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1320(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1320, UE_EUTRA_CapabilityAddXDD_Mode_v1320_sequence); return offset; } -static const value_string lte_rrc_T_multipleTimingAdvance_r11_01_vals[] = { + +static int +dissect_lte_rrc_INTEGER_18_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 18U, 19U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_cch_InterfMitigation_RefRecTypeA_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multipleTimingAdvance_r11_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cch_InterfMitigation_RefRecTypeA_r13(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, 1, NULL, FALSE, 0, NULL); @@ -70339,14 +86897,14 @@ dissect_lte_rrc_T_multipleTimingAdvance_r11_01(tvbuff_t *tvb _U_, int offset _U_ } -static const value_string lte_rrc_T_simultaneousRx_Tx_r11_01_vals[] = { +static const value_string lte_rrc_T_cch_InterfMitigation_RefRecTypeB_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_simultaneousRx_Tx_r11_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cch_InterfMitigation_RefRecTypeB_r13(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, 1, NULL, FALSE, 0, NULL); @@ -70354,62 +86912,81 @@ dissect_lte_rrc_T_simultaneousRx_Tx_r11_01(tvbuff_t *tvb _U_, int offset _U_, as } -static const per_sequence_t BandCombinationParameters_r11_sequence[] = { - { &hf_lte_rrc_bandParameterList_r11_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r11 }, - { &hf_lte_rrc_supportedBandwidthCombinationSet_r11, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandwidthCombinationSet_r10 }, - { &hf_lte_rrc_multipleTimingAdvance_r11_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleTimingAdvance_r11_01 }, - { &hf_lte_rrc_simultaneousRx_Tx_r11_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_simultaneousRx_Tx_r11_01 }, - { &hf_lte_rrc_bandInfoEUTRA_r11, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandInfoEUTRA }, + +static int +dissect_lte_rrc_INTEGER_1_maxServCell_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxServCell_r13, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t PhyLayerParameters_v1330_sequence[] = { + { &hf_lte_rrc_cch_InterfMitigation_RefRecTypeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cch_InterfMitigation_RefRecTypeA_r13 }, + { &hf_lte_rrc_cch_InterfMitigation_RefRecTypeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cch_InterfMitigation_RefRecTypeB_r13 }, + { &hf_lte_rrc_cch_InterfMitigation_MaxNumCCs_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxServCell_r13 }, + { &hf_lte_rrc_crs_InterfMitigationTM1toTM9_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxServCell_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombinationParameters_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhyLayerParameters_v1330(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_lte_rrc_BandCombinationParameters_r11, BandCombinationParameters_r11_sequence); + ett_lte_rrc_PhyLayerParameters_v1330, PhyLayerParameters_v1330_sequence); return offset; } -static const per_sequence_t SupportedBandCombinationAdd_r11_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationAdd_r11_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_r11 }, +static const value_string lte_rrc_T_ue_CE_NeedULGaps_r13_01_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationAdd_r11(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_lte_rrc_SupportedBandCombinationAdd_r11, SupportedBandCombinationAdd_r11_sequence_of, - 1, maxBandComb_r11, FALSE); +dissect_lte_rrc_T_ue_CE_NeedULGaps_r13_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v1180_sequence[] = { - { &hf_lte_rrc_freqBandRetrieval_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqBandRetrieval_r11 }, - { &hf_lte_rrc_requestedBands_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxBands_OF_FreqBandIndicator_r11 }, - { &hf_lte_rrc_supportedBandCombinationAdd_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_r11 }, - { NULL, 0, 0, NULL } + +static int +dissect_lte_rrc_INTEGER_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 15U, 15U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_ue_CategoryDL_v1350_vals[] = { + { 0, "oneBis" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RF_Parameters_v1180(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_lte_rrc_RF_Parameters_v1180, RF_Parameters_v1180_sequence); +dissect_lte_rrc_T_ue_CategoryDL_v1350(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_mbms_SCell_r11_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_ue_CategoryUL_v1350_vals[] = { + { 0, "oneBis" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mbms_SCell_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_CategoryUL_v1350(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, 1, NULL, FALSE, 0, NULL); @@ -70417,14 +86994,14 @@ dissect_lte_rrc_T_mbms_SCell_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } -static const value_string lte_rrc_T_mbms_NonServingCell_r11_vals[] = { +static const value_string lte_rrc_T_unicastFrequencyHopping_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mbms_NonServingCell_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_unicastFrequencyHopping_r13(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, 1, NULL, FALSE, 0, NULL); @@ -70432,53 +87009,57 @@ dissect_lte_rrc_T_mbms_NonServingCell_r11(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t MBMS_Parameters_r11_sequence[] = { - { &hf_lte_rrc_mbms_SCell_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_SCell_r11 }, - { &hf_lte_rrc_mbms_NonServingCell_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_NonServingCell_r11 }, +static const per_sequence_t CE_Parameters_v1350_sequence[] = { + { &hf_lte_rrc_unicastFrequencyHopping_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_unicastFrequencyHopping_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMS_Parameters_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CE_Parameters_v1350(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_lte_rrc_MBMS_Parameters_r11, MBMS_Parameters_r11_sequence); + ett_lte_rrc_CE_Parameters_v1350, CE_Parameters_v1350_sequence); return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1180_sequence[] = { - { &hf_lte_rrc_mbms_Parameters_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MBMS_Parameters_r11 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_inDeviceCoexInd_HardwareSharingInd_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1180(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1180, UE_EUTRA_CapabilityAddXDD_Mode_v1180_sequence); +dissect_lte_rrc_T_inDeviceCoexInd_HardwareSharingInd_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t Other_Parameters_v1360_sequence[] = { + { &hf_lte_rrc_inDeviceCoexInd_HardwareSharingInd_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_inDeviceCoexInd_HardwareSharingInd_r13 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_11_12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 11U, 12U, NULL, FALSE); +dissect_lte_rrc_Other_Parameters_v1360(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_lte_rrc_Other_Parameters_v1360, Other_Parameters_v1360_sequence); return offset; } -static const value_string lte_rrc_T_benefitsFromInterruption_r11_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_ce_PUSCH_NB_MaxTBS_r14_01_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_benefitsFromInterruption_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_PUSCH_NB_MaxTBS_r14_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, 1, NULL, FALSE, 0, NULL); @@ -70486,28 +87067,30 @@ dissect_lte_rrc_T_benefitsFromInterruption_r11(tvbuff_t *tvb _U_, int offset _U_ } -static const per_sequence_t MeasParameters_v11a0_sequence[] = { - { &hf_lte_rrc_benefitsFromInterruption_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_benefitsFromInterruption_r11 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ce_PDSCH_PUSCH_MaxBandwidth_r14_vals[] = { + { 0, "bw5" }, + { 1, "bw20" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MeasParameters_v11a0(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_lte_rrc_MeasParameters_v11a0, MeasParameters_v11a0_sequence); +dissect_lte_rrc_T_ce_PDSCH_PUSCH_MaxBandwidth_r14(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_e_HARQ_Pattern_FDD_r12_vals[] = { +static const value_string lte_rrc_T_ce_HARQ_AckBundling_r14_01_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_e_HARQ_Pattern_FDD_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_HARQ_AckBundling_r14_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, 1, NULL, FALSE, 0, NULL); @@ -70515,14 +87098,14 @@ dissect_lte_rrc_T_e_HARQ_Pattern_FDD_r12(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_enhanced_4TxCodebook_r12_vals[] = { +static const value_string lte_rrc_T_ce_PDSCH_TenProcesses_r14_01_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_enhanced_4TxCodebook_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_PDSCH_TenProcesses_r14_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, 1, NULL, FALSE, 0, NULL); @@ -70530,33 +87113,45 @@ dissect_lte_rrc_T_enhanced_4TxCodebook_r12(tvbuff_t *tvb _U_, int offset _U_, as } +static const value_string lte_rrc_T_ce_RetuningSymbols_r14_vals[] = { + { 0, "n0" }, + { 1, "n1" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_tdd_FDD_CA_PCellDuplex_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *pcellduplex_tvb=NULL; - proto_tree *subtree; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, &pcellduplex_tvb, NULL); +dissect_lte_rrc_T_ce_RetuningSymbols_r14(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, FALSE, 0, NULL); + + return offset; +} - if (pcellduplex_tvb) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_tdd_FDD_CA_PCellDuplex_r12); - proto_tree_add_bits_item(subtree, hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit1, pcellduplex_tvb, 0, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12_bit2, pcellduplex_tvb, 1, 1, ENC_BIG_ENDIAN); - } +static const value_string lte_rrc_T_ce_PDSCH_PUSCH_Enhancement_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ce_PDSCH_PUSCH_Enhancement_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_phy_TDD_ReConfig_TDD_PCell_r12_vals[] = { +static const value_string lte_rrc_T_ce_SchedulingEnhancement_r14_01_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_phy_TDD_ReConfig_TDD_PCell_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_SchedulingEnhancement_r14_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, 1, NULL, FALSE, 0, NULL); @@ -70564,14 +87159,14 @@ dissect_lte_rrc_T_phy_TDD_ReConfig_TDD_PCell_r12(tvbuff_t *tvb _U_, int offset _ } -static const value_string lte_rrc_T_phy_TDD_ReConfig_FDD_PCell_r12_vals[] = { +static const value_string lte_rrc_T_ce_SRS_Enhancement_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_phy_TDD_ReConfig_FDD_PCell_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_SRS_Enhancement_r14(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, 1, NULL, FALSE, 0, NULL); @@ -70579,14 +87174,14 @@ dissect_lte_rrc_T_phy_TDD_ReConfig_FDD_PCell_r12(tvbuff_t *tvb _U_, int offset _ } -static const value_string lte_rrc_T_pusch_FeedbackMode_r12_vals[] = { +static const value_string lte_rrc_T_ce_PUCCH_Enhancement_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pusch_FeedbackMode_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_PUCCH_Enhancement_r14(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, 1, NULL, FALSE, 0, NULL); @@ -70594,14 +87189,14 @@ dissect_lte_rrc_T_pusch_FeedbackMode_r12(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_pusch_SRS_PowerControl_SubframeSet_r12_vals[] = { +static const value_string lte_rrc_T_ce_ClosedLoopTxAntennaSelection_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pusch_SRS_PowerControl_SubframeSet_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_ClosedLoopTxAntennaSelection_r14(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, 1, NULL, FALSE, 0, NULL); @@ -70609,14 +87204,14 @@ dissect_lte_rrc_T_pusch_SRS_PowerControl_SubframeSet_r12(tvbuff_t *tvb _U_, int } -static const value_string lte_rrc_T_csi_SubframeSet_r12_vals[] = { +static const value_string lte_rrc_T_tdd_SpecialSubframe_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csi_SubframeSet_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tdd_SpecialSubframe_r14(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, 1, NULL, FALSE, 0, NULL); @@ -70624,14 +87219,14 @@ dissect_lte_rrc_T_csi_SubframeSet_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const value_string lte_rrc_T_noResourceRestrictionForTTIBundling_r12_vals[] = { +static const value_string lte_rrc_T_tdd_TTI_Bundling_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_noResourceRestrictionForTTIBundling_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tdd_TTI_Bundling_r14(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, 1, NULL, FALSE, 0, NULL); @@ -70639,14 +87234,14 @@ dissect_lte_rrc_T_noResourceRestrictionForTTIBundling_r12(tvbuff_t *tvb _U_, int } -static const value_string lte_rrc_T_discoverySignalsInDeactSCell_r12_vals[] = { +static const value_string lte_rrc_T_dmrs_LessUpPTS_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_discoverySignalsInDeactSCell_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dmrs_LessUpPTS_r14(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, 1, NULL, FALSE, 0, NULL); @@ -70654,97 +87249,79 @@ dissect_lte_rrc_T_discoverySignalsInDeactSCell_r12(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_T_numberOfAggregatedPRB_r12_vals[] = { - { 0, "n50" }, - { 1, "n75" }, - { 2, "n100" }, - { 3, "n125" }, - { 4, "n150" }, - { 5, "n175" }, - { 6, "n200" }, - { 7, "n225" }, - { 8, "n250" }, - { 9, "n275" }, - { 10, "n300" }, - { 11, "n350" }, - { 12, "n400" }, - { 13, "n450" }, - { 14, "n500" }, - { 15, "spare" }, +static const value_string lte_rrc_T_nMaxResource_r14_vals[] = { + { 0, "ffs1" }, + { 1, "ffs2" }, + { 2, "ffs3" }, + { 3, "ffs4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_numberOfAggregatedPRB_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nMaxResource_r14(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, - 16, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t NAICS_Capability_Entry_r12_sequence[] = { - { &hf_lte_rrc_numberOfNAICS_CapableCC_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_5 }, - { &hf_lte_rrc_numberOfAggregatedPRB_r12, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numberOfAggregatedPRB_r12 }, +static const per_sequence_t T_nzp_CSI_RS_AperiodicInfo_r14_sequence[] = { + { &hf_lte_rrc_nMaxProc_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_5_32 }, + { &hf_lte_rrc_nMaxResource_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nMaxResource_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NAICS_Capability_Entry_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nzp_CSI_RS_AperiodicInfo_r14(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_lte_rrc_NAICS_Capability_Entry_r12, NAICS_Capability_Entry_r12_sequence); + ett_lte_rrc_T_nzp_CSI_RS_AperiodicInfo_r14, T_nzp_CSI_RS_AperiodicInfo_r14_sequence); return offset; } -static const per_sequence_t NAICS_Capability_List_r12_sequence_of[1] = { - { &hf_lte_rrc_NAICS_Capability_List_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NAICS_Capability_Entry_r12 }, +static const value_string lte_rrc_T_nMaxResource_r14_01_vals[] = { + { 0, "ffs1" }, + { 1, "ffs2" }, + { 2, "ffs3" }, + { 3, "ffs4" }, + { 0, NULL } }; + static int -dissect_lte_rrc_NAICS_Capability_List_r12(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_lte_rrc_NAICS_Capability_List_r12, NAICS_Capability_List_r12_sequence_of, - 1, maxNAICS_Entries_r12, FALSE); +dissect_lte_rrc_T_nMaxResource_r14_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 per_sequence_t PhyLayerParameters_v1250_sequence[] = { - { &hf_lte_rrc_e_HARQ_Pattern_FDD_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_e_HARQ_Pattern_FDD_r12 }, - { &hf_lte_rrc_enhanced_4TxCodebook_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enhanced_4TxCodebook_r12 }, - { &hf_lte_rrc_tdd_FDD_CA_PCellDuplex_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdd_FDD_CA_PCellDuplex_r12 }, - { &hf_lte_rrc_phy_TDD_ReConfig_TDD_PCell_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_phy_TDD_ReConfig_TDD_PCell_r12 }, - { &hf_lte_rrc_phy_TDD_ReConfig_FDD_PCell_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_phy_TDD_ReConfig_FDD_PCell_r12 }, - { &hf_lte_rrc_pusch_FeedbackMode_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_FeedbackMode_r12 }, - { &hf_lte_rrc_pusch_SRS_PowerControl_SubframeSet_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SRS_PowerControl_SubframeSet_r12 }, - { &hf_lte_rrc_csi_SubframeSet_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_SubframeSet_r12 }, - { &hf_lte_rrc_noResourceRestrictionForTTIBundling_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_noResourceRestrictionForTTIBundling_r12 }, - { &hf_lte_rrc_discoverySignalsInDeactSCell_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discoverySignalsInDeactSCell_r12 }, - { &hf_lte_rrc_naics_Capability_List_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NAICS_Capability_List_r12 }, +static const per_sequence_t T_nzp_CSI_RS_PeriodicInfo_r14_sequence[] = { + { &hf_lte_rrc_nMaxResource_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nMaxResource_r14_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhyLayerParameters_v1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nzp_CSI_RS_PeriodicInfo_r14(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_lte_rrc_PhyLayerParameters_v1250, PhyLayerParameters_v1250_sequence); + ett_lte_rrc_T_nzp_CSI_RS_PeriodicInfo_r14, T_nzp_CSI_RS_PeriodicInfo_r14_sequence); return offset; } -static const value_string lte_rrc_T_dl_256QAM_r12_vals[] = { +static const value_string lte_rrc_T_zp_CSI_RS_AperiodicInfo_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dl_256QAM_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_zp_CSI_RS_AperiodicInfo_r14(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, 1, NULL, FALSE, 0, NULL); @@ -70752,14 +87329,14 @@ dissect_lte_rrc_T_dl_256QAM_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } -static const value_string lte_rrc_T_ul_64QAM_r12_vals[] = { +static const value_string lte_rrc_T_ul_dmrs_Enhancements_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ul_64QAM_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_dmrs_Enhancements_r14(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, 1, NULL, FALSE, 0, NULL); @@ -70767,43 +87344,44 @@ dissect_lte_rrc_T_ul_64QAM_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } -static const per_sequence_t SupportedBandEUTRA_v1250_sequence[] = { - { &hf_lte_rrc_dl_256QAM_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dl_256QAM_r12 }, - { &hf_lte_rrc_ul_64QAM_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_64QAM_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_densityReductionNP_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandEUTRA_v1250(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_lte_rrc_SupportedBandEUTRA_v1250, SupportedBandEUTRA_v1250_sequence); +dissect_lte_rrc_T_densityReductionNP_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandListEUTRA_v1250_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListEUTRA_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandEUTRA_v1250 }, +static const value_string lte_rrc_T_densityReductionBF_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandListEUTRA_v1250(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_lte_rrc_SupportedBandListEUTRA_v1250, SupportedBandListEUTRA_v1250_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_densityReductionBF_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_asynchronous_r12_vals[] = { +static const value_string lte_rrc_T_hybridCSI_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_asynchronous_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_hybridCSI_r14(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, 1, NULL, FALSE, 0, NULL); @@ -70811,117 +87389,112 @@ dissect_lte_rrc_T_asynchronous_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const value_string lte_rrc_T_supportedCellGrouping_r12_vals[] = { - { 0, "threeEntries-r12" }, - { 1, "fourEntries-r12" }, - { 2, "fiveEntries-r12" }, +static const value_string lte_rrc_T_semiOL_r14_vals[] = { + { 0, "supported" }, { 0, NULL } }; -static const per_choice_t T_supportedCellGrouping_r12_choice[] = { - { 0, &hf_lte_rrc_threeEntries_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_3 }, - { 1, &hf_lte_rrc_fourEntries_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_7 }, - { 2, &hf_lte_rrc_fiveEntries_r12, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_15 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_supportedCellGrouping_r12(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_lte_rrc_T_supportedCellGrouping_r12, T_supportedCellGrouping_r12_choice, - NULL); +dissect_lte_rrc_T_semiOL_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_dc_Support_r12_sequence[] = { - { &hf_lte_rrc_asynchronous_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_asynchronous_r12 }, - { &hf_lte_rrc_supportedCellGrouping_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCellGrouping_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_csi_ReportingNP_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; -static int -dissect_lte_rrc_T_dc_Support_r12(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_lte_rrc_T_dc_Support_r12, T_dc_Support_r12_sequence); - - return offset; -} - - static int -dissect_lte_rrc_BIT_STRING_SIZE_1_maxNAICS_Entries_r12(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, - 1, maxNAICS_Entries_r12, FALSE, NULL, NULL); +dissect_lte_rrc_T_csi_ReportingNP_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_csi_ReportingAdvanced_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_BIT_STRING_SIZE_1_maxBands(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, - 1, maxBands, FALSE, NULL, NULL); +dissect_lte_rrc_T_csi_ReportingAdvanced_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandCombinationParameters_v1250_sequence[] = { - { &hf_lte_rrc_dc_Support_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dc_Support_r12 }, - { &hf_lte_rrc_supportedNAICS_2CRS_AP_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxNAICS_Entries_r12 }, - { &hf_lte_rrc_commSupportedBandsPerBC_r12, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxBands }, +static const per_sequence_t MIMO_UE_ParametersPerTM_v1430_sequence[] = { + { &hf_lte_rrc_nzp_CSI_RS_AperiodicInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nzp_CSI_RS_AperiodicInfo_r14 }, + { &hf_lte_rrc_nzp_CSI_RS_PeriodicInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nzp_CSI_RS_PeriodicInfo_r14 }, + { &hf_lte_rrc_zp_CSI_RS_AperiodicInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_zp_CSI_RS_AperiodicInfo_r14 }, + { &hf_lte_rrc_ul_dmrs_Enhancements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_dmrs_Enhancements_r14 }, + { &hf_lte_rrc_densityReductionNP_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_densityReductionNP_r14 }, + { &hf_lte_rrc_densityReductionBF_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_densityReductionBF_r14 }, + { &hf_lte_rrc_hybridCSI_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hybridCSI_r14 }, + { &hf_lte_rrc_semiOL_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_semiOL_r14 }, + { &hf_lte_rrc_csi_ReportingNP_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingNP_r14 }, + { &hf_lte_rrc_csi_ReportingAdvanced_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingAdvanced_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombinationParameters_v1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1430(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_lte_rrc_BandCombinationParameters_v1250, BandCombinationParameters_v1250_sequence); + ett_lte_rrc_MIMO_UE_ParametersPerTM_v1430, MIMO_UE_ParametersPerTM_v1430_sequence); return offset; } -static const per_sequence_t SupportedBandCombination_v1250_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1250 }, +static const per_sequence_t MIMO_UE_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_parametersTM9_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1430 }, + { &hf_lte_rrc_parametersTM10_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1430 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandCombination_v1250(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_lte_rrc_SupportedBandCombination_v1250, SupportedBandCombination_v1250_sequence_of, - 1, maxBandComb_r10, FALSE); +dissect_lte_rrc_MIMO_UE_Parameters_v1430(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_lte_rrc_MIMO_UE_Parameters_v1430, MIMO_UE_Parameters_v1430_sequence); return offset; } -static const per_sequence_t SupportedBandCombinationAdd_v1250_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationAdd_v1250_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1250 }, +static const value_string lte_rrc_T_alternativeTBS_Index_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationAdd_v1250(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_lte_rrc_SupportedBandCombinationAdd_v1250, SupportedBandCombinationAdd_v1250_sequence_of, - 1, maxBandComb_r11, FALSE); +dissect_lte_rrc_T_alternativeTBS_Index_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_freqBandPriorityAdjustment_r12_vals[] = { +static const value_string lte_rrc_T_unicast_fembmsMixedSCell_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_freqBandPriorityAdjustment_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_unicast_fembmsMixedSCell_r14(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, 1, NULL, FALSE, 0, NULL); @@ -70929,60 +87502,73 @@ dissect_lte_rrc_T_freqBandPriorityAdjustment_r12(tvbuff_t *tvb _U_, int offset _ } -static const per_sequence_t RF_Parameters_v1250_sequence[] = { - { &hf_lte_rrc_supportedBandListEUTRA_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListEUTRA_v1250 }, - { &hf_lte_rrc_supportedBandCombination_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1250 }, - { &hf_lte_rrc_supportedBandCombinationAdd_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1250 }, - { &hf_lte_rrc_freqBandPriorityAdjustment_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqBandPriorityAdjustment_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_emptyUnicastRegion_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RF_Parameters_v1250(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_lte_rrc_RF_Parameters_v1250, RF_Parameters_v1250_sequence); +dissect_lte_rrc_T_emptyUnicastRegion_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_extended_RLC_LI_Field_r12_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t FeMBMS_Unicast_Parameters_r14_sequence[] = { + { &hf_lte_rrc_unicast_fembmsMixedSCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_unicast_fembmsMixedSCell_r14 }, + { &hf_lte_rrc_emptyUnicastRegion_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_emptyUnicastRegion_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_extended_RLC_LI_Field_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_FeMBMS_Unicast_Parameters_r14(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_lte_rrc_FeMBMS_Unicast_Parameters_r14, FeMBMS_Unicast_Parameters_r14_sequence); return offset; } -static const per_sequence_t RLC_Parameters_r12_sequence[] = { - { &hf_lte_rrc_extended_RLC_LI_Field_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_extended_RLC_LI_Field_r12 }, +static const per_sequence_t PhyLayerParameters_v1430_sequence[] = { + { &hf_lte_rrc_ce_PUSCH_NB_MaxTBS_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PUSCH_NB_MaxTBS_r14_01 }, + { &hf_lte_rrc_ce_PDSCH_PUSCH_MaxBandwidth_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_PUSCH_MaxBandwidth_r14 }, + { &hf_lte_rrc_ce_HARQ_AckBundling_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_HARQ_AckBundling_r14_01 }, + { &hf_lte_rrc_ce_PDSCH_TenProcesses_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_TenProcesses_r14_01 }, + { &hf_lte_rrc_ce_RetuningSymbols_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_RetuningSymbols_r14 }, + { &hf_lte_rrc_ce_PDSCH_PUSCH_Enhancement_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_PUSCH_Enhancement_r14 }, + { &hf_lte_rrc_ce_SchedulingEnhancement_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_SchedulingEnhancement_r14_01 }, + { &hf_lte_rrc_ce_SRS_Enhancement_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_SRS_Enhancement_r14 }, + { &hf_lte_rrc_ce_PUCCH_Enhancement_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PUCCH_Enhancement_r14 }, + { &hf_lte_rrc_ce_ClosedLoopTxAntennaSelection_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ClosedLoopTxAntennaSelection_r14 }, + { &hf_lte_rrc_tdd_SpecialSubframe_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdd_SpecialSubframe_r14 }, + { &hf_lte_rrc_tdd_TTI_Bundling_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdd_TTI_Bundling_r14 }, + { &hf_lte_rrc_dmrs_LessUpPTS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_LessUpPTS_r14 }, + { &hf_lte_rrc_mimo_UE_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_Parameters_v1430 }, + { &hf_lte_rrc_alternativeTBS_Index_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_alternativeTBS_Index_r14 }, + { &hf_lte_rrc_feMBMS_Unicast_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FeMBMS_Unicast_Parameters_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RLC_Parameters_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhyLayerParameters_v1430(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_lte_rrc_RLC_Parameters_r12, RLC_Parameters_r12_sequence); + ett_lte_rrc_PhyLayerParameters_v1430, PhyLayerParameters_v1430_sequence); return offset; } -static const value_string lte_rrc_T_loggedMBSFNMeasurements_r12_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_ue_CategoryDL_v1430_vals[] = { + { 0, "m2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_loggedMBSFNMeasurements_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_CategoryDL_v1430(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, 1, NULL, FALSE, 0, NULL); @@ -70990,48 +87576,49 @@ dissect_lte_rrc_T_loggedMBSFNMeasurements_r12(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t UE_BasedNetwPerfMeasParameters_v1250_sequence[] = { - { &hf_lte_rrc_loggedMBSFNMeasurements_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_loggedMBSFNMeasurements_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ue_CategoryUL_v1430_vals[] = { + { 0, "n16" }, + { 1, "n17" }, + { 2, "n18" }, + { 3, "n19" }, + { 4, "n20" }, + { 5, "m2" }, + { 0, NULL } }; -static int -dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_v1250(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_lte_rrc_UE_BasedNetwPerfMeasParameters_v1250, UE_BasedNetwPerfMeasParameters_v1250_sequence); - - return offset; -} - - static int -dissect_lte_rrc_INTEGER_0_14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 14U, NULL, FALSE); +dissect_lte_rrc_T_ue_CategoryUL_v1430(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, + 6, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_ue_CategoryUL_v1430b_vals[] = { + { 0, "n21" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_0_13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 13U, NULL, FALSE); +dissect_lte_rrc_T_ue_CategoryUL_v1430b(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_wlan_IW_RAN_Rules_r12_vals[] = { +static const value_string lte_rrc_T_shortSPS_IntervalFDD_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_wlan_IW_RAN_Rules_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_shortSPS_IntervalFDD_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71039,14 +87626,14 @@ dissect_lte_rrc_T_wlan_IW_RAN_Rules_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_wlan_IW_ANDSF_Policies_r12_vals[] = { +static const value_string lte_rrc_T_shortSPS_IntervalTDD_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_wlan_IW_ANDSF_Policies_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_shortSPS_IntervalTDD_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71054,29 +87641,29 @@ dissect_lte_rrc_T_wlan_IW_ANDSF_Policies_r12(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t WLAN_IW_Parameters_r12_sequence[] = { - { &hf_lte_rrc_wlan_IW_RAN_Rules_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_IW_RAN_Rules_r12 }, - { &hf_lte_rrc_wlan_IW_ANDSF_Policies_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_IW_ANDSF_Policies_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_skipUplinkDynamic_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_WLAN_IW_Parameters_r12(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_lte_rrc_WLAN_IW_Parameters_r12, WLAN_IW_Parameters_r12_sequence); +dissect_lte_rrc_T_skipUplinkDynamic_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_timerT312_r12_vals[] = { +static const value_string lte_rrc_T_skipUplinkSPS_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_timerT312_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_skipUplinkSPS_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71084,14 +87671,14 @@ dissect_lte_rrc_T_timerT312_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } -static const value_string lte_rrc_T_alternativeTimeToTrigger_r12_01_vals[] = { +static const value_string lte_rrc_T_multipleUplinkSPS_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_alternativeTimeToTrigger_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_multipleUplinkSPS_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71099,14 +87686,14 @@ dissect_lte_rrc_T_alternativeTimeToTrigger_r12_01(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_T_incMonEUTRA_r12_vals[] = { +static const value_string lte_rrc_T_dataInactMon_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_incMonEUTRA_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dataInactMon_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71114,29 +87701,33 @@ dissect_lte_rrc_T_incMonEUTRA_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const value_string lte_rrc_T_incMonUTRA_r12_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t MAC_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_shortSPS_IntervalFDD_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_shortSPS_IntervalFDD_r14 }, + { &hf_lte_rrc_shortSPS_IntervalTDD_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_shortSPS_IntervalTDD_r14 }, + { &hf_lte_rrc_skipUplinkDynamic_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipUplinkDynamic_r14 }, + { &hf_lte_rrc_skipUplinkSPS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipUplinkSPS_r14 }, + { &hf_lte_rrc_multipleUplinkSPS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleUplinkSPS_r14 }, + { &hf_lte_rrc_dataInactMon_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dataInactMon_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_incMonUTRA_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MAC_Parameters_v1430(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_lte_rrc_MAC_Parameters_v1430, MAC_Parameters_v1430_sequence); return offset; } -static const value_string lte_rrc_T_extendedMaxMeasId_r12_vals[] = { +static const value_string lte_rrc_T_ceMeasurements_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_extendedMaxMeasId_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ceMeasurements_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71144,14 +87735,14 @@ dissect_lte_rrc_T_extendedMaxMeasId_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_extendedRSRQ_LowerRange_r12_vals[] = { +static const value_string lte_rrc_T_ncsg_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_extendedRSRQ_LowerRange_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ncsg_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71159,14 +87750,14 @@ dissect_lte_rrc_T_extendedRSRQ_LowerRange_r12(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_rsrq_OnAllSymbols_r12_vals[] = { +static const value_string lte_rrc_T_shortMeasurementGap_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rsrq_OnAllSymbols_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_shortMeasurementGap_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71174,14 +87765,14 @@ dissect_lte_rrc_T_rsrq_OnAllSymbols_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_crs_DiscoverySignalsMeas_r12_vals[] = { +static const value_string lte_rrc_T_perServingCellMeasurementGap_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_crs_DiscoverySignalsMeas_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_perServingCellMeasurementGap_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71189,14 +87780,14 @@ dissect_lte_rrc_T_crs_DiscoverySignalsMeas_r12(tvbuff_t *tvb _U_, int offset _U_ } -static const value_string lte_rrc_T_csi_RS_DiscoverySignalsMeas_r12_vals[] = { +static const value_string lte_rrc_T_nonUniformGap_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csi_RS_DiscoverySignalsMeas_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonUniformGap_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71204,81 +87795,91 @@ dissect_lte_rrc_T_csi_RS_DiscoverySignalsMeas_r12(tvbuff_t *tvb _U_, int offset } -static const per_sequence_t MeasParameters_v1250_sequence[] = { - { &hf_lte_rrc_timerT312_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_timerT312_r12 }, - { &hf_lte_rrc_alternativeTimeToTrigger_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_alternativeTimeToTrigger_r12_01 }, - { &hf_lte_rrc_incMonEUTRA_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_incMonEUTRA_r12 }, - { &hf_lte_rrc_incMonUTRA_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_incMonUTRA_r12 }, - { &hf_lte_rrc_extendedMaxMeasId_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedMaxMeasId_r12 }, - { &hf_lte_rrc_extendedRSRQ_LowerRange_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedRSRQ_LowerRange_r12 }, - { &hf_lte_rrc_rsrq_OnAllSymbols_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rsrq_OnAllSymbols_r12 }, - { &hf_lte_rrc_crs_DiscoverySignalsMeas_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_DiscoverySignalsMeas_r12 }, - { &hf_lte_rrc_csi_RS_DiscoverySignalsMeas_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_RS_DiscoverySignalsMeas_r12 }, +static const per_sequence_t MeasParameters_v1430_sequence[] = { + { &hf_lte_rrc_ceMeasurements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ceMeasurements_r14 }, + { &hf_lte_rrc_ncsg_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ncsg_r14 }, + { &hf_lte_rrc_shortMeasurementGap_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_shortMeasurementGap_r14 }, + { &hf_lte_rrc_perServingCellMeasurementGap_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_perServingCellMeasurementGap_r14 }, + { &hf_lte_rrc_nonUniformGap_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonUniformGap_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasParameters_v1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasParameters_v1430(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_lte_rrc_MeasParameters_v1250, MeasParameters_v1250_sequence); + ett_lte_rrc_MeasParameters_v1430, MeasParameters_v1430_sequence); return offset; } -static const value_string lte_rrc_T_drb_TypeSplit_r12_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t T_supportedUplinkOnlyROHC_Profiles_r14_sequence[] = { + { &hf_lte_rrc_profile0x0006_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_drb_TypeSplit_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_supportedUplinkOnlyROHC_Profiles_r14(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_lte_rrc_T_supportedUplinkOnlyROHC_Profiles_r14, T_supportedUplinkOnlyROHC_Profiles_r14_sequence); return offset; } -static const value_string lte_rrc_T_drb_TypeSCG_r12_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_maxNumberROHC_ContextSessions_r14_vals[] = { + { 0, "cs2" }, + { 1, "cs4" }, + { 2, "cs8" }, + { 3, "cs12" }, + { 4, "cs16" }, + { 5, "cs24" }, + { 6, "cs32" }, + { 7, "cs48" }, + { 8, "cs64" }, + { 9, "cs128" }, + { 10, "cs256" }, + { 11, "cs512" }, + { 12, "cs1024" }, + { 13, "cs16384" }, + { 14, "spare2" }, + { 15, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_drb_TypeSCG_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_maxNumberROHC_ContextSessions_r14(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, - 1, NULL, FALSE, 0, NULL); + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t DC_Parameters_r12_sequence[] = { - { &hf_lte_rrc_drb_TypeSplit_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_TypeSplit_r12 }, - { &hf_lte_rrc_drb_TypeSCG_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_TypeSCG_r12 }, +static const per_sequence_t PDCP_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_supportedUplinkOnlyROHC_Profiles_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_supportedUplinkOnlyROHC_Profiles_r14 }, + { &hf_lte_rrc_maxNumberROHC_ContextSessions_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumberROHC_ContextSessions_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DC_Parameters_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PDCP_Parameters_v1430(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_lte_rrc_DC_Parameters_r12, DC_Parameters_r12_sequence); + ett_lte_rrc_PDCP_Parameters_v1430, PDCP_Parameters_v1430_sequence); return offset; } -static const value_string lte_rrc_T_mbms_AsyncDC_r12_vals[] = { +static const value_string lte_rrc_T_extendedPollByte_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mbms_AsyncDC_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_extendedPollByte_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71286,28 +87887,28 @@ dissect_lte_rrc_T_mbms_AsyncDC_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t MBMS_Parameters_v1250_sequence[] = { - { &hf_lte_rrc_mbms_AsyncDC_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_AsyncDC_r12 }, +static const per_sequence_t RLC_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_extendedPollByte_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedPollByte_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMS_Parameters_v1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RLC_Parameters_v1430(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_lte_rrc_MBMS_Parameters_v1250, MBMS_Parameters_v1250_sequence); + ett_lte_rrc_RLC_Parameters_v1430, RLC_Parameters_v1430_sequence); return offset; } -static const value_string lte_rrc_T_logicalChannelSR_ProhibitTimer_r12_01_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_csi_ReportingNP_r14_01_vals[] = { + { 0, "different" }, { 0, NULL } }; static int -dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r12_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csi_ReportingNP_r14_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, 1, NULL, FALSE, 0, NULL); @@ -71315,14 +87916,14 @@ dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r12_01(tvbuff_t *tvb _U_, int o } -static const value_string lte_rrc_T_longDRX_Command_r12_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_csi_ReportingAdvanced_r14_01_vals[] = { + { 0, "different" }, { 0, NULL } }; static int -dissect_lte_rrc_T_longDRX_Command_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csi_ReportingAdvanced_r14_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, 1, NULL, FALSE, 0, NULL); @@ -71330,44 +87931,44 @@ dissect_lte_rrc_T_longDRX_Command_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const per_sequence_t MAC_Parameters_r12_sequence[] = { - { &hf_lte_rrc_logicalChannelSR_ProhibitTimer_r12_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r12_01 }, - { &hf_lte_rrc_longDRX_Command_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_longDRX_Command_r12 }, +static const per_sequence_t MIMO_CA_ParametersPerBoBCPerTM_v1430_sequence[] = { + { &hf_lte_rrc_csi_ReportingNP_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingNP_r14_01 }, + { &hf_lte_rrc_csi_ReportingAdvanced_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingAdvanced_r14_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MAC_Parameters_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1430(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_lte_rrc_MAC_Parameters_r12, MAC_Parameters_r12_sequence); + ett_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1430, MIMO_CA_ParametersPerBoBCPerTM_v1430_sequence); return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1250_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1250 }, - { &hf_lte_rrc_measParameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1250 }, +static const per_sequence_t MIMO_CA_ParametersPerBoBC_v1430_sequence[] = { + { &hf_lte_rrc_parametersTM9_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1430 }, + { &hf_lte_rrc_parametersTM10_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1250(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_v1430(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1250, UE_EUTRA_CapabilityAddXDD_Mode_v1250_sequence); + ett_lte_rrc_MIMO_CA_ParametersPerBoBC_v1430, MIMO_CA_ParametersPerBoBC_v1430_sequence); return offset; } -static const value_string lte_rrc_T_commSimultaneousTx_r12_vals[] = { +static const value_string lte_rrc_T_ul_256QAM_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_commSimultaneousTx_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_256QAM_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71375,28 +87976,14 @@ dissect_lte_rrc_T_commSimultaneousTx_r12(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const per_sequence_t FreqBandIndicatorListEUTRA_r12_sequence_of[1] = { - { &hf_lte_rrc_FreqBandIndicatorListEUTRA_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, -}; - -static int -dissect_lte_rrc_FreqBandIndicatorListEUTRA_r12(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_lte_rrc_FreqBandIndicatorListEUTRA_r12, FreqBandIndicatorListEUTRA_r12_sequence_of, - 1, maxBands, FALSE); - - return offset; -} - - -static const value_string lte_rrc_T_support_r12_vals[] = { +static const value_string lte_rrc_T_ul_256QAM_perCC_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_support_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_256QAM_perCC_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71404,308 +87991,338 @@ dissect_lte_rrc_T_support_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } -static const per_sequence_t SupportedBandInfo_r12_sequence[] = { - { &hf_lte_rrc_support_r12 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_support_r12 }, +static const per_sequence_t UL_256QAM_perCC_Info_r14_sequence[] = { + { &hf_lte_rrc_ul_256QAM_perCC_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_256QAM_perCC_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandInfo_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UL_256QAM_perCC_Info_r14(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_lte_rrc_SupportedBandInfo_r12, SupportedBandInfo_r12_sequence); + ett_lte_rrc_UL_256QAM_perCC_Info_r14, UL_256QAM_perCC_Info_r14_sequence); return offset; } -static const per_sequence_t SupportedBandInfoList_r12_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandInfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandInfo_r12 }, +static const per_sequence_t SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_r14_sequence_of[1] = { + { &hf_lte_rrc_ul_256QAM_perCC_InfoList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_256QAM_perCC_Info_r14 }, }; static int -dissect_lte_rrc_SupportedBandInfoList_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_r14(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_lte_rrc_SupportedBandInfoList_r12, SupportedBandInfoList_r12_sequence_of, - 1, maxBands, FALSE); + ett_lte_rrc_SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_r14, SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_r14_sequence_of, + 2, maxServCell_r13, FALSE); return offset; } -static const value_string lte_rrc_T_discScheduledResourceAlloc_r12_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_rf_RetuningTimeDL_r14_vals[] = { + { 0, "n0" }, + { 1, "n0dot5" }, + { 2, "n1" }, + { 3, "n1dot5" }, + { 4, "n2" }, + { 5, "n2dot5" }, + { 6, "n3" }, + { 7, "n3dot5" }, + { 8, "n4" }, + { 9, "n4dot5" }, + { 10, "n5" }, + { 11, "n5dot5" }, + { 12, "n6" }, + { 13, "n6dot5" }, + { 14, "n7" }, + { 15, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_discScheduledResourceAlloc_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rf_RetuningTimeDL_r14(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, - 1, NULL, FALSE, 0, NULL); + 16, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_disc_UE_SelectedResourceAlloc_r12_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_rf_RetuningTimeUL_r14_vals[] = { + { 0, "n0" }, + { 1, "n0dot5" }, + { 2, "n1" }, + { 3, "n1dot5" }, + { 4, "n2" }, + { 5, "n2dot5" }, + { 6, "n3" }, + { 7, "n3dot5" }, + { 8, "n4" }, + { 9, "n4dot5" }, + { 10, "n5" }, + { 11, "n5dot5" }, + { 12, "n6" }, + { 13, "n6dot5" }, + { 14, "n7" }, + { 15, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_disc_UE_SelectedResourceAlloc_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rf_RetuningTimeUL_r14(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, - 1, NULL, FALSE, 0, NULL); + 16, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_disc_SLSS_r12_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t T_retuningInfo_sequence[] = { + { &hf_lte_rrc_rf_RetuningTimeDL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rf_RetuningTimeDL_r14 }, + { &hf_lte_rrc_rf_RetuningTimeUL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rf_RetuningTimeUL_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_disc_SLSS_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_retuningInfo(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_lte_rrc_T_retuningInfo, T_retuningInfo_sequence); return offset; } -static const value_string lte_rrc_T_discSupportedProc_r12_vals[] = { - { 0, "n50" }, - { 1, "n400" }, - { 0, NULL } +static const per_sequence_t RetuningTimeInfo_r14_sequence[] = { + { &hf_lte_rrc_retuningInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_retuningInfo }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_discSupportedProc_r12(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, FALSE, 0, NULL); +dissect_lte_rrc_RetuningTimeInfo_r14(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_lte_rrc_RetuningTimeInfo_r14, RetuningTimeInfo_r14_sequence); return offset; } -static const per_sequence_t SL_Parameters_r12_sequence[] = { - { &hf_lte_rrc_commSimultaneousTx_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commSimultaneousTx_r12 }, - { &hf_lte_rrc_commSupportedBands_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicatorListEUTRA_r12 }, - { &hf_lte_rrc_discSupportedBands_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandInfoList_r12 }, - { &hf_lte_rrc_discScheduledResourceAlloc_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discScheduledResourceAlloc_r12 }, - { &hf_lte_rrc_disc_UE_SelectedResourceAlloc_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_disc_UE_SelectedResourceAlloc_r12 }, - { &hf_lte_rrc_disc_SLSS_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_disc_SLSS_r12 }, - { &hf_lte_rrc_discSupportedProc_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discSupportedProc_r12 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14_sequence_of[1] = { + { &hf_lte_rrc_retuningTimeInfoBandList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RetuningTimeInfo_r14 }, }; static int -dissect_lte_rrc_SL_Parameters_r12(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_lte_rrc_SL_Parameters_r12, SL_Parameters_r12_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); return offset; } +static const per_sequence_t BandParameters_v1430_sequence[] = { + { &hf_lte_rrc_bandParametersDL_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_v1430 }, + { &hf_lte_rrc_ul_256QAM_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_256QAM_r14 }, + { &hf_lte_rrc_ul_256QAM_perCC_InfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_r14 }, + { &hf_lte_rrc_retuningTimeInfoBandList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_15_16(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 15U, 16U, NULL, FALSE); +dissect_lte_rrc_BandParameters_v1430(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_lte_rrc_BandParameters_v1430, BandParameters_v1430_sequence); return offset; } -static const value_string lte_rrc_T_fourLayerTM3_TM4_perCC_r12_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_v1430_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1430 }, }; - static int -dissect_lte_rrc_T_fourLayerTM3_TM4_perCC_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); return offset; } -static const value_string lte_rrc_T_supportedCSI_Proc_r12_vals[] = { - { 0, "n1" }, - { 1, "n3" }, - { 2, "n4" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_supportedCSI_Proc_r12(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, FALSE, 0, NULL); +dissect_lte_rrc_BIT_STRING_SIZE_1_maxBandComb_r13(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, + 1, maxBandComb_r13, FALSE, NULL, NULL); return offset; } -static const per_sequence_t IntraBandContiguousCC_Info_r12_sequence[] = { - { &hf_lte_rrc_fourLayerTM3_TM4_perCC_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fourLayerTM3_TM4_perCC_r12 }, - { &hf_lte_rrc_supportedMIMO_CapabilityDL_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityDL_r10 }, - { &hf_lte_rrc_supportedCSI_Proc_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCSI_Proc_r12 }, +static const per_sequence_t BandCombinationParameters_v1430_sequence[] = { + { &hf_lte_rrc_bandParameterList_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430 }, + { &hf_lte_rrc_v2x_SupportedTxBandCombListPerBC_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxBandComb_r13 }, + { &hf_lte_rrc_v2x_SupportedRxBandCombListPerBC_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxBandComb_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IntraBandContiguousCC_Info_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandCombinationParameters_v1430(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_lte_rrc_IntraBandContiguousCC_Info_r12, IntraBandContiguousCC_Info_r12_sequence); + ett_lte_rrc_BandCombinationParameters_v1430, BandCombinationParameters_v1430_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12_sequence_of[1] = { - { &hf_lte_rrc_intraBandContiguousCC_InfoList_r12_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IntraBandContiguousCC_Info_r12 }, +static const per_sequence_t SupportedBandCombination_v1430_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1430_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1430 }, }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandCombination_v1430(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_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12, SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12_sequence_of, - 1, maxServCell_r10, FALSE); + ett_lte_rrc_SupportedBandCombination_v1430, SupportedBandCombination_v1430_sequence_of, + 1, maxBandComb_r10, FALSE); return offset; } -static const per_sequence_t CA_MIMO_ParametersDL_v1270_sequence[] = { - { &hf_lte_rrc_intraBandContiguousCC_InfoList_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SupportedBandCombinationAdd_v1430_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_v1430_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1430 }, }; static int -dissect_lte_rrc_CA_MIMO_ParametersDL_v1270(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_lte_rrc_CA_MIMO_ParametersDL_v1270, CA_MIMO_ParametersDL_v1270_sequence); +dissect_lte_rrc_SupportedBandCombinationAdd_v1430(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_lte_rrc_SupportedBandCombinationAdd_v1430, SupportedBandCombinationAdd_v1430_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v1270_sequence_of[1] = { - { &hf_lte_rrc_bandParametersDL_v1270_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_MIMO_ParametersDL_v1270 }, +static const per_sequence_t SupportedBandCombinationReduced_v1430_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationReduced_v1430_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1430 }, }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v1270(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandCombinationReduced_v1430(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_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v1270, SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v1270_sequence_of, - 1, maxBandwidthClass_r10, FALSE); + ett_lte_rrc_SupportedBandCombinationReduced_v1430, SupportedBandCombinationReduced_v1430_sequence_of, + 1, maxBandComb_r13, FALSE); return offset; } -static const per_sequence_t BandParameters_v1270_sequence[] = { - { &hf_lte_rrc_bandParametersDL_v1270, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v1270 }, +static const per_sequence_t T_eNB_RequestedParameters_v1430_sequence[] = { + { &hf_lte_rrc_requestedDiffFallbackCombList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationList_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandParameters_v1270(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_eNB_RequestedParameters_v1430(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_lte_rrc_BandParameters_v1270, BandParameters_v1270_sequence); + ett_lte_rrc_T_eNB_RequestedParameters_v1430, T_eNB_RequestedParameters_v1430_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1270_sequence_of[1] = { - { &hf_lte_rrc_bandParameterList_v1270_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1270 }, +static const value_string lte_rrc_T_diffFallbackCombReport_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1270(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1270, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1270_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_T_diffFallbackCombReport_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandCombinationParameters_v1270_sequence[] = { - { &hf_lte_rrc_bandParameterList_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1270 }, +static const per_sequence_t RF_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_supportedBandCombination_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1430 }, + { &hf_lte_rrc_supportedBandCombinationAdd_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1430 }, + { &hf_lte_rrc_supportedBandCombinationReduced_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1430 }, + { &hf_lte_rrc_eNB_RequestedParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eNB_RequestedParameters_v1430 }, + { &hf_lte_rrc_diffFallbackCombReport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_diffFallbackCombReport_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombinationParameters_v1270(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v1430(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_lte_rrc_BandCombinationParameters_v1270, BandCombinationParameters_v1270_sequence); + ett_lte_rrc_RF_Parameters_v1430, RF_Parameters_v1430_sequence); return offset; } -static const per_sequence_t SupportedBandCombination_v1270_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v1270_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1270 }, +static const value_string lte_rrc_T_crossCarrierSchedulingLAA_UL_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombination_v1270(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_lte_rrc_SupportedBandCombination_v1270, SupportedBandCombination_v1270_sequence_of, - 1, maxBandComb_r10, FALSE); +dissect_lte_rrc_T_crossCarrierSchedulingLAA_UL_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandCombinationAdd_v1270_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationAdd_v1270_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1270 }, +static const value_string lte_rrc_T_uplinkLAA_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationAdd_v1270(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_lte_rrc_SupportedBandCombinationAdd_v1270, SupportedBandCombinationAdd_v1270_sequence_of, - 1, maxBandComb_r11, FALSE); +dissect_lte_rrc_T_uplinkLAA_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v1270_sequence[] = { - { &hf_lte_rrc_supportedBandCombination_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1270 }, - { &hf_lte_rrc_supportedBandCombinationAdd_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1270 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_twoStepSchedulingTimingInfo_r14_vals[] = { + { 0, "nPlus1" }, + { 1, "nPlus2" }, + { 2, "nPlus3" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RF_Parameters_v1270(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_lte_rrc_RF_Parameters_v1270, RF_Parameters_v1270_sequence); +dissect_lte_rrc_T_twoStepSchedulingTimingInfo_r14(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_alternativeTBS_Indices_r12_vals[] = { +static const value_string lte_rrc_T_uss_BlindDecodingAdjustment_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_alternativeTBS_Indices_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_uss_BlindDecodingAdjustment_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71713,60 +88330,78 @@ dissect_lte_rrc_T_alternativeTBS_Indices_r12(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t PhyLayerParameters_v1280_sequence[] = { - { &hf_lte_rrc_alternativeTBS_Indices_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_alternativeTBS_Indices_r12 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_uss_BlindDecodingReduction_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhyLayerParameters_v1280(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_lte_rrc_PhyLayerParameters_v1280, PhyLayerParameters_v1280_sequence); +dissect_lte_rrc_T_uss_BlindDecodingReduction_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ue_CategoryDL_v1310_vals[] = { - { 0, "n17" }, - { 1, "m1" }, +static const value_string lte_rrc_T_outOfSequenceGrantHandling_r14_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_CategoryDL_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_outOfSequenceGrantHandling_r14(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ue_CategoryUL_v1310_vals[] = { - { 0, "n14" }, - { 1, "m1" }, +static const per_sequence_t LAA_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_crossCarrierSchedulingLAA_UL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crossCarrierSchedulingLAA_UL_r14 }, + { &hf_lte_rrc_uplinkLAA_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_uplinkLAA_r14 }, + { &hf_lte_rrc_twoStepSchedulingTimingInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_twoStepSchedulingTimingInfo_r14 }, + { &hf_lte_rrc_uss_BlindDecodingAdjustment_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_uss_BlindDecodingAdjustment_r14 }, + { &hf_lte_rrc_uss_BlindDecodingReduction_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_uss_BlindDecodingReduction_r14 }, + { &hf_lte_rrc_outOfSequenceGrantHandling_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_outOfSequenceGrantHandling_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_LAA_Parameters_v1430(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_lte_rrc_LAA_Parameters_v1430, LAA_Parameters_v1430_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_lwa_HO_WithoutWT_Change_r14_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_CategoryUL_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_lwa_HO_WithoutWT_Change_r14(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_pdcp_SN_Extension_18bits_r13_vals[] = { +static const value_string lte_rrc_T_lwa_UL_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pdcp_SN_Extension_18bits_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_lwa_UL_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71774,28 +88409,29 @@ dissect_lte_rrc_T_pdcp_SN_Extension_18bits_r13(tvbuff_t *tvb _U_, int offset _U_ } -static const per_sequence_t PDCP_Parameters_v1310_sequence[] = { - { &hf_lte_rrc_pdcp_SN_Extension_18bits_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcp_SN_Extension_18bits_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_wlan_PeriodicMeas_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PDCP_Parameters_v1310(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_lte_rrc_PDCP_Parameters_v1310, PDCP_Parameters_v1310_sequence); +dissect_lte_rrc_T_wlan_PeriodicMeas_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_extendedRLC_SN_SO_Field_r13_vals[] = { +static const value_string lte_rrc_T_wlan_ReportAnyWLAN_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_extendedRLC_SN_SO_Field_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_wlan_ReportAnyWLAN_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71803,28 +88439,42 @@ dissect_lte_rrc_T_extendedRLC_SN_SO_Field_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t RLC_Parameters_v1310_sequence[] = { - { &hf_lte_rrc_extendedRLC_SN_SO_Field_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedRLC_SN_SO_Field_r13 }, + +static int +dissect_lte_rrc_INTEGER_1_2048(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 2048U, NULL, FALSE); + + return offset; +} + + +static const per_sequence_t LWA_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_lwa_HO_WithoutWT_Change_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_HO_WithoutWT_Change_r14 }, + { &hf_lte_rrc_lwa_UL_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_UL_r14 }, + { &hf_lte_rrc_wlan_PeriodicMeas_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_PeriodicMeas_r14 }, + { &hf_lte_rrc_wlan_ReportAnyWLAN_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_ReportAnyWLAN_r14 }, + { &hf_lte_rrc_wlan_SupportedDataRate_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_2048 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RLC_Parameters_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LWA_Parameters_v1430(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_lte_rrc_RLC_Parameters_v1310, RLC_Parameters_v1310_sequence); + ett_lte_rrc_LWA_Parameters_v1430, LWA_Parameters_v1430_sequence); return offset; } -static const value_string lte_rrc_T_extendedMAC_LengthField_r13_vals[] = { +static const value_string lte_rrc_T_lwip_Aggregation_DL_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_extendedMAC_LengthField_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_lwip_Aggregation_DL_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71832,14 +88482,14 @@ dissect_lte_rrc_T_extendedMAC_LengthField_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_extendedLongDRX_r13_vals[] = { +static const value_string lte_rrc_T_lwip_Aggregation_UL_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_extendedLongDRX_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_lwip_Aggregation_UL_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71847,67 +88497,74 @@ dissect_lte_rrc_T_extendedLongDRX_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const per_sequence_t MAC_Parameters_v1310_sequence[] = { - { &hf_lte_rrc_extendedMAC_LengthField_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedMAC_LengthField_r13 }, - { &hf_lte_rrc_extendedLongDRX_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedLongDRX_r13 }, +static const per_sequence_t LWIP_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_lwip_Aggregation_DL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwip_Aggregation_DL_r14 }, + { &hf_lte_rrc_lwip_Aggregation_UL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwip_Aggregation_UL_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MAC_Parameters_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LWIP_Parameters_v1430(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_lte_rrc_MAC_Parameters_v1310, MAC_Parameters_v1310_sequence); + ett_lte_rrc_LWIP_Parameters_v1430, LWIP_Parameters_v1430_sequence); return offset; } +static const value_string lte_rrc_T_bwPrefInd_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_aperiodicCSI_Reporting_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *aperiodicCSI_tvb=NULL; - proto_tree *subtree; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, &aperiodicCSI_tvb, NULL); - - if (aperiodicCSI_tvb) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_aperiodicCSI_Reporting_r13); - proto_tree_add_bits_item(subtree, hf_lte_rrc_aperiodicCSI_Reporting_r13_bit1, aperiodicCSI_tvb, 0, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_aperiodicCSI_Reporting_r13_bit2, aperiodicCSI_tvb, 1, 1, ENC_BIG_ENDIAN); - } +static int +dissect_lte_rrc_T_bwPrefInd_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } +static const value_string lte_rrc_T_rlm_ReportSupport_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_codebook_HARQ_ACK_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *codebook_tvb=NULL; - proto_tree *subtree; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 2, 2, FALSE, &codebook_tvb, NULL); +dissect_lte_rrc_T_rlm_ReportSupport_r14(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + - if (codebook_tvb) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_codebook_HARQ_ACK_r13); - proto_tree_add_bits_item(subtree, hf_lte_rrc_codebook_HARQ_ACK_r13_bit1, codebook_tvb, 0, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_codebook_HARQ_ACK_r13_bit2, codebook_tvb, 1, 1, ENC_BIG_ENDIAN); - } +static const per_sequence_t Other_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_bwPrefInd_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bwPrefInd_r14 }, + { &hf_lte_rrc_rlm_ReportSupport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlm_ReportSupport_r14 }, + { NULL, 0, 0, NULL } +}; +static int +dissect_lte_rrc_Other_Parameters_v1430(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_lte_rrc_Other_Parameters_v1430, Other_Parameters_v1430_sequence); return offset; } -static const value_string lte_rrc_T_crossCarrierScheduling_B5C_r13_vals[] = { +static const value_string lte_rrc_T_delayBudgetReporting_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_crossCarrierScheduling_B5C_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_delayBudgetReporting_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71915,14 +88572,14 @@ dissect_lte_rrc_T_crossCarrierScheduling_B5C_r13(tvbuff_t *tvb _U_, int offset _ } -static const value_string lte_rrc_T_fdd_HARQ_TimingTDD_r13_vals[] = { +static const value_string lte_rrc_T_pusch_Enhancements_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_fdd_HARQ_TimingTDD_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pusch_Enhancements_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71930,24 +88587,29 @@ dissect_lte_rrc_T_fdd_HARQ_TimingTDD_r13(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const value_string lte_rrc_T_recommendedBitRate_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_5_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 5U, 32U, NULL, FALSE); +dissect_lte_rrc_T_recommendedBitRate_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_pucch_Format4_r13_vals[] = { +static const value_string lte_rrc_T_recommendedBitRateQuery_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pucch_Format4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_recommendedBitRateQuery_r14(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, 1, NULL, FALSE, 0, NULL); @@ -71955,29 +88617,31 @@ dissect_lte_rrc_T_pucch_Format4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const value_string lte_rrc_T_pucch_Format5_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t MMTEL_Parameters_r14_sequence[] = { + { &hf_lte_rrc_delayBudgetReporting_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_delayBudgetReporting_r14 }, + { &hf_lte_rrc_pusch_Enhancements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_Enhancements_r14 }, + { &hf_lte_rrc_recommendedBitRate_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_recommendedBitRate_r14 }, + { &hf_lte_rrc_recommendedBitRateQuery_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_recommendedBitRateQuery_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_pucch_Format5_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MMTEL_Parameters_r14(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_lte_rrc_MMTEL_Parameters_r14, MMTEL_Parameters_r14_sequence); return offset; } -static const value_string lte_rrc_T_pucch_SCell_r13_vals[] = { +static const value_string lte_rrc_T_makeBeforeBreak_r14_01_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pucch_SCell_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_makeBeforeBreak_r14_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, 1, NULL, FALSE, 0, NULL); @@ -71985,14 +88649,14 @@ dissect_lte_rrc_T_pucch_SCell_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const value_string lte_rrc_T_spatialBundling_HARQ_ACK_r13_vals[] = { +static const value_string lte_rrc_T_rach_Less_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_spatialBundling_HARQ_ACK_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rach_Less_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72000,24 +88664,29 @@ dissect_lte_rrc_T_spatialBundling_HARQ_ACK_r13(tvbuff_t *tvb _U_, int offset _U_ } +static const per_sequence_t MobilityParameters_r14_sequence[] = { + { &hf_lte_rrc_makeBeforeBreak_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_makeBeforeBreak_r14_01 }, + { &hf_lte_rrc_rach_Less_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rach_Less_r14 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_1_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 32U, NULL, FALSE); +dissect_lte_rrc_MobilityParameters_r14(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_lte_rrc_MobilityParameters_r14, MobilityParameters_r14_sequence); return offset; } -static const value_string lte_rrc_T_pdcch_CandidateReductions_r13_vals[] = { +static const value_string lte_rrc_T_ce_SwitchWithoutHO_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pdcch_CandidateReductions_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_SwitchWithoutHO_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72025,45 +88694,43 @@ dissect_lte_rrc_T_pdcch_CandidateReductions_r13(tvbuff_t *tvb _U_, int offset _U } -static const value_string lte_rrc_T_skipMonitoringDCI_Format0_1A_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t CE_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_ce_SwitchWithoutHO_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_SwitchWithoutHO_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_skipMonitoringDCI_Format0_1A_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_CE_Parameters_v1430(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_lte_rrc_CE_Parameters_v1430, CE_Parameters_v1430_sequence); return offset; } -static const per_sequence_t T_supportedBlindDecoding_r13_sequence[] = { - { &hf_lte_rrc_maxNumberDecoding_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, - { &hf_lte_rrc_pdcch_CandidateReductions_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcch_CandidateReductions_r13 }, - { &hf_lte_rrc_skipMonitoringDCI_Format0_1A_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipMonitoringDCI_Format0_1A_r13 }, +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1430_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1430 }, + { &hf_lte_rrc_mmtel_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MMTEL_Parameters_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_supportedBlindDecoding_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1430(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_lte_rrc_T_supportedBlindDecoding_r13, T_supportedBlindDecoding_r13_sequence); + ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1430, UE_EUTRA_CapabilityAddXDD_Mode_v1430_sequence); return offset; } -static const value_string lte_rrc_T_uci_PUSCH_Ext_r13_vals[] = { +static const value_string lte_rrc_T_fembmsDedicatedCell_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_uci_PUSCH_Ext_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_fembmsDedicatedCell_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72071,14 +88738,14 @@ dissect_lte_rrc_T_uci_PUSCH_Ext_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const value_string lte_rrc_T_crs_InterfMitigationTM10_r13_vals[] = { +static const value_string lte_rrc_T_fembmsMixedCell_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_crs_InterfMitigationTM10_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_fembmsMixedCell_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72086,14 +88753,14 @@ dissect_lte_rrc_T_crs_InterfMitigationTM10_r13(tvbuff_t *tvb _U_, int offset _U_ } -static const value_string lte_rrc_T_pdsch_CollisionHandling_r13_vals[] = { +static const value_string lte_rrc_T_subcarrierSpacingMBMS_khz7dot5_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_pdsch_CollisionHandling_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_subcarrierSpacingMBMS_khz7dot5_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72101,40 +88768,46 @@ dissect_lte_rrc_T_pdsch_CollisionHandling_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t PhyLayerParameters_v1310_sequence[] = { - { &hf_lte_rrc_aperiodicCSI_Reporting_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_aperiodicCSI_Reporting_r13 }, - { &hf_lte_rrc_codebook_HARQ_ACK_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_codebook_HARQ_ACK_r13 }, - { &hf_lte_rrc_crossCarrierScheduling_B5C_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crossCarrierScheduling_B5C_r13 }, - { &hf_lte_rrc_fdd_HARQ_TimingTDD_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fdd_HARQ_TimingTDD_r13 }, - { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_5_32 }, - { &hf_lte_rrc_pucch_Format4_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_Format4_r13 }, - { &hf_lte_rrc_pucch_Format5_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_Format5_r13 }, - { &hf_lte_rrc_pucch_SCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pucch_SCell_r13 }, - { &hf_lte_rrc_spatialBundling_HARQ_ACK_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_spatialBundling_HARQ_ACK_r13 }, - { &hf_lte_rrc_supportedBlindDecoding_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedBlindDecoding_r13 }, - { &hf_lte_rrc_uci_PUSCH_Ext_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_uci_PUSCH_Ext_r13 }, - { &hf_lte_rrc_crs_InterfMitigationTM10_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_InterfMitigationTM10_r13 }, - { &hf_lte_rrc_pdsch_CollisionHandling_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_CollisionHandling_r13 }, +static const value_string lte_rrc_T_subcarrierSpacingMBMS_khz1dot25_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_subcarrierSpacingMBMS_khz1dot25_r14(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t MBMS_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_fembmsDedicatedCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fembmsDedicatedCell_r14 }, + { &hf_lte_rrc_fembmsMixedCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fembmsMixedCell_r14 }, + { &hf_lte_rrc_subcarrierSpacingMBMS_khz7dot5_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_subcarrierSpacingMBMS_khz7dot5_r14 }, + { &hf_lte_rrc_subcarrierSpacingMBMS_khz1dot25_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_subcarrierSpacingMBMS_khz1dot25_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhyLayerParameters_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBMS_Parameters_v1430(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_lte_rrc_PhyLayerParameters_v1310, PhyLayerParameters_v1310_sequence); + ett_lte_rrc_MBMS_Parameters_v1430, MBMS_Parameters_v1430_sequence); return offset; } -static const value_string lte_rrc_T_reducedIntNonContCombRequested_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_zoneBasedPoolSelection_r14_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_reducedIntNonContCombRequested_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_zoneBasedPoolSelection_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72142,14 +88815,14 @@ dissect_lte_rrc_T_reducedIntNonContCombRequested_r13(tvbuff_t *tvb _U_, int offs } -static const value_string lte_rrc_T_skipFallbackCombRequested_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_ue_AutonomousWithFullSensing_r14_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_skipFallbackCombRequested_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_AutonomousWithFullSensing_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72157,31 +88830,29 @@ dissect_lte_rrc_T_skipFallbackCombRequested_r13(tvbuff_t *tvb _U_, int offset _U } -static const per_sequence_t T_eNB_RequestedParameters_r13_sequence[] = { - { &hf_lte_rrc_reducedIntNonContCombRequested_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedIntNonContCombRequested_r13 }, - { &hf_lte_rrc_requestedCCsDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_32 }, - { &hf_lte_rrc_requestedCCsUL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_2_32 }, - { &hf_lte_rrc_skipFallbackCombRequested_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipFallbackCombRequested_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ue_AutonomousWithPartialSensing_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_eNB_RequestedParameters_r13(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_lte_rrc_T_eNB_RequestedParameters_r13, T_eNB_RequestedParameters_r13_sequence); +dissect_lte_rrc_T_ue_AutonomousWithPartialSensing_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_maximumCCsRetrieval_r13_vals[] = { +static const value_string lte_rrc_T_sl_CongestionControl_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_maximumCCsRetrieval_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sl_CongestionControl_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72189,14 +88860,14 @@ dissect_lte_rrc_T_maximumCCsRetrieval_r13(tvbuff_t *tvb _U_, int offset _U_, asn } -static const value_string lte_rrc_T_skipFallbackCombinations_r13_vals[] = { +static const value_string lte_rrc_T_v2x_TxWithShortResvInterval_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_skipFallbackCombinations_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_v2x_TxWithShortResvInterval_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72204,14 +88875,14 @@ dissect_lte_rrc_T_skipFallbackCombinations_r13(tvbuff_t *tvb _U_, int offset _U_ } -static const value_string lte_rrc_T_reducedIntNonContComb_r13_vals[] = { +static const value_string lte_rrc_T_v2x_nonAdjacentPSCCH_PSSCH_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_reducedIntNonContComb_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_v2x_nonAdjacentPSCCH_PSSCH_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72219,14 +88890,14 @@ dissect_lte_rrc_T_reducedIntNonContComb_r13(tvbuff_t *tvb _U_, int offset _U_, a } -static const value_string lte_rrc_T_ue_PowerClass_5_r13_vals[] = { +static const value_string lte_rrc_T_slss_TxRx_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_PowerClass_5_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_slss_TxRx_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72234,42 +88905,49 @@ dissect_lte_rrc_T_ue_PowerClass_5_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const per_sequence_t SupportedBandEUTRA_v1310_sequence[] = { - { &hf_lte_rrc_ue_PowerClass_5_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_PowerClass_5_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_V2X_BandwidthClass_r14_vals[] = { + { 0, "a" }, + { 1, "b" }, + { 2, "c" }, + { 3, "d" }, + { 4, "e" }, + { 5, "f" }, + { 6, "c1-v1530" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandEUTRA_v1310(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_lte_rrc_SupportedBandEUTRA_v1310, SupportedBandEUTRA_v1310_sequence); +dissect_lte_rrc_V2X_BandwidthClass_r14(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, + 6, NULL, TRUE, 1, NULL); return offset; } -static const per_sequence_t SupportedBandListEUTRA_v1310_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListEUTRA_v1310_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandEUTRA_v1310 }, +static const per_sequence_t V2X_BandwidthClassSL_r14_sequence_of[1] = { + { &hf_lte_rrc_V2X_BandwidthClassSL_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandwidthClass_r14 }, }; static int -dissect_lte_rrc_SupportedBandListEUTRA_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_V2X_BandwidthClassSL_r14(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_lte_rrc_SupportedBandListEUTRA_v1310, SupportedBandListEUTRA_v1310_sequence_of, - 1, maxBands, FALSE); + ett_lte_rrc_V2X_BandwidthClassSL_r14, V2X_BandwidthClassSL_r14_sequence_of, + 1, maxBandwidthClass_r10, FALSE); return offset; } -static const value_string lte_rrc_T_differentFallbackSupported_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_v2x_eNB_Scheduled_r14_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_differentFallbackSupported_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_v2x_eNB_Scheduled_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72277,23 +88955,45 @@ dissect_lte_rrc_T_differentFallbackSupported_r13(tvbuff_t *tvb _U_, int offset _ } +static const value_string lte_rrc_T_v2x_HighPower_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_BandParametersUL_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_lte_rrc_CA_MIMO_ParametersUL_r10(tvb, offset, actx, tree, hf_index); +dissect_lte_rrc_T_v2x_HighPower_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_fourLayerTM3_TM4_r13_vals[] = { +static const per_sequence_t BandParametersTxSL_r14_sequence[] = { + { &hf_lte_rrc_v2x_BandwidthClassTxSL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandwidthClassSL_r14 }, + { &hf_lte_rrc_v2x_eNB_Scheduled_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_eNB_Scheduled_r14 }, + { &hf_lte_rrc_v2x_HighPower_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_HighPower_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_BandParametersTxSL_r14(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_lte_rrc_BandParametersTxSL_r14, BandParametersTxSL_r14_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_v2x_HighReception_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_fourLayerTM3_TM4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_v2x_HighReception_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72301,102 +89001,124 @@ dissect_lte_rrc_T_fourLayerTM3_TM4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12_sequence_of[1] = { - { &hf_lte_rrc_intraBandContiguousCC_InfoList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IntraBandContiguousCC_Info_r12 }, +static const per_sequence_t BandParametersRxSL_r14_sequence[] = { + { &hf_lte_rrc_v2x_BandwidthClassRxSL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandwidthClassSL_r14 }, + { &hf_lte_rrc_v2x_HighReception_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_HighReception_r14 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12(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_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12, SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12_sequence_of, - 1, maxServCell_r13, FALSE); +dissect_lte_rrc_BandParametersRxSL_r14(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_lte_rrc_BandParametersRxSL_r14, BandParametersRxSL_r14_sequence); return offset; } -static const per_sequence_t CA_MIMO_ParametersDL_r13_sequence[] = { - { &hf_lte_rrc_ca_BandwidthClassDL_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_BandwidthClass_r10 }, - { &hf_lte_rrc_supportedMIMO_CapabilityDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityDL_r10 }, - { &hf_lte_rrc_fourLayerTM3_TM4_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fourLayerTM3_TM4_r13 }, - { &hf_lte_rrc_intraBandContiguousCC_InfoList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12 }, +static const per_sequence_t V2X_BandParameters_r14_sequence[] = { + { &hf_lte_rrc_v2x_FreqBandEUTRA_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, + { &hf_lte_rrc_bandParametersTxSL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersTxSL_r14 }, + { &hf_lte_rrc_bandParametersRxSL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersRxSL_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CA_MIMO_ParametersDL_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_V2X_BandParameters_r14(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_lte_rrc_CA_MIMO_ParametersDL_r13, CA_MIMO_ParametersDL_r13_sequence); + ett_lte_rrc_V2X_BandParameters_r14, V2X_BandParameters_r14_sequence); return offset; } +static const per_sequence_t V2X_BandCombinationParameters_r14_sequence_of[1] = { + { &hf_lte_rrc_V2X_BandCombinationParameters_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandParameters_r14 }, +}; static int -dissect_lte_rrc_BandParametersDL_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_lte_rrc_CA_MIMO_ParametersDL_r13(tvb, offset, actx, tree, hf_index); +dissect_lte_rrc_V2X_BandCombinationParameters_r14(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_lte_rrc_V2X_BandCombinationParameters_r14, V2X_BandCombinationParameters_r14_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); return offset; } -static const value_string lte_rrc_T_supportedCSI_Proc_r13_vals[] = { - { 0, "n1" }, - { 1, "n3" }, - { 2, "n4" }, - { 0, NULL } +static const per_sequence_t V2X_SupportedBandCombination_r14_sequence_of[1] = { + { &hf_lte_rrc_V2X_SupportedBandCombination_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandCombinationParameters_r14 }, }; - static int -dissect_lte_rrc_T_supportedCSI_Proc_r13(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, FALSE, 0, NULL); +dissect_lte_rrc_V2X_SupportedBandCombination_r14(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_lte_rrc_V2X_SupportedBandCombination_r14, V2X_SupportedBandCombination_r14_sequence_of, + 1, maxBandComb_r13, FALSE); return offset; } -static const per_sequence_t BandParameters_r13_sequence[] = { - { &hf_lte_rrc_bandEUTRA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, - { &hf_lte_rrc_bandParametersUL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersUL_r13 }, - { &hf_lte_rrc_bandParametersDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersDL_r13 }, - { &hf_lte_rrc_supportedCSI_Proc_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCSI_Proc_r13 }, +static const per_sequence_t SL_Parameters_v1430_sequence[] = { + { &hf_lte_rrc_zoneBasedPoolSelection_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_zoneBasedPoolSelection_r14 }, + { &hf_lte_rrc_ue_AutonomousWithFullSensing_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_AutonomousWithFullSensing_r14 }, + { &hf_lte_rrc_ue_AutonomousWithPartialSensing_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_AutonomousWithPartialSensing_r14 }, + { &hf_lte_rrc_sl_CongestionControl_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sl_CongestionControl_r14 }, + { &hf_lte_rrc_v2x_TxWithShortResvInterval_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_TxWithShortResvInterval_r14 }, + { &hf_lte_rrc_v2x_numberTxRxTiming_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_16 }, + { &hf_lte_rrc_v2x_nonAdjacentPSCCH_PSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_nonAdjacentPSCCH_PSSCH_r14 }, + { &hf_lte_rrc_slss_TxRx_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_slss_TxRx_r14 }, + { &hf_lte_rrc_v2x_SupportedBandCombinationList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_V2X_SupportedBandCombination_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandParameters_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_Parameters_v1430(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_lte_rrc_BandParameters_r13, BandParameters_r13_sequence); + ett_lte_rrc_SL_Parameters_v1430, SL_Parameters_v1430_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r13_sequence_of[1] = { - { &hf_lte_rrc_bandParameterList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_r13 }, +static const value_string lte_rrc_T_locationReport_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r13(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r13, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r13_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_T_locationReport_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_multipleTimingAdvance_r13_vals[] = { +static const per_sequence_t UE_BasedNetwPerfMeasParameters_v1430_sequence[] = { + { &hf_lte_rrc_locationReport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_locationReport_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_v1430(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_lte_rrc_UE_BasedNetwPerfMeasParameters_v1430, UE_BasedNetwPerfMeasParameters_v1430_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_measurementEnhancements_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multipleTimingAdvance_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_measurementEnhancements_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72404,14 +89126,14 @@ dissect_lte_rrc_T_multipleTimingAdvance_r13(tvbuff_t *tvb _U_, int offset _U_, a } -static const value_string lte_rrc_T_simultaneousRx_Tx_r13_vals[] = { +static const value_string lte_rrc_T_demodulationEnhancements_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_simultaneousRx_Tx_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_demodulationEnhancements_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72419,14 +89141,14 @@ dissect_lte_rrc_T_simultaneousRx_Tx_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_asynchronous_r13_vals[] = { +static const value_string lte_rrc_T_prach_Enhancements_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_asynchronous_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_prach_Enhancements_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72434,108 +89156,88 @@ dissect_lte_rrc_T_asynchronous_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const value_string lte_rrc_T_supportedCellGrouping_r13_vals[] = { - { 0, "threeEntries-r13" }, - { 1, "fourEntries-r13" }, - { 2, "fiveEntries-r13" }, - { 0, NULL } -}; - -static const per_choice_t T_supportedCellGrouping_r13_choice[] = { - { 0, &hf_lte_rrc_threeEntries_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_3 }, - { 1, &hf_lte_rrc_fourEntries_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_7 }, - { 2, &hf_lte_rrc_fiveEntries_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_15 }, - { 0, NULL, 0, NULL } +static const per_sequence_t HighSpeedEnhParameters_r14_sequence[] = { + { &hf_lte_rrc_measurementEnhancements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measurementEnhancements_r14 }, + { &hf_lte_rrc_demodulationEnhancements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_demodulationEnhancements_r14 }, + { &hf_lte_rrc_prach_Enhancements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_prach_Enhancements_r14 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_supportedCellGrouping_r13(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_lte_rrc_T_supportedCellGrouping_r13, T_supportedCellGrouping_r13_choice, - NULL); +dissect_lte_rrc_HighSpeedEnhParameters_r14(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_lte_rrc_HighSpeedEnhParameters_r14, HighSpeedEnhParameters_r14_sequence); return offset; } -static const per_sequence_t T_dc_Support_r13_sequence[] = { - { &hf_lte_rrc_asynchronous_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_asynchronous_r13 }, - { &hf_lte_rrc_supportedCellGrouping_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCellGrouping_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_lwa_RLC_UM_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_dc_Support_r13(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_lte_rrc_T_dc_Support_r13, T_dc_Support_r13_sequence); +dissect_lte_rrc_T_lwa_RLC_UM_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandCombinationParameters_r13_sequence[] = { - { &hf_lte_rrc_differentFallbackSupported_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_differentFallbackSupported_r13 }, - { &hf_lte_rrc_bandParameterList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_r13 }, - { &hf_lte_rrc_supportedBandwidthCombinationSet_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandwidthCombinationSet_r10 }, - { &hf_lte_rrc_multipleTimingAdvance_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleTimingAdvance_r13 }, - { &hf_lte_rrc_simultaneousRx_Tx_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_simultaneousRx_Tx_r13 }, - { &hf_lte_rrc_bandInfoEUTRA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandInfoEUTRA }, - { &hf_lte_rrc_dc_Support_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dc_Support_r13 }, - { &hf_lte_rrc_supportedNAICS_2CRS_AP_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxNAICS_Entries_r12 }, - { &hf_lte_rrc_commSupportedBandsPerBC_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxBands }, +static const per_sequence_t LWA_Parameters_v1440_sequence[] = { + { &hf_lte_rrc_lwa_RLC_UM_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_RLC_UM_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombinationParameters_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LWA_Parameters_v1440(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_lte_rrc_BandCombinationParameters_r13, BandCombinationParameters_r13_sequence); + ett_lte_rrc_LWA_Parameters_v1440, LWA_Parameters_v1440_sequence); return offset; } -static const per_sequence_t SupportedBandCombinationReduced_r13_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationReduced_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_r13 }, +static const value_string lte_rrc_T_rai_Support_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationReduced_r13(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_lte_rrc_SupportedBandCombinationReduced_r13, SupportedBandCombinationReduced_r13_sequence_of, - 1, maxBandComb_r13, FALSE); +dissect_lte_rrc_T_rai_Support_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v1310_sequence[] = { - { &hf_lte_rrc_eNB_RequestedParameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eNB_RequestedParameters_r13 }, - { &hf_lte_rrc_maximumCCsRetrieval_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maximumCCsRetrieval_r13 }, - { &hf_lte_rrc_skipFallbackCombinations_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipFallbackCombinations_r13 }, - { &hf_lte_rrc_reducedIntNonContComb_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedIntNonContComb_r13 }, - { &hf_lte_rrc_supportedBandListEUTRA_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListEUTRA_v1310 }, - { &hf_lte_rrc_supportedBandCombinationReduced_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_r13 }, +static const per_sequence_t MAC_Parameters_v1440_sequence[] = { + { &hf_lte_rrc_rai_Support_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rai_Support_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MAC_Parameters_v1440(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_lte_rrc_RF_Parameters_v1310, RF_Parameters_v1310_sequence); + ett_lte_rrc_MAC_Parameters_v1440, MAC_Parameters_v1440_sequence); return offset; } -static const value_string lte_rrc_T_rs_SINR_Meas_r13_vals[] = { +static const value_string lte_rrc_T_ce_SRS_EnhancementWithoutComb4_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rs_SINR_Meas_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_SRS_EnhancementWithoutComb4_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72543,14 +89245,14 @@ dissect_lte_rrc_T_rs_SINR_Meas_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const value_string lte_rrc_T_whiteCellList_r13_vals[] = { +static const value_string lte_rrc_T_crs_LessDwPTS_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_whiteCellList_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_crs_LessDwPTS_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72558,29 +89260,29 @@ dissect_lte_rrc_T_whiteCellList_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const value_string lte_rrc_T_extendedMaxObjectId_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t PhyLayerParameters_v1450_sequence[] = { + { &hf_lte_rrc_ce_SRS_EnhancementWithoutComb4_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_SRS_EnhancementWithoutComb4_r14 }, + { &hf_lte_rrc_crs_LessDwPTS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_LessDwPTS_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_extendedMaxObjectId_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PhyLayerParameters_v1450(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_lte_rrc_PhyLayerParameters_v1450, PhyLayerParameters_v1450_sequence); return offset; } -static const value_string lte_rrc_T_ul_PDCP_Delay_r13_vals[] = { +static const value_string lte_rrc_T_must_TM234_UpTo2Tx_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ul_PDCP_Delay_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_must_TM234_UpTo2Tx_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72588,14 +89290,14 @@ dissect_lte_rrc_T_ul_PDCP_Delay_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const value_string lte_rrc_T_extendedFreqPriorities_r13_vals[] = { +static const value_string lte_rrc_T_must_TM89_UpToOneInterferingLayer_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_extendedFreqPriorities_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_must_TM89_UpToOneInterferingLayer_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72603,14 +89305,14 @@ dissect_lte_rrc_T_extendedFreqPriorities_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_multiBandInfoReport_r13_vals[] = { +static const value_string lte_rrc_T_must_TM10_UpToOneInterferingLayer_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multiBandInfoReport_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_must_TM10_UpToOneInterferingLayer_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72618,14 +89320,14 @@ dissect_lte_rrc_T_multiBandInfoReport_r13(tvbuff_t *tvb _U_, int offset _U_, asn } -static const value_string lte_rrc_T_rssi_AndChannelOccupancyReporting_r13_vals[] = { +static const value_string lte_rrc_T_must_TM89_UpToThreeInterferingLayers_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rssi_AndChannelOccupancyReporting_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_must_TM89_UpToThreeInterferingLayers_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72633,156 +89335,147 @@ dissect_lte_rrc_T_rssi_AndChannelOccupancyReporting_r13(tvbuff_t *tvb _U_, int o } -static const per_sequence_t MeasParameters_v1310_sequence[] = { - { &hf_lte_rrc_rs_SINR_Meas_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rs_SINR_Meas_r13 }, - { &hf_lte_rrc_whiteCellList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_whiteCellList_r13 }, - { &hf_lte_rrc_extendedMaxObjectId_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedMaxObjectId_r13 }, - { &hf_lte_rrc_ul_PDCP_Delay_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_PDCP_Delay_r13 }, - { &hf_lte_rrc_extendedFreqPriorities_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedFreqPriorities_r13 }, - { &hf_lte_rrc_multiBandInfoReport_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiBandInfoReport_r13 }, - { &hf_lte_rrc_rssi_AndChannelOccupancyReporting_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rssi_AndChannelOccupancyReporting_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_must_TM10_UpToThreeInterferingLayers_r14_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MeasParameters_v1310(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_lte_rrc_MeasParameters_v1310, MeasParameters_v1310_sequence); +dissect_lte_rrc_T_must_TM10_UpToThreeInterferingLayers_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_pdcp_TransferSplitUL_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t MUST_Parameters_r14_sequence[] = { + { &hf_lte_rrc_must_TM234_UpTo2Tx_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_TM234_UpTo2Tx_r14 }, + { &hf_lte_rrc_must_TM89_UpToOneInterferingLayer_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_TM89_UpToOneInterferingLayer_r14 }, + { &hf_lte_rrc_must_TM10_UpToOneInterferingLayer_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_TM10_UpToOneInterferingLayer_r14 }, + { &hf_lte_rrc_must_TM89_UpToThreeInterferingLayers_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_TM89_UpToThreeInterferingLayers_r14 }, + { &hf_lte_rrc_must_TM10_UpToThreeInterferingLayers_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_TM10_UpToThreeInterferingLayers_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_pdcp_TransferSplitUL_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MUST_Parameters_r14(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_lte_rrc_MUST_Parameters_r14, MUST_Parameters_r14_sequence); return offset; } -static const value_string lte_rrc_T_ue_SSTD_Meas_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t BandParameters_v1450_sequence[] = { + { &hf_lte_rrc_must_CapabilityPerBand_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MUST_Parameters_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ue_SSTD_Meas_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BandParameters_v1450(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_lte_rrc_BandParameters_v1450, BandParameters_v1450_sequence); return offset; } -static const per_sequence_t DC_Parameters_v1310_sequence[] = { - { &hf_lte_rrc_pdcp_TransferSplitUL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcp_TransferSplitUL_r13 }, - { &hf_lte_rrc_ue_SSTD_Meas_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_SSTD_Meas_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_v1450_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1450 }, }; static int -dissect_lte_rrc_DC_Parameters_v1310(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_lte_rrc_DC_Parameters_v1310, DC_Parameters_v1310_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); return offset; } -static const value_string lte_rrc_T_discSysInfoReporting_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t BandCombinationParameters_v1450_sequence[] = { + { &hf_lte_rrc_bandParameterList_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_discSysInfoReporting_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BandCombinationParameters_v1450(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_lte_rrc_BandCombinationParameters_v1450, BandCombinationParameters_v1450_sequence); return offset; } -static const value_string lte_rrc_T_commMultipleTx_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SupportedBandCombination_v1450_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1450_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1450 }, }; - static int -dissect_lte_rrc_T_commMultipleTx_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandCombination_v1450(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_lte_rrc_SupportedBandCombination_v1450, SupportedBandCombination_v1450_sequence_of, + 1, maxBandComb_r10, FALSE); return offset; } -static const value_string lte_rrc_T_discInterFreqTx_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SupportedBandCombinationAdd_v1450_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_v1450_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1450 }, }; - static int -dissect_lte_rrc_T_discInterFreqTx_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandCombinationAdd_v1450(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_lte_rrc_SupportedBandCombinationAdd_v1450, SupportedBandCombinationAdd_v1450_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const value_string lte_rrc_T_discPeriodicSLSS_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SupportedBandCombinationReduced_v1450_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationReduced_v1450_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1450 }, }; - static int -dissect_lte_rrc_T_discPeriodicSLSS_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandCombinationReduced_v1450(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_lte_rrc_SupportedBandCombinationReduced_v1450, SupportedBandCombinationReduced_v1450_sequence_of, + 1, maxBandComb_r13, FALSE); return offset; } -static const per_sequence_t SL_Parameters_v1310_sequence[] = { - { &hf_lte_rrc_discSysInfoReporting_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discSysInfoReporting_r13 }, - { &hf_lte_rrc_commMultipleTx_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_commMultipleTx_r13 }, - { &hf_lte_rrc_discInterFreqTx_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discInterFreqTx_r13 }, - { &hf_lte_rrc_discPeriodicSLSS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_discPeriodicSLSS_r13 }, +static const per_sequence_t RF_Parameters_v1450_sequence[] = { + { &hf_lte_rrc_supportedBandCombination_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1450 }, + { &hf_lte_rrc_supportedBandCombinationAdd_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1450 }, + { &hf_lte_rrc_supportedBandCombinationReduced_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1450 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SL_Parameters_v1310(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v1450(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_lte_rrc_SL_Parameters_v1310, SL_Parameters_v1310_sequence); + ett_lte_rrc_RF_Parameters_v1450, RF_Parameters_v1450_sequence); return offset; } -static const value_string lte_rrc_T_scptm_ParallelReception_r13_vals[] = { +static const value_string lte_rrc_T_overheatingInd_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_scptm_ParallelReception_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_overheatingInd_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72790,44 +89483,48 @@ dissect_lte_rrc_T_scptm_ParallelReception_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_scptm_SCell_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t OtherParameters_v1450_sequence[] = { + { &hf_lte_rrc_overheatingInd_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_overheatingInd_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_scptm_SCell_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_OtherParameters_v1450(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_lte_rrc_OtherParameters_v1450, OtherParameters_v1450_sequence); return offset; } -static const value_string lte_rrc_T_scptm_NonServingCell_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } -}; + +static int +dissect_lte_rrc_INTEGER_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 20U, 20U, NULL, FALSE); + + return offset; +} + static int -dissect_lte_rrc_T_scptm_NonServingCell_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 21U, 21U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_scptm_AsyncDC_r13_vals[] = { +static const value_string lte_rrc_T_nonCSG_SI_Reporting_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_scptm_AsyncDC_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCSG_SI_Reporting_r14(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, 1, NULL, FALSE, 0, NULL); @@ -72835,31 +89532,28 @@ dissect_lte_rrc_T_scptm_AsyncDC_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const per_sequence_t SCPTM_Parameters_r13_sequence[] = { - { &hf_lte_rrc_scptm_ParallelReception_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scptm_ParallelReception_r13 }, - { &hf_lte_rrc_scptm_SCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scptm_SCell_r13 }, - { &hf_lte_rrc_scptm_NonServingCell_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scptm_NonServingCell_r13 }, - { &hf_lte_rrc_scptm_AsyncDC_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_scptm_AsyncDC_r13 }, +static const per_sequence_t Other_Parameters_v1460_sequence[] = { + { &hf_lte_rrc_nonCSG_SI_Reporting_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCSG_SI_Reporting_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SCPTM_Parameters_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_Other_Parameters_v1460(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_lte_rrc_SCPTM_Parameters_r13, SCPTM_Parameters_r13_sequence); + ett_lte_rrc_Other_Parameters_v1460, Other_Parameters_v1460_sequence); return offset; } -static const value_string lte_rrc_T_ce_ModeA_r13_vals[] = { +static const value_string lte_rrc_T_en_DC_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_ModeA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_en_DC_r15(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, 1, NULL, FALSE, 0, NULL); @@ -72867,14 +89561,14 @@ dissect_lte_rrc_T_ce_ModeA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } -static const value_string lte_rrc_T_ce_ModeB_r13_01_vals[] = { +static const value_string lte_rrc_T_eventB2_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_ModeB_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_eventB2_r15(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, 1, NULL, FALSE, 0, NULL); @@ -72882,57 +89576,58 @@ dissect_lte_rrc_T_ce_ModeB_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t CE_Parameters_r13_sequence[] = { - { &hf_lte_rrc_ce_ModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ModeA_r13 }, - { &hf_lte_rrc_ce_ModeB_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ModeB_r13_01 }, +static const per_sequence_t SupportedBandNR_r15_sequence[] = { + { &hf_lte_rrc_bandNR_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicatorNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CE_Parameters_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandNR_r15(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_lte_rrc_CE_Parameters_r13, CE_Parameters_r13_sequence); + ett_lte_rrc_SupportedBandNR_r15, SupportedBandNR_r15_sequence); return offset; } -static const per_sequence_t SupportedBandListWLAN_r13_sequence_of[1] = { - { &hf_lte_rrc_supportedBandListWLAN_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_BandIndicator_r13 }, +static const per_sequence_t SupportedBandListNR_r15_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandNR_r15 }, }; static int -dissect_lte_rrc_SupportedBandListWLAN_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandListNR_r15(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_lte_rrc_SupportedBandListWLAN_r13, SupportedBandListWLAN_r13_sequence_of, - 1, maxWLAN_Bands_r13, FALSE); + ett_lte_rrc_SupportedBandListNR_r15, SupportedBandListNR_r15_sequence_of, + 1, maxBandsNR_r15, FALSE); return offset; } -static const per_sequence_t IRAT_ParametersWLAN_r13_sequence[] = { - { &hf_lte_rrc_supportedBandListWLAN_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListWLAN_r13 }, +static const per_sequence_t IRAT_ParametersNR_r15_sequence[] = { + { &hf_lte_rrc_en_DC_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_en_DC_r15 }, + { &hf_lte_rrc_eventB2_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eventB2_r15 }, + { &hf_lte_rrc_supportedBandListNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IRAT_ParametersWLAN_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_IRAT_ParametersNR_r15(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_lte_rrc_IRAT_ParametersWLAN_r13, IRAT_ParametersWLAN_r13_sequence); + ett_lte_rrc_IRAT_ParametersNR_r15, IRAT_ParametersNR_r15_sequence); return offset; } -static const value_string lte_rrc_T_crossCarrierSchedulingLAA_DL_r13_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_dmrs_Enhancements_r13_02_vals[] = { + { 0, "different" }, { 0, NULL } }; static int -dissect_lte_rrc_T_crossCarrierSchedulingLAA_DL_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dmrs_Enhancements_r13_02(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, 1, NULL, FALSE, 0, NULL); @@ -72940,14 +89635,14 @@ dissect_lte_rrc_T_crossCarrierSchedulingLAA_DL_r13(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_T_csi_RS_DRS_RRM_MeasurementsLAA_r13_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_csi_ReportingNP_r14_02_vals[] = { + { 0, "different" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csi_RS_DRS_RRM_MeasurementsLAA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csi_ReportingNP_r14_02(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, 1, NULL, FALSE, 0, NULL); @@ -72955,14 +89650,14 @@ dissect_lte_rrc_T_csi_RS_DRS_RRM_MeasurementsLAA_r13(tvbuff_t *tvb _U_, int offs } -static const value_string lte_rrc_T_downlinkLAA_r13_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_csi_ReportingAdvanced_r14_02_vals[] = { + { 0, "different" }, { 0, NULL } }; static int -dissect_lte_rrc_T_downlinkLAA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csi_ReportingAdvanced_r14_02(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, 1, NULL, FALSE, 0, NULL); @@ -72970,109 +89665,100 @@ dissect_lte_rrc_T_downlinkLAA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const value_string lte_rrc_T_endingDwPTS_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t MIMO_CA_ParametersPerBoBCPerTM_r15_sequence[] = { + { &hf_lte_rrc_nonPrecoded_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_NonPrecodedCapabilities_r13 }, + { &hf_lte_rrc_beamformed_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_BeamformedCapabilityList_r13 }, + { &hf_lte_rrc_dmrs_Enhancements_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_Enhancements_r13_02 }, + { &hf_lte_rrc_csi_ReportingNP_r14_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingNP_r14_02 }, + { &hf_lte_rrc_csi_ReportingAdvanced_r14_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingAdvanced_r14_02 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_endingDwPTS_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r15(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_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r15, MIMO_CA_ParametersPerBoBCPerTM_r15_sequence); return offset; } -static const value_string lte_rrc_T_secondSlotStartingPosition_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t MIMO_CA_ParametersPerBoBC_r15_sequence[] = { + { &hf_lte_rrc_parametersTM9_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r15 }, + { &hf_lte_rrc_parametersTM10_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_secondSlotStartingPosition_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_r15(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_lte_rrc_MIMO_CA_ParametersPerBoBC_r15, MIMO_CA_ParametersPerBoBC_r15_sequence); return offset; } -static const value_string lte_rrc_T_tm9_LAA_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_tm9_LAA_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_FeatureSetDL_PerCC_Id_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxPerCC_FeatureSets_r15, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_tm10_LAA_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetDL_PerCC_Id_r15_sequence_of[1] = { + { &hf_lte_rrc_featureSetPerCC_ListDL_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetDL_PerCC_Id_r15 }, }; - static int -dissect_lte_rrc_T_tm10_LAA_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetDL_PerCC_Id_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetDL_PerCC_Id_r15, SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetDL_PerCC_Id_r15_sequence_of, + 1, maxServCell_r13, FALSE); return offset; } -static const per_sequence_t LAA_Parameters_r13_sequence[] = { - { &hf_lte_rrc_crossCarrierSchedulingLAA_DL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crossCarrierSchedulingLAA_DL_r13 }, - { &hf_lte_rrc_csi_RS_DRS_RRM_MeasurementsLAA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_RS_DRS_RRM_MeasurementsLAA_r13 }, - { &hf_lte_rrc_downlinkLAA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_downlinkLAA_r13 }, - { &hf_lte_rrc_endingDwPTS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_endingDwPTS_r13 }, - { &hf_lte_rrc_secondSlotStartingPosition_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_secondSlotStartingPosition_r13 }, - { &hf_lte_rrc_tm9_LAA_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm9_LAA_r13 }, - { &hf_lte_rrc_tm10_LAA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm10_LAA_r13 }, +static const per_sequence_t FeatureSetDL_r15_sequence[] = { + { &hf_lte_rrc_mimo_CA_ParametersPerBoBC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_r15 }, + { &hf_lte_rrc_featureSetPerCC_ListDL_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetDL_PerCC_Id_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LAA_Parameters_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_FeatureSetDL_r15(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_lte_rrc_LAA_Parameters_r13, LAA_Parameters_r13_sequence); + ett_lte_rrc_FeatureSetDL_r15, FeatureSetDL_r15_sequence); return offset; } -static const value_string lte_rrc_T_lwa_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15_sequence_of[1] = { + { &hf_lte_rrc_featureSetsDL_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetDL_r15 }, }; - static int -dissect_lte_rrc_T_lwa_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15, SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15_sequence_of, + 1, maxFeatureSets_r15, FALSE); return offset; } -static const value_string lte_rrc_T_lwa_SplitBearer_r13_vals[] = { +static const value_string lte_rrc_T_fourLayerTM3_TM4_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_lwa_SplitBearer_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_fourLayerTM3_TM4_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73080,118 +89766,113 @@ dissect_lte_rrc_T_lwa_SplitBearer_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const value_string lte_rrc_T_lwa_BufferSize_r13_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_supportedCSI_Proc_r15_vals[] = { + { 0, "n1" }, + { 1, "n3" }, + { 2, "n4" }, { 0, NULL } }; static int -dissect_lte_rrc_T_lwa_BufferSize_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_supportedCSI_Proc_r15(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, - 1, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t LWA_Parameters_r13_sequence[] = { - { &hf_lte_rrc_lwa_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_r13 }, - { &hf_lte_rrc_lwa_SplitBearer_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_SplitBearer_r13 }, - { &hf_lte_rrc_wlan_MAC_Address_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING_SIZE_6 }, - { &hf_lte_rrc_lwa_BufferSize_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_BufferSize_r13 }, +static const per_sequence_t FeatureSetDL_PerCC_r15_sequence[] = { + { &hf_lte_rrc_fourLayerTM3_TM4_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fourLayerTM3_TM4_r15 }, + { &hf_lte_rrc_supportedMIMO_CapabilityDL_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityDL_r10 }, + { &hf_lte_rrc_supportedCSI_Proc_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCSI_Proc_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LWA_Parameters_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_FeatureSetDL_PerCC_r15(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_lte_rrc_LWA_Parameters_r13, LWA_Parameters_r13_sequence); + ett_lte_rrc_FeatureSetDL_PerCC_r15, FeatureSetDL_PerCC_r15_sequence); return offset; } -static const value_string lte_rrc_T_rclwi_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15_sequence_of[1] = { + { &hf_lte_rrc_featureSetsDL_PerCC_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetDL_PerCC_r15 }, }; - static int -dissect_lte_rrc_T_rclwi_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15, SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15_sequence_of, + 1, maxPerCC_FeatureSets_r15, FALSE); return offset; } -static const per_sequence_t WLAN_IW_Parameters_v1310_sequence[] = { - { &hf_lte_rrc_rclwi_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rclwi_r13 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_WLAN_IW_Parameters_v1310(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_lte_rrc_WLAN_IW_Parameters_v1310, WLAN_IW_Parameters_v1310_sequence); +dissect_lte_rrc_FeatureSetUL_PerCC_Id_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxPerCC_FeatureSets_r15, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_lwip_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id_r15_sequence_of[1] = { + { &hf_lte_rrc_featureSetPerCC_ListUL_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetUL_PerCC_Id_r15 }, }; - static int -dissect_lte_rrc_T_lwip_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id_r15, SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id_r15_sequence_of, + 1, maxServCell_r13, FALSE); return offset; } -static const per_sequence_t LWIP_Parameters_r13_sequence[] = { - { &hf_lte_rrc_lwip_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwip_r13 }, +static const per_sequence_t FeatureSetUL_r15_sequence[] = { + { &hf_lte_rrc_featureSetPerCC_ListUL_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LWIP_Parameters_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_FeatureSetUL_r15(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_lte_rrc_LWIP_Parameters_r13, LWIP_Parameters_r13_sequence); + ett_lte_rrc_FeatureSetUL_r15, FeatureSetUL_r15_sequence); return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1310_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1310 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetUL_r15_sequence_of[1] = { + { &hf_lte_rrc_featureSetsUL_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetUL_r15 }, }; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1310(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1310, UE_EUTRA_CapabilityAddXDD_Mode_v1310_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetUL_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetUL_r15, SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetUL_r15_sequence_of, + 1, maxFeatureSets_r15, FALSE); return offset; } -static const value_string lte_rrc_T_intraFreqA3_CE_ModeA_r13_vals[] = { +static const value_string lte_rrc_T_ul_256QAM_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_intraFreqA3_CE_ModeA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_256QAM_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73199,76 +89880,104 @@ dissect_lte_rrc_T_intraFreqA3_CE_ModeA_r13(tvbuff_t *tvb _U_, int offset _U_, as } -static const value_string lte_rrc_T_intraFreqA3_CE_ModeB_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t FeatureSetUL_PerCC_r15_sequence[] = { + { &hf_lte_rrc_supportedMIMO_CapabilityUL_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityUL_r10 }, + { &hf_lte_rrc_ul_256QAM_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_256QAM_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_intraFreqA3_CE_ModeB_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_FeatureSetUL_PerCC_r15(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_lte_rrc_FeatureSetUL_PerCC_r15, FeatureSetUL_PerCC_r15_sequence); return offset; } -static const value_string lte_rrc_T_intraFreqHO_CE_ModeA_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetUL_PerCC_r15_sequence_of[1] = { + { &hf_lte_rrc_featureSetsUL_PerCC_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetUL_PerCC_r15 }, }; +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetUL_PerCC_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetUL_PerCC_r15, SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetUL_PerCC_r15_sequence_of, + 1, maxPerCC_FeatureSets_r15, FALSE); + + return offset; +} + + +static const per_sequence_t FeatureSetsEUTRA_r15_sequence[] = { + { &hf_lte_rrc_featureSetsDL_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15 }, + { &hf_lte_rrc_featureSetsDL_PerCC_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15 }, + { &hf_lte_rrc_featureSetsUL_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetUL_r15 }, + { &hf_lte_rrc_featureSetsUL_PerCC_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetUL_PerCC_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_intraFreqHO_CE_ModeA_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_FeatureSetsEUTRA_r15(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_lte_rrc_FeatureSetsEUTRA_r15, FeatureSetsEUTRA_r15_sequence); return offset; } -static const value_string lte_rrc_T_intraFreqHO_CE_ModeB_r13_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_rohc_ContextMaxSessions_r15_vals[] = { + { 0, "cs2" }, + { 1, "cs4" }, + { 2, "cs8" }, + { 3, "cs12" }, + { 4, "cs16" }, + { 5, "cs24" }, + { 6, "cs32" }, + { 7, "cs48" }, + { 8, "cs64" }, + { 9, "cs128" }, + { 10, "cs256" }, + { 11, "cs512" }, + { 12, "cs1024" }, + { 13, "cs16384" }, + { 14, "spare2" }, + { 15, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_intraFreqHO_CE_ModeB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rohc_ContextMaxSessions_r15(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, - 1, NULL, FALSE, 0, NULL); + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CE_Parameters_v1320_sequence[] = { - { &hf_lte_rrc_intraFreqA3_CE_ModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqA3_CE_ModeA_r13 }, - { &hf_lte_rrc_intraFreqA3_CE_ModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqA3_CE_ModeB_r13 }, - { &hf_lte_rrc_intraFreqHO_CE_ModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqHO_CE_ModeA_r13 }, - { &hf_lte_rrc_intraFreqHO_CE_ModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreqHO_CE_ModeB_r13 }, +static const per_sequence_t T_rohc_ProfilesUL_Only_r15_sequence[] = { + { &hf_lte_rrc_profile0x0006_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CE_Parameters_v1320(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rohc_ProfilesUL_Only_r15(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_lte_rrc_CE_Parameters_v1320, CE_Parameters_v1320_sequence); + ett_lte_rrc_T_rohc_ProfilesUL_Only_r15, T_rohc_ProfilesUL_Only_r15_sequence); return offset; } -static const value_string lte_rrc_T_config1_r13_vals[] = { +static const value_string lte_rrc_T_rohc_ContextContinue_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_config1_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rohc_ContextContinue_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73276,14 +89985,14 @@ dissect_lte_rrc_T_config1_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } -static const value_string lte_rrc_T_config2_r13_vals[] = { +static const value_string lte_rrc_T_outOfOrderDelivery_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_config2_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_outOfOrderDelivery_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73291,14 +90000,14 @@ dissect_lte_rrc_T_config2_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } -static const value_string lte_rrc_T_config3_r13_vals[] = { +static const value_string lte_rrc_T_sn_SizeLo_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_config3_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sn_SizeLo_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73306,14 +90015,14 @@ dissect_lte_rrc_T_config3_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } -static const value_string lte_rrc_T_config4_r13_vals[] = { +static const value_string lte_rrc_T_ims_VoiceOverNR_PDCP_MCG_Bearer_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_config4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ims_VoiceOverNR_PDCP_MCG_Bearer_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73321,31 +90030,14 @@ dissect_lte_rrc_T_config4_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } -static const per_sequence_t MIMO_NonPrecodedCapabilities_r13_sequence[] = { - { &hf_lte_rrc_config1_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_config1_r13 }, - { &hf_lte_rrc_config2_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_config2_r13 }, - { &hf_lte_rrc_config3_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_config3_r13 }, - { &hf_lte_rrc_config4_r13 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_config4_r13 }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_MIMO_NonPrecodedCapabilities_r13(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_lte_rrc_MIMO_NonPrecodedCapabilities_r13, MIMO_NonPrecodedCapabilities_r13_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_altCodebook_r13_vals[] = { +static const value_string lte_rrc_T_ims_VoiceOverNR_PDCP_SCG_Bearer_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_altCodebook_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ims_VoiceOverNR_PDCP_SCG_Bearer_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73353,68 +90045,94 @@ dissect_lte_rrc_T_altCodebook_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } +static const per_sequence_t PDCP_ParametersNR_r15_sequence[] = { + { &hf_lte_rrc_rohc_Profiles_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ROHC_ProfileSupportList_r15 }, + { &hf_lte_rrc_rohc_ContextMaxSessions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rohc_ContextMaxSessions_r15 }, + { &hf_lte_rrc_rohc_ProfilesUL_Only_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rohc_ProfilesUL_Only_r15 }, + { &hf_lte_rrc_rohc_ContextContinue_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rohc_ContextContinue_r15 }, + { &hf_lte_rrc_outOfOrderDelivery_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_outOfOrderDelivery_r15 }, + { &hf_lte_rrc_sn_SizeLo_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sn_SizeLo_r15 }, + { &hf_lte_rrc_ims_VoiceOverNR_PDCP_MCG_Bearer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ims_VoiceOverNR_PDCP_MCG_Bearer_r15 }, + { &hf_lte_rrc_ims_VoiceOverNR_PDCP_SCG_Bearer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ims_VoiceOverNR_PDCP_SCG_Bearer_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_1_7(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, - 1, 7, FALSE, NULL, NULL); +dissect_lte_rrc_PDCP_ParametersNR_r15(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_lte_rrc_PDCP_ParametersNR_r15, PDCP_ParametersNR_r15_sequence); return offset; } -static const per_sequence_t MIMO_BeamformedCapabilities_r13_sequence[] = { - { &hf_lte_rrc_k_Max_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_8 }, - { &hf_lte_rrc_n_MaxList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_7 }, +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1510_sequence[] = { + { &hf_lte_rrc_pdcp_ParametersNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_ParametersNR_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MIMO_BeamformedCapabilities_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1510(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_lte_rrc_MIMO_BeamformedCapabilities_r13, MIMO_BeamformedCapabilities_r13_sequence); + ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1510, UE_EUTRA_CapabilityAddXDD_Mode_v1510_sequence); return offset; } -static const per_sequence_t MIMO_BeamformedCapabilityList_r13_sequence_of[1] = { - { &hf_lte_rrc_MIMO_BeamformedCapabilityList_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_BeamformedCapabilities_r13 }, -}; static int -dissect_lte_rrc_MIMO_BeamformedCapabilityList_r13(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_lte_rrc_MIMO_BeamformedCapabilityList_r13, MIMO_BeamformedCapabilityList_r13_sequence_of, - 1, maxCSI_Proc_r11, FALSE); +dissect_lte_rrc_T_measGapPatterns_v1520(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *meas_gap_pattern_tvb = NULL; + proto_tree *subtree; + + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 8, 8, FALSE, &meas_gap_pattern_tvb, NULL); + + + if (meas_gap_pattern_tvb) { + static const int *lte_rrc_meas_gap_pattern_flags[] = { + &hf_lte_rrc_measGapPatterns_v1520_bit1, + &hf_lte_rrc_measGapPatterns_v1520_bit2, + &hf_lte_rrc_measGapPatterns_v1520_bit3, + &hf_lte_rrc_measGapPatterns_v1520_bit4, + &hf_lte_rrc_measGapPatterns_v1520_bit5, + &hf_lte_rrc_measGapPatterns_v1520_bit6, + &hf_lte_rrc_measGapPatterns_v1520_bit7, + &hf_lte_rrc_measGapPatterns_v1520_bit8, + NULL + }; + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_measGapPatterns_v1520); + proto_tree_add_bitmask_list(subtree, meas_gap_pattern_tvb, 0, 1, lte_rrc_meas_gap_pattern_flags, ENC_NA); + } + return offset; } -static const per_sequence_t MIMO_UE_BeamformedCapabilities_r13_sequence[] = { - { &hf_lte_rrc_altCodebook_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_altCodebook_r13 }, - { &hf_lte_rrc_mimo_BeamformedCapabilities_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_BeamformedCapabilityList_r13 }, +static const per_sequence_t MeasParameters_v1520_sequence[] = { + { &hf_lte_rrc_measGapPatterns_v1520, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measGapPatterns_v1520 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MIMO_UE_BeamformedCapabilities_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasParameters_v1520(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_lte_rrc_MIMO_UE_BeamformedCapabilities_r13, MIMO_UE_BeamformedCapabilities_r13_sequence); + ett_lte_rrc_MeasParameters_v1520, MeasParameters_v1520_sequence); return offset; } -static const value_string lte_rrc_T_channelMeasRestriction_r13_01_vals[] = { +static const value_string lte_rrc_T_qoe_MeasReport_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_channelMeasRestriction_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_qoe_MeasReport_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73422,14 +90140,14 @@ dissect_lte_rrc_T_channelMeasRestriction_r13_01(tvbuff_t *tvb _U_, int offset _U } -static const value_string lte_rrc_T_dmrs_Enhancements_r13_vals[] = { +static const value_string lte_rrc_T_qoe_MTSI_MeasReport_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dmrs_Enhancements_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_qoe_MTSI_MeasReport_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73437,14 +90155,14 @@ dissect_lte_rrc_T_dmrs_Enhancements_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_csi_RS_EnhancementsTDD_r13_vals[] = { +static const value_string lte_rrc_T_ca_IdleModeMeasurements_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csi_RS_EnhancementsTDD_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ca_IdleModeMeasurements_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73452,32 +90170,14 @@ dissect_lte_rrc_T_csi_RS_EnhancementsTDD_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t MIMO_UE_ParametersPerTM_r13_sequence[] = { - { &hf_lte_rrc_nonPrecoded_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_NonPrecodedCapabilities_r13 }, - { &hf_lte_rrc_beamformed_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_BeamformedCapabilities_r13 }, - { &hf_lte_rrc_channelMeasRestriction_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_channelMeasRestriction_r13_01 }, - { &hf_lte_rrc_dmrs_Enhancements_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_Enhancements_r13 }, - { &hf_lte_rrc_csi_RS_EnhancementsTDD_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_RS_EnhancementsTDD_r13 }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_MIMO_UE_ParametersPerTM_r13(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_lte_rrc_MIMO_UE_ParametersPerTM_r13, MIMO_UE_ParametersPerTM_r13_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_srs_EnhancementsTDD_r13_vals[] = { +static const value_string lte_rrc_T_ca_IdleModeValidityArea_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_srs_EnhancementsTDD_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ca_IdleModeValidityArea_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73485,14 +90185,14 @@ dissect_lte_rrc_T_srs_EnhancementsTDD_r13(tvbuff_t *tvb _U_, int offset _U_, asn } -static const value_string lte_rrc_T_srs_Enhancements_r13_vals[] = { +static const value_string lte_rrc_T_heightMeas_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_srs_Enhancements_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_heightMeas_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73500,14 +90200,14 @@ dissect_lte_rrc_T_srs_Enhancements_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const value_string lte_rrc_T_interferenceMeasRestriction_r13_vals[] = { +static const value_string lte_rrc_T_multipleCellsMeasExtension_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_interferenceMeasRestriction_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_multipleCellsMeasExtension_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73515,46 +90215,48 @@ dissect_lte_rrc_T_interferenceMeasRestriction_r13(tvbuff_t *tvb _U_, int offset } -static const per_sequence_t MIMO_UE_Parameters_r13_sequence[] = { - { &hf_lte_rrc_parametersTM9_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_ParametersPerTM_r13 }, - { &hf_lte_rrc_parametersTM10_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_ParametersPerTM_r13 }, - { &hf_lte_rrc_srs_EnhancementsTDD_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_EnhancementsTDD_r13 }, - { &hf_lte_rrc_srs_Enhancements_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_Enhancements_r13 }, - { &hf_lte_rrc_interferenceMeasRestriction_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interferenceMeasRestriction_r13 }, +static const per_sequence_t MeasParameters_v1530_sequence[] = { + { &hf_lte_rrc_qoe_MeasReport_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_qoe_MeasReport_r15 }, + { &hf_lte_rrc_qoe_MTSI_MeasReport_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_qoe_MTSI_MeasReport_r15 }, + { &hf_lte_rrc_ca_IdleModeMeasurements_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ca_IdleModeMeasurements_r15 }, + { &hf_lte_rrc_ca_IdleModeValidityArea_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ca_IdleModeValidityArea_r15 }, + { &hf_lte_rrc_heightMeas_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_heightMeas_r15 }, + { &hf_lte_rrc_multipleCellsMeasExtension_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleCellsMeasExtension_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MIMO_UE_Parameters_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MeasParameters_v1530(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_lte_rrc_MIMO_UE_Parameters_r13, MIMO_UE_Parameters_r13_sequence); + ett_lte_rrc_MeasParameters_v1530, MeasParameters_v1530_sequence); return offset; } -static const per_sequence_t PhyLayerParameters_v1320_sequence[] = { - { &hf_lte_rrc_mimo_UE_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_Parameters_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_assistInfoBitForLC_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhyLayerParameters_v1320(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_lte_rrc_PhyLayerParameters_v1320, PhyLayerParameters_v1320_sequence); +dissect_lte_rrc_T_assistInfoBitForLC_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_intraFreq_CE_NeedForGaps_r13_vals[] = { +static const value_string lte_rrc_T_timeReferenceProvision_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_intraFreq_CE_NeedForGaps_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_timeReferenceProvision_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73562,60 +90264,60 @@ dissect_lte_rrc_T_intraFreq_CE_NeedForGaps_r13(tvbuff_t *tvb _U_, int offset _U_ } -static const value_string lte_rrc_T_ue_PowerClass_N_r13_vals[] = { - { 0, "class1" }, - { 1, "class2" }, - { 2, "class4" }, +static const value_string lte_rrc_T_flightPathPlan_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_PowerClass_N_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_flightPathPlan_r15(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandEUTRA_v1320_sequence[] = { - { &hf_lte_rrc_intraFreq_CE_NeedForGaps_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_intraFreq_CE_NeedForGaps_r13 }, - { &hf_lte_rrc_ue_PowerClass_N_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_PowerClass_N_r13 }, +static const per_sequence_t Other_Parameters_v1530_sequence[] = { + { &hf_lte_rrc_assistInfoBitForLC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_assistInfoBitForLC_r15 }, + { &hf_lte_rrc_timeReferenceProvision_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_timeReferenceProvision_r15 }, + { &hf_lte_rrc_flightPathPlan_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_flightPathPlan_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandEUTRA_v1320(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_Other_Parameters_v1530(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_lte_rrc_SupportedBandEUTRA_v1320, SupportedBandEUTRA_v1320_sequence); + ett_lte_rrc_Other_Parameters_v1530, Other_Parameters_v1530_sequence); return offset; } -static const per_sequence_t SupportedBandListEUTRA_v1320_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListEUTRA_v1320_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandEUTRA_v1320 }, +static const value_string lte_rrc_T_reportCGI_NR_EN_DC_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandListEUTRA_v1320(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_lte_rrc_SupportedBandListEUTRA_v1320, SupportedBandListEUTRA_v1320_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_reportCGI_NR_EN_DC_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_dmrs_Enhancements_r13_01_vals[] = { - { 0, "different" }, +static const value_string lte_rrc_T_reportCGI_NR_NoEN_DC_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dmrs_Enhancements_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_reportCGI_NR_NoEN_DC_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73623,73 +90325,76 @@ dissect_lte_rrc_T_dmrs_Enhancements_r13_01(tvbuff_t *tvb _U_, int offset _U_, as } -static const per_sequence_t MIMO_CA_ParametersPerBoBCPerTM_r13_sequence[] = { - { &hf_lte_rrc_nonPrecoded_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_NonPrecodedCapabilities_r13 }, - { &hf_lte_rrc_beamformed_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_BeamformedCapabilityList_r13 }, - { &hf_lte_rrc_dmrs_Enhancements_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_Enhancements_r13_01 }, +static const per_sequence_t NeighCellSI_AcquisitionParameters_v1530_sequence[] = { + { &hf_lte_rrc_reportCGI_NR_EN_DC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reportCGI_NR_EN_DC_r15 }, + { &hf_lte_rrc_reportCGI_NR_NoEN_DC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reportCGI_NR_NoEN_DC_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NeighCellSI_AcquisitionParameters_v1530(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_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r13, MIMO_CA_ParametersPerBoBCPerTM_r13_sequence); + ett_lte_rrc_NeighCellSI_AcquisitionParameters_v1530, NeighCellSI_AcquisitionParameters_v1530_sequence); return offset; } -static const per_sequence_t MIMO_CA_ParametersPerBoBC_r13_sequence[] = { - { &hf_lte_rrc_parametersTM9_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r13 }, - { &hf_lte_rrc_parametersTM10_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_ProcessingTimelineSet_r15_vals[] = { + { 0, "set1" }, + { 1, "set2" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_r13(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_lte_rrc_MIMO_CA_ParametersPerBoBC_r13, MIMO_CA_ParametersPerBoBC_r13_sequence); +dissect_lte_rrc_ProcessingTimelineSet_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandParameters_v1320_sequence[] = { - { &hf_lte_rrc_bandParametersDL_v1320, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_3_OF_ProcessingTimelineSet_r15_sequence_of[1] = { + { &hf_lte_rrc_min_Proc_TimelineSubslot_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ProcessingTimelineSet_r15 }, }; static int -dissect_lte_rrc_BandParameters_v1320(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_lte_rrc_BandParameters_v1320, BandParameters_v1320_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_3_OF_ProcessingTimelineSet_r15(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_lte_rrc_SEQUENCE_SIZE_1_3_OF_ProcessingTimelineSet_r15, SEQUENCE_SIZE_1_3_OF_ProcessingTimelineSet_r15_sequence_of, + 1, 3, FALSE); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1320_sequence_of[1] = { - { &hf_lte_rrc_bandParameterList_v1320_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1320 }, +static const per_sequence_t SkipSubframeProcessing_r15_sequence[] = { + { &hf_lte_rrc_skipProcessingDL_Slot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_skipProcessingDL_SubSlot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_skipProcessingUL_Slot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_skipProcessingUL_SubSlot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_3 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1320(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1320, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1320_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_SkipSubframeProcessing_r15(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_lte_rrc_SkipSubframeProcessing_r15, SkipSubframeProcessing_r15_sequence); return offset; } -static const value_string lte_rrc_T_additionalRx_Tx_PerformanceReq_r13_vals[] = { +static const value_string lte_rrc_T_earlyData_UP_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_additionalRx_Tx_PerformanceReq_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_earlyData_UP_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73697,113 +90402,125 @@ dissect_lte_rrc_T_additionalRx_Tx_PerformanceReq_r13(tvbuff_t *tvb _U_, int offs } -static const per_sequence_t BandCombinationParameters_v1320_sequence[] = { - { &hf_lte_rrc_bandParameterList_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1320 }, - { &hf_lte_rrc_additionalRx_Tx_PerformanceReq_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_additionalRx_Tx_PerformanceReq_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dormantSCellState_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_BandCombinationParameters_v1320(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_lte_rrc_BandCombinationParameters_v1320, BandCombinationParameters_v1320_sequence); +dissect_lte_rrc_T_dormantSCellState_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandCombination_v1320_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v1320_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1320 }, +static const value_string lte_rrc_T_directSCellActivation_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombination_v1320(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_lte_rrc_SupportedBandCombination_v1320, SupportedBandCombination_v1320_sequence_of, - 1, maxBandComb_r10, FALSE); +dissect_lte_rrc_T_directSCellActivation_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandCombinationAdd_v1320_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationAdd_v1320_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1320 }, +static const value_string lte_rrc_T_directSCellHibernation_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationAdd_v1320(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_lte_rrc_SupportedBandCombinationAdd_v1320, SupportedBandCombinationAdd_v1320_sequence_of, - 1, maxBandComb_r11, FALSE); +dissect_lte_rrc_T_directSCellHibernation_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandCombinationReduced_v1320_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationReduced_v1320_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1320 }, +static const value_string lte_rrc_T_extendedLCID_Duplication_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationReduced_v1320(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_lte_rrc_SupportedBandCombinationReduced_v1320, SupportedBandCombinationReduced_v1320_sequence_of, - 1, maxBandComb_r13, FALSE); +dissect_lte_rrc_T_extendedLCID_Duplication_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v1320_sequence[] = { - { &hf_lte_rrc_supportedBandListEUTRA_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListEUTRA_v1320 }, - { &hf_lte_rrc_supportedBandCombination_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1320 }, - { &hf_lte_rrc_supportedBandCombinationAdd_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1320 }, - { &hf_lte_rrc_supportedBandCombinationReduced_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1320 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sps_ServingCell_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RF_Parameters_v1320(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_lte_rrc_RF_Parameters_v1320, RF_Parameters_v1320_sequence); +dissect_lte_rrc_T_sps_ServingCell_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1320_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1320 }, - { &hf_lte_rrc_scptm_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTM_Parameters_r13 }, +static const per_sequence_t MAC_Parameters_v1530_sequence[] = { + { &hf_lte_rrc_min_Proc_TimelineSubslot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_3_OF_ProcessingTimelineSet_r15 }, + { &hf_lte_rrc_skipSubframeProcessing_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SkipSubframeProcessing_r15 }, + { &hf_lte_rrc_earlyData_UP_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_earlyData_UP_r15 }, + { &hf_lte_rrc_dormantSCellState_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dormantSCellState_r15 }, + { &hf_lte_rrc_directSCellActivation_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_directSCellActivation_r15 }, + { &hf_lte_rrc_directSCellHibernation_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_directSCellHibernation_r15 }, + { &hf_lte_rrc_extendedLCID_Duplication_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedLCID_Duplication_r15 }, + { &hf_lte_rrc_sps_ServingCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sps_ServingCell_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1320(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MAC_Parameters_v1530(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1320, UE_EUTRA_CapabilityAddXDD_Mode_v1320_sequence); + ett_lte_rrc_MAC_Parameters_v1530, MAC_Parameters_v1530_sequence); return offset; } +static const value_string lte_rrc_T_aperiodicCsi_ReportingSTTI_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_18_19(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 18U, 19U, NULL, FALSE); +dissect_lte_rrc_T_aperiodicCsi_ReportingSTTI_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_cch_InterfMitigation_RefRecTypeA_r13_vals[] = { +static const value_string lte_rrc_T_dmrs_BasedSPDCCH_MBSFN_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_cch_InterfMitigation_RefRecTypeA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dmrs_BasedSPDCCH_MBSFN_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73811,14 +90528,14 @@ dissect_lte_rrc_T_cch_InterfMitigation_RefRecTypeA_r13(tvbuff_t *tvb _U_, int of } -static const value_string lte_rrc_T_cch_InterfMitigation_RefRecTypeB_r13_vals[] = { +static const value_string lte_rrc_T_dmrs_BasedSPDCCH_nonMBSFN_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_cch_InterfMitigation_RefRecTypeB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dmrs_BasedSPDCCH_nonMBSFN_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73826,41 +90543,44 @@ dissect_lte_rrc_T_cch_InterfMitigation_RefRecTypeB_r13(tvbuff_t *tvb _U_, int of } +static const value_string lte_rrc_T_dmrs_PositionPattern_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_1_maxServCell_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxServCell_r13, NULL, FALSE); +dissect_lte_rrc_T_dmrs_PositionPattern_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PhyLayerParameters_v1330_sequence[] = { - { &hf_lte_rrc_cch_InterfMitigation_RefRecTypeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cch_InterfMitigation_RefRecTypeA_r13 }, - { &hf_lte_rrc_cch_InterfMitigation_RefRecTypeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cch_InterfMitigation_RefRecTypeB_r13 }, - { &hf_lte_rrc_cch_InterfMitigation_MaxNumCCs_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxServCell_r13 }, - { &hf_lte_rrc_crs_InterfMitigationTM1toTM9_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxServCell_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dmrs_SharingSubslotPDSCH_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhyLayerParameters_v1330(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_lte_rrc_PhyLayerParameters_v1330, PhyLayerParameters_v1330_sequence); +dissect_lte_rrc_T_dmrs_SharingSubslotPDSCH_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ue_CE_NeedULGaps_r13_01_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_dmrs_RepetitionSubslotPDSCH_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_CE_NeedULGaps_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dmrs_RepetitionSubslotPDSCH_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73868,24 +90588,29 @@ dissect_lte_rrc_T_ue_CE_NeedULGaps_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn } +static const value_string lte_rrc_T_epdcch_SPT_differentCells_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_INTEGER_15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 15U, 15U, NULL, FALSE); +dissect_lte_rrc_T_epdcch_SPT_differentCells_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ue_CategoryDL_v1350_vals[] = { - { 0, "oneBis" }, +static const value_string lte_rrc_T_epdcch_STTI_differentCells_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_CategoryDL_v1350(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_epdcch_STTI_differentCells_r15(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, 1, NULL, FALSE, 0, NULL); @@ -73893,58 +90618,56 @@ dissect_lte_rrc_T_ue_CategoryDL_v1350(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const value_string lte_rrc_T_ue_CategoryUL_v1350_vals[] = { - { 0, "oneBis" }, +static const value_string lte_rrc_T_maxLayersSlotOrSubslotPUSCH_r15_vals[] = { + { 0, "oneLayer" }, + { 1, "twoLayers" }, + { 2, "fourLayers" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_CategoryUL_v1350(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_maxLayersSlotOrSubslotPUSCH_r15(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, - 1, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_unicastFrequencyHopping_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_unicastFrequencyHopping_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_INTEGER_4_32(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 4U, 32U, NULL, FALSE); return offset; } -static const per_sequence_t CE_Parameters_v1350_sequence[] = { - { &hf_lte_rrc_unicastFrequencyHopping_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_unicastFrequencyHopping_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_pdsch_SlotSubslotPDSCH_Decoding_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_CE_Parameters_v1350(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_lte_rrc_CE_Parameters_v1350, CE_Parameters_v1350_sequence); +dissect_lte_rrc_T_pdsch_SlotSubslotPDSCH_Decoding_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_inDeviceCoexInd_HardwareSharingInd_r13_vals[] = { +static const value_string lte_rrc_T_powerUCI_SlotPUSCH_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_inDeviceCoexInd_HardwareSharingInd_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_powerUCI_SlotPUSCH(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, 1, NULL, FALSE, 0, NULL); @@ -73952,28 +90675,29 @@ dissect_lte_rrc_T_inDeviceCoexInd_HardwareSharingInd_r13(tvbuff_t *tvb _U_, int } -static const per_sequence_t Other_Parameters_v1360_sequence[] = { - { &hf_lte_rrc_inDeviceCoexInd_HardwareSharingInd_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_inDeviceCoexInd_HardwareSharingInd_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_powerUCI_SubslotPUSCH_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_Other_Parameters_v1360(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_lte_rrc_Other_Parameters_v1360, Other_Parameters_v1360_sequence); +dissect_lte_rrc_T_powerUCI_SubslotPUSCH(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ce_PUSCH_NB_MaxTBS_r14_01_vals[] = { +static const value_string lte_rrc_T_slotPDSCH_TxDiv_TM9and10_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_PUSCH_NB_MaxTBS_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_slotPDSCH_TxDiv_TM9and10(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, 1, NULL, FALSE, 0, NULL); @@ -73981,30 +90705,29 @@ dissect_lte_rrc_T_ce_PUSCH_NB_MaxTBS_r14_01(tvbuff_t *tvb _U_, int offset _U_, a } -static const value_string lte_rrc_T_ce_PDSCH_PUSCH_MaxBandwidth_r14_vals[] = { - { 0, "bw5" }, - { 1, "bw20" }, +static const value_string lte_rrc_T_subslotPDSCH_TxDiv_TM9and10_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_PDSCH_PUSCH_MaxBandwidth_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_subslotPDSCH_TxDiv_TM9and10(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ce_HARQ_AckBundling_r14_01_vals[] = { +static const value_string lte_rrc_T_spdcch_differentRS_types_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_HARQ_AckBundling_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_spdcch_differentRS_types_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74012,14 +90735,14 @@ dissect_lte_rrc_T_ce_HARQ_AckBundling_r14_01(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_ce_PDSCH_TenProcesses_r14_01_vals[] = { +static const value_string lte_rrc_T_srs_DCI7_TriggeringFS2_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_PDSCH_TenProcesses_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_srs_DCI7_TriggeringFS2_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74027,30 +90750,29 @@ dissect_lte_rrc_T_ce_PDSCH_TenProcesses_r14_01(tvbuff_t *tvb _U_, int offset _U_ } -static const value_string lte_rrc_T_ce_RetuningSymbols_r14_vals[] = { - { 0, "n0" }, - { 1, "n1" }, +static const value_string lte_rrc_T_sps_cyclicShift_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_RetuningSymbols_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sps_cyclicShift_r15(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ce_PDSCH_PUSCH_Enhancement_r14_vals[] = { +static const value_string lte_rrc_T_spdcch_Reuse_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_PDSCH_PUSCH_Enhancement_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_spdcch_Reuse_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74058,29 +90780,31 @@ dissect_lte_rrc_T_ce_PDSCH_PUSCH_Enhancement_r14(tvbuff_t *tvb _U_, int offset _ } -static const value_string lte_rrc_T_ce_SchedulingEnhancement_r14_01_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_sps_STTI_r15_vals[] = { + { 0, "slot" }, + { 1, "subslot" }, + { 2, "slotAndSubslot" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_SchedulingEnhancement_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sps_STTI_r15(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, - 1, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ce_SRS_Enhancement_r14_vals[] = { +static const value_string lte_rrc_T_tm8_slotPDSCH_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_SRS_Enhancement_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tm8_slotPDSCH_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74088,14 +90812,14 @@ dissect_lte_rrc_T_ce_SRS_Enhancement_r14(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_ce_PUCCH_Enhancement_r14_vals[] = { +static const value_string lte_rrc_T_tm9_slotSubslot_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_PUCCH_Enhancement_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tm9_slotSubslot_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74103,14 +90827,14 @@ dissect_lte_rrc_T_ce_PUCCH_Enhancement_r14(tvbuff_t *tvb _U_, int offset _U_, as } -static const value_string lte_rrc_T_ce_ClosedLoopTxAntennaSelection_r14_vals[] = { +static const value_string lte_rrc_T_tm9_slotSubslotMBSFN_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ce_ClosedLoopTxAntennaSelection_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tm9_slotSubslotMBSFN_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74118,14 +90842,14 @@ dissect_lte_rrc_T_ce_ClosedLoopTxAntennaSelection_r14(tvbuff_t *tvb _U_, int off } -static const value_string lte_rrc_T_tdd_SpecialSubframe_r14_vals[] = { +static const value_string lte_rrc_T_tm10_slotSubslot_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_tdd_SpecialSubframe_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tm10_slotSubslot_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74133,14 +90857,14 @@ dissect_lte_rrc_T_tdd_SpecialSubframe_r14(tvbuff_t *tvb _U_, int offset _U_, asn } -static const value_string lte_rrc_T_tdd_TTI_Bundling_r14_vals[] = { +static const value_string lte_rrc_T_tm10_slotSubslotMBSFN_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_tdd_TTI_Bundling_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tm10_slotSubslotMBSFN_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74148,14 +90872,14 @@ dissect_lte_rrc_T_tdd_TTI_Bundling_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const value_string lte_rrc_T_dmrs_LessUpPTS_r14_vals[] = { +static const value_string lte_rrc_T_txDiv_SPUCCH_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dmrs_LessUpPTS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_txDiv_SPUCCH_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74163,79 +90887,106 @@ dissect_lte_rrc_T_dmrs_LessUpPTS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } -static const value_string lte_rrc_T_nMaxResource_r14_vals[] = { - { 0, "ffs1" }, - { 1, "ffs2" }, - { 2, "ffs3" }, - { 3, "ffs4" }, +static const value_string lte_rrc_T_ul_AsyncHarqSharingDiff_TTI_Lengths_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_nMaxResource_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_AsyncHarqSharingDiff_TTI_Lengths_r15(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); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nzp_CSI_RS_AperiodicInfo_r14_sequence[] = { - { &hf_lte_rrc_nMaxProc_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_5_32 }, - { &hf_lte_rrc_nMaxResource_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nMaxResource_r14 }, +static const per_sequence_t T_stti_SPT_Capabilities_r15_sequence[] = { + { &hf_lte_rrc_aperiodicCsi_ReportingSTTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_aperiodicCsi_ReportingSTTI_r15 }, + { &hf_lte_rrc_dmrs_BasedSPDCCH_MBSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_BasedSPDCCH_MBSFN_r15 }, + { &hf_lte_rrc_dmrs_BasedSPDCCH_nonMBSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_BasedSPDCCH_nonMBSFN_r15 }, + { &hf_lte_rrc_dmrs_PositionPattern_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_PositionPattern_r15 }, + { &hf_lte_rrc_dmrs_SharingSubslotPDSCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_SharingSubslotPDSCH_r15 }, + { &hf_lte_rrc_dmrs_RepetitionSubslotPDSCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_RepetitionSubslotPDSCH_r15 }, + { &hf_lte_rrc_epdcch_SPT_differentCells_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_epdcch_SPT_differentCells_r15 }, + { &hf_lte_rrc_epdcch_STTI_differentCells_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_epdcch_STTI_differentCells_r15 }, + { &hf_lte_rrc_maxLayersSlotOrSubslotPUSCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxLayersSlotOrSubslotPUSCH_r15 }, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_SPT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_5_32 }, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb77_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb27_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb22_Set1_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb22_Set2_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, + { &hf_lte_rrc_mimo_UE_ParametersSTTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_Parameters_r13 }, + { &hf_lte_rrc_mimo_UE_ParametersSTTI_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_Parameters_v1430 }, + { &hf_lte_rrc_numberOfBlindDecodesUSS_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_4_32 }, + { &hf_lte_rrc_pdsch_SlotSubslotPDSCH_Decoding_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_SlotSubslotPDSCH_Decoding_r15 }, + { &hf_lte_rrc_powerUCI_SlotPUSCH, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerUCI_SlotPUSCH }, + { &hf_lte_rrc_powerUCI_SubslotPUSCH, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerUCI_SubslotPUSCH }, + { &hf_lte_rrc_slotPDSCH_TxDiv_TM9and10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_slotPDSCH_TxDiv_TM9and10 }, + { &hf_lte_rrc_subslotPDSCH_TxDiv_TM9and10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_subslotPDSCH_TxDiv_TM9and10 }, + { &hf_lte_rrc_spdcch_differentRS_types_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_spdcch_differentRS_types_r15 }, + { &hf_lte_rrc_srs_DCI7_TriggeringFS2_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_DCI7_TriggeringFS2_r15 }, + { &hf_lte_rrc_sps_cyclicShift_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sps_cyclicShift_r15 }, + { &hf_lte_rrc_spdcch_Reuse_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_spdcch_Reuse_r15 }, + { &hf_lte_rrc_sps_STTI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sps_STTI_r15 }, + { &hf_lte_rrc_tm8_slotPDSCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm8_slotPDSCH_r15 }, + { &hf_lte_rrc_tm9_slotSubslot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm9_slotSubslot_r15 }, + { &hf_lte_rrc_tm9_slotSubslotMBSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm9_slotSubslotMBSFN_r15 }, + { &hf_lte_rrc_tm10_slotSubslot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm10_slotSubslot_r15 }, + { &hf_lte_rrc_tm10_slotSubslotMBSFN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm10_slotSubslotMBSFN_r15 }, + { &hf_lte_rrc_txDiv_SPUCCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_txDiv_SPUCCH_r15 }, + { &hf_lte_rrc_ul_AsyncHarqSharingDiff_TTI_Lengths_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_AsyncHarqSharingDiff_TTI_Lengths_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nzp_CSI_RS_AperiodicInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_stti_SPT_Capabilities_r15(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_lte_rrc_T_nzp_CSI_RS_AperiodicInfo_r14, T_nzp_CSI_RS_AperiodicInfo_r14_sequence); + ett_lte_rrc_T_stti_SPT_Capabilities_r15, T_stti_SPT_Capabilities_r15_sequence); return offset; } -static const value_string lte_rrc_T_nMaxResource_r14_01_vals[] = { - { 0, "ffs1" }, - { 1, "ffs2" }, - { 2, "ffs3" }, - { 3, "ffs4" }, +static const value_string lte_rrc_T_ce_CRS_IntfMitig_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_nMaxResource_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_CRS_IntfMitig_r15(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); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nzp_CSI_RS_PeriodicInfo_r14_sequence[] = { - { &hf_lte_rrc_nMaxResource_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nMaxResource_r14_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_ce_CQI_AlternativeTable_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nzp_CSI_RS_PeriodicInfo_r14(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_lte_rrc_T_nzp_CSI_RS_PeriodicInfo_r14, T_nzp_CSI_RS_PeriodicInfo_r14_sequence); +dissect_lte_rrc_T_ce_CQI_AlternativeTable_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_zp_CSI_RS_AperiodicInfo_r14_vals[] = { +static const value_string lte_rrc_T_ce_PDSCH_FlexibleStartPRB_CE_ModeA_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_zp_CSI_RS_AperiodicInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_PDSCH_FlexibleStartPRB_CE_ModeA_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74243,14 +90994,14 @@ dissect_lte_rrc_T_zp_CSI_RS_AperiodicInfo_r14(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_ul_dmrs_Enhancements_r14_vals[] = { +static const value_string lte_rrc_T_ce_PDSCH_FlexibleStartPRB_CE_ModeB_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ul_dmrs_Enhancements_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_PDSCH_FlexibleStartPRB_CE_ModeB_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74258,14 +91009,14 @@ dissect_lte_rrc_T_ul_dmrs_Enhancements_r14(tvbuff_t *tvb _U_, int offset _U_, as } -static const value_string lte_rrc_T_densityReductionNP_r14_vals[] = { +static const value_string lte_rrc_T_ce_PDSCH_64QAM_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_densityReductionNP_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_PDSCH_64QAM_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74273,14 +91024,14 @@ dissect_lte_rrc_T_densityReductionNP_r14(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_densityReductionBF_r14_vals[] = { +static const value_string lte_rrc_T_ce_PUSCH_FlexibleStartPRB_CE_ModeA_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_densityReductionBF_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_PUSCH_FlexibleStartPRB_CE_ModeA_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74288,14 +91039,14 @@ dissect_lte_rrc_T_densityReductionBF_r14(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_hybridCSI_r14_vals[] = { +static const value_string lte_rrc_T_ce_PUSCH_FlexibleStartPRB_CE_ModeB_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_hybridCSI_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_PUSCH_FlexibleStartPRB_CE_ModeB_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74303,14 +91054,14 @@ dissect_lte_rrc_T_hybridCSI_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } -static const value_string lte_rrc_T_semiOL_r14_vals[] = { +static const value_string lte_rrc_T_ce_PUSCH_SubPRB_Allocation_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_semiOL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_PUSCH_SubPRB_Allocation_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74318,14 +91069,14 @@ dissect_lte_rrc_T_semiOL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const value_string lte_rrc_T_csi_ReportingNP_r14_vals[] = { +static const value_string lte_rrc_T_ce_UL_HARQ_ACK_Feedback_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csi_ReportingNP_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ce_UL_HARQ_ACK_Feedback_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74333,14 +91084,36 @@ dissect_lte_rrc_T_csi_ReportingNP_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const value_string lte_rrc_T_csi_ReportingAdvanced_r14_vals[] = { +static const per_sequence_t T_ce_Capabilities_r15_sequence[] = { + { &hf_lte_rrc_ce_CRS_IntfMitig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_CRS_IntfMitig_r15 }, + { &hf_lte_rrc_ce_CQI_AlternativeTable_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_CQI_AlternativeTable_r15 }, + { &hf_lte_rrc_ce_PDSCH_FlexibleStartPRB_CE_ModeA_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_FlexibleStartPRB_CE_ModeA_r15 }, + { &hf_lte_rrc_ce_PDSCH_FlexibleStartPRB_CE_ModeB_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_FlexibleStartPRB_CE_ModeB_r15 }, + { &hf_lte_rrc_ce_PDSCH_64QAM_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_64QAM_r15 }, + { &hf_lte_rrc_ce_PUSCH_FlexibleStartPRB_CE_ModeA_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PUSCH_FlexibleStartPRB_CE_ModeA_r15 }, + { &hf_lte_rrc_ce_PUSCH_FlexibleStartPRB_CE_ModeB_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PUSCH_FlexibleStartPRB_CE_ModeB_r15 }, + { &hf_lte_rrc_ce_PUSCH_SubPRB_Allocation_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PUSCH_SubPRB_Allocation_r15 }, + { &hf_lte_rrc_ce_UL_HARQ_ACK_Feedback_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_UL_HARQ_ACK_Feedback_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_ce_Capabilities_r15(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_lte_rrc_T_ce_Capabilities_r15, T_ce_Capabilities_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_shortCQI_ForSCellActivation_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csi_ReportingAdvanced_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_shortCQI_ForSCellActivation_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74348,52 +91121,44 @@ dissect_lte_rrc_T_csi_ReportingAdvanced_r14(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t MIMO_UE_ParametersPerTM_v1430_sequence[] = { - { &hf_lte_rrc_nzp_CSI_RS_AperiodicInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nzp_CSI_RS_AperiodicInfo_r14 }, - { &hf_lte_rrc_nzp_CSI_RS_PeriodicInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nzp_CSI_RS_PeriodicInfo_r14 }, - { &hf_lte_rrc_zp_CSI_RS_AperiodicInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_zp_CSI_RS_AperiodicInfo_r14 }, - { &hf_lte_rrc_ul_dmrs_Enhancements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_dmrs_Enhancements_r14 }, - { &hf_lte_rrc_densityReductionNP_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_densityReductionNP_r14 }, - { &hf_lte_rrc_densityReductionBF_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_densityReductionBF_r14 }, - { &hf_lte_rrc_hybridCSI_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_hybridCSI_r14 }, - { &hf_lte_rrc_semiOL_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_semiOL_r14 }, - { &hf_lte_rrc_csi_ReportingNP_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingNP_r14 }, - { &hf_lte_rrc_csi_ReportingAdvanced_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingAdvanced_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mimo_CBSR_AdvancedCSI_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1430(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_lte_rrc_MIMO_UE_ParametersPerTM_v1430, MIMO_UE_ParametersPerTM_v1430_sequence); +dissect_lte_rrc_T_mimo_CBSR_AdvancedCSI_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MIMO_UE_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_parametersTM9_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1430 }, - { &hf_lte_rrc_parametersTM10_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1430 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_crs_IntfMitig_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MIMO_UE_Parameters_v1430(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_lte_rrc_MIMO_UE_Parameters_v1430, MIMO_UE_Parameters_v1430_sequence); +dissect_lte_rrc_T_crs_IntfMitig_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_alternativeTBS_Index_r14_vals[] = { +static const value_string lte_rrc_T_ul_PowerControlEnhancements_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_alternativeTBS_Index_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_PowerControlEnhancements_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74401,14 +91166,14 @@ dissect_lte_rrc_T_alternativeTBS_Index_r14(tvbuff_t *tvb _U_, int offset _U_, as } -static const value_string lte_rrc_T_unicast_fembmsMixedSCell_r14_vals[] = { +static const value_string lte_rrc_T_pdsch_RepSubframe_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_unicast_fembmsMixedSCell_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pdsch_RepSubframe_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74416,14 +91181,14 @@ dissect_lte_rrc_T_unicast_fembmsMixedSCell_r14(tvbuff_t *tvb _U_, int offset _U_ } -static const value_string lte_rrc_T_emptyUnicastRegion_r14_vals[] = { +static const value_string lte_rrc_T_pdsch_RepSlot_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_emptyUnicastRegion_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pdsch_RepSlot_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74431,58 +91196,54 @@ dissect_lte_rrc_T_emptyUnicastRegion_r14(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const per_sequence_t FeMBMS_Unicast_Parameters_r14_sequence[] = { - { &hf_lte_rrc_unicast_fembmsMixedSCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_unicast_fembmsMixedSCell_r14 }, - { &hf_lte_rrc_emptyUnicastRegion_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_emptyUnicastRegion_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_pdsch_RepSubslot_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_FeMBMS_Unicast_Parameters_r14(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_lte_rrc_FeMBMS_Unicast_Parameters_r14, FeMBMS_Unicast_Parameters_r14_sequence); +dissect_lte_rrc_T_pdsch_RepSubslot_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PhyLayerParameters_v1430_sequence[] = { - { &hf_lte_rrc_ce_PUSCH_NB_MaxTBS_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PUSCH_NB_MaxTBS_r14_01 }, - { &hf_lte_rrc_ce_PDSCH_PUSCH_MaxBandwidth_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_PUSCH_MaxBandwidth_r14 }, - { &hf_lte_rrc_ce_HARQ_AckBundling_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_HARQ_AckBundling_r14_01 }, - { &hf_lte_rrc_ce_PDSCH_TenProcesses_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_TenProcesses_r14_01 }, - { &hf_lte_rrc_ce_RetuningSymbols_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_RetuningSymbols_r14 }, - { &hf_lte_rrc_ce_PDSCH_PUSCH_Enhancement_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PDSCH_PUSCH_Enhancement_r14 }, - { &hf_lte_rrc_ce_SchedulingEnhancement_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_SchedulingEnhancement_r14_01 }, - { &hf_lte_rrc_ce_SRS_Enhancement_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_SRS_Enhancement_r14 }, - { &hf_lte_rrc_ce_PUCCH_Enhancement_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_PUCCH_Enhancement_r14 }, - { &hf_lte_rrc_ce_ClosedLoopTxAntennaSelection_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_ClosedLoopTxAntennaSelection_r14 }, - { &hf_lte_rrc_tdd_SpecialSubframe_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdd_SpecialSubframe_r14 }, - { &hf_lte_rrc_tdd_TTI_Bundling_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdd_TTI_Bundling_r14 }, - { &hf_lte_rrc_dmrs_LessUpPTS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_LessUpPTS_r14 }, - { &hf_lte_rrc_mimo_UE_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_Parameters_v1430 }, - { &hf_lte_rrc_alternativeTBS_Index_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_alternativeTBS_Index_r14 }, - { &hf_lte_rrc_feMBMS_Unicast_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FeMBMS_Unicast_Parameters_r14 }, - { NULL, 0, 0, NULL } + +static int +dissect_lte_rrc_INTEGER_0_6(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 6U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_pusch_SPS_SlotRepPCell_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PhyLayerParameters_v1430(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_lte_rrc_PhyLayerParameters_v1430, PhyLayerParameters_v1430_sequence); +dissect_lte_rrc_T_pusch_SPS_SlotRepPCell_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ue_CategoryDL_v1430_vals[] = { - { 0, "m2" }, +static const value_string lte_rrc_T_pusch_SPS_SlotRepPSCell_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_CategoryDL_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pusch_SPS_SlotRepPSCell_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74490,34 +91251,44 @@ dissect_lte_rrc_T_ue_CategoryDL_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const value_string lte_rrc_T_ue_CategoryUL_v1430_vals[] = { - { 0, "n16" }, - { 1, "n17" }, - { 2, "n18" }, - { 3, "n19" }, - { 4, "n20" }, - { 5, "m2" }, +static const value_string lte_rrc_T_pusch_SPS_SlotRepSCell_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_pusch_SPS_SlotRepSCell_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_pusch_SPS_SubframeRepPCell_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_CategoryUL_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pusch_SPS_SubframeRepPCell_r15(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, - 6, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ue_CategoryUL_v1430b_vals[] = { - { 0, "n21" }, +static const value_string lte_rrc_T_pusch_SPS_SubframeRepPSCell_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_CategoryUL_v1430b(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pusch_SPS_SubframeRepPSCell_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74525,14 +91296,14 @@ dissect_lte_rrc_T_ue_CategoryUL_v1430b(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const value_string lte_rrc_T_shortSPS_IntervalFDD_r14_vals[] = { +static const value_string lte_rrc_T_pusch_SPS_SubframeRepSCell_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_shortSPS_IntervalFDD_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pusch_SPS_SubframeRepSCell_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74540,14 +91311,14 @@ dissect_lte_rrc_T_shortSPS_IntervalFDD_r14(tvbuff_t *tvb _U_, int offset _U_, as } -static const value_string lte_rrc_T_shortSPS_IntervalTDD_r14_vals[] = { +static const value_string lte_rrc_T_pusch_SPS_SubslotRepPCell_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_shortSPS_IntervalTDD_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pusch_SPS_SubslotRepPCell_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74555,14 +91326,14 @@ dissect_lte_rrc_T_shortSPS_IntervalTDD_r14(tvbuff_t *tvb _U_, int offset _U_, as } -static const value_string lte_rrc_T_skipUplinkDynamic_r14_vals[] = { +static const value_string lte_rrc_T_pusch_SPS_SubslotRepPSCell_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_skipUplinkDynamic_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pusch_SPS_SubslotRepPSCell_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74570,14 +91341,14 @@ dissect_lte_rrc_T_skipUplinkDynamic_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_skipUplinkSPS_r14_vals[] = { +static const value_string lte_rrc_T_pusch_SPS_SubslotRepSCell_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_skipUplinkSPS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pusch_SPS_SubslotRepSCell_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74585,14 +91356,14 @@ dissect_lte_rrc_T_skipUplinkSPS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const value_string lte_rrc_T_multipleUplinkSPS_r14_vals[] = { +static const value_string lte_rrc_T_semiStaticCFI_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multipleUplinkSPS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_semiStaticCFI_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74600,14 +91371,14 @@ dissect_lte_rrc_T_multipleUplinkSPS_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_dataInactMon_r14_vals[] = { +static const value_string lte_rrc_T_semiStaticCFI_Pattern_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dataInactMon_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_semiStaticCFI_Pattern_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74615,33 +91386,47 @@ dissect_lte_rrc_T_dataInactMon_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t MAC_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_shortSPS_IntervalFDD_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_shortSPS_IntervalFDD_r14 }, - { &hf_lte_rrc_shortSPS_IntervalTDD_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_shortSPS_IntervalTDD_r14 }, - { &hf_lte_rrc_skipUplinkDynamic_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipUplinkDynamic_r14 }, - { &hf_lte_rrc_skipUplinkSPS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_skipUplinkSPS_r14 }, - { &hf_lte_rrc_multipleUplinkSPS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleUplinkSPS_r14 }, - { &hf_lte_rrc_dataInactMon_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dataInactMon_r14 }, +static const per_sequence_t T_urllc_Capabilities_r15_sequence[] = { + { &hf_lte_rrc_pdsch_RepSubframe_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_RepSubframe_r15 }, + { &hf_lte_rrc_pdsch_RepSlot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_RepSlot_r15 }, + { &hf_lte_rrc_pdsch_RepSubslot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdsch_RepSubslot_r15 }, + { &hf_lte_rrc_pusch_SPS_MultiConfigSubframe_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_6 }, + { &hf_lte_rrc_pusch_SPS_MaxConfigSubframe_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_pusch_SPS_MultiConfigSlot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_6 }, + { &hf_lte_rrc_pusch_SPS_MaxConfigSlot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_pusch_SPS_MultiConfigSubslot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_6 }, + { &hf_lte_rrc_pusch_SPS_MaxConfigSubslot_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_pusch_SPS_SlotRepPCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SPS_SlotRepPCell_r15 }, + { &hf_lte_rrc_pusch_SPS_SlotRepPSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SPS_SlotRepPSCell_r15 }, + { &hf_lte_rrc_pusch_SPS_SlotRepSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SPS_SlotRepSCell_r15 }, + { &hf_lte_rrc_pusch_SPS_SubframeRepPCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SPS_SubframeRepPCell_r15 }, + { &hf_lte_rrc_pusch_SPS_SubframeRepPSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SPS_SubframeRepPSCell_r15 }, + { &hf_lte_rrc_pusch_SPS_SubframeRepSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SPS_SubframeRepSCell_r15 }, + { &hf_lte_rrc_pusch_SPS_SubslotRepPCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SPS_SubslotRepPCell_r15 }, + { &hf_lte_rrc_pusch_SPS_SubslotRepPSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SPS_SubslotRepPSCell_r15 }, + { &hf_lte_rrc_pusch_SPS_SubslotRepSCell_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_SPS_SubslotRepSCell_r15 }, + { &hf_lte_rrc_semiStaticCFI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_semiStaticCFI_r15 }, + { &hf_lte_rrc_semiStaticCFI_Pattern_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_semiStaticCFI_Pattern_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MAC_Parameters_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_urllc_Capabilities_r15(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_lte_rrc_MAC_Parameters_v1430, MAC_Parameters_v1430_sequence); + ett_lte_rrc_T_urllc_Capabilities_r15, T_urllc_Capabilities_r15_sequence); return offset; } -static const value_string lte_rrc_T_ceMeasurements_r14_vals[] = { +static const value_string lte_rrc_T_altMCS_Table_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ceMeasurements_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_altMCS_Table_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74649,14 +91434,35 @@ dissect_lte_rrc_T_ceMeasurements_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } -static const value_string lte_rrc_T_ncsg_r14_vals[] = { +static const per_sequence_t PhyLayerParameters_v1530_sequence[] = { + { &hf_lte_rrc_stti_SPT_Capabilities_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_stti_SPT_Capabilities_r15 }, + { &hf_lte_rrc_ce_Capabilities_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_Capabilities_r15 }, + { &hf_lte_rrc_shortCQI_ForSCellActivation_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_shortCQI_ForSCellActivation_r15 }, + { &hf_lte_rrc_mimo_CBSR_AdvancedCSI_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mimo_CBSR_AdvancedCSI_r15 }, + { &hf_lte_rrc_crs_IntfMitig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_IntfMitig_r15 }, + { &hf_lte_rrc_ul_PowerControlEnhancements_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_PowerControlEnhancements_r15 }, + { &hf_lte_rrc_urllc_Capabilities_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_urllc_Capabilities_r15 }, + { &hf_lte_rrc_altMCS_Table_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_altMCS_Table_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PhyLayerParameters_v1530(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_lte_rrc_PhyLayerParameters_v1530, PhyLayerParameters_v1530_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_sTTI_SPT_Supported_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ncsg_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sTTI_SPT_Supported_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74664,14 +91470,14 @@ dissect_lte_rrc_T_ncsg_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } -static const value_string lte_rrc_T_shortMeasurementGap_r14_vals[] = { +static const value_string lte_rrc_T_ue_TxAntennaSelection_SRS_1T4R_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_shortMeasurementGap_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_TxAntennaSelection_SRS_1T4R_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74679,14 +91485,14 @@ dissect_lte_rrc_T_shortMeasurementGap_r14(tvbuff_t *tvb _U_, int offset _U_, asn } -static const value_string lte_rrc_T_perServingCellMeasurementGap_r14_vals[] = { +static const value_string lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_2Pairs_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_perServingCellMeasurementGap_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_2Pairs_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74694,14 +91500,14 @@ dissect_lte_rrc_T_perServingCellMeasurementGap_r14(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_T_nonUniformGap_r14_vals[] = { +static const value_string lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_3Pairs_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_nonUniformGap_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_3Pairs_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74709,91 +91515,74 @@ dissect_lte_rrc_T_nonUniformGap_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const per_sequence_t MeasParameters_v1430_sequence[] = { - { &hf_lte_rrc_ceMeasurements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ceMeasurements_r14 }, - { &hf_lte_rrc_ncsg_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ncsg_r14 }, - { &hf_lte_rrc_shortMeasurementGap_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_shortMeasurementGap_r14 }, - { &hf_lte_rrc_perServingCellMeasurementGap_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_perServingCellMeasurementGap_r14 }, - { &hf_lte_rrc_nonUniformGap_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonUniformGap_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dl_1024QAM_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MeasParameters_v1430(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_lte_rrc_MeasParameters_v1430, MeasParameters_v1430_sequence); +dissect_lte_rrc_T_dl_1024QAM_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_supportedUplinkOnlyROHC_Profiles_r14_sequence[] = { - { &hf_lte_rrc_profile0x0006_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_qcl_TypeC_Operation_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_supportedUplinkOnlyROHC_Profiles_r14(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_lte_rrc_T_supportedUplinkOnlyROHC_Profiles_r14, T_supportedUplinkOnlyROHC_Profiles_r14_sequence); +dissect_lte_rrc_T_qcl_TypeC_Operation_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_maxNumberROHC_ContextSessions_r14_vals[] = { - { 0, "cs2" }, - { 1, "cs4" }, - { 2, "cs8" }, - { 3, "cs12" }, - { 4, "cs16" }, - { 5, "cs24" }, - { 6, "cs32" }, - { 7, "cs48" }, - { 8, "cs64" }, - { 9, "cs128" }, - { 10, "cs256" }, - { 11, "cs512" }, - { 12, "cs1024" }, - { 13, "cs16384" }, - { 14, "spare2" }, - { 15, "spare1" }, +static const value_string lte_rrc_T_qcl_CRI_BasedCSI_Reporting_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_maxNumberROHC_ContextSessions_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_qcl_CRI_BasedCSI_Reporting_r15(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, - 16, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PDCP_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_supportedUplinkOnlyROHC_Profiles_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_supportedUplinkOnlyROHC_Profiles_r14 }, - { &hf_lte_rrc_maxNumberROHC_ContextSessions_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumberROHC_ContextSessions_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dl_1024QAM_Slot_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PDCP_Parameters_v1430(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_lte_rrc_PDCP_Parameters_v1430, PDCP_Parameters_v1430_sequence); +dissect_lte_rrc_T_dl_1024QAM_Slot_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_extendedPollByte_r14_vals[] = { +static const value_string lte_rrc_T_dl_1024QAM_SubslotTA_1_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_extendedPollByte_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dl_1024QAM_SubslotTA_1_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74801,28 +91590,29 @@ dissect_lte_rrc_T_extendedPollByte_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t RLC_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_extendedPollByte_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedPollByte_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dl_1024QAM_SubslotTA_2_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RLC_Parameters_v1430(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_lte_rrc_RLC_Parameters_v1430, RLC_Parameters_v1430_sequence); +dissect_lte_rrc_T_dl_1024QAM_SubslotTA_2_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_csi_ReportingNP_r14_01_vals[] = { - { 0, "different" }, +static const value_string lte_rrc_T_simultaneousTx_differentTx_duration_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csi_ReportingNP_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_simultaneousTx_differentTx_duration_r15(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, 1, NULL, FALSE, 0, NULL); @@ -74830,14 +91620,14 @@ dissect_lte_rrc_T_csi_ReportingNP_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_csi_ReportingAdvanced_r14_01_vals[] = { - { 0, "different" }, +static const value_string lte_rrc_T_fourLayerTM3_TM4_r15_01_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csi_ReportingAdvanced_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_fourLayerTM3_TM4_r15_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, 1, NULL, FALSE, 0, NULL); @@ -74845,44 +91635,44 @@ dissect_lte_rrc_T_csi_ReportingAdvanced_r14_01(tvbuff_t *tvb _U_, int offset _U_ } -static const per_sequence_t MIMO_CA_ParametersPerBoBCPerTM_v1430_sequence[] = { - { &hf_lte_rrc_csi_ReportingNP_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingNP_r14_01 }, - { &hf_lte_rrc_csi_ReportingAdvanced_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingAdvanced_r14_01 }, +static const per_sequence_t CA_MIMO_ParametersDL_r15_sequence[] = { + { &hf_lte_rrc_supportedMIMO_CapabilityDL_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityDL_r10 }, + { &hf_lte_rrc_fourLayerTM3_TM4_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fourLayerTM3_TM4_r15_01 }, + { &hf_lte_rrc_intraBandContiguousCC_InfoList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CA_MIMO_ParametersDL_r15(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_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1430, MIMO_CA_ParametersPerBoBCPerTM_v1430_sequence); + ett_lte_rrc_CA_MIMO_ParametersDL_r15, CA_MIMO_ParametersDL_r15_sequence); return offset; } -static const per_sequence_t MIMO_CA_ParametersPerBoBC_v1430_sequence[] = { - { &hf_lte_rrc_parametersTM9_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1430 }, - { &hf_lte_rrc_parametersTM10_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1430 }, +static const per_sequence_t CA_MIMO_ParametersUL_r15_sequence[] = { + { &hf_lte_rrc_supportedMIMO_CapabilityUL_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityUL_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CA_MIMO_ParametersUL_r15(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_lte_rrc_MIMO_CA_ParametersPerBoBC_v1430, MIMO_CA_ParametersPerBoBC_v1430_sequence); + ett_lte_rrc_CA_MIMO_ParametersUL_r15, CA_MIMO_ParametersUL_r15_sequence); return offset; } -static const value_string lte_rrc_T_ul_256QAM_r14_vals[] = { +static const value_string lte_rrc_T_sTTI_FD_MIMO_Coexistence_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ul_256QAM_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sTTI_FD_MIMO_Coexistence(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, 1, NULL, FALSE, 0, NULL); @@ -74890,273 +91680,319 @@ dissect_lte_rrc_T_ul_256QAM_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } -static const value_string lte_rrc_T_ul_256QAM_perCC_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t DL_UL_CCs_r15_sequence[] = { + { &hf_lte_rrc_maxNumberDL_CCs_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, + { &hf_lte_rrc_maxNumberUL_CCs_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, + { NULL, 0, 0, NULL } }; +static int +dissect_lte_rrc_DL_UL_CCs_r15(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_lte_rrc_DL_UL_CCs_r15, DL_UL_CCs_r15_sequence); + + return offset; +} + + +static const per_sequence_t SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15_sequence_of[1] = { + { &hf_lte_rrc_combination_22_27_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_UL_CCs_r15 }, +}; static int -dissect_lte_rrc_T_ul_256QAM_perCC_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15(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_lte_rrc_SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15, SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15_sequence_of, + 1, 2, FALSE); return offset; } -static const per_sequence_t UL_256QAM_perCC_Info_r14_sequence[] = { - { &hf_lte_rrc_ul_256QAM_perCC_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_256QAM_perCC_r14 }, +static const per_sequence_t STTI_SupportedCombinations_r15_sequence[] = { + { &hf_lte_rrc_combination_22_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DL_UL_CCs_r15 }, + { &hf_lte_rrc_combination_77_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DL_UL_CCs_r15 }, + { &hf_lte_rrc_combination_27_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DL_UL_CCs_r15 }, + { &hf_lte_rrc_combination_22_27_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15 }, + { &hf_lte_rrc_combination_77_22_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15 }, + { &hf_lte_rrc_combination_77_27_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UL_256QAM_perCC_Info_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_STTI_SupportedCombinations_r15(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_lte_rrc_UL_256QAM_perCC_Info_r14, UL_256QAM_perCC_Info_r14_sequence); + ett_lte_rrc_STTI_SupportedCombinations_r15, STTI_SupportedCombinations_r15_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_r14_sequence_of[1] = { - { &hf_lte_rrc_ul_256QAM_perCC_InfoList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_256QAM_perCC_Info_r14 }, +static const value_string lte_rrc_T_sTTI_SupportedCSI_Proc_r15_vals[] = { + { 0, "n1" }, + { 1, "n3" }, + { 2, "n4" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_r14(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_lte_rrc_SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_r14, SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_r14_sequence_of, - 2, maxServCell_r13, FALSE); +dissect_lte_rrc_T_sTTI_SupportedCSI_Proc_r15(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_rf_RetuningTimeDL_r14_vals[] = { - { 0, "n0" }, - { 1, "n0dot5" }, - { 2, "n1" }, - { 3, "n1dot5" }, - { 4, "n2" }, - { 5, "n2dot5" }, - { 6, "n3" }, - { 7, "n3dot5" }, - { 8, "n4" }, - { 9, "n4dot5" }, - { 10, "n5" }, - { 11, "n5dot5" }, - { 12, "n6" }, - { 13, "n6dot5" }, - { 14, "n7" }, - { 15, "spare1" }, +static const value_string lte_rrc_T_ul_256QAM_Slot_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rf_RetuningTimeDL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_256QAM_Slot_r15(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, - 16, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_rf_RetuningTimeUL_r14_vals[] = { - { 0, "n0" }, - { 1, "n0dot5" }, - { 2, "n1" }, - { 3, "n1dot5" }, - { 4, "n2" }, - { 5, "n2dot5" }, - { 6, "n3" }, - { 7, "n3dot5" }, - { 8, "n4" }, - { 9, "n4dot5" }, - { 10, "n5" }, - { 11, "n5dot5" }, - { 12, "n6" }, - { 13, "n6dot5" }, - { 14, "n7" }, - { 15, "spare1" }, +static const value_string lte_rrc_T_ul_256QAM_Subslot_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rf_RetuningTimeUL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_256QAM_Subslot_r15(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, - 16, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_retuningInfo_sequence[] = { - { &hf_lte_rrc_rf_RetuningTimeDL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rf_RetuningTimeDL_r14 }, - { &hf_lte_rrc_rf_RetuningTimeUL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rf_RetuningTimeUL_r14 }, +static const per_sequence_t STTI_SPT_BandParameters_r15_sequence[] = { + { &hf_lte_rrc_dl_1024QAM_Slot_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dl_1024QAM_Slot_r15 }, + { &hf_lte_rrc_dl_1024QAM_SubslotTA_1_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dl_1024QAM_SubslotTA_1_r15 }, + { &hf_lte_rrc_dl_1024QAM_SubslotTA_2_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dl_1024QAM_SubslotTA_2_r15 }, + { &hf_lte_rrc_simultaneousTx_differentTx_duration_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_simultaneousTx_differentTx_duration_r15 }, + { &hf_lte_rrc_sTTI_CA_MIMO_ParametersDL_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CA_MIMO_ParametersDL_r15 }, + { &hf_lte_rrc_sTTI_CA_MIMO_ParametersUL_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_MIMO_ParametersUL_r15 }, + { &hf_lte_rrc_sTTI_FD_MIMO_Coexistence, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_sTTI_FD_MIMO_Coexistence }, + { &hf_lte_rrc_sTTI_MIMO_CA_ParametersPerBoBCs_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_r13 }, + { &hf_lte_rrc_sTTI_MIMO_CA_ParametersPerBoBCs_v1530, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_v1430 }, + { &hf_lte_rrc_sTTI_SupportedCombinations_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_STTI_SupportedCombinations_r15 }, + { &hf_lte_rrc_sTTI_SupportedCSI_Proc_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_sTTI_SupportedCSI_Proc_r15 }, + { &hf_lte_rrc_ul_256QAM_Slot_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_256QAM_Slot_r15 }, + { &hf_lte_rrc_ul_256QAM_Subslot_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_256QAM_Subslot_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_retuningInfo(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_STTI_SPT_BandParameters_r15(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_lte_rrc_T_retuningInfo, T_retuningInfo_sequence); + ett_lte_rrc_STTI_SPT_BandParameters_r15, STTI_SPT_BandParameters_r15_sequence); return offset; } -static const per_sequence_t RetuningTimeInfo_r14_sequence[] = { - { &hf_lte_rrc_retuningInfo, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_retuningInfo }, +static const per_sequence_t BandParameters_v1530_sequence[] = { + { &hf_lte_rrc_ue_TxAntennaSelection_SRS_1T4R_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_TxAntennaSelection_SRS_1T4R_r15 }, + { &hf_lte_rrc_ue_TxAntennaSelection_SRS_2T4R_2Pairs_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_2Pairs_r15 }, + { &hf_lte_rrc_ue_TxAntennaSelection_SRS_2T4R_3Pairs_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_3Pairs_r15 }, + { &hf_lte_rrc_dl_1024QAM_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dl_1024QAM_r15 }, + { &hf_lte_rrc_qcl_TypeC_Operation_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_qcl_TypeC_Operation_r15 }, + { &hf_lte_rrc_qcl_CRI_BasedCSI_Reporting_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_qcl_CRI_BasedCSI_Reporting_r15 }, + { &hf_lte_rrc_stti_SPT_BandParameters_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_STTI_SPT_BandParameters_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RetuningTimeInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandParameters_v1530(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_lte_rrc_RetuningTimeInfo_r14, RetuningTimeInfo_r14_sequence); + ett_lte_rrc_BandParameters_v1530, BandParameters_v1530_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14_sequence_of[1] = { - { &hf_lte_rrc_retuningTimeInfoBandList_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RetuningTimeInfo_r14 }, +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1530_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1530 }, }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1530(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14_sequence_of, + ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1530, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1530_sequence_of, 1, maxSimultaneousBands_r10, FALSE); return offset; } -static const per_sequence_t BandParameters_v1430_sequence[] = { - { &hf_lte_rrc_bandParametersDL_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_v1430 }, - { &hf_lte_rrc_ul_256QAM_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_256QAM_r14 }, - { &hf_lte_rrc_ul_256QAM_perCC_InfoList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_2_maxServCell_r13_OF_UL_256QAM_perCC_Info_r14 }, - { &hf_lte_rrc_retuningTimeInfoBandList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14 }, +static const per_sequence_t SPT_Parameters_r15_sequence[] = { + { &hf_lte_rrc_frameStructureType_SPT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_3 }, + { &hf_lte_rrc_maxNumberCCs_SPT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandParameters_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SPT_Parameters_r15(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_lte_rrc_BandParameters_v1430, BandParameters_v1430_sequence); + ett_lte_rrc_SPT_Parameters_r15, SPT_Parameters_r15_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430_sequence_of[1] = { - { &hf_lte_rrc_bandParameterList_v1430_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1430 }, +static const per_sequence_t BandCombinationParameters_v1530_sequence[] = { + { &hf_lte_rrc_bandParameterList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1530 }, + { &hf_lte_rrc_spt_Parameters_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SPT_Parameters_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_BandCombinationParameters_v1530(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_lte_rrc_BandCombinationParameters_v1530, BandCombinationParameters_v1530_sequence); return offset; } +static const per_sequence_t SupportedBandCombination_v1530_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1530 }, +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_1_maxBandComb_r13(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, - 1, maxBandComb_r13, FALSE, NULL, NULL); +dissect_lte_rrc_SupportedBandCombination_v1530(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_lte_rrc_SupportedBandCombination_v1530, SupportedBandCombination_v1530_sequence_of, + 1, maxBandComb_r10, FALSE); return offset; } -static const per_sequence_t BandCombinationParameters_v1430_sequence[] = { - { &hf_lte_rrc_bandParameterList_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1430 }, - { &hf_lte_rrc_v2x_SupportedTxBandCombListPerBC_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxBandComb_r13 }, - { &hf_lte_rrc_v2x_SupportedRxBandCombListPerBC_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_1_maxBandComb_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SupportedBandCombinationAdd_v1530_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1530 }, }; static int -dissect_lte_rrc_BandCombinationParameters_v1430(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_lte_rrc_BandCombinationParameters_v1430, BandCombinationParameters_v1430_sequence); +dissect_lte_rrc_SupportedBandCombinationAdd_v1530(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_lte_rrc_SupportedBandCombinationAdd_v1530, SupportedBandCombinationAdd_v1530_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const per_sequence_t SupportedBandCombination_v1430_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v1430_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1430 }, +static const per_sequence_t SupportedBandCombinationReduced_v1530_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationReduced_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1530 }, }; static int -dissect_lte_rrc_SupportedBandCombination_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandCombinationReduced_v1530(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_lte_rrc_SupportedBandCombination_v1430, SupportedBandCombination_v1430_sequence_of, - 1, maxBandComb_r10, FALSE); + ett_lte_rrc_SupportedBandCombinationReduced_v1530, SupportedBandCombinationReduced_v1530_sequence_of, + 1, maxBandComb_r13, FALSE); return offset; } -static const per_sequence_t SupportedBandCombinationAdd_v1430_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationAdd_v1430_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1430 }, +static const value_string lte_rrc_T_powerClass_14dBm_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationAdd_v1430(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_lte_rrc_SupportedBandCombinationAdd_v1430, SupportedBandCombinationAdd_v1430_sequence_of, - 1, maxBandComb_r11, FALSE); +dissect_lte_rrc_T_powerClass_14dBm_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandCombinationReduced_v1430_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationReduced_v1430_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1430 }, +static const per_sequence_t RF_Parameters_v1530_sequence[] = { + { &hf_lte_rrc_sTTI_SPT_Supported_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sTTI_SPT_Supported_r15 }, + { &hf_lte_rrc_supportedBandCombination_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1530 }, + { &hf_lte_rrc_supportedBandCombinationAdd_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1530 }, + { &hf_lte_rrc_supportedBandCombinationReduced_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1530 }, + { &hf_lte_rrc_powerClass_14dBm_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerClass_14dBm_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandCombinationReduced_v1430(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_lte_rrc_SupportedBandCombinationReduced_v1430, SupportedBandCombinationReduced_v1430_sequence_of, - 1, maxBandComb_r13, FALSE); +dissect_lte_rrc_RF_Parameters_v1530(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_lte_rrc_RF_Parameters_v1530, RF_Parameters_v1530_sequence); return offset; } -static const per_sequence_t T_eNB_RequestedParameters_v1430_sequence[] = { - { &hf_lte_rrc_requestedDiffFallbackCombList_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationList_r14 }, +static const value_string lte_rrc_T_supportedStandardDic_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_supportedStandardDic_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SupportedOperatorDic_r15_sequence[] = { + { &hf_lte_rrc_versionOfDictionary_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_associatedPLMN_ID_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PLMN_Identity }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_eNB_RequestedParameters_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedOperatorDic_r15(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_lte_rrc_T_eNB_RequestedParameters_v1430, T_eNB_RequestedParameters_v1430_sequence); + ett_lte_rrc_SupportedOperatorDic_r15, SupportedOperatorDic_r15_sequence); return offset; } -static const value_string lte_rrc_T_diffFallbackCombReport_r14_vals[] = { +static const per_sequence_t SupportedUDC_r15_sequence[] = { + { &hf_lte_rrc_supportedStandardDic_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedStandardDic_r15 }, + { &hf_lte_rrc_supportedOperatorDic_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedOperatorDic_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SupportedUDC_r15(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_lte_rrc_SupportedUDC_r15, SupportedUDC_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_pdcp_Duplication_r15_01_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_diffFallbackCombReport_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_pdcp_Duplication_r15_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, 1, NULL, FALSE, 0, NULL); @@ -75164,32 +92000,39 @@ dissect_lte_rrc_T_diffFallbackCombReport_r14(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t RF_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_supportedBandCombination_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1430 }, - { &hf_lte_rrc_supportedBandCombinationAdd_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1430 }, - { &hf_lte_rrc_supportedBandCombinationReduced_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1430 }, - { &hf_lte_rrc_eNB_RequestedParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eNB_RequestedParameters_v1430 }, - { &hf_lte_rrc_diffFallbackCombReport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_diffFallbackCombReport_r14 }, +static const per_sequence_t PDCP_Parameters_v1530_sequence[] = { + { &hf_lte_rrc_supportedUDC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedUDC_r15 }, + { &hf_lte_rrc_pdcp_Duplication_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pdcp_Duplication_r15_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PDCP_Parameters_v1530(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_lte_rrc_RF_Parameters_v1430, RF_Parameters_v1430_sequence); + ett_lte_rrc_PDCP_Parameters_v1530, PDCP_Parameters_v1530_sequence); return offset; } -static const value_string lte_rrc_T_crossCarrierSchedulingLAA_UL_r14_vals[] = { + +static int +dissect_lte_rrc_INTEGER_22_26(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 22U, 26U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_loggedMeasBT_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_crossCarrierSchedulingLAA_UL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_loggedMeasBT_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75197,14 +92040,14 @@ dissect_lte_rrc_T_crossCarrierSchedulingLAA_UL_r14(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_T_uplinkLAA_r14_vals[] = { +static const value_string lte_rrc_T_loggedMeasWLAN_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_uplinkLAA_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_loggedMeasWLAN_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75212,31 +92055,29 @@ dissect_lte_rrc_T_uplinkLAA_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } -static const value_string lte_rrc_T_twoStepSchedulingTimingInfo_r14_vals[] = { - { 0, "nPlus1" }, - { 1, "nPlus2" }, - { 2, "nPlus3" }, +static const value_string lte_rrc_T_immMeasBT_r15_vals[] = { + { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_twoStepSchedulingTimingInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_immMeasBT_r15(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_uss_BlindDecodingAdjustment_r14_vals[] = { +static const value_string lte_rrc_T_immMeasWLAN_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_uss_BlindDecodingAdjustment_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_immMeasWLAN_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75244,14 +92085,31 @@ dissect_lte_rrc_T_uss_BlindDecodingAdjustment_r14(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_T_uss_BlindDecodingReduction_r14_vals[] = { +static const per_sequence_t UE_BasedNetwPerfMeasParameters_v1530_sequence[] = { + { &hf_lte_rrc_loggedMeasBT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_loggedMeasBT_r15 }, + { &hf_lte_rrc_loggedMeasWLAN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_loggedMeasWLAN_r15 }, + { &hf_lte_rrc_immMeasBT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_immMeasBT_r15 }, + { &hf_lte_rrc_immMeasWLAN_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_immMeasWLAN_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_v1530(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_lte_rrc_UE_BasedNetwPerfMeasParameters_v1530, UE_BasedNetwPerfMeasParameters_v1530_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_flexibleUM_AM_Combinations_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_uss_BlindDecodingReduction_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_flexibleUM_AM_Combinations_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75259,14 +92117,14 @@ dissect_lte_rrc_T_uss_BlindDecodingReduction_r14(tvbuff_t *tvb _U_, int offset _ } -static const value_string lte_rrc_T_outOfSequenceGrantHandling_r14_vals[] = { +static const value_string lte_rrc_T_rlc_AM_Ooo_Delivery_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_outOfSequenceGrantHandling_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_rlc_AM_Ooo_Delivery_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75274,48 +92132,61 @@ dissect_lte_rrc_T_outOfSequenceGrantHandling_r14(tvbuff_t *tvb _U_, int offset _ } -static const per_sequence_t LAA_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_crossCarrierSchedulingLAA_UL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crossCarrierSchedulingLAA_UL_r14 }, - { &hf_lte_rrc_uplinkLAA_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_uplinkLAA_r14 }, - { &hf_lte_rrc_twoStepSchedulingTimingInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_twoStepSchedulingTimingInfo_r14 }, - { &hf_lte_rrc_uss_BlindDecodingAdjustment_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_uss_BlindDecodingAdjustment_r14 }, - { &hf_lte_rrc_uss_BlindDecodingReduction_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_uss_BlindDecodingReduction_r14 }, - { &hf_lte_rrc_outOfSequenceGrantHandling_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_outOfSequenceGrantHandling_r14 }, +static const value_string lte_rrc_T_rlc_UM_Ooo_Delivery_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rlc_UM_Ooo_Delivery_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t RLC_Parameters_v1530_sequence[] = { + { &hf_lte_rrc_flexibleUM_AM_Combinations_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_flexibleUM_AM_Combinations_r15 }, + { &hf_lte_rrc_rlc_AM_Ooo_Delivery_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlc_AM_Ooo_Delivery_r15 }, + { &hf_lte_rrc_rlc_UM_Ooo_Delivery_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlc_UM_Ooo_Delivery_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LAA_Parameters_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RLC_Parameters_v1530(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_lte_rrc_LAA_Parameters_v1430, LAA_Parameters_v1430_sequence); + ett_lte_rrc_RLC_Parameters_v1530, RLC_Parameters_v1530_sequence); return offset; } -static const value_string lte_rrc_T_lwa_HO_WithoutWT_Change_r14_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_slss_SupportedTxFreq_r15_vals[] = { + { 0, "single" }, + { 1, "multiple" }, { 0, NULL } }; static int -dissect_lte_rrc_T_lwa_HO_WithoutWT_Change_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_slss_SupportedTxFreq_r15(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_lwa_UL_r14_vals[] = { +static const value_string lte_rrc_T_sl_64QAM_Tx_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_lwa_UL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sl_64QAM_Tx_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75323,14 +92194,14 @@ dissect_lte_rrc_T_lwa_UL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const value_string lte_rrc_T_wlan_PeriodicMeas_r14_vals[] = { +static const value_string lte_rrc_T_sl_TxDiversity_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_wlan_PeriodicMeas_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sl_TxDiversity_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75338,14 +92209,29 @@ dissect_lte_rrc_T_wlan_PeriodicMeas_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const value_string lte_rrc_T_wlan_ReportAnyWLAN_r14_vals[] = { +static const per_sequence_t UE_CategorySL_r15_sequence[] = { + { &hf_lte_rrc_ue_CategorySL_C_TX_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_5 }, + { &hf_lte_rrc_ue_CategorySL_C_RX_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_4 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_CategorySL_r15(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_lte_rrc_UE_CategorySL_r15, UE_CategorySL_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_v2x_EnhancedHighReception_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_wlan_ReportAnyWLAN_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_v2x_EnhancedHighReception_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75353,42 +92239,74 @@ dissect_lte_rrc_T_wlan_ReportAnyWLAN_r14(tvbuff_t *tvb _U_, int offset _U_, asn1 } +static const per_sequence_t V2X_BandParameters_v1530_sequence[] = { + { &hf_lte_rrc_v2x_EnhancedHighReception_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_EnhancedHighReception_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_1_2048(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 2048U, NULL, FALSE); +dissect_lte_rrc_V2X_BandParameters_v1530(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_lte_rrc_V2X_BandParameters_v1530, V2X_BandParameters_v1530_sequence); return offset; } -static const per_sequence_t LWA_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_lwa_HO_WithoutWT_Change_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_HO_WithoutWT_Change_r14 }, - { &hf_lte_rrc_lwa_UL_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_UL_r14 }, - { &hf_lte_rrc_wlan_PeriodicMeas_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_PeriodicMeas_r14 }, - { &hf_lte_rrc_wlan_ReportAnyWLAN_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wlan_ReportAnyWLAN_r14 }, - { &hf_lte_rrc_wlan_SupportedDataRate_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_2048 }, +static const per_sequence_t V2X_BandCombinationParameters_v1530_sequence_of[1] = { + { &hf_lte_rrc_V2X_BandCombinationParameters_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandParameters_v1530 }, +}; + +static int +dissect_lte_rrc_V2X_BandCombinationParameters_v1530(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_lte_rrc_V2X_BandCombinationParameters_v1530, V2X_BandCombinationParameters_v1530_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); + + return offset; +} + + +static const per_sequence_t V2X_SupportedBandCombination_v1530_sequence_of[1] = { + { &hf_lte_rrc_V2X_SupportedBandCombination_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandCombinationParameters_v1530 }, +}; + +static int +dissect_lte_rrc_V2X_SupportedBandCombination_v1530(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_lte_rrc_V2X_SupportedBandCombination_v1530, V2X_SupportedBandCombination_v1530_sequence_of, + 1, maxBandComb_r13, FALSE); + + return offset; +} + + +static const per_sequence_t SL_Parameters_v1530_sequence[] = { + { &hf_lte_rrc_slss_SupportedTxFreq_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_slss_SupportedTxFreq_r15 }, + { &hf_lte_rrc_sl_64QAM_Tx_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sl_64QAM_Tx_r15 }, + { &hf_lte_rrc_sl_TxDiversity_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sl_TxDiversity_r15 }, + { &hf_lte_rrc_ue_CategorySL_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_CategorySL_r15 }, + { &hf_lte_rrc_v2x_SupportedBandCombinationList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_V2X_SupportedBandCombination_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LWA_Parameters_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SL_Parameters_v1530(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_lte_rrc_LWA_Parameters_v1430, LWA_Parameters_v1430_sequence); + ett_lte_rrc_SL_Parameters_v1530, SL_Parameters_v1530_sequence); return offset; } -static const value_string lte_rrc_T_lwip_Aggregation_DL_r14_vals[] = { +static const value_string lte_rrc_T_extendedNumberOfDRBs_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_lwip_Aggregation_DL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_extendedNumberOfDRBs_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75396,14 +92314,14 @@ dissect_lte_rrc_T_lwip_Aggregation_DL_r14(tvbuff_t *tvb _U_, int offset _U_, asn } -static const value_string lte_rrc_T_lwip_Aggregation_UL_r14_vals[] = { +static const value_string lte_rrc_T_reducedCP_Latency_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_lwip_Aggregation_UL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_reducedCP_Latency_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75411,29 +92329,29 @@ dissect_lte_rrc_T_lwip_Aggregation_UL_r14(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t LWIP_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_lwip_Aggregation_DL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwip_Aggregation_DL_r14 }, - { &hf_lte_rrc_lwip_Aggregation_UL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwip_Aggregation_UL_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_aul_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_LWIP_Parameters_v1430(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_lte_rrc_LWIP_Parameters_v1430, LWIP_Parameters_v1430_sequence); +dissect_lte_rrc_T_aul_r15(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_bwPrefInd_r14_vals[] = { +static const value_string lte_rrc_T_laa_PUSCH_Mode1_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_bwPrefInd_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_laa_PUSCH_Mode1_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75441,14 +92359,14 @@ dissect_lte_rrc_T_bwPrefInd_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } -static const value_string lte_rrc_T_rlm_ReportSupport_r14_vals[] = { +static const value_string lte_rrc_T_laa_PUSCH_Mode2_r15_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rlm_ReportSupport_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_laa_PUSCH_Mode2_r15(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, 1, NULL, FALSE, 0, NULL); @@ -75456,29 +92374,46 @@ dissect_lte_rrc_T_rlm_ReportSupport_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const per_sequence_t Other_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_bwPrefInd_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_bwPrefInd_r14 }, - { &hf_lte_rrc_rlm_ReportSupport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlm_ReportSupport_r14 }, +static const value_string lte_rrc_T_laa_PUSCH_Mode3_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_laa_PUSCH_Mode3_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t LAA_Parameters_v1530_sequence[] = { + { &hf_lte_rrc_aul_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_aul_r15 }, + { &hf_lte_rrc_laa_PUSCH_Mode1_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_laa_PUSCH_Mode1_r15 }, + { &hf_lte_rrc_laa_PUSCH_Mode2_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_laa_PUSCH_Mode2_r15 }, + { &hf_lte_rrc_laa_PUSCH_Mode3_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_laa_PUSCH_Mode3_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_Other_Parameters_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LAA_Parameters_v1530(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_lte_rrc_Other_Parameters_v1430, Other_Parameters_v1430_sequence); + ett_lte_rrc_LAA_Parameters_v1530, LAA_Parameters_v1530_sequence); return offset; } -static const value_string lte_rrc_T_delayBudgetReporting_r14_vals[] = { +static const value_string lte_rrc_T_reducedCP_Latency_r15_01_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_delayBudgetReporting_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_reducedCP_Latency_r15_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, 1, NULL, FALSE, 0, NULL); @@ -75486,523 +92421,653 @@ dissect_lte_rrc_T_delayBudgetReporting_r14(tvbuff_t *tvb _U_, int offset _U_, as } -static const value_string lte_rrc_T_pusch_Enhancements_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1530_sequence[] = { + { &hf_lte_rrc_neighCellSI_AcquisitionParameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellSI_AcquisitionParameters_v1530 }, + { &hf_lte_rrc_reducedCP_Latency_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedCP_Latency_r15_01 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_pusch_Enhancements_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1530(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1530, UE_EUTRA_CapabilityAddXDD_Mode_v1530_sequence); return offset; } -static const value_string lte_rrc_T_recommendedBitRate_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t T_nonCriticalExtension_78_sequence[] = { + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_recommendedBitRate_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_nonCriticalExtension_78(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_lte_rrc_T_nonCriticalExtension_78, T_nonCriticalExtension_78_sequence); + + return offset; +} + + +static const per_sequence_t UE_EUTRA_Capability_v1530_IEs_sequence[] = { + { &hf_lte_rrc_measParameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1530 }, + { &hf_lte_rrc_otherParameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Other_Parameters_v1530 }, + { &hf_lte_rrc_neighCellSI_AcquisitionParameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellSI_AcquisitionParameters_v1530 }, + { &hf_lte_rrc_mac_Parameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MAC_Parameters_v1530 }, + { &hf_lte_rrc_phyLayerParameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1530 }, + { &hf_lte_rrc_rf_Parameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1530 }, + { &hf_lte_rrc_pdcp_Parameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_Parameters_v1530 }, + { &hf_lte_rrc_ue_CategoryDL_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_22_26 }, + { &hf_lte_rrc_ue_BasedNetwPerfMeasParameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_v1530 }, + { &hf_lte_rrc_rlc_Parameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Parameters_v1530 }, + { &hf_lte_rrc_sl_Parameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Parameters_v1530 }, + { &hf_lte_rrc_extendedNumberOfDRBs_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_extendedNumberOfDRBs_r15 }, + { &hf_lte_rrc_reducedCP_Latency_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_reducedCP_Latency_r15 }, + { &hf_lte_rrc_laa_Parameters_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LAA_Parameters_v1530 }, + { &hf_lte_rrc_ue_CategoryUL_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_22_26 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1530 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1530 }, + { &hf_lte_rrc_nonCriticalExtension_269, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_78 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_EUTRA_Capability_v1530_IEs(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_lte_rrc_UE_EUTRA_Capability_v1530_IEs, UE_EUTRA_Capability_v1530_IEs_sequence); return offset; } -static const value_string lte_rrc_T_recommendedBitRateQuery_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1520_IEs_sequence[] = { + { &hf_lte_rrc_measParameters_v1520, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasParameters_v1520 }, + { &hf_lte_rrc_nonCriticalExtension_268, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1530_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_recommendedBitRateQuery_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1520_IEs(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_lte_rrc_UE_EUTRA_Capability_v1520_IEs, UE_EUTRA_Capability_v1520_IEs_sequence); return offset; } -static const per_sequence_t MMTEL_Parameters_r14_sequence[] = { - { &hf_lte_rrc_delayBudgetReporting_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_delayBudgetReporting_r14 }, - { &hf_lte_rrc_pusch_Enhancements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pusch_Enhancements_r14 }, - { &hf_lte_rrc_recommendedBitRate_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_recommendedBitRate_r14 }, - { &hf_lte_rrc_recommendedBitRateQuery_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_recommendedBitRateQuery_r14 }, +static const per_sequence_t UE_EUTRA_Capability_v1510_IEs_sequence[] = { + { &hf_lte_rrc_irat_ParametersNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersNR_r15 }, + { &hf_lte_rrc_featureSetsEUTRA_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FeatureSetsEUTRA_r15 }, + { &hf_lte_rrc_pdcp_ParametersNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_ParametersNR_r15 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1510, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1510 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1510, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1510 }, + { &hf_lte_rrc_nonCriticalExtension_267, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1520_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MMTEL_Parameters_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v1510_IEs(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_lte_rrc_MMTEL_Parameters_r14, MMTEL_Parameters_r14_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v1510_IEs, UE_EUTRA_Capability_v1510_IEs_sequence); return offset; } -static const value_string lte_rrc_T_makeBeforeBreak_r14_01_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1460_IEs_sequence[] = { + { &hf_lte_rrc_ue_CategoryDL_v1460, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_21 }, + { &hf_lte_rrc_otherParameters_v1460, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Other_Parameters_v1460 }, + { &hf_lte_rrc_nonCriticalExtension_266, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1510_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_makeBeforeBreak_r14_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1460_IEs(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_lte_rrc_UE_EUTRA_Capability_v1460_IEs, UE_EUTRA_Capability_v1460_IEs_sequence); return offset; } -static const value_string lte_rrc_T_rach_Less_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1450_IEs_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1450 }, + { &hf_lte_rrc_rf_Parameters_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1450 }, + { &hf_lte_rrc_otherParameters_v1450, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherParameters_v1450 }, + { &hf_lte_rrc_ue_CategoryDL_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_20 }, + { &hf_lte_rrc_nonCriticalExtension_265, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1460_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_rach_Less_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1450_IEs(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_lte_rrc_UE_EUTRA_Capability_v1450_IEs, UE_EUTRA_Capability_v1450_IEs_sequence); return offset; } -static const per_sequence_t MobilityParameters_r14_sequence[] = { - { &hf_lte_rrc_makeBeforeBreak_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_makeBeforeBreak_r14_01 }, - { &hf_lte_rrc_rach_Less_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rach_Less_r14 }, +static const per_sequence_t UE_EUTRA_Capability_v1440_IEs_sequence[] = { + { &hf_lte_rrc_lwa_Parameters_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LWA_Parameters_v1440 }, + { &hf_lte_rrc_mac_Parameters_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_Parameters_v1440 }, + { &hf_lte_rrc_nonCriticalExtension_264, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1450_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MobilityParameters_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v1440_IEs(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_lte_rrc_MobilityParameters_r14, MobilityParameters_r14_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v1440_IEs, UE_EUTRA_Capability_v1440_IEs_sequence); return offset; } -static const value_string lte_rrc_T_ce_SwitchWithoutHO_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1430_IEs_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhyLayerParameters_v1430 }, + { &hf_lte_rrc_ue_CategoryDL_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryDL_v1430 }, + { &hf_lte_rrc_ue_CategoryUL_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryUL_v1430 }, + { &hf_lte_rrc_ue_CategoryUL_v1430b, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryUL_v1430b }, + { &hf_lte_rrc_mac_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MAC_Parameters_v1430 }, + { &hf_lte_rrc_measParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1430 }, + { &hf_lte_rrc_pdcp_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_Parameters_v1430 }, + { &hf_lte_rrc_rlc_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLC_Parameters_v1430 }, + { &hf_lte_rrc_rf_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1430 }, + { &hf_lte_rrc_laa_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LAA_Parameters_v1430 }, + { &hf_lte_rrc_lwa_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWA_Parameters_v1430 }, + { &hf_lte_rrc_lwip_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWIP_Parameters_v1430 }, + { &hf_lte_rrc_otherParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Other_Parameters_v1430 }, + { &hf_lte_rrc_mmtel_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MMTEL_Parameters_r14 }, + { &hf_lte_rrc_mobilityParameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityParameters_r14 }, + { &hf_lte_rrc_ce_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CE_Parameters_v1430 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1430 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1430 }, + { &hf_lte_rrc_mbms_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_Parameters_v1430 }, + { &hf_lte_rrc_sl_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Parameters_v1430 }, + { &hf_lte_rrc_ue_BasedNetwPerfMeasParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_v1430 }, + { &hf_lte_rrc_highSpeedEnhParameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HighSpeedEnhParameters_r14 }, + { &hf_lte_rrc_nonCriticalExtension_263, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1440_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ce_SwitchWithoutHO_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1430_IEs(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_lte_rrc_UE_EUTRA_Capability_v1430_IEs, UE_EUTRA_Capability_v1430_IEs_sequence); return offset; } -static const per_sequence_t CE_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_ce_SwitchWithoutHO_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_SwitchWithoutHO_r14 }, +static const per_sequence_t UE_EUTRA_Capability_v1360_IEs_sequence[] = { + { &hf_lte_rrc_other_Parameters_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Other_Parameters_v1360 }, + { &hf_lte_rrc_nonCriticalExtension_262, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1430_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CE_Parameters_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v1360_IEs(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_lte_rrc_CE_Parameters_v1430, CE_Parameters_v1430_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v1360_IEs, UE_EUTRA_Capability_v1360_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1430_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1430 }, - { &hf_lte_rrc_mmtel_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MMTEL_Parameters_r14 }, +static const per_sequence_t UE_EUTRA_Capability_v1350_IEs_sequence[] = { + { &hf_lte_rrc_ue_CategoryDL_v1350, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryDL_v1350 }, + { &hf_lte_rrc_ue_CategoryUL_v1350, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryUL_v1350 }, + { &hf_lte_rrc_ce_Parameters_v1350, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CE_Parameters_v1350 }, + { &hf_lte_rrc_nonCriticalExtension_261, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1360_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v1350_IEs(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1430, UE_EUTRA_CapabilityAddXDD_Mode_v1430_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v1350_IEs, UE_EUTRA_Capability_v1350_IEs_sequence); return offset; } -static const value_string lte_rrc_T_fembmsDedicatedCell_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1340_IEs_sequence[] = { + { &hf_lte_rrc_ue_CategoryUL_v1340, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_15 }, + { &hf_lte_rrc_nonCriticalExtension_260, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1350_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_fembmsDedicatedCell_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1340_IEs(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_lte_rrc_UE_EUTRA_Capability_v1340_IEs, UE_EUTRA_Capability_v1340_IEs_sequence); return offset; } -static const value_string lte_rrc_T_fembmsMixedCell_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1330_IEs_sequence[] = { + { &hf_lte_rrc_ue_CategoryDL_v1330, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_18_19 }, + { &hf_lte_rrc_phyLayerParameters_v1330, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1330 }, + { &hf_lte_rrc_ue_CE_NeedULGaps_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CE_NeedULGaps_r13_01 }, + { &hf_lte_rrc_nonCriticalExtension_259, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1340_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_fembmsMixedCell_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1330_IEs(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_lte_rrc_UE_EUTRA_Capability_v1330_IEs, UE_EUTRA_Capability_v1330_IEs_sequence); return offset; } -static const value_string lte_rrc_T_subcarrierSpacingMBMS_khz7dot5_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1320_IEs_sequence[] = { + { &hf_lte_rrc_ce_Parameters_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CE_Parameters_v1320 }, + { &hf_lte_rrc_phyLayerParameters_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1320 }, + { &hf_lte_rrc_rf_Parameters_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1320 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1320 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1320 }, + { &hf_lte_rrc_nonCriticalExtension_258, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1330_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_subcarrierSpacingMBMS_khz7dot5_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1320_IEs(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_lte_rrc_UE_EUTRA_Capability_v1320_IEs, UE_EUTRA_Capability_v1320_IEs_sequence); return offset; } -static const value_string lte_rrc_T_subcarrierSpacingMBMS_khz1dot25_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1310_IEs_sequence[] = { + { &hf_lte_rrc_ue_CategoryDL_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryDL_v1310 }, + { &hf_lte_rrc_ue_CategoryUL_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryUL_v1310 }, + { &hf_lte_rrc_pdcp_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCP_Parameters_v1310 }, + { &hf_lte_rrc_rlc_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLC_Parameters_v1310 }, + { &hf_lte_rrc_mac_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MAC_Parameters_v1310 }, + { &hf_lte_rrc_phyLayerParameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1310 }, + { &hf_lte_rrc_rf_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1310 }, + { &hf_lte_rrc_measParameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1310 }, + { &hf_lte_rrc_dc_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DC_Parameters_v1310 }, + { &hf_lte_rrc_sl_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Parameters_v1310 }, + { &hf_lte_rrc_scptm_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTM_Parameters_r13 }, + { &hf_lte_rrc_ce_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CE_Parameters_r13 }, + { &hf_lte_rrc_interRAT_ParametersWLAN_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IRAT_ParametersWLAN_r13 }, + { &hf_lte_rrc_laa_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LAA_Parameters_r13 }, + { &hf_lte_rrc_lwa_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWA_Parameters_r13 }, + { &hf_lte_rrc_wlan_IW_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_IW_Parameters_v1310 }, + { &hf_lte_rrc_lwip_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LWIP_Parameters_r13 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1310 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1310 }, + { &hf_lte_rrc_nonCriticalExtension_257, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1320_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_subcarrierSpacingMBMS_khz1dot25_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1310_IEs(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_lte_rrc_UE_EUTRA_Capability_v1310_IEs, UE_EUTRA_Capability_v1310_IEs_sequence); return offset; } -static const per_sequence_t MBMS_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_fembmsDedicatedCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fembmsDedicatedCell_r14 }, - { &hf_lte_rrc_fembmsMixedCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fembmsMixedCell_r14 }, - { &hf_lte_rrc_subcarrierSpacingMBMS_khz7dot5_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_subcarrierSpacingMBMS_khz7dot5_r14 }, - { &hf_lte_rrc_subcarrierSpacingMBMS_khz1dot25_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_subcarrierSpacingMBMS_khz1dot25_r14 }, +static const per_sequence_t UE_EUTRA_Capability_v1280_IEs_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1280, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1280 }, + { &hf_lte_rrc_nonCriticalExtension_256, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1310_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMS_Parameters_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v1280_IEs(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_lte_rrc_MBMS_Parameters_v1430, MBMS_Parameters_v1430_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v1280_IEs, UE_EUTRA_Capability_v1280_IEs_sequence); return offset; } -static const value_string lte_rrc_T_zoneBasedPoolSelection_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1270_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1270 }, + { &hf_lte_rrc_nonCriticalExtension_255, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1280_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_zoneBasedPoolSelection_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1270_IEs(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_lte_rrc_UE_EUTRA_Capability_v1270_IEs, UE_EUTRA_Capability_v1270_IEs_sequence); return offset; } -static const value_string lte_rrc_T_ue_AutonomousWithFullSensing_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1260_IEs_sequence[] = { + { &hf_lte_rrc_ue_CategoryDL_v1260, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_15_16 }, + { &hf_lte_rrc_nonCriticalExtension_254, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1270_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ue_AutonomousWithFullSensing_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1260_IEs(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_lte_rrc_UE_EUTRA_Capability_v1260_IEs, UE_EUTRA_Capability_v1260_IEs_sequence); return offset; } -static const value_string lte_rrc_T_ue_AutonomousWithPartialSensing_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1250_IEs_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1250 }, + { &hf_lte_rrc_rf_Parameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1250 }, + { &hf_lte_rrc_rlc_Parameters_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Parameters_r12 }, + { &hf_lte_rrc_ue_BasedNetwPerfMeasParameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_v1250 }, + { &hf_lte_rrc_ue_CategoryDL_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_14 }, + { &hf_lte_rrc_ue_CategoryUL_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_13 }, + { &hf_lte_rrc_wlan_IW_Parameters_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_IW_Parameters_r12 }, + { &hf_lte_rrc_measParameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1250 }, + { &hf_lte_rrc_dc_Parameters_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DC_Parameters_r12 }, + { &hf_lte_rrc_mbms_Parameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_Parameters_v1250 }, + { &hf_lte_rrc_mac_Parameters_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MAC_Parameters_r12 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1250 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1250 }, + { &hf_lte_rrc_sl_Parameters_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Parameters_r12 }, + { &hf_lte_rrc_nonCriticalExtension_253, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1260_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ue_AutonomousWithPartialSensing_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1250_IEs(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_lte_rrc_UE_EUTRA_Capability_v1250_IEs, UE_EUTRA_Capability_v1250_IEs_sequence); return offset; } -static const value_string lte_rrc_T_sl_CongestionControl_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v11a0_IEs_sequence[] = { + { &hf_lte_rrc_ue_Category_v11a0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_11_12 }, + { &hf_lte_rrc_measParameters_v11a0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v11a0 }, + { &hf_lte_rrc_nonCriticalExtension_252, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1250_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_sl_CongestionControl_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v11a0_IEs(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_lte_rrc_UE_EUTRA_Capability_v11a0_IEs, UE_EUTRA_Capability_v11a0_IEs_sequence); return offset; } -static const value_string lte_rrc_T_v2x_TxWithShortResvInterval_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1180_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v1180, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1180 }, + { &hf_lte_rrc_mbms_Parameters_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_Parameters_r11 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1180, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1180 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1180, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1180 }, + { &hf_lte_rrc_nonCriticalExtension_251, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v11a0_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_v2x_TxWithShortResvInterval_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1180_IEs(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_lte_rrc_UE_EUTRA_Capability_v1180_IEs, UE_EUTRA_Capability_v1180_IEs_sequence); return offset; } -static const value_string lte_rrc_T_v2x_nonAdjacentPSCCH_PSSCH_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1170_IEs_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v1170, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1170 }, + { &hf_lte_rrc_ue_Category_v1170, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_9_10 }, + { &hf_lte_rrc_nonCriticalExtension_250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1180_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_v2x_nonAdjacentPSCCH_PSSCH_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1170_IEs(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_lte_rrc_UE_EUTRA_Capability_v1170_IEs, UE_EUTRA_Capability_v1170_IEs_sequence); return offset; } -static const value_string lte_rrc_T_slss_TxRx_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1130_IEs_sequence[] = { + { &hf_lte_rrc_pdcp_Parameters_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCP_Parameters_v1130 }, + { &hf_lte_rrc_phyLayerParameters_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1130 }, + { &hf_lte_rrc_rf_Parameters_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RF_Parameters_v1130 }, + { &hf_lte_rrc_measParameters_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasParameters_v1130 }, + { &hf_lte_rrc_interRAT_ParametersCDMA2000_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IRAT_ParametersCDMA2000_v1130 }, + { &hf_lte_rrc_otherParameters_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Other_Parameters_r11 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1130 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1130 }, + { &hf_lte_rrc_nonCriticalExtension_249, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1170_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_slss_TxRx_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1130_IEs(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_lte_rrc_UE_EUTRA_Capability_v1130_IEs, UE_EUTRA_Capability_v1130_IEs_sequence); return offset; } -static const value_string lte_rrc_V2X_BandwidthClass_r14_vals[] = { - { 0, "a" }, - { 1, "b" }, - { 2, "c" }, - { 3, "d" }, - { 4, "e" }, - { 5, "f" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1090_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1090 }, + { &hf_lte_rrc_nonCriticalExtension_248, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1130_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_V2X_BandwidthClass_r14(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, - 6, NULL, TRUE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1090_IEs(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_lte_rrc_UE_EUTRA_Capability_v1090_IEs, UE_EUTRA_Capability_v1090_IEs_sequence); return offset; } -static const per_sequence_t V2X_BandwidthClassSL_r14_sequence_of[1] = { - { &hf_lte_rrc_V2X_BandwidthClassSL_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandwidthClass_r14 }, +static const per_sequence_t UE_EUTRA_Capability_v1060_IEs_sequence[] = { + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1060, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1060, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060 }, + { &hf_lte_rrc_rf_Parameters_v1060, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1060 }, + { &hf_lte_rrc_nonCriticalExtension_247, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1090_IEs }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_V2X_BandwidthClassSL_r14(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_lte_rrc_V2X_BandwidthClassSL_r14, V2X_BandwidthClassSL_r14_sequence_of, - 1, maxBandwidthClass_r10, FALSE); +dissect_lte_rrc_UE_EUTRA_Capability_v1060_IEs(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_lte_rrc_UE_EUTRA_Capability_v1060_IEs, UE_EUTRA_Capability_v1060_IEs_sequence); return offset; } -static const value_string lte_rrc_T_v2x_eNB_Scheduled_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v1020_IEs_sequence[] = { + { &hf_lte_rrc_ue_Category_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_6_8 }, + { &hf_lte_rrc_phyLayerParameters_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1020 }, + { &hf_lte_rrc_rf_Parameters_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1020 }, + { &hf_lte_rrc_measParameters_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1020 }, + { &hf_lte_rrc_featureGroupIndRel10_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndRel10_r10 }, + { &hf_lte_rrc_interRAT_ParametersCDMA2000_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v1020 }, + { &hf_lte_rrc_ue_BasedNetwPerfMeasParameters_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_r10 }, + { &hf_lte_rrc_interRAT_ParametersUTRA_TDD_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_TDD_v1020 }, + { &hf_lte_rrc_nonCriticalExtension_246, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1060_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_v2x_eNB_Scheduled_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v1020_IEs(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_lte_rrc_UE_EUTRA_Capability_v1020_IEs, UE_EUTRA_Capability_v1020_IEs_sequence); return offset; } -static const value_string lte_rrc_T_v2x_HighPower_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_v940_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_11 }, + { &hf_lte_rrc_nonCriticalExtension_245, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1020_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_v2x_HighPower_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability_v940_IEs(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_lte_rrc_UE_EUTRA_Capability_v940_IEs, UE_EUTRA_Capability_v940_IEs_sequence); return offset; } -static const per_sequence_t BandParametersTxSL_r14_sequence[] = { - { &hf_lte_rrc_v2x_BandwidthClassTxSL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandwidthClassSL_r14 }, - { &hf_lte_rrc_v2x_eNB_Scheduled_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_eNB_Scheduled_r14 }, - { &hf_lte_rrc_v2x_HighPower_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_HighPower_r14 }, +static const per_sequence_t UE_EUTRA_Capability_v920_IEs_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v920, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhyLayerParameters_v920 }, + { &hf_lte_rrc_interRAT_ParametersGERAN_v920, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IRAT_ParametersGERAN_v920 }, + { &hf_lte_rrc_interRAT_ParametersUTRA_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_v920 }, + { &hf_lte_rrc_interRAT_ParametersCDMA2000_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v920 }, + { &hf_lte_rrc_deviceType_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deviceType_r9 }, + { &hf_lte_rrc_csg_ProximityIndicationParameters_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSG_ProximityIndicationParameters_r9 }, + { &hf_lte_rrc_neighCellSI_AcquisitionParameters_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellSI_AcquisitionParameters_r9 }, + { &hf_lte_rrc_son_Parameters_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SON_Parameters_r9 }, + { &hf_lte_rrc_nonCriticalExtension_244, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v940_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandParametersTxSL_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v920_IEs(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_lte_rrc_BandParametersTxSL_r14, BandParametersTxSL_r14_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v920_IEs, UE_EUTRA_Capability_v920_IEs_sequence); return offset; } -static const value_string lte_rrc_T_v2x_HighReception_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_Capability_sequence[] = { + { &hf_lte_rrc_accessStratumRelease, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AccessStratumRelease }, + { &hf_lte_rrc_ue_Category , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_5 }, + { &hf_lte_rrc_pdcp_Parameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCP_Parameters }, + { &hf_lte_rrc_phyLayerParameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhyLayerParameters }, + { &hf_lte_rrc_rf_Parameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RF_Parameters }, + { &hf_lte_rrc_measParameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measParameters }, + { &hf_lte_rrc_featureGroupIndicators, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndicators }, + { &hf_lte_rrc_interRAT_Parameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_interRAT_Parameters }, + { &hf_lte_rrc_nonCriticalExtension_225, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v920_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_v2x_HighReception_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_Capability(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_lte_rrc_UE_EUTRA_Capability, UE_EUTRA_Capability_sequence); return offset; } -static const per_sequence_t BandParametersRxSL_r14_sequence[] = { - { &hf_lte_rrc_v2x_BandwidthClassRxSL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandwidthClassSL_r14 }, - { &hf_lte_rrc_v2x_HighReception_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_HighReception_r14 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_BandParametersRxSL_r14(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_lte_rrc_BandParametersRxSL_r14, BandParametersRxSL_r14_sequence); +dissect_lte_rrc_T_featureGroupIndRel9Add_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *featureGroupIndRel9Add_tvb=NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 32, 32, FALSE, &featureGroupIndRel9Add_tvb, NULL); + + if(featureGroupIndRel9Add_tvb){ + /* Dissect featureGroupIndRel9Add-r9 */ + dissect_lte_rrc_featureGroupIndRel9Add(featureGroupIndRel9Add_tvb, actx); + } + return offset; } -static const per_sequence_t V2X_BandParameters_r14_sequence[] = { - { &hf_lte_rrc_v2x_FreqBandEUTRA_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_r11 }, - { &hf_lte_rrc_bandParametersTxSL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersTxSL_r14 }, - { &hf_lte_rrc_bandParametersRxSL_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BandParametersRxSL_r14 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_V2X_BandParameters_r14(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_lte_rrc_V2X_BandParameters_r14, V2X_BandParameters_r14_sequence); +dissect_lte_rrc_T_featureGroupIndicators_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *featureGroupIndicators_tvb=NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 32, 32, FALSE, &featureGroupIndicators_tvb, NULL); + + if(featureGroupIndicators_tvb){ + /* Dissect featureGroupIndicators-r9 */ + dissect_lte_rrc_featureGroupIndicators(featureGroupIndicators_tvb, actx); + } + return offset; } -static const per_sequence_t V2X_BandCombinationParameters_r14_sequence_of[1] = { - { &hf_lte_rrc_V2X_BandCombinationParameters_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandParameters_r14 }, -}; static int -dissect_lte_rrc_V2X_BandCombinationParameters_r14(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_lte_rrc_V2X_BandCombinationParameters_r14, V2X_BandCombinationParameters_r14_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_T_featureGroupIndRel9Add_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *featureGroupIndRel9Add_tvb=NULL; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 32, 32, FALSE, &featureGroupIndRel9Add_tvb, NULL); + + if(featureGroupIndRel9Add_tvb){ + /* Dissect featureGroupIndRel9Add-r9 */ + dissect_lte_rrc_featureGroupIndRel9Add(featureGroupIndRel9Add_tvb, actx); + } + return offset; } -static const per_sequence_t V2X_SupportedBandCombination_r14_sequence_of[1] = { - { &hf_lte_rrc_V2X_SupportedBandCombination_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_V2X_BandCombinationParameters_r14 }, +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_r9_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters }, + { &hf_lte_rrc_featureGroupIndicators_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndicators_r9 }, + { &hf_lte_rrc_featureGroupIndRel9Add_r9_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndRel9Add_r9_01 }, + { &hf_lte_rrc_interRAT_ParametersGERAN_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersGERAN }, + { &hf_lte_rrc_interRAT_ParametersUTRA_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_v920 }, + { &hf_lte_rrc_interRAT_ParametersCDMA2000_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v920 }, + { &hf_lte_rrc_neighCellSI_AcquisitionParameters_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellSI_AcquisitionParameters_r9 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_V2X_SupportedBandCombination_r14(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_lte_rrc_V2X_SupportedBandCombination_r14, V2X_SupportedBandCombination_r14_sequence_of, - 1, maxBandComb_r13, FALSE); +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_r9(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_r9, UE_EUTRA_CapabilityAddXDD_Mode_r9_sequence); return offset; } -static const per_sequence_t SL_Parameters_v1430_sequence[] = { - { &hf_lte_rrc_zoneBasedPoolSelection_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_zoneBasedPoolSelection_r14 }, - { &hf_lte_rrc_ue_AutonomousWithFullSensing_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_AutonomousWithFullSensing_r14 }, - { &hf_lte_rrc_ue_AutonomousWithPartialSensing_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_AutonomousWithPartialSensing_r14 }, - { &hf_lte_rrc_sl_CongestionControl_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sl_CongestionControl_r14 }, - { &hf_lte_rrc_v2x_TxWithShortResvInterval_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_TxWithShortResvInterval_r14 }, - { &hf_lte_rrc_v2x_numberTxRxTiming_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_16 }, - { &hf_lte_rrc_v2x_nonAdjacentPSCCH_PSSCH_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_v2x_nonAdjacentPSCCH_PSSCH_r14 }, - { &hf_lte_rrc_slss_TxRx_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_slss_TxRx_r14 }, - { &hf_lte_rrc_v2x_SupportedBandCombinationList_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_V2X_SupportedBandCombination_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_voiceOverPS_HS_UTRA_FDD_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SL_Parameters_v1430(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_lte_rrc_SL_Parameters_v1430, SL_Parameters_v1430_sequence); +dissect_lte_rrc_T_voiceOverPS_HS_UTRA_FDD_r9(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_locationReport_r14_vals[] = { +static const value_string lte_rrc_T_voiceOverPS_HS_UTRA_TDD128_r9_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_locationReport_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_voiceOverPS_HS_UTRA_TDD128_r9(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, 1, NULL, FALSE, 0, NULL); @@ -76010,28 +93075,29 @@ dissect_lte_rrc_T_locationReport_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } -static const per_sequence_t UE_BasedNetwPerfMeasParameters_v1430_sequence[] = { - { &hf_lte_rrc_locationReport_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_locationReport_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_srvcc_FromUTRA_FDD_ToUTRA_FDD_r9_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_v1430(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_lte_rrc_UE_BasedNetwPerfMeasParameters_v1430, UE_BasedNetwPerfMeasParameters_v1430_sequence); +dissect_lte_rrc_T_srvcc_FromUTRA_FDD_ToUTRA_FDD_r9(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_measurementEnhancements_r14_vals[] = { +static const value_string lte_rrc_T_srvcc_FromUTRA_FDD_ToGERAN_r9_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_measurementEnhancements_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_srvcc_FromUTRA_FDD_ToGERAN_r9(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, 1, NULL, FALSE, 0, NULL); @@ -76039,14 +93105,14 @@ dissect_lte_rrc_T_measurementEnhancements_r14(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_demodulationEnhancements_r14_vals[] = { +static const value_string lte_rrc_T_srvcc_FromUTRA_TDD128_ToUTRA_TDD128_r9_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_demodulationEnhancements_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_srvcc_FromUTRA_TDD128_ToUTRA_TDD128_r9(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, 1, NULL, FALSE, 0, NULL); @@ -76054,14 +93120,14 @@ dissect_lte_rrc_T_demodulationEnhancements_r14(tvbuff_t *tvb _U_, int offset _U_ } -static const value_string lte_rrc_T_prach_Enhancements_r14_vals[] = { +static const value_string lte_rrc_T_srvcc_FromUTRA_TDD128_ToGERAN_r9_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_prach_Enhancements_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_srvcc_FromUTRA_TDD128_ToGERAN_r9(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, 1, NULL, FALSE, 0, NULL); @@ -76069,30 +93135,33 @@ dissect_lte_rrc_T_prach_Enhancements_r14(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const per_sequence_t HighSpeedEnhParameters_r14_sequence[] = { - { &hf_lte_rrc_measurementEnhancements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measurementEnhancements_r14 }, - { &hf_lte_rrc_demodulationEnhancements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_demodulationEnhancements_r14 }, - { &hf_lte_rrc_prach_Enhancements_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_prach_Enhancements_r14 }, +static const per_sequence_t IRAT_ParametersUTRA_v9c0_sequence[] = { + { &hf_lte_rrc_voiceOverPS_HS_UTRA_FDD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_voiceOverPS_HS_UTRA_FDD_r9 }, + { &hf_lte_rrc_voiceOverPS_HS_UTRA_TDD128_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_voiceOverPS_HS_UTRA_TDD128_r9 }, + { &hf_lte_rrc_srvcc_FromUTRA_FDD_ToUTRA_FDD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srvcc_FromUTRA_FDD_ToUTRA_FDD_r9 }, + { &hf_lte_rrc_srvcc_FromUTRA_FDD_ToGERAN_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srvcc_FromUTRA_FDD_ToGERAN_r9 }, + { &hf_lte_rrc_srvcc_FromUTRA_TDD128_ToUTRA_TDD128_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srvcc_FromUTRA_TDD128_ToUTRA_TDD128_r9 }, + { &hf_lte_rrc_srvcc_FromUTRA_TDD128_ToGERAN_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srvcc_FromUTRA_TDD128_ToGERAN_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HighSpeedEnhParameters_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_IRAT_ParametersUTRA_v9c0(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_lte_rrc_HighSpeedEnhParameters_r14, HighSpeedEnhParameters_r14_sequence); + ett_lte_rrc_IRAT_ParametersUTRA_v9c0, IRAT_ParametersUTRA_v9c0_sequence); return offset; } -static const value_string lte_rrc_T_lwa_RLC_UM_r14_vals[] = { +static const value_string lte_rrc_T_tm5_FDD_r9_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_lwa_RLC_UM_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tm5_FDD_r9(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, 1, NULL, FALSE, 0, NULL); @@ -76100,28 +93169,14 @@ dissect_lte_rrc_T_lwa_RLC_UM_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } -static const per_sequence_t LWA_Parameters_v1440_sequence[] = { - { &hf_lte_rrc_lwa_RLC_UM_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lwa_RLC_UM_r14 }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_LWA_Parameters_v1440(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_lte_rrc_LWA_Parameters_v1440, LWA_Parameters_v1440_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_rai_Support_r14_vals[] = { +static const value_string lte_rrc_T_tm5_TDD_r9_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rai_Support_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tm5_TDD_r9(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, 1, NULL, FALSE, 0, NULL); @@ -76129,73 +93184,71 @@ dissect_lte_rrc_T_rai_Support_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t MAC_Parameters_v1440_sequence[] = { - { &hf_lte_rrc_rai_Support_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rai_Support_r14 }, +static const per_sequence_t PhyLayerParameters_v9d0_sequence[] = { + { &hf_lte_rrc_tm5_FDD_r9 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm5_FDD_r9 }, + { &hf_lte_rrc_tm5_TDD_r9 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm5_TDD_r9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MAC_Parameters_v1440(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhyLayerParameters_v9d0(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_lte_rrc_MAC_Parameters_v1440, MAC_Parameters_v1440_sequence); + ett_lte_rrc_PhyLayerParameters_v9d0, PhyLayerParameters_v9d0_sequence); return offset; } -static const value_string lte_rrc_T_ce_SRS_EnhancementWithoutComb4_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SupportedBandEUTRA_v9e0_sequence[] = { + { &hf_lte_rrc_bandEUTRA_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_v9e0 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_ce_SRS_EnhancementWithoutComb4_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandEUTRA_v9e0(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_lte_rrc_SupportedBandEUTRA_v9e0, SupportedBandEUTRA_v9e0_sequence); return offset; } -static const value_string lte_rrc_T_crs_LessDwPTS_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t SupportedBandListEUTRA_v9e0_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandListEUTRA_v9e0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandEUTRA_v9e0 }, }; - static int -dissect_lte_rrc_T_crs_LessDwPTS_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandListEUTRA_v9e0(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_lte_rrc_SupportedBandListEUTRA_v9e0, SupportedBandListEUTRA_v9e0_sequence_of, + 1, maxBands, FALSE); return offset; } -static const per_sequence_t PhyLayerParameters_v1450_sequence[] = { - { &hf_lte_rrc_ce_SRS_EnhancementWithoutComb4_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ce_SRS_EnhancementWithoutComb4_r14 }, - { &hf_lte_rrc_crs_LessDwPTS_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_crs_LessDwPTS_r14 }, +static const per_sequence_t RF_Parameters_v9e0_sequence[] = { + { &hf_lte_rrc_supportedBandListEUTRA_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListEUTRA_v9e0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhyLayerParameters_v1450(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v9e0(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_lte_rrc_PhyLayerParameters_v1450, PhyLayerParameters_v1450_sequence); + ett_lte_rrc_RF_Parameters_v9e0, RF_Parameters_v9e0_sequence); return offset; } -static const value_string lte_rrc_T_must_TM234_UpTo2Tx_r14_vals[] = { +static const value_string lte_rrc_T_mfbi_UTRA_r9_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_must_TM234_UpTo2Tx_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mfbi_UTRA_r9(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, 1, NULL, FALSE, 0, NULL); @@ -76203,59 +93256,91 @@ dissect_lte_rrc_T_must_TM234_UpTo2Tx_r14(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_must_TM89_UpToOneInterferingLayer_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t IRAT_ParametersUTRA_v9h0_sequence[] = { + { &hf_lte_rrc_mfbi_UTRA_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mfbi_UTRA_r9 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_must_TM89_UpToOneInterferingLayer_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_IRAT_ParametersUTRA_v9h0(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_lte_rrc_IRAT_ParametersUTRA_v9h0, IRAT_ParametersUTRA_v9h0_sequence); return offset; } -static const value_string lte_rrc_T_must_TM10_UpToOneInterferingLayer_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_must_TM10_UpToOneInterferingLayer_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_modifiedMPR_Behavior_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + tvbuff_t *modifiedMPR_Behavior_r10_tvb=NULL; + proto_tree *subtree; + offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, + 32, 32, FALSE, &modifiedMPR_Behavior_r10_tvb, NULL); + + if (modifiedMPR_Behavior_r10_tvb) { + subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_modifiedMPR_Behavior_r10); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_0, modifiedMPR_Behavior_r10_tvb, 0, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_1, modifiedMPR_Behavior_r10_tvb, 1, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_2, modifiedMPR_Behavior_r10_tvb, 2, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_3, modifiedMPR_Behavior_r10_tvb, 3, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_4, modifiedMPR_Behavior_r10_tvb, 4, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_5, modifiedMPR_Behavior_r10_tvb, 5, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_6, modifiedMPR_Behavior_r10_tvb, 6, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_7, modifiedMPR_Behavior_r10_tvb, 7, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_8, modifiedMPR_Behavior_r10_tvb, 8, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_9, modifiedMPR_Behavior_r10_tvb, 9, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_10, modifiedMPR_Behavior_r10_tvb, 10, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_11, modifiedMPR_Behavior_r10_tvb, 11, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_12, modifiedMPR_Behavior_r10_tvb, 12, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_13, modifiedMPR_Behavior_r10_tvb, 13, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_14, modifiedMPR_Behavior_r10_tvb, 14, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_15, modifiedMPR_Behavior_r10_tvb, 15, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_16, modifiedMPR_Behavior_r10_tvb, 16, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_17, modifiedMPR_Behavior_r10_tvb, 17, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_18, modifiedMPR_Behavior_r10_tvb, 18, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_19, modifiedMPR_Behavior_r10_tvb, 19, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_20, modifiedMPR_Behavior_r10_tvb, 20, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_21, modifiedMPR_Behavior_r10_tvb, 21, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_22, modifiedMPR_Behavior_r10_tvb, 22, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_23, modifiedMPR_Behavior_r10_tvb, 23, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_24, modifiedMPR_Behavior_r10_tvb, 24, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_25, modifiedMPR_Behavior_r10_tvb, 25, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_26, modifiedMPR_Behavior_r10_tvb, 26, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_27, modifiedMPR_Behavior_r10_tvb, 27, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_28, modifiedMPR_Behavior_r10_tvb, 28, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_29, modifiedMPR_Behavior_r10_tvb, 29, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_30, modifiedMPR_Behavior_r10_tvb, 30, 1, ENC_BIG_ENDIAN); + proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_31, modifiedMPR_Behavior_r10_tvb, 31, 1, ENC_BIG_ENDIAN); + } + return offset; } -static const value_string lte_rrc_T_must_TM89_UpToThreeInterferingLayers_r14_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t RF_Parameters_v10f0_sequence[] = { + { &hf_lte_rrc_modifiedMPR_Behavior_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_modifiedMPR_Behavior_r10 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_must_TM89_UpToThreeInterferingLayers_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RF_Parameters_v10f0(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_lte_rrc_RF_Parameters_v10f0, RF_Parameters_v10f0_sequence); return offset; } -static const value_string lte_rrc_T_must_TM10_UpToThreeInterferingLayers_r14_vals[] = { +static const value_string lte_rrc_T_fourLayerTM3_TM4_r10_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_must_TM10_UpToThreeInterferingLayers_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_fourLayerTM3_TM4_r10(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, 1, NULL, FALSE, 0, NULL); @@ -76263,132 +93348,150 @@ dissect_lte_rrc_T_must_TM10_UpToThreeInterferingLayers_r14(tvbuff_t *tvb _U_, in } -static const per_sequence_t MUST_Parameters_r14_sequence[] = { - { &hf_lte_rrc_must_TM234_UpTo2Tx_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_TM234_UpTo2Tx_r14 }, - { &hf_lte_rrc_must_TM89_UpToOneInterferingLayer_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_TM89_UpToOneInterferingLayer_r14 }, - { &hf_lte_rrc_must_TM10_UpToOneInterferingLayer_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_TM10_UpToOneInterferingLayer_r14 }, - { &hf_lte_rrc_must_TM89_UpToThreeInterferingLayers_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_TM89_UpToThreeInterferingLayers_r14 }, - { &hf_lte_rrc_must_TM10_UpToThreeInterferingLayers_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_must_TM10_UpToThreeInterferingLayers_r14 }, +static const per_sequence_t CA_MIMO_ParametersDL_v10i0_sequence[] = { + { &hf_lte_rrc_fourLayerTM3_TM4_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fourLayerTM3_TM4_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MUST_Parameters_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CA_MIMO_ParametersDL_v10i0(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_lte_rrc_MUST_Parameters_r14, MUST_Parameters_r14_sequence); + ett_lte_rrc_CA_MIMO_ParametersDL_v10i0, CA_MIMO_ParametersDL_v10i0_sequence); return offset; } -static const per_sequence_t BandParameters_v1450_sequence[] = { - { &hf_lte_rrc_must_CapabilityPerBand_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MUST_Parameters_r14 }, +static const per_sequence_t SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v10i0_sequence_of[1] = { + { &hf_lte_rrc_bandParametersDL_v10i0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_MIMO_ParametersDL_v10i0 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v10i0(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_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v10i0, SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v10i0_sequence_of, + 1, maxBandwidthClass_r10, FALSE); + + return offset; +} + + +static const per_sequence_t BandParameters_v10i0_sequence[] = { + { &hf_lte_rrc_bandParametersDL_v10i0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v10i0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandParameters_v1450(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandParameters_v10i0(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_lte_rrc_BandParameters_v1450, BandParameters_v1450_sequence); + ett_lte_rrc_BandParameters_v10i0, BandParameters_v10i0_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450_sequence_of[1] = { - { &hf_lte_rrc_bandParameterList_v1450_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1450 }, +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v10i0_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_v10i0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v10i0 }, }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v10i0(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450_sequence_of, + ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v10i0, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v10i0_sequence_of, 1, maxSimultaneousBands_r10, FALSE); return offset; } -static const per_sequence_t BandCombinationParameters_v1450_sequence[] = { - { &hf_lte_rrc_bandParameterList_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450 }, +static const per_sequence_t BandCombinationParameters_v10i0_sequence[] = { + { &hf_lte_rrc_bandParameterList_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v10i0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombinationParameters_v1450(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandCombinationParameters_v10i0(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_lte_rrc_BandCombinationParameters_v1450, BandCombinationParameters_v1450_sequence); + ett_lte_rrc_BandCombinationParameters_v10i0, BandCombinationParameters_v10i0_sequence); return offset; } -static const per_sequence_t SupportedBandCombination_v1450_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v1450_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1450 }, +static const per_sequence_t SupportedBandCombination_v10i0_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v10i0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v10i0 }, }; static int -dissect_lte_rrc_SupportedBandCombination_v1450(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandCombination_v10i0(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_lte_rrc_SupportedBandCombination_v1450, SupportedBandCombination_v1450_sequence_of, + ett_lte_rrc_SupportedBandCombination_v10i0, SupportedBandCombination_v10i0_sequence_of, 1, maxBandComb_r10, FALSE); return offset; } -static const per_sequence_t SupportedBandCombinationAdd_v1450_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationAdd_v1450_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1450 }, +static const per_sequence_t RF_Parameters_v10i0_sequence[] = { + { &hf_lte_rrc_supportedBandCombination_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v10i0 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandCombinationAdd_v1450(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_lte_rrc_SupportedBandCombinationAdd_v1450, SupportedBandCombinationAdd_v1450_sequence_of, - 1, maxBandComb_r11, FALSE); +dissect_lte_rrc_RF_Parameters_v10i0(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_lte_rrc_RF_Parameters_v10i0, RF_Parameters_v10i0_sequence); return offset; } -static const per_sequence_t SupportedBandCombinationReduced_v1450_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationReduced_v1450_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1450 }, + +static int +dissect_lte_rrc_T_lateNonCriticalExtension_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UE_EUTRA_Capability_v10j0_IEs_PDU); + + return offset; +} + + +static const per_sequence_t SupportedBandCombinationAdd_v11d0_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_v11d0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v10i0 }, }; static int -dissect_lte_rrc_SupportedBandCombinationReduced_v1450(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandCombinationAdd_v11d0(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_lte_rrc_SupportedBandCombinationReduced_v1450, SupportedBandCombinationReduced_v1450_sequence_of, - 1, maxBandComb_r13, FALSE); + ett_lte_rrc_SupportedBandCombinationAdd_v11d0, SupportedBandCombinationAdd_v11d0_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const per_sequence_t RF_Parameters_v1450_sequence[] = { - { &hf_lte_rrc_supportedBandCombination_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1450 }, - { &hf_lte_rrc_supportedBandCombinationAdd_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1450 }, - { &hf_lte_rrc_supportedBandCombinationReduced_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1450 }, +static const per_sequence_t RF_Parameters_v11d0_sequence[] = { + { &hf_lte_rrc_supportedBandCombinationAdd_v11d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v11d0 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v1450(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v11d0(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_lte_rrc_RF_Parameters_v1450, RF_Parameters_v1450_sequence); + ett_lte_rrc_RF_Parameters_v11d0, RF_Parameters_v11d0_sequence); return offset; } -static const value_string lte_rrc_T_overheatingInd_r14_vals[] = { +static const value_string lte_rrc_T_inDeviceCoexInd_UL_CA_r11_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_overheatingInd_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_inDeviceCoexInd_UL_CA_r11(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, 1, NULL, FALSE, 0, NULL); @@ -76396,48 +93499,28 @@ dissect_lte_rrc_T_overheatingInd_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx } -static const per_sequence_t OtherParameters_v1450_sequence[] = { - { &hf_lte_rrc_overheatingInd_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_overheatingInd_r14 }, +static const per_sequence_t Other_Parameters_v11d0_sequence[] = { + { &hf_lte_rrc_inDeviceCoexInd_UL_CA_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_inDeviceCoexInd_UL_CA_r11 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_OtherParameters_v1450(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_Other_Parameters_v11d0(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_lte_rrc_OtherParameters_v1450, OtherParameters_v1450_sequence); - - return offset; -} - - - -static int -dissect_lte_rrc_INTEGER_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 20U, 20U, NULL, FALSE); - - return offset; -} - - - -static int -dissect_lte_rrc_INTEGER_21(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 21U, 21U, NULL, FALSE); + ett_lte_rrc_Other_Parameters_v11d0, Other_Parameters_v11d0_sequence); return offset; } -static const value_string lte_rrc_T_nonCSG_SI_Reporting_r14_vals[] = { +static const value_string lte_rrc_T_maxLayersMIMO_Indication_r12_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_nonCSG_SI_Reporting_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_maxLayersMIMO_Indication_r12(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, 1, NULL, FALSE, 0, NULL); @@ -76445,28 +93528,28 @@ dissect_lte_rrc_T_nonCSG_SI_Reporting_r14(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t Other_Parameters_v1460_sequence[] = { - { &hf_lte_rrc_nonCSG_SI_Reporting_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCSG_SI_Reporting_r14 }, +static const per_sequence_t RF_Parameters_v12b0_sequence[] = { + { &hf_lte_rrc_maxLayersMIMO_Indication_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxLayersMIMO_Indication_r12 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_Other_Parameters_v1460(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v12b0(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_lte_rrc_Other_Parameters_v1460, Other_Parameters_v1460_sequence); + ett_lte_rrc_RF_Parameters_v12b0, RF_Parameters_v12b0_sequence); return offset; } -static const value_string lte_rrc_T_en_DC_r15_vals[] = { +static const value_string lte_rrc_T_tm9_CE_ModeA_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_en_DC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tm9_CE_ModeA_r13(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, 1, NULL, FALSE, 0, NULL); @@ -76474,14 +93557,14 @@ dissect_lte_rrc_T_en_DC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const value_string lte_rrc_T_eventB2_r15_vals[] = { +static const value_string lte_rrc_T_tm9_CE_ModeB_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_eventB2_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tm9_CE_ModeB_r13(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, 1, NULL, FALSE, 0, NULL); @@ -76489,433 +93572,407 @@ dissect_lte_rrc_T_eventB2_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *act } - -static int -dissect_lte_rrc_FreqBandIndicatorNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxFBI_NR_r15, NULL, FALSE); - - return offset; -} - - -static const per_sequence_t SupportedBandNR_r15_sequence[] = { - { &hf_lte_rrc_bandNR_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicatorNR_r15 }, +static const per_sequence_t CE_Parameters_v1370_sequence[] = { + { &hf_lte_rrc_tm9_CE_ModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm9_CE_ModeA_r13 }, + { &hf_lte_rrc_tm9_CE_ModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm9_CE_ModeB_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CE_Parameters_v1370(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_lte_rrc_SupportedBandNR_r15, SupportedBandNR_r15_sequence); + ett_lte_rrc_CE_Parameters_v1370, CE_Parameters_v1370_sequence); return offset; } -static const per_sequence_t SupportedBandListNR_r15_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListNR_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandNR_r15 }, +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1370_sequence[] = { + { &hf_lte_rrc_ce_Parameters_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CE_Parameters_v1370 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandListNR_r15(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_lte_rrc_SupportedBandListNR_r15, SupportedBandListNR_r15_sequence_of, - 1, maxBandsNR_r15, FALSE); +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1370(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1370, UE_EUTRA_CapabilityAddXDD_Mode_v1370_sequence); return offset; } -static const per_sequence_t IRAT_ParametersNR_r15_sequence[] = { - { &hf_lte_rrc_en_DC_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_en_DC_r15 }, - { &hf_lte_rrc_eventB2_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_eventB2_r15 }, - { &hf_lte_rrc_supportedBandListNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListNR_r15 }, +static const per_sequence_t BandParameters_v1380_sequence[] = { + { &hf_lte_rrc_txAntennaSwitchDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, + { &hf_lte_rrc_txAntennaSwitchUL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IRAT_ParametersNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandParameters_v1380(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_lte_rrc_IRAT_ParametersNR_r15, IRAT_ParametersNR_r15_sequence); + ett_lte_rrc_BandParameters_v1380, BandParameters_v1380_sequence); return offset; } -static const value_string lte_rrc_T_dmrs_Enhancements_r13_02_vals[] = { - { 0, "different" }, - { 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1380_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_v1380_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1380 }, }; - static int -dissect_lte_rrc_T_dmrs_Enhancements_r13_02(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1380(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1380, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1380_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); return offset; } -static const value_string lte_rrc_T_csi_ReportingNP_r14_02_vals[] = { - { 0, "different" }, - { 0, NULL } +static const per_sequence_t BandCombinationParameters_v1380_sequence[] = { + { &hf_lte_rrc_bandParameterList_v1380, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1380 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_csi_ReportingNP_r14_02(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BandCombinationParameters_v1380(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_lte_rrc_BandCombinationParameters_v1380, BandCombinationParameters_v1380_sequence); return offset; } -static const value_string lte_rrc_T_csi_ReportingAdvanced_r14_02_vals[] = { - { 0, "different" }, - { 0, NULL } +static const per_sequence_t SupportedBandCombination_v1380_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1380_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1380 }, }; - static int -dissect_lte_rrc_T_csi_ReportingAdvanced_r14_02(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SupportedBandCombination_v1380(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_lte_rrc_SupportedBandCombination_v1380, SupportedBandCombination_v1380_sequence_of, + 1, maxBandComb_r10, FALSE); return offset; } -static const per_sequence_t MIMO_CA_ParametersPerBoBCPerTM_r15_sequence[] = { - { &hf_lte_rrc_nonPrecoded_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_NonPrecodedCapabilities_r13 }, - { &hf_lte_rrc_beamformed_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_BeamformedCapabilityList_r13 }, - { &hf_lte_rrc_dmrs_Enhancements_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_Enhancements_r13_02 }, - { &hf_lte_rrc_csi_ReportingNP_r14_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingNP_r14_02 }, - { &hf_lte_rrc_csi_ReportingAdvanced_r14_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingAdvanced_r14_02 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SupportedBandCombinationAdd_v1380_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_v1380_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1380 }, }; static int -dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r15(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_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r15, MIMO_CA_ParametersPerBoBCPerTM_r15_sequence); +dissect_lte_rrc_SupportedBandCombinationAdd_v1380(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_lte_rrc_SupportedBandCombinationAdd_v1380, SupportedBandCombinationAdd_v1380_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const per_sequence_t MIMO_CA_ParametersPerBoBC_r15_sequence[] = { - { &hf_lte_rrc_parametersTM9_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r15 }, - { &hf_lte_rrc_parametersTM10_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_r15 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SupportedBandCombinationReduced_v1380_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationReduced_v1380_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1380 }, }; static int -dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_r15(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_lte_rrc_MIMO_CA_ParametersPerBoBC_r15, MIMO_CA_ParametersPerBoBC_r15_sequence); +dissect_lte_rrc_SupportedBandCombinationReduced_v1380(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_lte_rrc_SupportedBandCombinationReduced_v1380, SupportedBandCombinationReduced_v1380_sequence_of, + 1, maxBandComb_r13, FALSE); return offset; } +static const per_sequence_t RF_Parameters_v1380_sequence[] = { + { &hf_lte_rrc_supportedBandCombination_v1380, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1380 }, + { &hf_lte_rrc_supportedBandCombinationAdd_v1380, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1380 }, + { &hf_lte_rrc_supportedBandCombinationReduced_v1380, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1380 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_FeatureSetDL_PerCC_Id_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxPerCC_FeatureSets_r15, NULL, FALSE); +dissect_lte_rrc_RF_Parameters_v1380(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_lte_rrc_RF_Parameters_v1380, RF_Parameters_v1380_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetDL_PerCC_Id_r15_sequence_of[1] = { - { &hf_lte_rrc_featureSetPerCC_ListDL_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetDL_PerCC_Id_r15 }, +static const value_string lte_rrc_T_tm6_CE_ModeA_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetDL_PerCC_Id_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetDL_PerCC_Id_r15, SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetDL_PerCC_Id_r15_sequence_of, - 1, maxServCell_r13, FALSE); +dissect_lte_rrc_T_tm6_CE_ModeA_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t FeatureSetDL_r15_sequence[] = { - { &hf_lte_rrc_mimo_CA_ParametersPerBoBC_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_r15 }, - { &hf_lte_rrc_featureSetPerCC_ListDL_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetDL_PerCC_Id_r15 }, +static const per_sequence_t CE_Parameters_v1380_sequence[] = { + { &hf_lte_rrc_tm6_CE_ModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm6_CE_ModeA_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FeatureSetDL_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CE_Parameters_v1380(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_lte_rrc_FeatureSetDL_r15, FeatureSetDL_r15_sequence); - - return offset; -} - - -static const per_sequence_t SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15_sequence_of[1] = { - { &hf_lte_rrc_featureSetsDL_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetDL_r15 }, -}; - -static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15, SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15_sequence_of, - 1, maxFeatureSets_r15, FALSE); + ett_lte_rrc_CE_Parameters_v1380, CE_Parameters_v1380_sequence); return offset; } -static const value_string lte_rrc_T_fourLayerTM3_TM4_r15_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1380_sequence[] = { + { &hf_lte_rrc_ce_Parameters_v1380, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CE_Parameters_v1380 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_fourLayerTM3_TM4_r15(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1380(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1380, UE_EUTRA_CapabilityAddXDD_Mode_v1380_sequence); return offset; } -static const value_string lte_rrc_T_supportedCSI_Proc_r15_vals[] = { - { 0, "n1" }, - { 1, "n3" }, - { 2, "n4" }, +static const value_string lte_rrc_T_ue_CA_PowerClass_N_r13_vals[] = { + { 0, "class2" }, { 0, NULL } }; static int -dissect_lte_rrc_T_supportedCSI_Proc_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_CA_PowerClass_N_r13(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, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t FeatureSetDL_PerCC_r15_sequence[] = { - { &hf_lte_rrc_fourLayerTM3_TM4_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fourLayerTM3_TM4_r15 }, - { &hf_lte_rrc_supportedMIMO_CapabilityDL_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityDL_r10 }, - { &hf_lte_rrc_supportedCSI_Proc_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_supportedCSI_Proc_r15 }, +static const per_sequence_t BandCombinationParameters_v1390_sequence[] = { + { &hf_lte_rrc_ue_CA_PowerClass_N_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CA_PowerClass_N_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FeatureSetDL_PerCC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandCombinationParameters_v1390(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_lte_rrc_FeatureSetDL_PerCC_r15, FeatureSetDL_PerCC_r15_sequence); + ett_lte_rrc_BandCombinationParameters_v1390, BandCombinationParameters_v1390_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15_sequence_of[1] = { - { &hf_lte_rrc_featureSetsDL_PerCC_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetDL_PerCC_r15 }, +static const per_sequence_t SupportedBandCombination_v1390_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1390_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1390 }, }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandCombination_v1390(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_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15, SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15_sequence_of, - 1, maxPerCC_FeatureSets_r15, FALSE); + ett_lte_rrc_SupportedBandCombination_v1390, SupportedBandCombination_v1390_sequence_of, + 1, maxBandComb_r10, FALSE); return offset; } +static const per_sequence_t SupportedBandCombinationAdd_v1390_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_v1390_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1390 }, +}; static int -dissect_lte_rrc_FeatureSetUL_PerCC_Id_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxPerCC_FeatureSets_r15, NULL, FALSE); +dissect_lte_rrc_SupportedBandCombinationAdd_v1390(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_lte_rrc_SupportedBandCombinationAdd_v1390, SupportedBandCombinationAdd_v1390_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id_r15_sequence_of[1] = { - { &hf_lte_rrc_featureSetPerCC_ListUL_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetUL_PerCC_Id_r15 }, +static const per_sequence_t SupportedBandCombinationReduced_v1390_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationReduced_v1390_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1390 }, }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBandCombinationReduced_v1390(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_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id_r15, SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id_r15_sequence_of, - 1, maxServCell_r13, FALSE); + ett_lte_rrc_SupportedBandCombinationReduced_v1390, SupportedBandCombinationReduced_v1390_sequence_of, + 1, maxBandComb_r13, FALSE); return offset; } -static const per_sequence_t FeatureSetUL_r15_sequence[] = { - { &hf_lte_rrc_featureSetPerCC_ListUL_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_FeatureSetUL_PerCC_Id_r15 }, +static const per_sequence_t RF_Parameters_v1390_sequence[] = { + { &hf_lte_rrc_supportedBandCombination_v1390, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1390 }, + { &hf_lte_rrc_supportedBandCombinationAdd_v1390, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1390 }, + { &hf_lte_rrc_supportedBandCombinationReduced_v1390, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1390 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FeatureSetUL_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v1390(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_lte_rrc_FeatureSetUL_r15, FeatureSetUL_r15_sequence); + ett_lte_rrc_RF_Parameters_v1390, RF_Parameters_v1390_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetUL_r15_sequence_of[1] = { - { &hf_lte_rrc_featureSetsUL_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetUL_r15 }, -}; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetUL_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetUL_r15, SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetUL_r15_sequence_of, - 1, maxFeatureSets_r15, FALSE); +dissect_lte_rrc_INTEGER_2_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 2U, 20U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_ul_256QAM_r15_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_mbms_MaxBW_r14_vals[] = { + { 0, "implicitValue" }, + { 1, "explicitValue" }, { 0, NULL } }; +static const per_choice_t T_mbms_MaxBW_r14_choice[] = { + { 0, &hf_lte_rrc_implicitValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_explicitValue_06, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_2_20 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_ul_256QAM_r15(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_mbms_MaxBW_r14(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_lte_rrc_T_mbms_MaxBW_r14, T_mbms_MaxBW_r14_choice, + NULL); return offset; } -static const per_sequence_t FeatureSetUL_PerCC_r15_sequence[] = { - { &hf_lte_rrc_supportedMIMO_CapabilityUL_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CapabilityUL_r10 }, - { &hf_lte_rrc_ul_256QAM_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_256QAM_r15 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_mbms_ScalingFactor1dot25_r14_vals[] = { + { 0, "n3" }, + { 1, "n6" }, + { 2, "n9" }, + { 3, "n12" }, + { 0, NULL } }; + static int -dissect_lte_rrc_FeatureSetUL_PerCC_r15(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_lte_rrc_FeatureSetUL_PerCC_r15, FeatureSetUL_PerCC_r15_sequence); +dissect_lte_rrc_T_mbms_ScalingFactor1dot25_r14(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 per_sequence_t SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetUL_PerCC_r15_sequence_of[1] = { - { &hf_lte_rrc_featureSetsUL_PerCC_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FeatureSetUL_PerCC_r15 }, +static const value_string lte_rrc_T_mbms_ScalingFactor7dot5_r14_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetUL_PerCC_r15(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_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetUL_PerCC_r15, SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetUL_PerCC_r15_sequence_of, - 1, maxPerCC_FeatureSets_r15, FALSE); +dissect_lte_rrc_T_mbms_ScalingFactor7dot5_r14(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 per_sequence_t FeatureSetsEUTRA_r15_sequence[] = { - { &hf_lte_rrc_featureSetsDL_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15 }, - { &hf_lte_rrc_featureSetsDL_PerCC_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15 }, - { &hf_lte_rrc_featureSetsUL_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetUL_r15 }, - { &hf_lte_rrc_featureSetsUL_PerCC_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetUL_PerCC_r15 }, +static const per_sequence_t MBMS_Parameters_v1470_sequence[] = { + { &hf_lte_rrc_mbms_MaxBW_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mbms_MaxBW_r14 }, + { &hf_lte_rrc_mbms_ScalingFactor1dot25_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_ScalingFactor1dot25_r14 }, + { &hf_lte_rrc_mbms_ScalingFactor7dot5_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_ScalingFactor7dot5_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_FeatureSetsEUTRA_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MBMS_Parameters_v1470(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_lte_rrc_FeatureSetsEUTRA_r15, FeatureSetsEUTRA_r15_sequence); + ett_lte_rrc_MBMS_Parameters_v1470, MBMS_Parameters_v1470_sequence); return offset; } -static const value_string lte_rrc_T_rohc_ContextMaxSessions_r15_vals[] = { - { 0, "cs2" }, - { 1, "cs4" }, - { 2, "cs8" }, - { 3, "cs12" }, - { 4, "cs16" }, - { 5, "cs24" }, - { 6, "cs32" }, - { 7, "cs48" }, - { 8, "cs64" }, - { 9, "cs128" }, - { 10, "cs256" }, - { 11, "cs512" }, - { 12, "cs1024" }, - { 13, "cs16384" }, - { 14, "spare2" }, - { 15, "spare1" }, +static const value_string lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14_vals[] = { + { 0, "n8" }, + { 1, "n12" }, + { 2, "n16" }, + { 3, "n20" }, + { 4, "n24" }, + { 5, "n28" }, { 0, NULL } }; static int -dissect_lte_rrc_T_rohc_ContextMaxSessions_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14(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, - 16, NULL, FALSE, 0, NULL); + 6, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_rohc_ProfilesUL_Only_r15_sequence[] = { - { &hf_lte_rrc_profile0x0006_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t MIMO_UE_ParametersPerTM_v1470_sequence[] = { + { &hf_lte_rrc_csi_ReportingAdvancedMaxPorts_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_rohc_ProfilesUL_Only_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1470(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_lte_rrc_T_rohc_ProfilesUL_Only_r15, T_rohc_ProfilesUL_Only_r15_sequence); + ett_lte_rrc_MIMO_UE_ParametersPerTM_v1470, MIMO_UE_ParametersPerTM_v1470_sequence); return offset; } -static const value_string lte_rrc_T_rohc_ContextContinue_r15_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t MIMO_UE_Parameters_v1470_sequence[] = { + { &hf_lte_rrc_parametersTM9_v1470, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1470 }, + { &hf_lte_rrc_parametersTM10_v1470, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1470 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_rohc_ContextContinue_r15(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MIMO_UE_Parameters_v1470(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_lte_rrc_MIMO_UE_Parameters_v1470, MIMO_UE_Parameters_v1470_sequence); return offset; } -static const value_string lte_rrc_T_outOfOrderDelivery_r15_vals[] = { +static const value_string lte_rrc_T_srs_UpPTS_6sym_r14_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_outOfOrderDelivery_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_srs_UpPTS_6sym_r14(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, 1, NULL, FALSE, 0, NULL); @@ -76923,633 +93980,587 @@ dissect_lte_rrc_T_outOfOrderDelivery_r15(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_sn_SizeLo_r15_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t PhyLayerParameters_v1470_sequence[] = { + { &hf_lte_rrc_mimo_UE_Parameters_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_Parameters_v1470 }, + { &hf_lte_rrc_srs_UpPTS_6sym_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_UpPTS_6sym_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_sn_SizeLo_r15(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PhyLayerParameters_v1470(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_lte_rrc_PhyLayerParameters_v1470, PhyLayerParameters_v1470_sequence); return offset; } -static const value_string lte_rrc_T_ims_VoiceOverNR_PDCP_MCG_Bearer_r15_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14_01_vals[] = { + { 0, "n8" }, + { 1, "n12" }, + { 2, "n16" }, + { 3, "n20" }, + { 4, "n24" }, + { 5, "n28" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ims_VoiceOverNR_PDCP_MCG_Bearer_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14_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, - 1, NULL, FALSE, 0, NULL); + 6, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ims_VoiceOverNR_PDCP_SCG_Bearer_r15_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t MIMO_CA_ParametersPerBoBCPerTM_v1470_sequence[] = { + { &hf_lte_rrc_csi_ReportingAdvancedMaxPorts_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14_01 }, + { NULL, 0, 0, NULL } }; +static int +dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1470(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_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1470, MIMO_CA_ParametersPerBoBCPerTM_v1470_sequence); + + return offset; +} + + +static const per_sequence_t MIMO_CA_ParametersPerBoBC_v1470_sequence[] = { + { &hf_lte_rrc_parametersTM9_v1470_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1470 }, + { &hf_lte_rrc_parametersTM10_v1470_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1470 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_ims_VoiceOverNR_PDCP_SCG_Bearer_r15(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_v1470(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_lte_rrc_MIMO_CA_ParametersPerBoBC_v1470, MIMO_CA_ParametersPerBoBC_v1470_sequence); return offset; } -static const per_sequence_t PDCP_ParametersNR_r15_sequence[] = { - { &hf_lte_rrc_rohc_Profiles_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ROHC_ProfileSupportList_r15 }, - { &hf_lte_rrc_rohc_ContextMaxSessions_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rohc_ContextMaxSessions_r15 }, - { &hf_lte_rrc_rohc_ProfilesUL_Only_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_rohc_ProfilesUL_Only_r15 }, - { &hf_lte_rrc_rohc_ContextContinue_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rohc_ContextContinue_r15 }, - { &hf_lte_rrc_outOfOrderDelivery_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_outOfOrderDelivery_r15 }, - { &hf_lte_rrc_sn_SizeLo_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sn_SizeLo_r15 }, - { &hf_lte_rrc_ims_VoiceOverNR_PDCP_MCG_Bearer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ims_VoiceOverNR_PDCP_MCG_Bearer_r15 }, - { &hf_lte_rrc_ims_VoiceOverNR_PDCP_SCG_Bearer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ims_VoiceOverNR_PDCP_SCG_Bearer_r15 }, +static const per_sequence_t BandParameters_v1470_sequence[] = { + { &hf_lte_rrc_bandParametersDL_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_v1470 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PDCP_ParametersNR_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandParameters_v1470(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_lte_rrc_PDCP_ParametersNR_r15, PDCP_ParametersNR_r15_sequence); + ett_lte_rrc_BandParameters_v1470, BandParameters_v1470_sequence); return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1510_sequence[] = { - { &hf_lte_rrc_pdcp_ParametersNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_ParametersNR_r15 }, +static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470_sequence_of[1] = { + { &hf_lte_rrc_bandParameterList_v1470_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1470 }, +}; + +static int +dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470_sequence_of, + 1, maxSimultaneousBands_r10, FALSE); + + return offset; +} + + +static const per_sequence_t BandCombinationParameters_v1470_sequence[] = { + { &hf_lte_rrc_bandParameterList_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470 }, + { &hf_lte_rrc_srs_MaxSimultaneousCCs_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_31 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1510(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BandCombinationParameters_v1470(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1510, UE_EUTRA_CapabilityAddXDD_Mode_v1510_sequence); + ett_lte_rrc_BandCombinationParameters_v1470, BandCombinationParameters_v1470_sequence); return offset; } +static const per_sequence_t SupportedBandCombination_v1470_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombination_v1470_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1470 }, +}; static int -dissect_lte_rrc_T_measGapPatterns_v1520(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *meas_gap_pattern_tvb = NULL; - proto_tree *subtree; +dissect_lte_rrc_SupportedBandCombination_v1470(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_lte_rrc_SupportedBandCombination_v1470, SupportedBandCombination_v1470_sequence_of, + 1, maxBandComb_r10, FALSE); - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 8, 8, FALSE, &meas_gap_pattern_tvb, NULL); + return offset; +} - if (meas_gap_pattern_tvb) { - static const int *lte_rrc_meas_gap_pattern_flags[] = { - &hf_lte_rrc_measGapPatterns_v1520_bit1, - &hf_lte_rrc_measGapPatterns_v1520_bit2, - &hf_lte_rrc_measGapPatterns_v1520_bit3, - &hf_lte_rrc_measGapPatterns_v1520_bit4, - &hf_lte_rrc_measGapPatterns_v1520_bit5, - &hf_lte_rrc_measGapPatterns_v1520_bit6, - &hf_lte_rrc_measGapPatterns_v1520_bit7, - &hf_lte_rrc_measGapPatterns_v1520_bit8, - NULL - }; - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_measGapPatterns_v1520); - proto_tree_add_bitmask_list(subtree, meas_gap_pattern_tvb, 0, 1, lte_rrc_meas_gap_pattern_flags, ENC_NA); - } +static const per_sequence_t SupportedBandCombinationAdd_v1470_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationAdd_v1470_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1470 }, +}; +static int +dissect_lte_rrc_SupportedBandCombinationAdd_v1470(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_lte_rrc_SupportedBandCombinationAdd_v1470, SupportedBandCombinationAdd_v1470_sequence_of, + 1, maxBandComb_r11, FALSE); return offset; } -static const per_sequence_t MeasParameters_v1520_sequence[] = { - { &hf_lte_rrc_measGapPatterns_v1520, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_measGapPatterns_v1520 }, +static const per_sequence_t SupportedBandCombinationReduced_v1470_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandCombinationReduced_v1470_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1470 }, +}; + +static int +dissect_lte_rrc_SupportedBandCombinationReduced_v1470(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_lte_rrc_SupportedBandCombinationReduced_v1470, SupportedBandCombinationReduced_v1470_sequence_of, + 1, maxBandComb_r13, FALSE); + + return offset; +} + + +static const per_sequence_t RF_Parameters_v1470_sequence[] = { + { &hf_lte_rrc_supportedBandCombination_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1470 }, + { &hf_lte_rrc_supportedBandCombinationAdd_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1470 }, + { &hf_lte_rrc_supportedBandCombinationReduced_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1470 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MeasParameters_v1520(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v1470(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_lte_rrc_MeasParameters_v1520, MeasParameters_v1520_sequence); + ett_lte_rrc_RF_Parameters_v1470, RF_Parameters_v1470_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_71_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_77_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_71(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_77(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_lte_rrc_T_nonCriticalExtension_71, T_nonCriticalExtension_71_sequence); + ett_lte_rrc_T_nonCriticalExtension_77, T_nonCriticalExtension_77_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1520_IEs_sequence[] = { - { &hf_lte_rrc_measParameters_v1520, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasParameters_v1520 }, - { &hf_lte_rrc_nonCriticalExtension_241, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_71 }, +static const per_sequence_t UE_EUTRA_Capability_v1470_IEs_sequence[] = { + { &hf_lte_rrc_mbms_Parameters_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_Parameters_v1470 }, + { &hf_lte_rrc_phyLayerParameters_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1470 }, + { &hf_lte_rrc_rf_Parameters_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1470 }, + { &hf_lte_rrc_nonCriticalExtension_243, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_77 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1520_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v1470_IEs(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_lte_rrc_UE_EUTRA_Capability_v1520_IEs, UE_EUTRA_Capability_v1520_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v1470_IEs, UE_EUTRA_Capability_v1470_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1510_IEs_sequence[] = { - { &hf_lte_rrc_irat_ParametersNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersNR_r15 }, - { &hf_lte_rrc_featureSetsEUTRA_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FeatureSetsEUTRA_r15 }, - { &hf_lte_rrc_pdcp_ParametersNR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_ParametersNR_r15 }, - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1510, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1510 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1510, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1510 }, - { &hf_lte_rrc_nonCriticalExtension_240, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1520_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v13x0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_242, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1470_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1510_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v13x0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1510_IEs, UE_EUTRA_Capability_v1510_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v13x0_IEs, UE_EUTRA_Capability_v13x0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1460_IEs_sequence[] = { - { &hf_lte_rrc_ue_CategoryDL_v1460, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_21 }, - { &hf_lte_rrc_otherParameters_v1460, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Other_Parameters_v1460 }, - { &hf_lte_rrc_nonCriticalExtension_239, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1510_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v1390_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v1390, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1390 }, + { &hf_lte_rrc_nonCriticalExtension_241, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v13x0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1460_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v1390_IEs(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_lte_rrc_UE_EUTRA_Capability_v1460_IEs, UE_EUTRA_Capability_v1460_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v1390_IEs, UE_EUTRA_Capability_v1390_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1450_IEs_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1450 }, - { &hf_lte_rrc_rf_Parameters_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1450 }, - { &hf_lte_rrc_otherParameters_v1450, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_OtherParameters_v1450 }, - { &hf_lte_rrc_ue_CategoryDL_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_20 }, - { &hf_lte_rrc_nonCriticalExtension_238, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1460_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v1380_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v1380, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1380 }, + { &hf_lte_rrc_ce_Parameters_v1380, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CE_Parameters_v1380 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1380, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1380 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1380, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1380 }, + { &hf_lte_rrc_nonCriticalExtension_240, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1390_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1450_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v1380_IEs(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_lte_rrc_UE_EUTRA_Capability_v1450_IEs, UE_EUTRA_Capability_v1450_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v1380_IEs, UE_EUTRA_Capability_v1380_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1440_IEs_sequence[] = { - { &hf_lte_rrc_lwa_Parameters_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LWA_Parameters_v1440 }, - { &hf_lte_rrc_mac_Parameters_v1440, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_Parameters_v1440 }, - { &hf_lte_rrc_nonCriticalExtension_237, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1450_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v1370_IEs_sequence[] = { + { &hf_lte_rrc_ce_Parameters_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CE_Parameters_v1370 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1370 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1370 }, + { &hf_lte_rrc_nonCriticalExtension_239, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1380_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1440_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v1370_IEs(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_lte_rrc_UE_EUTRA_Capability_v1440_IEs, UE_EUTRA_Capability_v1440_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v1370_IEs, UE_EUTRA_Capability_v1370_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1430_IEs_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhyLayerParameters_v1430 }, - { &hf_lte_rrc_ue_CategoryDL_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryDL_v1430 }, - { &hf_lte_rrc_ue_CategoryUL_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryUL_v1430 }, - { &hf_lte_rrc_ue_CategoryUL_v1430b, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryUL_v1430b }, - { &hf_lte_rrc_mac_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MAC_Parameters_v1430 }, - { &hf_lte_rrc_measParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1430 }, - { &hf_lte_rrc_pdcp_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_Parameters_v1430 }, - { &hf_lte_rrc_rlc_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLC_Parameters_v1430 }, - { &hf_lte_rrc_rf_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1430 }, - { &hf_lte_rrc_laa_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LAA_Parameters_v1430 }, - { &hf_lte_rrc_lwa_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWA_Parameters_v1430 }, - { &hf_lte_rrc_lwip_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWIP_Parameters_v1430 }, - { &hf_lte_rrc_otherParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Other_Parameters_v1430 }, - { &hf_lte_rrc_mmtel_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MMTEL_Parameters_r14 }, - { &hf_lte_rrc_mobilityParameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MobilityParameters_r14 }, - { &hf_lte_rrc_ce_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CE_Parameters_v1430 }, - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1430 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1430 }, - { &hf_lte_rrc_mbms_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_Parameters_v1430 }, - { &hf_lte_rrc_sl_Parameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Parameters_v1430 }, - { &hf_lte_rrc_ue_BasedNetwPerfMeasParameters_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_v1430 }, - { &hf_lte_rrc_highSpeedEnhParameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HighSpeedEnhParameters_r14 }, - { &hf_lte_rrc_nonCriticalExtension_236, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1440_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v12x0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_238, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1370_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1430_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v12x0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1430_IEs, UE_EUTRA_Capability_v1430_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v12x0_IEs, UE_EUTRA_Capability_v12x0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1360_IEs_sequence[] = { - { &hf_lte_rrc_other_Parameters_v1360, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Other_Parameters_v1360 }, - { &hf_lte_rrc_nonCriticalExtension_235, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1430_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v12b0_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v12b0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v12b0 }, + { &hf_lte_rrc_nonCriticalExtension_237, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v12x0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1360_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v12b0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1360_IEs, UE_EUTRA_Capability_v1360_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v12b0_IEs, UE_EUTRA_Capability_v12b0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1350_IEs_sequence[] = { - { &hf_lte_rrc_ue_CategoryDL_v1350, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryDL_v1350 }, - { &hf_lte_rrc_ue_CategoryUL_v1350, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryUL_v1350 }, - { &hf_lte_rrc_ce_Parameters_v1350, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CE_Parameters_v1350 }, - { &hf_lte_rrc_nonCriticalExtension_234, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1360_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v11x0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_236, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v12b0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1350_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v11x0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1350_IEs, UE_EUTRA_Capability_v1350_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v11x0_IEs, UE_EUTRA_Capability_v11x0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1340_IEs_sequence[] = { - { &hf_lte_rrc_ue_CategoryUL_v1340, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_15 }, - { &hf_lte_rrc_nonCriticalExtension_233, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1350_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v11d0_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v11d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v11d0 }, + { &hf_lte_rrc_otherParameters_v11d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Other_Parameters_v11d0 }, + { &hf_lte_rrc_nonCriticalExtension_235, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v11x0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1340_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v11d0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1340_IEs, UE_EUTRA_Capability_v1340_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v11d0_IEs, UE_EUTRA_Capability_v11d0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1330_IEs_sequence[] = { - { &hf_lte_rrc_ue_CategoryDL_v1330, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_18_19 }, - { &hf_lte_rrc_phyLayerParameters_v1330, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1330 }, - { &hf_lte_rrc_ue_CE_NeedULGaps_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CE_NeedULGaps_r13_01 }, - { &hf_lte_rrc_nonCriticalExtension_232, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1340_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v10i0_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v10i0 }, + { &hf_lte_rrc_lateNonCriticalExtension_11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_10 }, + { &hf_lte_rrc_nonCriticalExtension_233, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v11d0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1330_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v10i0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1330_IEs, UE_EUTRA_Capability_v1330_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v10i0_IEs, UE_EUTRA_Capability_v10i0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1320_IEs_sequence[] = { - { &hf_lte_rrc_ce_Parameters_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CE_Parameters_v1320 }, - { &hf_lte_rrc_phyLayerParameters_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1320 }, - { &hf_lte_rrc_rf_Parameters_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1320 }, - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1320 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1320, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1320 }, - { &hf_lte_rrc_nonCriticalExtension_231, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1330_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v10f0_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v10f0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v10f0 }, + { &hf_lte_rrc_nonCriticalExtension_232, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v10i0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1320_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v10f0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1320_IEs, UE_EUTRA_Capability_v1320_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v10f0_IEs, UE_EUTRA_Capability_v10f0_IEs_sequence); return offset; } - -static const per_sequence_t UE_EUTRA_Capability_v1310_IEs_sequence[] = { - { &hf_lte_rrc_ue_CategoryDL_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryDL_v1310 }, - { &hf_lte_rrc_ue_CategoryUL_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CategoryUL_v1310 }, - { &hf_lte_rrc_pdcp_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCP_Parameters_v1310 }, - { &hf_lte_rrc_rlc_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLC_Parameters_v1310 }, - { &hf_lte_rrc_mac_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MAC_Parameters_v1310 }, - { &hf_lte_rrc_phyLayerParameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1310 }, - { &hf_lte_rrc_rf_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1310 }, - { &hf_lte_rrc_measParameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1310 }, - { &hf_lte_rrc_dc_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DC_Parameters_v1310 }, - { &hf_lte_rrc_sl_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Parameters_v1310 }, - { &hf_lte_rrc_scptm_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTM_Parameters_r13 }, - { &hf_lte_rrc_ce_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CE_Parameters_r13 }, - { &hf_lte_rrc_interRAT_ParametersWLAN_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IRAT_ParametersWLAN_r13 }, - { &hf_lte_rrc_laa_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LAA_Parameters_r13 }, - { &hf_lte_rrc_lwa_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_LWA_Parameters_r13 }, - { &hf_lte_rrc_wlan_IW_Parameters_v1310, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WLAN_IW_Parameters_v1310 }, - { &hf_lte_rrc_lwip_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_LWIP_Parameters_r13 }, - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1310 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1310 }, - { &hf_lte_rrc_nonCriticalExtension_230, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1320_IEs }, + +static const per_sequence_t UE_EUTRA_Capability_v10c0_IEs_sequence[] = { + { &hf_lte_rrc_otdoa_PositioningCapabilities_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OTDOA_PositioningCapabilities_r10 }, + { &hf_lte_rrc_nonCriticalExtension_231, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v10f0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1310_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v10c0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1310_IEs, UE_EUTRA_Capability_v1310_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v10c0_IEs, UE_EUTRA_Capability_v10c0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1280_IEs_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1280, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1280 }, - { &hf_lte_rrc_nonCriticalExtension_229, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1310_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v9h0_IEs_sequence[] = { + { &hf_lte_rrc_interRAT_ParametersUTRA_v9h0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_v9h0 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_230, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v10c0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1280_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v9h0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1280_IEs, UE_EUTRA_Capability_v1280_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v9h0_IEs, UE_EUTRA_Capability_v9h0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1270_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v1270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1270 }, - { &hf_lte_rrc_nonCriticalExtension_228, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1280_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v9e0_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v9e0 }, + { &hf_lte_rrc_nonCriticalExtension_229, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v9h0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1270_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v9e0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1270_IEs, UE_EUTRA_Capability_v1270_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v9e0_IEs, UE_EUTRA_Capability_v9e0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1260_IEs_sequence[] = { - { &hf_lte_rrc_ue_CategoryDL_v1260, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_15_16 }, - { &hf_lte_rrc_nonCriticalExtension_227, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1270_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v9d0_IEs_sequence[] = { + { &hf_lte_rrc_phyLayerParameters_v9d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v9d0 }, + { &hf_lte_rrc_nonCriticalExtension_228, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v9e0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1260_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v9d0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1260_IEs, UE_EUTRA_Capability_v1260_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v9d0_IEs, UE_EUTRA_Capability_v9d0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1250_IEs_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1250 }, - { &hf_lte_rrc_rf_Parameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1250 }, - { &hf_lte_rrc_rlc_Parameters_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Parameters_r12 }, - { &hf_lte_rrc_ue_BasedNetwPerfMeasParameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_v1250 }, - { &hf_lte_rrc_ue_CategoryDL_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_14 }, - { &hf_lte_rrc_ue_CategoryUL_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_13 }, - { &hf_lte_rrc_wlan_IW_Parameters_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WLAN_IW_Parameters_r12 }, - { &hf_lte_rrc_measParameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1250 }, - { &hf_lte_rrc_dc_Parameters_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DC_Parameters_r12 }, - { &hf_lte_rrc_mbms_Parameters_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_Parameters_v1250 }, - { &hf_lte_rrc_mac_Parameters_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MAC_Parameters_r12 }, - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1250 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1250 }, - { &hf_lte_rrc_sl_Parameters_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SL_Parameters_r12 }, - { &hf_lte_rrc_nonCriticalExtension_226, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1260_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v9c0_IEs_sequence[] = { + { &hf_lte_rrc_interRAT_ParametersUTRA_v9c0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_v9c0 }, + { &hf_lte_rrc_nonCriticalExtension_227, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v9d0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1250_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v9c0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1250_IEs, UE_EUTRA_Capability_v1250_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v9c0_IEs, UE_EUTRA_Capability_v9c0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v11a0_IEs_sequence[] = { - { &hf_lte_rrc_ue_Category_v11a0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_11_12 }, - { &hf_lte_rrc_measParameters_v11a0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v11a0 }, - { &hf_lte_rrc_nonCriticalExtension_225, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1250_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v9a0_IEs_sequence[] = { + { &hf_lte_rrc_featureGroupIndRel9Add_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndRel9Add_r9 }, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_r9 }, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_r9 }, + { &hf_lte_rrc_nonCriticalExtension_226, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v9c0_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v11a0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v9a0_IEs(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_lte_rrc_UE_EUTRA_Capability_v11a0_IEs, UE_EUTRA_Capability_v11a0_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v9a0_IEs, UE_EUTRA_Capability_v9a0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1180_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v1180, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1180 }, - { &hf_lte_rrc_mbms_Parameters_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_Parameters_r11 }, - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1180, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1180 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1180, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1180 }, - { &hf_lte_rrc_nonCriticalExtension_224, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v11a0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_multiNS_Pmax_r10_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_Capability_v1180_IEs(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_lte_rrc_UE_EUTRA_Capability_v1180_IEs, UE_EUTRA_Capability_v1180_IEs_sequence); +dissect_lte_rrc_T_multiNS_Pmax_r10(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1170_IEs_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v1170, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1170 }, - { &hf_lte_rrc_ue_Category_v1170, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_9_10 }, - { &hf_lte_rrc_nonCriticalExtension_223, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1180_IEs }, +static const per_sequence_t RF_Parameters_v10j0_sequence[] = { + { &hf_lte_rrc_multiNS_Pmax_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiNS_Pmax_r10 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1170_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_v10j0(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_lte_rrc_UE_EUTRA_Capability_v1170_IEs, UE_EUTRA_Capability_v1170_IEs_sequence); + ett_lte_rrc_RF_Parameters_v10j0, RF_Parameters_v10j0_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1130_IEs_sequence[] = { - { &hf_lte_rrc_pdcp_Parameters_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCP_Parameters_v1130 }, - { &hf_lte_rrc_phyLayerParameters_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1130 }, - { &hf_lte_rrc_rf_Parameters_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RF_Parameters_v1130 }, - { &hf_lte_rrc_measParameters_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MeasParameters_v1130 }, - { &hf_lte_rrc_interRAT_ParametersCDMA2000_v1130, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IRAT_ParametersCDMA2000_v1130 }, - { &hf_lte_rrc_otherParameters_r11, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Other_Parameters_r11 }, - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1130 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1130, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1130 }, - { &hf_lte_rrc_nonCriticalExtension_222, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1170_IEs }, +static const per_sequence_t T_nonCriticalExtension_76_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1130_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_76(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_lte_rrc_UE_EUTRA_Capability_v1130_IEs, UE_EUTRA_Capability_v1130_IEs_sequence); + ett_lte_rrc_T_nonCriticalExtension_76, T_nonCriticalExtension_76_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1090_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v1090, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1090 }, - { &hf_lte_rrc_nonCriticalExtension_221, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1130_IEs }, +static const per_sequence_t UE_EUTRA_Capability_v10j0_IEs_sequence[] = { + { &hf_lte_rrc_rf_Parameters_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v10j0 }, + { &hf_lte_rrc_nonCriticalExtension_234, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_76 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1090_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_EUTRA_Capability_v10j0_IEs(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_lte_rrc_UE_EUTRA_Capability_v1090_IEs, UE_EUTRA_Capability_v1090_IEs_sequence); + ett_lte_rrc_UE_EUTRA_Capability_v10j0_IEs, UE_EUTRA_Capability_v10j0_IEs_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1060_IEs_sequence[] = { - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1060, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1060, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060 }, - { &hf_lte_rrc_rf_Parameters_v1060, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1060 }, - { &hf_lte_rrc_nonCriticalExtension_220, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1090_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sl_Bandwidth_r12_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_Capability_v1060_IEs(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_lte_rrc_UE_EUTRA_Capability_v1060_IEs, UE_EUTRA_Capability_v1060_IEs_sequence); +dissect_lte_rrc_T_sl_Bandwidth_r12(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, + 6, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1020_IEs_sequence[] = { - { &hf_lte_rrc_ue_Category_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_6_8 }, - { &hf_lte_rrc_phyLayerParameters_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1020 }, - { &hf_lte_rrc_rf_Parameters_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1020 }, - { &hf_lte_rrc_measParameters_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasParameters_v1020 }, - { &hf_lte_rrc_featureGroupIndRel10_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndRel10_r10 }, - { &hf_lte_rrc_interRAT_ParametersCDMA2000_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v1020 }, - { &hf_lte_rrc_ue_BasedNetwPerfMeasParameters_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_BasedNetwPerfMeasParameters_r10 }, - { &hf_lte_rrc_interRAT_ParametersUTRA_TDD_v1020, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_TDD_v1020 }, - { &hf_lte_rrc_nonCriticalExtension_219, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1060_IEs }, +static const per_sequence_t MasterInformationBlock_SL_sequence[] = { + { &hf_lte_rrc_sl_Bandwidth_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sl_Bandwidth_r12 }, + { &hf_lte_rrc_tdd_ConfigSL_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TDD_ConfigSL_r12 }, + { &hf_lte_rrc_directFrameNumber_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { &hf_lte_rrc_directSubframeNumber_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_9 }, + { &hf_lte_rrc_inCoverage_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_reserved_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_19 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1020_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MasterInformationBlock_SL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MasterInformationBlock-SL"); + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_UE_EUTRA_Capability_v1020_IEs, UE_EUTRA_Capability_v1020_IEs_sequence); + ett_lte_rrc_MasterInformationBlock_SL, MasterInformationBlock_SL_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v940_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_11 }, - { &hf_lte_rrc_nonCriticalExtension_218, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1020_IEs }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_UE_EUTRA_Capability_v940_IEs(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_lte_rrc_UE_EUTRA_Capability_v940_IEs, UE_EUTRA_Capability_v940_IEs_sequence); +dissect_lte_rrc_SBCCH_SL_BCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_MasterInformationBlock_SL(tvb, offset, actx, tree, hf_index); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v920_IEs_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v920, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhyLayerParameters_v920 }, - { &hf_lte_rrc_interRAT_ParametersGERAN_v920, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IRAT_ParametersGERAN_v920 }, - { &hf_lte_rrc_interRAT_ParametersUTRA_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_v920 }, - { &hf_lte_rrc_interRAT_ParametersCDMA2000_v920, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v920 }, - { &hf_lte_rrc_deviceType_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_deviceType_r9 }, - { &hf_lte_rrc_csg_ProximityIndicationParameters_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CSG_ProximityIndicationParameters_r9 }, - { &hf_lte_rrc_neighCellSI_AcquisitionParameters_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NeighCellSI_AcquisitionParameters_r9 }, - { &hf_lte_rrc_son_Parameters_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SON_Parameters_r9 }, - { &hf_lte_rrc_nonCriticalExtension_217, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v940_IEs }, +static const per_sequence_t SBCCH_SL_BCH_Message_sequence[] = { + { &hf_lte_rrc_message_12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SBCCH_SL_BCH_MessageType }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v920_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SBCCH_SL_BCH_Message(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_lte_rrc_UE_EUTRA_Capability_v920_IEs, UE_EUTRA_Capability_v920_IEs_sequence); + ett_lte_rrc_SBCCH_SL_BCH_Message, SBCCH_SL_BCH_Message_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_sequence[] = { - { &hf_lte_rrc_accessStratumRelease, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AccessStratumRelease }, - { &hf_lte_rrc_ue_Category , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_5 }, - { &hf_lte_rrc_pdcp_Parameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PDCP_Parameters }, - { &hf_lte_rrc_phyLayerParameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhyLayerParameters }, - { &hf_lte_rrc_rf_Parameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RF_Parameters }, - { &hf_lte_rrc_measParameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_measParameters }, - { &hf_lte_rrc_featureGroupIndicators, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndicators }, - { &hf_lte_rrc_interRAT_Parameters, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_interRAT_Parameters }, - { &hf_lte_rrc_nonCriticalExtension_198, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v920_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sl_Bandwidth_r14_01_vals[] = { + { 0, "n6" }, + { 1, "n15" }, + { 2, "n25" }, + { 3, "n50" }, + { 4, "n75" }, + { 5, "n100" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_Capability(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_lte_rrc_UE_EUTRA_Capability, UE_EUTRA_Capability_sequence); +dissect_lte_rrc_T_sl_Bandwidth_r14_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, + 6, NULL, FALSE, 0, NULL); return offset; } @@ -77557,33 +94568,31 @@ dissect_lte_rrc_UE_EUTRA_Capability(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static int -dissect_lte_rrc_T_featureGroupIndRel9Add_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *featureGroupIndRel9Add_tvb=NULL; +dissect_lte_rrc_BIT_STRING_SIZE_27(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, - 32, 32, FALSE, &featureGroupIndRel9Add_tvb, NULL); - - if(featureGroupIndRel9Add_tvb){ - /* Dissect featureGroupIndRel9Add-r9 */ - dissect_lte_rrc_featureGroupIndRel9Add(featureGroupIndRel9Add_tvb, actx); - } - + 27, 27, FALSE, NULL, NULL); return offset; } +static const per_sequence_t MasterInformationBlock_SL_V2X_r14_sequence[] = { + { &hf_lte_rrc_sl_Bandwidth_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sl_Bandwidth_r14_01 }, + { &hf_lte_rrc_tdd_ConfigSL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TDD_ConfigSL_r12 }, + { &hf_lte_rrc_directFrameNumber_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { &hf_lte_rrc_directSubframeNumber_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_9 }, + { &hf_lte_rrc_inCoverage_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_reserved_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_27 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_featureGroupIndicators_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *featureGroupIndicators_tvb=NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndicators_tvb, NULL); +dissect_lte_rrc_MasterInformationBlock_SL_V2X_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MasterInformationBlock-SL-V2X-r14"); - if(featureGroupIndicators_tvb){ - /* Dissect featureGroupIndicators-r9 */ - dissect_lte_rrc_featureGroupIndicators(featureGroupIndicators_tvb, actx); - } + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_MasterInformationBlock_SL_V2X_r14, MasterInformationBlock_SL_V2X_r14_sequence); return offset; } @@ -77591,64 +94600,57 @@ dissect_lte_rrc_T_featureGroupIndicators_r9(tvbuff_t *tvb _U_, int offset _U_, a static int -dissect_lte_rrc_T_featureGroupIndRel9Add_r9_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *featureGroupIndRel9Add_tvb=NULL; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &featureGroupIndRel9Add_tvb, NULL); - - if(featureGroupIndRel9Add_tvb){ - /* Dissect featureGroupIndRel9Add-r9 */ - dissect_lte_rrc_featureGroupIndRel9Add(featureGroupIndRel9Add_tvb, actx); - } - +dissect_lte_rrc_SBCCH_SL_BCH_MessageType_V2X_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_MasterInformationBlock_SL_V2X_r14(tvb, offset, actx, tree, hf_index); return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_r9_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters }, - { &hf_lte_rrc_featureGroupIndicators_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndicators_r9 }, - { &hf_lte_rrc_featureGroupIndRel9Add_r9_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndRel9Add_r9_01 }, - { &hf_lte_rrc_interRAT_ParametersGERAN_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersGERAN }, - { &hf_lte_rrc_interRAT_ParametersUTRA_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_v920 }, - { &hf_lte_rrc_interRAT_ParametersCDMA2000_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersCDMA2000_1XRTT_v920 }, - { &hf_lte_rrc_neighCellSI_AcquisitionParameters_r9, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NeighCellSI_AcquisitionParameters_r9 }, +static const per_sequence_t SBCCH_SL_BCH_Message_V2X_r14_sequence[] = { + { &hf_lte_rrc_message_13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SBCCH_SL_BCH_MessageType_V2X_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SBCCH_SL_BCH_Message_V2X_r14(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_r9, UE_EUTRA_CapabilityAddXDD_Mode_r9_sequence); + ett_lte_rrc_SBCCH_SL_BCH_Message_V2X_r14, SBCCH_SL_BCH_Message_V2X_r14_sequence); return offset; } -static const value_string lte_rrc_T_voiceOverPS_HS_UTRA_FDD_r9_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_AccessStratumRelease_NB_r13_vals[] = { + { 0, "rel13" }, + { 1, "rel14" }, + { 2, "rel15" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_voiceOverPS_HS_UTRA_FDD_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AccessStratumRelease_NB_r13(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, TRUE, 0, NULL); return offset; } -static const value_string lte_rrc_T_voiceOverPS_HS_UTRA_TDD128_r9_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_ue_Category_NB_r13_vals[] = { + { 0, "nb1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_voiceOverPS_HS_UTRA_TDD128_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ue_Category_NB_r13(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, 1, NULL, FALSE, 0, NULL); @@ -77656,14 +94658,14 @@ dissect_lte_rrc_T_voiceOverPS_HS_UTRA_TDD128_r9(tvbuff_t *tvb _U_, int offset _U } -static const value_string lte_rrc_T_srvcc_FromUTRA_FDD_ToUTRA_FDD_r9_vals[] = { +static const value_string lte_rrc_T_multipleDRB_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_srvcc_FromUTRA_FDD_ToUTRA_FDD_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_multipleDRB_r13(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, 1, NULL, FALSE, 0, NULL); @@ -77671,29 +94673,67 @@ dissect_lte_rrc_T_srvcc_FromUTRA_FDD_ToUTRA_FDD_r9(tvbuff_t *tvb _U_, int offset } -static const value_string lte_rrc_T_srvcc_FromUTRA_FDD_ToGERAN_r9_vals[] = { - { 0, "supported" }, +static const per_sequence_t T_supportedROHC_Profiles_r13_sequence[] = { + { &hf_lte_rrc_profile0x0002, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0003, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0004, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0006, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0102, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0103, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0104, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_supportedROHC_Profiles_r13(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_lte_rrc_T_supportedROHC_Profiles_r13, T_supportedROHC_Profiles_r13_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_maxNumberROHC_ContextSessions_r13_vals[] = { + { 0, "cs2" }, + { 1, "cs4" }, + { 2, "cs8" }, + { 3, "cs12" }, { 0, NULL } }; static int -dissect_lte_rrc_T_srvcc_FromUTRA_FDD_ToGERAN_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_maxNumberROHC_ContextSessions_r13(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, - 1, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_srvcc_FromUTRA_TDD128_ToUTRA_TDD128_r9_vals[] = { +static const per_sequence_t PDCP_Parameters_NB_r13_sequence[] = { + { &hf_lte_rrc_supportedROHC_Profiles_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_supportedROHC_Profiles_r13 }, + { &hf_lte_rrc_maxNumberROHC_ContextSessions_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumberROHC_ContextSessions_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PDCP_Parameters_NB_r13(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_lte_rrc_PDCP_Parameters_NB_r13, PDCP_Parameters_NB_r13_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_multiTone_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_srvcc_FromUTRA_TDD128_ToUTRA_TDD128_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_multiTone_r13(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, 1, NULL, FALSE, 0, NULL); @@ -77701,14 +94741,14 @@ dissect_lte_rrc_T_srvcc_FromUTRA_TDD128_ToUTRA_TDD128_r9(tvbuff_t *tvb _U_, int } -static const value_string lte_rrc_T_srvcc_FromUTRA_TDD128_ToGERAN_r9_vals[] = { +static const value_string lte_rrc_T_multiCarrier_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_srvcc_FromUTRA_TDD128_ToGERAN_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_multiCarrier_r13(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, 1, NULL, FALSE, 0, NULL); @@ -77716,48 +94756,39 @@ dissect_lte_rrc_T_srvcc_FromUTRA_TDD128_ToGERAN_r9(tvbuff_t *tvb _U_, int offset } -static const per_sequence_t IRAT_ParametersUTRA_v9c0_sequence[] = { - { &hf_lte_rrc_voiceOverPS_HS_UTRA_FDD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_voiceOverPS_HS_UTRA_FDD_r9 }, - { &hf_lte_rrc_voiceOverPS_HS_UTRA_TDD128_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_voiceOverPS_HS_UTRA_TDD128_r9 }, - { &hf_lte_rrc_srvcc_FromUTRA_FDD_ToUTRA_FDD_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srvcc_FromUTRA_FDD_ToUTRA_FDD_r9 }, - { &hf_lte_rrc_srvcc_FromUTRA_FDD_ToGERAN_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srvcc_FromUTRA_FDD_ToGERAN_r9 }, - { &hf_lte_rrc_srvcc_FromUTRA_TDD128_ToUTRA_TDD128_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srvcc_FromUTRA_TDD128_ToUTRA_TDD128_r9 }, - { &hf_lte_rrc_srvcc_FromUTRA_TDD128_ToGERAN_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srvcc_FromUTRA_TDD128_ToGERAN_r9 }, +static const per_sequence_t PhyLayerParameters_NB_r13_sequence[] = { + { &hf_lte_rrc_multiTone_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiTone_r13 }, + { &hf_lte_rrc_multiCarrier_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiCarrier_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IRAT_ParametersUTRA_v9c0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PhyLayerParameters_NB_r13(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_lte_rrc_IRAT_ParametersUTRA_v9c0, IRAT_ParametersUTRA_v9c0_sequence); + ett_lte_rrc_PhyLayerParameters_NB_r13, PhyLayerParameters_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_tm5_FDD_r9_vals[] = { - { 0, "supported" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_tm5_FDD_r9(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_FreqBandIndicator_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxFBI2, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_tm5_TDD_r9_vals[] = { +static const value_string lte_rrc_T_powerClassNB_20dBm_r13_vals[] = { { 0, "supported" }, { 0, NULL } }; static int -dissect_lte_rrc_T_tm5_TDD_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_powerClassNB_20dBm_r13(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, 1, NULL, FALSE, 0, NULL); @@ -77765,163 +94796,173 @@ dissect_lte_rrc_T_tm5_TDD_r9(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx } -static const per_sequence_t PhyLayerParameters_v9d0_sequence[] = { - { &hf_lte_rrc_tm5_FDD_r9 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm5_FDD_r9 }, - { &hf_lte_rrc_tm5_TDD_r9 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm5_TDD_r9 }, +static const per_sequence_t SupportedBand_NB_r13_sequence[] = { + { &hf_lte_rrc_band_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_NB_r13 }, + { &hf_lte_rrc_powerClassNB_20dBm_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerClassNB_20dBm_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhyLayerParameters_v9d0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SupportedBand_NB_r13(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_lte_rrc_PhyLayerParameters_v9d0, PhyLayerParameters_v9d0_sequence); + ett_lte_rrc_SupportedBand_NB_r13, SupportedBand_NB_r13_sequence); return offset; } -static const per_sequence_t SupportedBandEUTRA_v9e0_sequence[] = { - { &hf_lte_rrc_bandEUTRA_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_FreqBandIndicator_v9e0 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SupportedBandList_NB_r13_sequence_of[1] = { + { &hf_lte_rrc_SupportedBandList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBand_NB_r13 }, }; static int -dissect_lte_rrc_SupportedBandEUTRA_v9e0(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_lte_rrc_SupportedBandEUTRA_v9e0, SupportedBandEUTRA_v9e0_sequence); +dissect_lte_rrc_SupportedBandList_NB_r13(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_lte_rrc_SupportedBandList_NB_r13, SupportedBandList_NB_r13_sequence_of, + 1, maxBands, FALSE); return offset; } -static const per_sequence_t SupportedBandListEUTRA_v9e0_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandListEUTRA_v9e0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandEUTRA_v9e0 }, +static const value_string lte_rrc_T_multiNS_Pmax_r13_vals[] = { + { 0, "supported" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandListEUTRA_v9e0(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_lte_rrc_SupportedBandListEUTRA_v9e0, SupportedBandListEUTRA_v9e0_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_T_multiNS_Pmax_r13(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v9e0_sequence[] = { - { &hf_lte_rrc_supportedBandListEUTRA_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandListEUTRA_v9e0 }, +static const per_sequence_t RF_Parameters_NB_r13_sequence[] = { + { &hf_lte_rrc_supportedBandList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandList_NB_r13 }, + { &hf_lte_rrc_multiNS_Pmax_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiNS_Pmax_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v9e0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RF_Parameters_NB_r13(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_lte_rrc_RF_Parameters_v9e0, RF_Parameters_v9e0_sequence); + ett_lte_rrc_RF_Parameters_NB_r13, RF_Parameters_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_mfbi_UTRA_r9_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t T_dummy_03_sequence[] = { + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_mfbi_UTRA_r9(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_dummy_03(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_lte_rrc_T_dummy_03, T_dummy_03_sequence); return offset; } -static const per_sequence_t IRAT_ParametersUTRA_v9h0_sequence[] = { - { &hf_lte_rrc_mfbi_UTRA_r9, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mfbi_UTRA_r9 }, +static const per_sequence_t UE_Capability_NB_r13_sequence[] = { + { &hf_lte_rrc_accessStratumRelease_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AccessStratumRelease_NB_r13 }, + { &hf_lte_rrc_ue_Category_NB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_Category_NB_r13 }, + { &hf_lte_rrc_multipleDRB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleDRB_r13 }, + { &hf_lte_rrc_pdcp_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_Parameters_NB_r13 }, + { &hf_lte_rrc_phyLayerParameters_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhyLayerParameters_NB_r13 }, + { &hf_lte_rrc_rf_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RF_Parameters_NB_r13 }, + { &hf_lte_rrc_dummy_05 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dummy_03 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_IRAT_ParametersUTRA_v9h0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UE_Capability_NB_r13(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_lte_rrc_IRAT_ParametersUTRA_v9h0, IRAT_ParametersUTRA_v9h0_sequence); + ett_lte_rrc_UE_Capability_NB_r13, UE_Capability_NB_r13_sequence); return offset; } +static const value_string lte_rrc_T_PollRetransmit_NB_r13_vals[] = { + { 0, "ms250" }, + { 1, "ms500" }, + { 2, "ms1000" }, + { 3, "ms2000" }, + { 4, "ms3000" }, + { 5, "ms4000" }, + { 6, "ms6000" }, + { 7, "ms10000" }, + { 8, "ms15000" }, + { 9, "ms25000" }, + { 10, "ms40000" }, + { 11, "ms60000" }, + { 12, "ms90000" }, + { 13, "ms120000" }, + { 14, "ms180000" }, + { 15, "ms300000-v1530" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_modifiedMPR_Behavior_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - tvbuff_t *modifiedMPR_Behavior_r10_tvb=NULL; - proto_tree *subtree; - offset = dissect_per_bit_string(tvb, offset, actx, tree, hf_index, - 32, 32, FALSE, &modifiedMPR_Behavior_r10_tvb, NULL); +dissect_lte_rrc_T_PollRetransmit_NB_r13(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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_maxRetxThreshold_r13_vals[] = { + { 0, "t1" }, + { 1, "t2" }, + { 2, "t3" }, + { 3, "t4" }, + { 4, "t6" }, + { 5, "t8" }, + { 6, "t16" }, + { 7, "t32" }, + { 0, NULL } +}; - if (modifiedMPR_Behavior_r10_tvb) { - subtree = proto_item_add_subtree(actx->created_item, ett_lte_rrc_modifiedMPR_Behavior_r10); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_0, modifiedMPR_Behavior_r10_tvb, 0, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_1, modifiedMPR_Behavior_r10_tvb, 1, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_2, modifiedMPR_Behavior_r10_tvb, 2, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_3, modifiedMPR_Behavior_r10_tvb, 3, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_4, modifiedMPR_Behavior_r10_tvb, 4, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_5, modifiedMPR_Behavior_r10_tvb, 5, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_6, modifiedMPR_Behavior_r10_tvb, 6, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_7, modifiedMPR_Behavior_r10_tvb, 7, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_8, modifiedMPR_Behavior_r10_tvb, 8, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_9, modifiedMPR_Behavior_r10_tvb, 9, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_10, modifiedMPR_Behavior_r10_tvb, 10, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_11, modifiedMPR_Behavior_r10_tvb, 11, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_12, modifiedMPR_Behavior_r10_tvb, 12, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_13, modifiedMPR_Behavior_r10_tvb, 13, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_14, modifiedMPR_Behavior_r10_tvb, 14, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_15, modifiedMPR_Behavior_r10_tvb, 15, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_16, modifiedMPR_Behavior_r10_tvb, 16, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_17, modifiedMPR_Behavior_r10_tvb, 17, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_18, modifiedMPR_Behavior_r10_tvb, 18, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_19, modifiedMPR_Behavior_r10_tvb, 19, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_20, modifiedMPR_Behavior_r10_tvb, 20, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_21, modifiedMPR_Behavior_r10_tvb, 21, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_22, modifiedMPR_Behavior_r10_tvb, 22, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_23, modifiedMPR_Behavior_r10_tvb, 23, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_24, modifiedMPR_Behavior_r10_tvb, 24, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_25, modifiedMPR_Behavior_r10_tvb, 25, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_26, modifiedMPR_Behavior_r10_tvb, 26, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_27, modifiedMPR_Behavior_r10_tvb, 27, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_28, modifiedMPR_Behavior_r10_tvb, 28, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_29, modifiedMPR_Behavior_r10_tvb, 29, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_30, modifiedMPR_Behavior_r10_tvb, 30, 1, ENC_BIG_ENDIAN); - proto_tree_add_bits_item(subtree, hf_lte_rrc_modifiedMPR_Behavior_r10_mpr_ampr_31, modifiedMPR_Behavior_r10_tvb, 31, 1, ENC_BIG_ENDIAN); - } +static int +dissect_lte_rrc_T_maxRetxThreshold_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v10f0_sequence[] = { - { &hf_lte_rrc_modifiedMPR_Behavior_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_modifiedMPR_Behavior_r10 }, +static const per_sequence_t UL_AM_RLC_NB_r13_sequence[] = { + { &hf_lte_rrc_t_PollRetransmit_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_PollRetransmit_NB_r13 }, + { &hf_lte_rrc_maxRetxThreshold_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_maxRetxThreshold_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v10f0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UL_AM_RLC_NB_r13(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_lte_rrc_RF_Parameters_v10f0, RF_Parameters_v10f0_sequence); + ett_lte_rrc_UL_AM_RLC_NB_r13, UL_AM_RLC_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_fourLayerTM3_TM4_r10_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_enableStatusReportSN_Gap_r13_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_fourLayerTM3_TM4_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_enableStatusReportSN_Gap_r13(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, 1, NULL, FALSE, 0, NULL); @@ -77929,551 +94970,783 @@ dissect_lte_rrc_T_fourLayerTM3_TM4_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t CA_MIMO_ParametersDL_v10i0_sequence[] = { - { &hf_lte_rrc_fourLayerTM3_TM4_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fourLayerTM3_TM4_r10 }, +static const per_sequence_t DL_AM_RLC_NB_r13_sequence[] = { + { &hf_lte_rrc_enableStatusReportSN_Gap_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enableStatusReportSN_Gap_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CA_MIMO_ParametersDL_v10i0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DL_AM_RLC_NB_r13(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_lte_rrc_CA_MIMO_ParametersDL_v10i0, CA_MIMO_ParametersDL_v10i0_sequence); + ett_lte_rrc_DL_AM_RLC_NB_r13, DL_AM_RLC_NB_r13_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v10i0_sequence_of[1] = { - { &hf_lte_rrc_bandParametersDL_v10i0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CA_MIMO_ParametersDL_v10i0 }, +static const per_sequence_t T_am_01_sequence[] = { + { &hf_lte_rrc_ul_AM_RLC_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_AM_RLC_NB_r13 }, + { &hf_lte_rrc_dl_AM_RLC_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_AM_RLC_NB_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v10i0(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_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v10i0, SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v10i0_sequence_of, - 1, maxBandwidthClass_r10, FALSE); +dissect_lte_rrc_T_am_01(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_lte_rrc_T_am_01, T_am_01_sequence); return offset; } -static const per_sequence_t BandParameters_v10i0_sequence[] = { - { &hf_lte_rrc_bandParametersDL_v10i0, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxBandwidthClass_r10_OF_CA_MIMO_ParametersDL_v10i0 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_RLC_Config_NB_r13_vals[] = { + { 0, "am" }, + { 1, "um-Bi-Directional-r15" }, + { 2, "um-Uni-Directional-UL-r15" }, + { 3, "um-Uni-Directional-DL-r15" }, + { 0, NULL } +}; + +static const per_choice_t RLC_Config_NB_r13_choice[] = { + { 0, &hf_lte_rrc_am_01 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_am_01 }, + { 1, &hf_lte_rrc_um_Bi_Directional_r15_01, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_um_Uni_Directional_UL_r15_01, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_um_Uni_Directional_DL_r15_01, ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_BandParameters_v10i0(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_lte_rrc_BandParameters_v10i0, BandParameters_v10i0_sequence); +dissect_lte_rrc_RLC_Config_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + drb_mapping_t *mapping = private_data_get_drb_mapping(actx); + offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RLC_Config_NB_r13, RLC_Config_NB_r13_choice, + NULL); + + if (mapping != NULL) { + mapping->rlcMode = RLC_AM_MODE; + mapping->rlcMode_present = TRUE; + mapping->pdcp_sn_size = 7; + mapping->pdcp_sn_size_present = TRUE; + } + return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v10i0_sequence_of[1] = { - { &hf_lte_rrc_bandParameterList_v10i0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v10i0 }, +static const value_string lte_rrc_T_rlc_Config_r13_vals[] = { + { 0, "explicitValue" }, + { 1, "defaultValue" }, + { 0, NULL } +}; + +static const per_choice_t T_rlc_Config_r13_choice[] = { + { 0, &hf_lte_rrc_explicitValue_07, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RLC_Config_NB_r13 }, + { 1, &hf_lte_rrc_defaultValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v10i0(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v10i0, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v10i0_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_T_rlc_Config_r13(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_lte_rrc_T_rlc_Config_r13, T_rlc_Config_r13_choice, + NULL); return offset; } -static const per_sequence_t BandCombinationParameters_v10i0_sequence[] = { - { &hf_lte_rrc_bandParameterList_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v10i0 }, + +static int +dissect_lte_rrc_T_priority_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 value; + drb_mapping_t *mapping = private_data_get_drb_mapping(actx); + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, 16U, &value, FALSE); + + if (mapping != NULL) { + mapping->ul_priority = value; + mapping->ul_priority_present = TRUE; + } + + + return offset; +} + + +static const per_sequence_t LogicalChannelConfig_NB_r13_sequence[] = { + { &hf_lte_rrc_priority_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_priority_r13 }, + { &hf_lte_rrc_logicalChannelSR_Prohibit_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombinationParameters_v10i0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_LogicalChannelConfig_NB_r13(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_lte_rrc_BandCombinationParameters_v10i0, BandCombinationParameters_v10i0_sequence); + ett_lte_rrc_LogicalChannelConfig_NB_r13, LogicalChannelConfig_NB_r13_sequence); return offset; } -static const per_sequence_t SupportedBandCombination_v10i0_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v10i0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v10i0 }, +static const value_string lte_rrc_T_logicalChannelConfig_r13_vals[] = { + { 0, "explicitValue" }, + { 1, "defaultValue" }, + { 0, NULL } +}; + +static const per_choice_t T_logicalChannelConfig_r13_choice[] = { + { 0, &hf_lte_rrc_explicitValue_08, ASN1_NO_EXTENSIONS , dissect_lte_rrc_LogicalChannelConfig_NB_r13 }, + { 1, &hf_lte_rrc_defaultValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandCombination_v10i0(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_lte_rrc_SupportedBandCombination_v10i0, SupportedBandCombination_v10i0_sequence_of, - 1, maxBandComb_r10, FALSE); +dissect_lte_rrc_T_logicalChannelConfig_r13(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_lte_rrc_T_logicalChannelConfig_r13, T_logicalChannelConfig_r13_choice, + NULL); return offset; } -static const per_sequence_t RF_Parameters_v10i0_sequence[] = { - { &hf_lte_rrc_supportedBandCombination_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v10i0 }, +static const per_sequence_t RLC_Config_NB_v1430_sequence[] = { + { &hf_lte_rrc_t_Reordering_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_Reordering }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v10i0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RLC_Config_NB_v1430(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_lte_rrc_RF_Parameters_v10i0, RF_Parameters_v10i0_sequence); + ett_lte_rrc_RLC_Config_NB_v1430, RLC_Config_NB_v1430_sequence); return offset; } +static const per_sequence_t SRB_ToAddMod_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_rlc_Config_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_NB_v1430 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_lateNonCriticalExtension_10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UE_EUTRA_Capability_v10j0_IEs_PDU); +dissect_lte_rrc_SRB_ToAddMod_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SRB_ToAddMod_NB_r13_eag_1_sequence); return offset; } -static const per_sequence_t SupportedBandCombinationAdd_v11d0_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationAdd_v11d0_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v10i0 }, +static const per_sequence_t SRB_ToAddMod_NB_r13_sequence[] = { + { &hf_lte_rrc_rlc_Config_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rlc_Config_r13 }, + { &hf_lte_rrc_logicalChannelConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_logicalChannelConfig_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SRB_ToAddMod_NB_r13_eag_1 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandCombinationAdd_v11d0(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_lte_rrc_SupportedBandCombinationAdd_v11d0, SupportedBandCombinationAdd_v11d0_sequence_of, - 1, maxBandComb_r11, FALSE); +dissect_lte_rrc_SRB_ToAddMod_NB_r13(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_lte_rrc_SRB_ToAddMod_NB_r13, SRB_ToAddMod_NB_r13_sequence); return offset; } -static const per_sequence_t RF_Parameters_v11d0_sequence[] = { - { &hf_lte_rrc_supportedBandCombinationAdd_v11d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v11d0 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SRB_ToAddModList_NB_r13_sequence_of[1] = { + { &hf_lte_rrc_SRB_ToAddModList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SRB_ToAddMod_NB_r13 }, }; static int -dissect_lte_rrc_RF_Parameters_v11d0(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_lte_rrc_RF_Parameters_v11d0, RF_Parameters_v11d0_sequence); +dissect_lte_rrc_SRB_ToAddModList_NB_r13(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_lte_rrc_SRB_ToAddModList_NB_r13, SRB_ToAddModList_NB_r13_sequence_of, + 1, 1, FALSE); return offset; } -static const value_string lte_rrc_T_inDeviceCoexInd_UL_CA_r11_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_discardTimer_r13_vals[] = { + { 0, "ms5120" }, + { 1, "ms10240" }, + { 2, "ms20480" }, + { 3, "ms40960" }, + { 4, "ms81920" }, + { 5, "infinity" }, + { 6, "spare2" }, + { 7, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_inDeviceCoexInd_UL_CA_r11(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_discardTimer_r13(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t Other_Parameters_v11d0_sequence[] = { - { &hf_lte_rrc_inDeviceCoexInd_UL_CA_r11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_inDeviceCoexInd_UL_CA_r11 }, +static const per_sequence_t T_profiles_r13_sequence[] = { + { &hf_lte_rrc_profile0x0002, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0003, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0004, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0006, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0102, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0103, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_profile0x0104, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_Other_Parameters_v11d0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_profiles_r13(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_lte_rrc_Other_Parameters_v11d0, Other_Parameters_v11d0_sequence); + ett_lte_rrc_T_profiles_r13, T_profiles_r13_sequence); return offset; } -static const value_string lte_rrc_T_maxLayersMIMO_Indication_r12_vals[] = { - { 0, "supported" }, +static const per_sequence_t T_rohc_01_sequence[] = { + { &hf_lte_rrc_maxCID_r13 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_16383 }, + { &hf_lte_rrc_profiles_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_profiles_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_rohc_01(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_lte_rrc_T_rohc_01, T_rohc_01_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_headerCompression_r13_vals[] = { + { 0, "notUsed" }, + { 1, "rohc" }, { 0, NULL } }; +static const per_choice_t T_headerCompression_r13_choice[] = { + { 0, &hf_lte_rrc_notUsed , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_rohc_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_rohc_01 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_maxLayersMIMO_Indication_r12(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_headerCompression_r13(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_lte_rrc_T_headerCompression_r13, T_headerCompression_r13_choice, + NULL); return offset; } -static const per_sequence_t RF_Parameters_v12b0_sequence[] = { - { &hf_lte_rrc_maxLayersMIMO_Indication_r12, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_maxLayersMIMO_Indication_r12 }, +static const per_sequence_t PDCP_Config_NB_r13_sequence[] = { + { &hf_lte_rrc_discardTimer_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_discardTimer_r13 }, + { &hf_lte_rrc_headerCompression_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_headerCompression_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v12b0(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PDCP_Config_NB_r13(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_lte_rrc_RF_Parameters_v12b0, RF_Parameters_v12b0_sequence); + ett_lte_rrc_PDCP_Config_NB_r13, PDCP_Config_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_tm9_CE_ModeA_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_T_tm9_CE_ModeA_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_logicalChannelIdentity_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + guint32 value; + drb_mapping_t *mapping = private_data_get_drb_mapping(actx); + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 3U, 10U, &value, FALSE); + + if (mapping != NULL) { + mapping->lcid = (guint8)value; + mapping->lcid_present = TRUE; + } + return offset; } -static const value_string lte_rrc_T_tm9_CE_ModeB_r13_vals[] = { - { 0, "supported" }, - { 0, NULL } +static const per_sequence_t DRB_ToAddMod_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_rlc_Config_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_NB_v1430 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_tm9_CE_ModeB_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_DRB_ToAddMod_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DRB_ToAddMod_NB_r13_eag_1_sequence); return offset; } -static const per_sequence_t CE_Parameters_v1370_sequence[] = { - { &hf_lte_rrc_tm9_CE_ModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm9_CE_ModeA_r13 }, - { &hf_lte_rrc_tm9_CE_ModeB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm9_CE_ModeB_r13 }, +static const per_sequence_t DRB_ToAddMod_NB_r13_sequence[] = { + { &hf_lte_rrc_eps_BearerIdentity_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_drb_Identity_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, + { &hf_lte_rrc_pdcp_Config_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_Config_NB_r13 }, + { &hf_lte_rrc_rlc_Config_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_NB_r13 }, + { &hf_lte_rrc_logicalChannelIdentity_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_logicalChannelIdentity_r13 }, + { &hf_lte_rrc_logicalChannelConfig_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_LogicalChannelConfig_NB_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddMod_NB_r13_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CE_Parameters_v1370(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DRB_ToAddMod_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + struct mac_lte_info *p_mac_lte_info; + struct rlc_lte_info *p_rlc_lte_info; + /* Get the struct and clear it out */ + drb_mapping_t *drb_mapping = private_data_get_drb_mapping(actx); + memset(drb_mapping, 0, sizeof(*drb_mapping)); offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_CE_Parameters_v1370, CE_Parameters_v1370_sequence); + ett_lte_rrc_DRB_ToAddMod_NB_r13, DRB_ToAddMod_NB_r13_sequence); + + /* Need UE identifier */ + p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0); + if (p_mac_lte_info) { + drb_mapping->ueid = p_mac_lte_info->ueid; + /* Tell MAC about this mapping */ + set_mac_lte_channel_mapping(drb_mapping); + } + + /* Also tell RLC how many PDCP sequence number bits and whether it should use extended LI */ + p_rlc_lte_info = (rlc_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_rlc_lte, 0); + if (p_rlc_lte_info) { + if (drb_mapping->pdcp_sn_size_present) { + set_rlc_lte_drb_pdcp_seqnum_length(actx->pinfo, + p_rlc_lte_info->ueid, + drb_mapping->drbid, + drb_mapping->pdcp_sn_size); + } + if (drb_mapping->rlcMode_present) { + set_rlc_lte_drb_li_field(actx->pinfo, + p_rlc_lte_info->ueid, + drb_mapping->drbid, + drb_mapping->rlc_ul_ext_li_field, + drb_mapping->rlc_dl_ext_li_field); + } + } + + /* Clear out the struct again */ + memset(&drb_mapping, 0, sizeof(drb_mapping)); + return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1370_sequence[] = { - { &hf_lte_rrc_ce_Parameters_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CE_Parameters_v1370 }, - { NULL, 0, 0, NULL } +static const per_sequence_t DRB_ToAddModList_NB_r13_sequence_of[1] = { + { &hf_lte_rrc_DRB_ToAddModList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddMod_NB_r13 }, }; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1370(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1370, UE_EUTRA_CapabilityAddXDD_Mode_v1370_sequence); +dissect_lte_rrc_DRB_ToAddModList_NB_r13(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_lte_rrc_DRB_ToAddModList_NB_r13, DRB_ToAddModList_NB_r13_sequence_of, + 1, maxDRB_NB_r13, FALSE); return offset; } -static const per_sequence_t BandParameters_v1380_sequence[] = { - { &hf_lte_rrc_txAntennaSwitchDL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, - { &hf_lte_rrc_txAntennaSwitchUL_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_32 }, - { NULL, 0, 0, NULL } +static const per_sequence_t DRB_ToReleaseList_NB_r13_sequence_of[1] = { + { &hf_lte_rrc_DRB_ToReleaseList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, }; static int -dissect_lte_rrc_BandParameters_v1380(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_lte_rrc_BandParameters_v1380, BandParameters_v1380_sequence); +dissect_lte_rrc_DRB_ToReleaseList_NB_r13(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_lte_rrc_DRB_ToReleaseList_NB_r13, DRB_ToReleaseList_NB_r13_sequence_of, + 1, maxDRB_NB_r13, FALSE); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1380_sequence_of[1] = { - { &hf_lte_rrc_bandParameterList_v1380_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1380 }, +static const value_string lte_rrc_PeriodicBSR_Timer_NB_r13_vals[] = { + { 0, "pp2" }, + { 1, "pp4" }, + { 2, "pp8" }, + { 3, "pp16" }, + { 4, "pp64" }, + { 5, "pp128" }, + { 6, "infinity" }, + { 7, "spare" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1380(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1380, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1380_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_PeriodicBSR_Timer_NB_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandCombinationParameters_v1380_sequence[] = { - { &hf_lte_rrc_bandParameterList_v1380, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1380 }, +static const value_string lte_rrc_RetxBSR_Timer_NB_r13_vals[] = { + { 0, "pp4" }, + { 1, "pp16" }, + { 2, "pp64" }, + { 3, "pp128" }, + { 4, "pp256" }, + { 5, "pp512" }, + { 6, "infinity" }, + { 7, "spare" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_RetxBSR_Timer_NB_r13(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_ul_SCH_Config_r13_sequence[] = { + { &hf_lte_rrc_periodicBSR_Timer_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PeriodicBSR_Timer_NB_r13 }, + { &hf_lte_rrc_retxBSR_Timer_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RetxBSR_Timer_NB_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombinationParameters_v1380(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ul_SCH_Config_r13(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_lte_rrc_BandCombinationParameters_v1380, BandCombinationParameters_v1380_sequence); + ett_lte_rrc_T_ul_SCH_Config_r13, T_ul_SCH_Config_r13_sequence); return offset; } -static const per_sequence_t SupportedBandCombination_v1380_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v1380_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1380 }, +static const value_string lte_rrc_T_onDurationTimer_r13_vals[] = { + { 0, "pp1" }, + { 1, "pp2" }, + { 2, "pp3" }, + { 3, "pp4" }, + { 4, "pp8" }, + { 5, "pp16" }, + { 6, "pp32" }, + { 7, "spare" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombination_v1380(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_lte_rrc_SupportedBandCombination_v1380, SupportedBandCombination_v1380_sequence_of, - 1, maxBandComb_r10, FALSE); +dissect_lte_rrc_T_onDurationTimer_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandCombinationAdd_v1380_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationAdd_v1380_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1380 }, +static const value_string lte_rrc_T_drx_InactivityTimer_r13_vals[] = { + { 0, "pp0" }, + { 1, "pp1" }, + { 2, "pp2" }, + { 3, "pp3" }, + { 4, "pp4" }, + { 5, "pp8" }, + { 6, "pp16" }, + { 7, "pp32" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationAdd_v1380(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_lte_rrc_SupportedBandCombinationAdd_v1380, SupportedBandCombinationAdd_v1380_sequence_of, - 1, maxBandComb_r11, FALSE); +dissect_lte_rrc_T_drx_InactivityTimer_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SupportedBandCombinationReduced_v1380_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationReduced_v1380_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1380 }, +static const value_string lte_rrc_T_drx_RetransmissionTimer_r13_vals[] = { + { 0, "pp0" }, + { 1, "pp1" }, + { 2, "pp2" }, + { 3, "pp4" }, + { 4, "pp6" }, + { 5, "pp8" }, + { 6, "pp16" }, + { 7, "pp24" }, + { 8, "pp33" }, + { 9, "spare7" }, + { 10, "spare6" }, + { 11, "spare5" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationReduced_v1380(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_lte_rrc_SupportedBandCombinationReduced_v1380, SupportedBandCombinationReduced_v1380_sequence_of, - 1, maxBandComb_r13, FALSE); +dissect_lte_rrc_T_drx_RetransmissionTimer_r13(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v1380_sequence[] = { - { &hf_lte_rrc_supportedBandCombination_v1380, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1380 }, - { &hf_lte_rrc_supportedBandCombinationAdd_v1380, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1380 }, - { &hf_lte_rrc_supportedBandCombinationReduced_v1380, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1380 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_drx_Cycle_r13_vals[] = { + { 0, "sf256" }, + { 1, "sf512" }, + { 2, "sf1024" }, + { 3, "sf1536" }, + { 4, "sf2048" }, + { 5, "sf3072" }, + { 6, "sf4096" }, + { 7, "sf4608" }, + { 8, "sf6144" }, + { 9, "sf7680" }, + { 10, "sf8192" }, + { 11, "sf9216" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RF_Parameters_v1380(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_lte_rrc_RF_Parameters_v1380, RF_Parameters_v1380_sequence); +dissect_lte_rrc_T_drx_Cycle_r13(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_tm6_CE_ModeA_r13_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_drx_ULRetransmissionTimer_r13_01_vals[] = { + { 0, "pp0" }, + { 1, "pp1" }, + { 2, "pp2" }, + { 3, "pp4" }, + { 4, "pp6" }, + { 5, "pp8" }, + { 6, "pp16" }, + { 7, "pp24" }, + { 8, "pp33" }, + { 9, "pp40" }, + { 10, "pp64" }, + { 11, "pp80" }, + { 12, "pp96" }, + { 13, "pp112" }, + { 14, "pp128" }, + { 15, "pp160" }, + { 16, "pp320" }, { 0, NULL } }; +static value_string_ext lte_rrc_T_drx_ULRetransmissionTimer_r13_01_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_drx_ULRetransmissionTimer_r13_01_vals); + static int -dissect_lte_rrc_T_tm6_CE_ModeA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_drx_ULRetransmissionTimer_r13_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, - 1, NULL, FALSE, 0, NULL); + 17, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t CE_Parameters_v1380_sequence[] = { - { &hf_lte_rrc_tm6_CE_ModeA_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tm6_CE_ModeA_r13 }, +static const per_sequence_t T_setup_171_sequence[] = { + { &hf_lte_rrc_onDurationTimer_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_onDurationTimer_r13 }, + { &hf_lte_rrc_drx_InactivityTimer_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_InactivityTimer_r13 }, + { &hf_lte_rrc_drx_RetransmissionTimer_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_RetransmissionTimer_r13 }, + { &hf_lte_rrc_drx_Cycle_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_Cycle_r13 }, + { &hf_lte_rrc_drx_StartOffset_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_255 }, + { &hf_lte_rrc_drx_ULRetransmissionTimer_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_ULRetransmissionTimer_r13_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CE_Parameters_v1380(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_171(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_lte_rrc_CE_Parameters_v1380, CE_Parameters_v1380_sequence); + ett_lte_rrc_T_setup_171, T_setup_171_sequence); return offset; } -static const per_sequence_t UE_EUTRA_CapabilityAddXDD_Mode_v1380_sequence[] = { - { &hf_lte_rrc_ce_Parameters_v1380, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CE_Parameters_v1380 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_DRX_Config_NB_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t DRX_Config_NB_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_196 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_171 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1380(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_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1380, UE_EUTRA_CapabilityAddXDD_Mode_v1380_sequence); +dissect_lte_rrc_DRX_Config_NB_r13(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_lte_rrc_DRX_Config_NB_r13, DRX_Config_NB_r13_choice, + NULL); return offset; } -static const value_string lte_rrc_T_ue_CA_PowerClass_N_r13_vals[] = { - { 0, "class2" }, +static const value_string lte_rrc_T_logicalChannelSR_ProhibitTimer_r13_vals[] = { + { 0, "pp2" }, + { 1, "pp8" }, + { 2, "pp32" }, + { 3, "pp128" }, + { 4, "pp512" }, + { 5, "pp1024" }, + { 6, "pp2048" }, + { 7, "spare" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_CA_PowerClass_N_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r13(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t BandCombinationParameters_v1390_sequence[] = { - { &hf_lte_rrc_ue_CA_PowerClass_N_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_CA_PowerClass_N_r13 }, +static const per_sequence_t T_setup_169_sequence[] = { + { &hf_lte_rrc_logicalChannelSR_ProhibitTimer_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombinationParameters_v1390(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_169(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_lte_rrc_BandCombinationParameters_v1390, BandCombinationParameters_v1390_sequence); + ett_lte_rrc_T_setup_169, T_setup_169_sequence); return offset; } -static const per_sequence_t SupportedBandCombination_v1390_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v1390_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1390 }, +static const value_string lte_rrc_T_logicalChannelSR_Config_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } }; -static int -dissect_lte_rrc_SupportedBandCombination_v1390(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_lte_rrc_SupportedBandCombination_v1390, SupportedBandCombination_v1390_sequence_of, - 1, maxBandComb_r10, FALSE); - - return offset; -} - - -static const per_sequence_t SupportedBandCombinationAdd_v1390_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationAdd_v1390_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1390 }, +static const per_choice_t T_logicalChannelSR_Config_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_194 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_169 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandCombinationAdd_v1390(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_lte_rrc_SupportedBandCombinationAdd_v1390, SupportedBandCombinationAdd_v1390_sequence_of, - 1, maxBandComb_r11, FALSE); +dissect_lte_rrc_T_logicalChannelSR_Config_r13(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_lte_rrc_T_logicalChannelSR_Config_r13, T_logicalChannelSR_Config_r13_choice, + NULL); return offset; } -static const per_sequence_t SupportedBandCombinationReduced_v1390_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationReduced_v1390_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1390 }, +static const value_string lte_rrc_T_rai_Activation_r14_01_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SupportedBandCombinationReduced_v1390(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_lte_rrc_SupportedBandCombinationReduced_v1390, SupportedBandCombinationReduced_v1390_sequence_of, - 1, maxBandComb_r13, FALSE); +dissect_lte_rrc_T_rai_Activation_r14_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v1390_sequence[] = { - { &hf_lte_rrc_supportedBandCombination_v1390, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1390 }, - { &hf_lte_rrc_supportedBandCombinationAdd_v1390, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1390 }, - { &hf_lte_rrc_supportedBandCombinationReduced_v1390, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1390 }, +static const per_sequence_t T_setup_170_sequence[] = { + { &hf_lte_rrc_dataInactivityTimer_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DataInactivityTimer_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RF_Parameters_v1390(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_170(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_lte_rrc_RF_Parameters_v1390, RF_Parameters_v1390_sequence); - - return offset; -} - - - -static int -dissect_lte_rrc_INTEGER_2_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 2U, 20U, NULL, FALSE); + ett_lte_rrc_T_setup_170, T_setup_170_sequence); return offset; } -static const value_string lte_rrc_T_mbms_MaxBW_r14_vals[] = { - { 0, "implicitValue" }, - { 1, "explicitValue" }, +static const value_string lte_rrc_T_dataInactivityTimerConfig_r14_01_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; -static const per_choice_t T_mbms_MaxBW_r14_choice[] = { - { 0, &hf_lte_rrc_implicitValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_explicitValue_06, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_2_20 }, +static const per_choice_t T_dataInactivityTimerConfig_r14_01_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_195 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_170 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_mbms_MaxBW_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_dataInactivityTimerConfig_r14_01(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_lte_rrc_T_mbms_MaxBW_r14, T_mbms_MaxBW_r14_choice, + ett_lte_rrc_T_dataInactivityTimerConfig_r14_01, T_dataInactivityTimerConfig_r14_01_choice, NULL); return offset; } -static const value_string lte_rrc_T_mbms_ScalingFactor1dot25_r14_vals[] = { - { 0, "n3" }, - { 1, "n6" }, - { 2, "n9" }, - { 3, "n12" }, - { 0, NULL } +static const per_sequence_t MAC_MainConfig_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_rai_Activation_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rai_Activation_r14_01 }, + { &hf_lte_rrc_dataInactivityTimerConfig_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dataInactivityTimerConfig_r14_01 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_mbms_ScalingFactor1dot25_r14(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); +dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MAC_MainConfig_NB_r13_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_mbms_ScalingFactor7dot5_r14_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, +static const value_string lte_rrc_T_drx_Cycle_v1430_vals[] = { + { 0, "sf1280" }, + { 1, "sf2560" }, + { 2, "sf5120" }, + { 3, "sf10240" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mbms_ScalingFactor7dot5_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_drx_Cycle_v1430(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); @@ -78481,810 +95754,940 @@ dissect_lte_rrc_T_mbms_ScalingFactor7dot5_r14(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t MBMS_Parameters_v1470_sequence[] = { - { &hf_lte_rrc_mbms_MaxBW_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mbms_MaxBW_r14 }, - { &hf_lte_rrc_mbms_ScalingFactor1dot25_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_ScalingFactor1dot25_r14 }, - { &hf_lte_rrc_mbms_ScalingFactor7dot5_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mbms_ScalingFactor7dot5_r14 }, +static const per_sequence_t MAC_MainConfig_NB_r13_eag_2_sequence[] = { + { &hf_lte_rrc_drx_Cycle_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drx_Cycle_v1430 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MBMS_Parameters_v1470(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_lte_rrc_MBMS_Parameters_v1470, MBMS_Parameters_v1470_sequence); +dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MAC_MainConfig_NB_r13_eag_2_sequence); return offset; } -static const value_string lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14_vals[] = { - { 0, "n8" }, - { 1, "n12" }, - { 2, "n16" }, - { 3, "n20" }, - { 4, "n24" }, - { 5, "n28" }, +static const value_string lte_rrc_T_ra_CFRA_Config_r14_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ra_CFRA_Config_r14(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, - 6, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MIMO_UE_ParametersPerTM_v1470_sequence[] = { - { &hf_lte_rrc_csi_ReportingAdvancedMaxPorts_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14 }, +static const per_sequence_t MAC_MainConfig_NB_r13_eag_3_sequence[] = { + { &hf_lte_rrc_ra_CFRA_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ra_CFRA_Config_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1470(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_lte_rrc_MIMO_UE_ParametersPerTM_v1470, MIMO_UE_ParametersPerTM_v1470_sequence); +dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MAC_MainConfig_NB_r13_eag_3_sequence); return offset; } -static const per_sequence_t MIMO_UE_Parameters_v1470_sequence[] = { - { &hf_lte_rrc_parametersTM9_v1470, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1470 }, - { &hf_lte_rrc_parametersTM10_v1470, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_UE_ParametersPerTM_v1470 }, +static const per_sequence_t MAC_MainConfig_NB_r13_sequence[] = { + { &hf_lte_rrc_ul_SCH_Config_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_SCH_Config_r13 }, + { &hf_lte_rrc_drx_Config_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRX_Config_NB_r13 }, + { &hf_lte_rrc_timeAlignmentTimerDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TimeAlignmentTimer }, + { &hf_lte_rrc_logicalChannelSR_Config_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_logicalChannelSR_Config_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_3 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MIMO_UE_Parameters_v1470(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MAC_MainConfig_NB_r13(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_lte_rrc_MIMO_UE_Parameters_v1470, MIMO_UE_Parameters_v1470_sequence); + ett_lte_rrc_MAC_MainConfig_NB_r13, MAC_MainConfig_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_srs_UpPTS_6sym_r14_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_mac_MainConfig_r13_vals[] = { + { 0, "explicitValue-r13" }, + { 1, "defaultValue-r13" }, { 0, NULL } }; +static const per_choice_t T_mac_MainConfig_r13_choice[] = { + { 0, &hf_lte_rrc_explicitValue_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MAC_MainConfig_NB_r13 }, + { 1, &hf_lte_rrc_defaultValue_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_srs_UpPTS_6sym_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mac_MainConfig_r13(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_lte_rrc_T_mac_MainConfig_r13, T_mac_MainConfig_r13_choice, + NULL); + + return offset; +} + + +static const value_string lte_rrc_T_carrierFreqOffset_r13_vals[] = { + { 0, "v-10" }, + { 1, "v-9" }, + { 2, "v-8" }, + { 3, "v-7" }, + { 4, "v-6" }, + { 5, "v-5" }, + { 6, "v-4" }, + { 7, "v-3" }, + { 8, "v-2" }, + { 9, "v-1" }, + { 10, "v-0dot5" }, + { 11, "v0" }, + { 12, "v1" }, + { 13, "v2" }, + { 14, "v3" }, + { 15, "v4" }, + { 16, "v5" }, + { 17, "v6" }, + { 18, "v7" }, + { 19, "v8" }, + { 20, "v9" }, + { 0, NULL } +}; + +static value_string_ext lte_rrc_T_carrierFreqOffset_r13_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_carrierFreqOffset_r13_vals); + + +static int +dissect_lte_rrc_T_carrierFreqOffset_r13(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, - 1, NULL, FALSE, 0, NULL); + 21, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PhyLayerParameters_v1470_sequence[] = { - { &hf_lte_rrc_mimo_UE_Parameters_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_UE_Parameters_v1470 }, - { &hf_lte_rrc_srs_UpPTS_6sym_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_UpPTS_6sym_r14 }, +static const per_sequence_t CarrierFreq_NB_r13_sequence[] = { + { &hf_lte_rrc_carrierFreq_r13_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, + { &hf_lte_rrc_carrierFreqOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_carrierFreqOffset_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhyLayerParameters_v1470(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CarrierFreq_NB_r13(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_lte_rrc_PhyLayerParameters_v1470, PhyLayerParameters_v1470_sequence); + ett_lte_rrc_CarrierFreq_NB_r13, CarrierFreq_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14_01_vals[] = { - { 0, "n8" }, - { 1, "n12" }, - { 2, "n16" }, - { 3, "n20" }, - { 4, "n24" }, - { 5, "n28" }, +static const value_string lte_rrc_DL_Bitmap_NB_r13_vals[] = { + { 0, "subframePattern10-r13" }, + { 1, "subframePattern40-r13" }, { 0, NULL } }; +static const per_choice_t DL_Bitmap_NB_r13_choice[] = { + { 0, &hf_lte_rrc_subframePattern10_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { 1, &hf_lte_rrc_subframePattern40_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_40 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14_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, - 6, NULL, FALSE, 0, NULL); +dissect_lte_rrc_DL_Bitmap_NB_r13(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_lte_rrc_DL_Bitmap_NB_r13, DL_Bitmap_NB_r13_choice, + NULL); return offset; } -static const per_sequence_t MIMO_CA_ParametersPerBoBCPerTM_v1470_sequence[] = { - { &hf_lte_rrc_csi_ReportingAdvancedMaxPorts_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_csi_ReportingAdvancedMaxPorts_r14_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_downlinkBitmapNonAnchor_r13_vals[] = { + { 0, "useNoBitmap-r13" }, + { 1, "useAnchorBitmap-r13" }, + { 2, "explicitBitmapConfiguration-r13" }, + { 3, "spare" }, + { 0, NULL } +}; + +static const per_choice_t T_downlinkBitmapNonAnchor_r13_choice[] = { + { 0, &hf_lte_rrc_useNoBitmap_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_useAnchorBitmap_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_explicitBitmapConfiguration_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DL_Bitmap_NB_r13 }, + { 3, &hf_lte_rrc_spare , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1470(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_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1470, MIMO_CA_ParametersPerBoBCPerTM_v1470_sequence); +dissect_lte_rrc_T_downlinkBitmapNonAnchor_r13(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_lte_rrc_T_downlinkBitmapNonAnchor_r13, T_downlinkBitmapNonAnchor_r13_choice, + NULL); return offset; } -static const per_sequence_t MIMO_CA_ParametersPerBoBC_v1470_sequence[] = { - { &hf_lte_rrc_parametersTM9_v1470_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1470 }, - { &hf_lte_rrc_parametersTM10_v1470_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MIMO_CA_ParametersPerBoBCPerTM_v1470 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dl_GapThreshold_r13_vals[] = { + { 0, "n32" }, + { 1, "n64" }, + { 2, "n128" }, + { 3, "n256" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_v1470(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_lte_rrc_MIMO_CA_ParametersPerBoBC_v1470, MIMO_CA_ParametersPerBoBC_v1470_sequence); +dissect_lte_rrc_T_dl_GapThreshold_r13(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 per_sequence_t BandParameters_v1470_sequence[] = { - { &hf_lte_rrc_bandParametersDL_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MIMO_CA_ParametersPerBoBC_v1470 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dl_GapPeriodicity_r13_vals[] = { + { 0, "sf64" }, + { 1, "sf128" }, + { 2, "sf256" }, + { 3, "sf512" }, + { 0, NULL } }; + static int -dissect_lte_rrc_BandParameters_v1470(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_lte_rrc_BandParameters_v1470, BandParameters_v1470_sequence); +dissect_lte_rrc_T_dl_GapPeriodicity_r13(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 per_sequence_t SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470_sequence_of[1] = { - { &hf_lte_rrc_bandParameterList_v1470_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandParameters_v1470 }, +static const value_string lte_rrc_T_dl_GapDurationCoeff_r13_vals[] = { + { 0, "oneEighth" }, + { 1, "oneFourth" }, + { 2, "threeEighth" }, + { 3, "oneHalf" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470(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_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470, SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470_sequence_of, - 1, maxSimultaneousBands_r10, FALSE); +dissect_lte_rrc_T_dl_GapDurationCoeff_r13(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 per_sequence_t BandCombinationParameters_v1470_sequence[] = { - { &hf_lte_rrc_bandParameterList_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470 }, - { &hf_lte_rrc_srs_MaxSimultaneousCCs_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_31 }, +static const per_sequence_t DL_GapConfig_NB_r13_sequence[] = { + { &hf_lte_rrc_dl_GapThreshold_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_GapThreshold_r13 }, + { &hf_lte_rrc_dl_GapPeriodicity_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_GapPeriodicity_r13 }, + { &hf_lte_rrc_dl_GapDurationCoeff_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_GapDurationCoeff_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BandCombinationParameters_v1470(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DL_GapConfig_NB_r13(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_lte_rrc_BandCombinationParameters_v1470, BandCombinationParameters_v1470_sequence); + ett_lte_rrc_DL_GapConfig_NB_r13, DL_GapConfig_NB_r13_sequence); return offset; } -static const per_sequence_t SupportedBandCombination_v1470_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombination_v1470_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1470 }, +static const value_string lte_rrc_T_dl_GapNonAnchor_r13_vals[] = { + { 0, "useNoGap-r13" }, + { 1, "useAnchorGapConfig-r13" }, + { 2, "explicitGapConfiguration-r13" }, + { 3, "spare" }, + { 0, NULL } +}; + +static const per_choice_t T_dl_GapNonAnchor_r13_choice[] = { + { 0, &hf_lte_rrc_useNoGap_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_useAnchorGapConfig_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_explicitGapConfiguration_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DL_GapConfig_NB_r13 }, + { 3, &hf_lte_rrc_spare , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandCombination_v1470(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_lte_rrc_SupportedBandCombination_v1470, SupportedBandCombination_v1470_sequence_of, - 1, maxBandComb_r10, FALSE); +dissect_lte_rrc_T_dl_GapNonAnchor_r13(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_lte_rrc_T_dl_GapNonAnchor_r13, T_dl_GapNonAnchor_r13_choice, + NULL); return offset; } -static const per_sequence_t SupportedBandCombinationAdd_v1470_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationAdd_v1470_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1470 }, -}; static int -dissect_lte_rrc_SupportedBandCombinationAdd_v1470(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_lte_rrc_SupportedBandCombinationAdd_v1470, SupportedBandCombinationAdd_v1470_sequence_of, - 1, maxBandComb_r11, FALSE); +dissect_lte_rrc_INTEGER_M55_54(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + -55, 54U, NULL, FALSE); return offset; } -static const per_sequence_t SupportedBandCombinationReduced_v1470_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandCombinationReduced_v1470_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BandCombinationParameters_v1470 }, +static const per_sequence_t T_samePCI_r13_sequence[] = { + { &hf_lte_rrc_indexToMidPRB_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M55_54 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SupportedBandCombinationReduced_v1470(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_lte_rrc_SupportedBandCombinationReduced_v1470, SupportedBandCombinationReduced_v1470_sequence_of, - 1, maxBandComb_r13, FALSE); +dissect_lte_rrc_T_samePCI_r13(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_lte_rrc_T_samePCI_r13, T_samePCI_r13_sequence); return offset; } -static const per_sequence_t RF_Parameters_v1470_sequence[] = { - { &hf_lte_rrc_supportedBandCombination_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombination_v1470 }, - { &hf_lte_rrc_supportedBandCombinationAdd_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationAdd_v1470 }, - { &hf_lte_rrc_supportedBandCombinationReduced_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SupportedBandCombinationReduced_v1470 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_eutra_NumCRS_Ports_r13_01_vals[] = { + { 0, "same" }, + { 1, "four" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RF_Parameters_v1470(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_lte_rrc_RF_Parameters_v1470, RF_Parameters_v1470_sequence); +dissect_lte_rrc_T_eutra_NumCRS_Ports_r13_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, + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_70_sequence[] = { +static const per_sequence_t T_differentPCI_r13_sequence[] = { + { &hf_lte_rrc_eutra_NumCRS_Ports_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eutra_NumCRS_Ports_r13_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_70(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_differentPCI_r13(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_lte_rrc_T_nonCriticalExtension_70, T_nonCriticalExtension_70_sequence); + ett_lte_rrc_T_differentPCI_r13, T_differentPCI_r13_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1470_IEs_sequence[] = { - { &hf_lte_rrc_mbms_Parameters_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MBMS_Parameters_v1470 }, - { &hf_lte_rrc_phyLayerParameters_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v1470 }, - { &hf_lte_rrc_rf_Parameters_v1470, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1470 }, - { &hf_lte_rrc_nonCriticalExtension_216, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_70 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_samePCI_Indicator_r13_vals[] = { + { 0, "samePCI-r13" }, + { 1, "differentPCI-r13" }, + { 0, NULL } +}; + +static const per_choice_t T_samePCI_Indicator_r13_choice[] = { + { 0, &hf_lte_rrc_samePCI_r13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_samePCI_r13 }, + { 1, &hf_lte_rrc_differentPCI_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_differentPCI_r13 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1470_IEs(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_lte_rrc_UE_EUTRA_Capability_v1470_IEs, UE_EUTRA_Capability_v1470_IEs_sequence); +dissect_lte_rrc_T_samePCI_Indicator_r13(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_lte_rrc_T_samePCI_Indicator_r13, T_samePCI_Indicator_r13_choice, + NULL); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v13x0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_215, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1470_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_eutraControlRegionSize_r13_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_Capability_v13x0_IEs(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_lte_rrc_UE_EUTRA_Capability_v13x0_IEs, UE_EUTRA_Capability_v13x0_IEs_sequence); +dissect_lte_rrc_T_eutraControlRegionSize_r13_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, + 3, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1390_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v1390, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1390 }, - { &hf_lte_rrc_nonCriticalExtension_214, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v13x0_IEs }, +static const per_sequence_t T_inbandCarrierInfo_r13_sequence[] = { + { &hf_lte_rrc_samePCI_Indicator_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_samePCI_Indicator_r13 }, + { &hf_lte_rrc_eutraControlRegionSize_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eutraControlRegionSize_r13_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1390_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_inbandCarrierInfo_r13(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_lte_rrc_UE_EUTRA_Capability_v1390_IEs, UE_EUTRA_Capability_v1390_IEs_sequence); + ett_lte_rrc_T_inbandCarrierInfo_r13, T_inbandCarrierInfo_r13_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1380_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v1380, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v1380 }, - { &hf_lte_rrc_ce_Parameters_v1380, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CE_Parameters_v1380 }, - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1380, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1380 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1380, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1380 }, - { &hf_lte_rrc_nonCriticalExtension_213, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1390_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nrs_PowerOffsetNonAnchor_v1330_vals[] = { + { 0, "dB-12" }, + { 1, "dB-10" }, + { 2, "dB-8" }, + { 3, "dB-6" }, + { 4, "dB-4" }, + { 5, "dB-2" }, + { 6, "dB0" }, + { 7, "dB3" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_Capability_v1380_IEs(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_lte_rrc_UE_EUTRA_Capability_v1380_IEs, UE_EUTRA_Capability_v1380_IEs_sequence); +dissect_lte_rrc_T_nrs_PowerOffsetNonAnchor_v1330(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v1370_IEs_sequence[] = { - { &hf_lte_rrc_ce_Parameters_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CE_Parameters_v1370 }, - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1370 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1370, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1370 }, - { &hf_lte_rrc_nonCriticalExtension_212, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1380_IEs }, +static const per_sequence_t DL_CarrierConfigDedicated_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_nrs_PowerOffsetNonAnchor_v1330, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nrs_PowerOffsetNonAnchor_v1330 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v1370_IEs(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_lte_rrc_UE_EUTRA_Capability_v1370_IEs, UE_EUTRA_Capability_v1370_IEs_sequence); +dissect_lte_rrc_DL_CarrierConfigDedicated_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DL_CarrierConfigDedicated_NB_r13_eag_1_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v12x0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_211, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v1370_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_dl_GapPeriodicity_v1530_vals[] = { + { 0, "sf1024" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_Capability_v12x0_IEs(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_lte_rrc_UE_EUTRA_Capability_v12x0_IEs, UE_EUTRA_Capability_v12x0_IEs_sequence); +dissect_lte_rrc_T_dl_GapPeriodicity_v1530(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v12b0_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v12b0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v12b0 }, - { &hf_lte_rrc_nonCriticalExtension_210, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v12x0_IEs }, +static const per_sequence_t DL_GapConfig_NB_v1530_sequence[] = { + { &hf_lte_rrc_dl_GapPeriodicity_v1530, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_GapPeriodicity_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v12b0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DL_GapConfig_NB_v1530(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_lte_rrc_UE_EUTRA_Capability_v12b0_IEs, UE_EUTRA_Capability_v12b0_IEs_sequence); + ett_lte_rrc_DL_GapConfig_NB_v1530, DL_GapConfig_NB_v1530_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v11x0_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_209, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v12b0_IEs }, +static const per_sequence_t DL_CarrierConfigDedicated_NB_r13_eag_2_sequence[] = { + { &hf_lte_rrc_dl_GapNonAnchor_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DL_GapConfig_NB_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v11x0_IEs(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_lte_rrc_UE_EUTRA_Capability_v11x0_IEs, UE_EUTRA_Capability_v11x0_IEs_sequence); +dissect_lte_rrc_DL_CarrierConfigDedicated_NB_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DL_CarrierConfigDedicated_NB_r13_eag_2_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v11d0_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v11d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v11d0 }, - { &hf_lte_rrc_otherParameters_v11d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_Other_Parameters_v11d0 }, - { &hf_lte_rrc_nonCriticalExtension_208, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v11x0_IEs }, +static const per_sequence_t DL_CarrierConfigDedicated_NB_r13_sequence[] = { + { &hf_lte_rrc_dl_CarrierFreq_r13_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreq_NB_r13 }, + { &hf_lte_rrc_downlinkBitmapNonAnchor_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_downlinkBitmapNonAnchor_r13 }, + { &hf_lte_rrc_dl_GapNonAnchor_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dl_GapNonAnchor_r13 }, + { &hf_lte_rrc_inbandCarrierInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_inbandCarrierInfo_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CarrierConfigDedicated_NB_r13_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CarrierConfigDedicated_NB_r13_eag_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v11d0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DL_CarrierConfigDedicated_NB_r13(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_lte_rrc_UE_EUTRA_Capability_v11d0_IEs, UE_EUTRA_Capability_v11d0_IEs_sequence); + ett_lte_rrc_DL_CarrierConfigDedicated_NB_r13, DL_CarrierConfigDedicated_NB_r13_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v10i0_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v10i0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v10i0 }, - { &hf_lte_rrc_lateNonCriticalExtension_11, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_lateNonCriticalExtension_10 }, - { &hf_lte_rrc_nonCriticalExtension_206, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v11d0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_TDD_UL_DL_AlignmentOffset_NB_r15_vals[] = { + { 0, "khz-7dot5" }, + { 1, "khz0" }, + { 2, "khz7dot5" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_Capability_v10i0_IEs(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_lte_rrc_UE_EUTRA_Capability_v10i0_IEs, UE_EUTRA_Capability_v10i0_IEs_sequence); +dissect_lte_rrc_TDD_UL_DL_AlignmentOffset_NB_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v10f0_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v10f0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v10f0 }, - { &hf_lte_rrc_nonCriticalExtension_205, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v10i0_IEs }, +static const per_sequence_t UL_CarrierConfigDedicated_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_tdd_UL_DL_AlignmentOffset_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_UL_DL_AlignmentOffset_NB_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v10f0_IEs(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_lte_rrc_UE_EUTRA_Capability_v10f0_IEs, UE_EUTRA_Capability_v10f0_IEs_sequence); +dissect_lte_rrc_UL_CarrierConfigDedicated_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UL_CarrierConfigDedicated_NB_r13_eag_1_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v10c0_IEs_sequence[] = { - { &hf_lte_rrc_otdoa_PositioningCapabilities_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OTDOA_PositioningCapabilities_r10 }, - { &hf_lte_rrc_nonCriticalExtension_204, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v10f0_IEs }, +static const per_sequence_t UL_CarrierConfigDedicated_NB_r13_sequence[] = { + { &hf_lte_rrc_ul_CarrierFreq_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreq_NB_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CarrierConfigDedicated_NB_r13_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v10c0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UL_CarrierConfigDedicated_NB_r13(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_lte_rrc_UE_EUTRA_Capability_v10c0_IEs, UE_EUTRA_Capability_v10c0_IEs_sequence); + ett_lte_rrc_UL_CarrierConfigDedicated_NB_r13, UL_CarrierConfigDedicated_NB_r13_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v9h0_IEs_sequence[] = { - { &hf_lte_rrc_interRAT_ParametersUTRA_v9h0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_v9h0 }, - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_203, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v10c0_IEs }, +static const per_sequence_t CarrierConfigDedicated_NB_r13_sequence[] = { + { &hf_lte_rrc_dl_CarrierConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CarrierConfigDedicated_NB_r13 }, + { &hf_lte_rrc_ul_CarrierConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CarrierConfigDedicated_NB_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v9h0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_CarrierConfigDedicated_NB_r13(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_lte_rrc_UE_EUTRA_Capability_v9h0_IEs, UE_EUTRA_Capability_v9h0_IEs_sequence); + ett_lte_rrc_CarrierConfigDedicated_NB_r13, CarrierConfigDedicated_NB_r13_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v9e0_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v9e0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v9e0 }, - { &hf_lte_rrc_nonCriticalExtension_202, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v9h0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_npdcch_NumRepetitions_r13_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "r128" }, + { 8, "r256" }, + { 9, "r512" }, + { 10, "r1024" }, + { 11, "r2048" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_Capability_v9e0_IEs(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_lte_rrc_UE_EUTRA_Capability_v9e0_IEs, UE_EUTRA_Capability_v9e0_IEs_sequence); +dissect_lte_rrc_T_npdcch_NumRepetitions_r13(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v9d0_IEs_sequence[] = { - { &hf_lte_rrc_phyLayerParameters_v9d0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_v9d0 }, - { &hf_lte_rrc_nonCriticalExtension_201, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v9e0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_npdcch_StartSF_USS_r13_vals[] = { + { 0, "v1dot5" }, + { 1, "v2" }, + { 2, "v4" }, + { 3, "v8" }, + { 4, "v16" }, + { 5, "v32" }, + { 6, "v48" }, + { 7, "v64" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_Capability_v9d0_IEs(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_lte_rrc_UE_EUTRA_Capability_v9d0_IEs, UE_EUTRA_Capability_v9d0_IEs_sequence); +dissect_lte_rrc_T_npdcch_StartSF_USS_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v9c0_IEs_sequence[] = { - { &hf_lte_rrc_interRAT_ParametersUTRA_v9c0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IRAT_ParametersUTRA_v9c0 }, - { &hf_lte_rrc_nonCriticalExtension_200, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v9d0_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_npdcch_Offset_USS_r13_vals[] = { + { 0, "zero" }, + { 1, "oneEighth" }, + { 2, "oneFourth" }, + { 3, "threeEighth" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UE_EUTRA_Capability_v9c0_IEs(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_lte_rrc_UE_EUTRA_Capability_v9c0_IEs, UE_EUTRA_Capability_v9c0_IEs_sequence); +dissect_lte_rrc_T_npdcch_Offset_USS_r13(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 per_sequence_t UE_EUTRA_Capability_v9a0_IEs_sequence[] = { - { &hf_lte_rrc_featureGroupIndRel9Add_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_featureGroupIndRel9Add_r9 }, - { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_r9 }, - { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_r9, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_r9 }, - { &hf_lte_rrc_nonCriticalExtension_199, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_EUTRA_Capability_v9c0_IEs }, +static const per_sequence_t NPDCCH_ConfigDedicated_NB_r13_sequence[] = { + { &hf_lte_rrc_npdcch_NumRepetitions_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_NumRepetitions_r13 }, + { &hf_lte_rrc_npdcch_StartSF_USS_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_StartSF_USS_r13 }, + { &hf_lte_rrc_npdcch_Offset_USS_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_Offset_USS_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v9a0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NPDCCH_ConfigDedicated_NB_r13(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_lte_rrc_UE_EUTRA_Capability_v9a0_IEs, UE_EUTRA_Capability_v9a0_IEs_sequence); + ett_lte_rrc_NPDCCH_ConfigDedicated_NB_r13, NPDCCH_ConfigDedicated_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_multiNS_Pmax_r10_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_ACK_NACK_NumRepetitions_NB_r13_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "r128" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multiNS_Pmax_r10(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ACK_NACK_NumRepetitions_NB_r13(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RF_Parameters_v10j0_sequence[] = { - { &hf_lte_rrc_multiNS_Pmax_r10, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiNS_Pmax_r10 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_groupHoppingDisabled_r13_01_vals[] = { + { 0, "true" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RF_Parameters_v10j0(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_lte_rrc_RF_Parameters_v10j0, RF_Parameters_v10j0_sequence); +dissect_lte_rrc_T_groupHoppingDisabled_r13_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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_69_sequence[] = { +static const per_sequence_t NPUSCH_ConfigDedicated_NB_r13_sequence[] = { + { &hf_lte_rrc_ack_NACK_NumRepetitions_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ACK_NACK_NumRepetitions_NB_r13 }, + { &hf_lte_rrc_npusch_AllSymbols_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_groupHoppingDisabled_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_groupHoppingDisabled_r13_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_69(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NPUSCH_ConfigDedicated_NB_r13(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_lte_rrc_T_nonCriticalExtension_69, T_nonCriticalExtension_69_sequence); + ett_lte_rrc_NPUSCH_ConfigDedicated_NB_r13, NPUSCH_ConfigDedicated_NB_r13_sequence); return offset; } -static const per_sequence_t UE_EUTRA_Capability_v10j0_IEs_sequence[] = { - { &hf_lte_rrc_rf_Parameters_v10j0, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RF_Parameters_v10j0 }, - { &hf_lte_rrc_nonCriticalExtension_207, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_69 }, +static const per_sequence_t UplinkPowerControlDedicated_NB_r13_sequence[] = { + { &hf_lte_rrc_p0_UE_NPUSCH_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_7 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_EUTRA_Capability_v10j0_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UplinkPowerControlDedicated_NB_r13(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_lte_rrc_UE_EUTRA_Capability_v10j0_IEs, UE_EUTRA_Capability_v10j0_IEs_sequence); + ett_lte_rrc_UplinkPowerControlDedicated_NB_r13, UplinkPowerControlDedicated_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_sl_Bandwidth_r12_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, +static const value_string lte_rrc_T_twoHARQ_ProcessesConfig_r14_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_sl_Bandwidth_r12(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_twoHARQ_ProcessesConfig_r14(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, - 6, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MasterInformationBlock_SL_sequence[] = { - { &hf_lte_rrc_sl_Bandwidth_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sl_Bandwidth_r12 }, - { &hf_lte_rrc_tdd_ConfigSL_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TDD_ConfigSL_r12 }, - { &hf_lte_rrc_directFrameNumber_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, - { &hf_lte_rrc_directSubframeNumber_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_9 }, - { &hf_lte_rrc_inCoverage_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_reserved_r12, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_19 }, +static const per_sequence_t PhysicalConfigDedicated_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_twoHARQ_ProcessesConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_twoHARQ_ProcessesConfig_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MasterInformationBlock_SL(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MasterInformationBlock-SL"); - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_MasterInformationBlock_SL, MasterInformationBlock_SL_sequence); +dissect_lte_rrc_PhysicalConfigDedicated_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicated_NB_r13_eag_1_sequence); return offset; } +static const value_string lte_rrc_T_interferenceRandomisationConfig_r14_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_SBCCH_SL_BCH_MessageType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_lte_rrc_MasterInformationBlock_SL(tvb, offset, actx, tree, hf_index); +dissect_lte_rrc_T_interferenceRandomisationConfig_r14(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, + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t SBCCH_SL_BCH_Message_sequence[] = { - { &hf_lte_rrc_message_12 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SBCCH_SL_BCH_MessageType }, +static const per_sequence_t PhysicalConfigDedicated_NB_r13_eag_2_sequence[] = { + { &hf_lte_rrc_interferenceRandomisationConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interferenceRandomisationConfig_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SBCCH_SL_BCH_Message(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_lte_rrc_SBCCH_SL_BCH_Message, SBCCH_SL_BCH_Message_sequence); +dissect_lte_rrc_PhysicalConfigDedicated_NB_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicated_NB_r13_eag_2_sequence); return offset; } -static const value_string lte_rrc_T_sl_Bandwidth_r14_01_vals[] = { - { 0, "n6" }, - { 1, "n15" }, - { 2, "n25" }, - { 3, "n50" }, - { 4, "n75" }, - { 5, "n100" }, +static const value_string lte_rrc_T_npdcch_StartSF_USS_v1530_vals[] = { + { 0, "v96" }, + { 1, "v128" }, { 0, NULL } }; static int -dissect_lte_rrc_T_sl_Bandwidth_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_npdcch_StartSF_USS_v1530(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, - 6, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } +static const per_sequence_t NPDCCH_ConfigDedicated_NB_v1530_sequence[] = { + { &hf_lte_rrc_npdcch_StartSF_USS_v1530, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_StartSF_USS_v1530 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_BIT_STRING_SIZE_27(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, - 27, 27, FALSE, NULL, NULL); +dissect_lte_rrc_NPDCCH_ConfigDedicated_NB_v1530(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_lte_rrc_NPDCCH_ConfigDedicated_NB_v1530, NPDCCH_ConfigDedicated_NB_v1530_sequence); return offset; } -static const per_sequence_t MasterInformationBlock_SL_V2X_r14_sequence[] = { - { &hf_lte_rrc_sl_Bandwidth_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sl_Bandwidth_r14_01 }, - { &hf_lte_rrc_tdd_ConfigSL_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TDD_ConfigSL_r12 }, - { &hf_lte_rrc_directFrameNumber_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, - { &hf_lte_rrc_directSubframeNumber_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_9 }, - { &hf_lte_rrc_inCoverage_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_reserved_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_27 }, +static const per_sequence_t PhysicalConfigDedicated_NB_r13_eag_3_sequence[] = { + { &hf_lte_rrc_npdcch_ConfigDedicated_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NPDCCH_ConfigDedicated_NB_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MasterInformationBlock_SL_V2X_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MasterInformationBlock-SL-V2X-r14"); - - - offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_MasterInformationBlock_SL_V2X_r14, MasterInformationBlock_SL_V2X_r14_sequence); +dissect_lte_rrc_PhysicalConfigDedicated_NB_r13_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicated_NB_r13_eag_3_sequence); return offset; } +static const per_sequence_t PhysicalConfigDedicated_NB_r13_sequence[] = { + { &hf_lte_rrc_carrierConfigDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierConfigDedicated_NB_r13 }, + { &hf_lte_rrc_npdcch_ConfigDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NPDCCH_ConfigDedicated_NB_r13 }, + { &hf_lte_rrc_npusch_ConfigDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NPUSCH_ConfigDedicated_NB_r13 }, + { &hf_lte_rrc_uplinkPowerControlDedicated_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicated_NB_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_NB_r13_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_NB_r13_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_NB_r13_eag_3 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_SBCCH_SL_BCH_MessageType_V2X_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_lte_rrc_MasterInformationBlock_SL_V2X_r14(tvb, offset, actx, tree, hf_index); +dissect_lte_rrc_PhysicalConfigDedicated_NB_r13(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_lte_rrc_PhysicalConfigDedicated_NB_r13, PhysicalConfigDedicated_NB_r13_sequence); return offset; } -static const per_sequence_t SBCCH_SL_BCH_Message_V2X_r14_sequence[] = { - { &hf_lte_rrc_message_13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SBCCH_SL_BCH_MessageType_V2X_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_t301_r13_vals[] = { + { 0, "ms2500" }, + { 1, "ms4000" }, + { 2, "ms6000" }, + { 3, "ms10000" }, + { 4, "ms15000" }, + { 5, "ms25000" }, + { 6, "ms40000" }, + { 7, "ms60000" }, + { 0, NULL } }; + static int -dissect_lte_rrc_SBCCH_SL_BCH_Message_V2X_r14(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_lte_rrc_SBCCH_SL_BCH_Message_V2X_r14, SBCCH_SL_BCH_Message_V2X_r14_sequence); +dissect_lte_rrc_T_t301_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_AccessStratumRelease_NB_r13_vals[] = { - { 0, "rel13" }, - { 1, "rel14" }, - { 2, "spare6" }, - { 3, "spare5" }, - { 4, "spare4" }, - { 5, "spare3" }, - { 6, "spare2" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_t310_r13_vals[] = { + { 0, "ms0" }, + { 1, "ms200" }, + { 2, "ms500" }, + { 3, "ms1000" }, + { 4, "ms2000" }, + { 5, "ms4000" }, + { 6, "ms8000" }, { 0, NULL } }; static int -dissect_lte_rrc_AccessStratumRelease_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t310_r13(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, - 8, NULL, TRUE, 0, NULL); + 7, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ue_Category_NB_r13_vals[] = { - { 0, "nb1" }, +static const value_string lte_rrc_T_n310_r13_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n6" }, + { 5, "n8" }, + { 6, "n10" }, + { 7, "n20" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ue_Category_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_n310_r13(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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_multipleDRB_r13_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_t311_r13_vals[] = { + { 0, "ms1000" }, + { 1, "ms3000" }, + { 2, "ms5000" }, + { 3, "ms10000" }, + { 4, "ms15000" }, + { 5, "ms20000" }, + { 6, "ms30000" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multipleDRB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t311_r13(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, - 1, NULL, FALSE, 0, NULL); + 7, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_supportedROHC_Profiles_r13_sequence[] = { - { &hf_lte_rrc_profile0x0002, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0003, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0004, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0006, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0102, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0103, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0104, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_n311_r13_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n3" }, + { 3, "n4" }, + { 4, "n5" }, + { 5, "n6" }, + { 6, "n8" }, + { 7, "n10" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_supportedROHC_Profiles_r13(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_lte_rrc_T_supportedROHC_Profiles_r13, T_supportedROHC_Profiles_r13_sequence); +dissect_lte_rrc_T_n311_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_maxNumberROHC_ContextSessions_r13_vals[] = { - { 0, "cs2" }, - { 1, "cs4" }, - { 2, "cs8" }, - { 3, "cs12" }, +static const value_string lte_rrc_T_t311_v1350_vals[] = { + { 0, "ms40000" }, + { 1, "ms60000" }, + { 2, "ms90000" }, + { 3, "ms120000" }, { 0, NULL } }; static int -dissect_lte_rrc_T_maxNumberROHC_ContextSessions_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t311_v1350(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); @@ -79292,84 +96695,116 @@ dissect_lte_rrc_T_maxNumberROHC_ContextSessions_r13(tvbuff_t *tvb _U_, int offse } -static const per_sequence_t PDCP_Parameters_NB_r13_sequence[] = { - { &hf_lte_rrc_supportedROHC_Profiles_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_supportedROHC_Profiles_r13 }, - { &hf_lte_rrc_maxNumberROHC_ContextSessions_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_maxNumberROHC_ContextSessions_r13 }, +static const per_sequence_t T_eag_1_05_sequence[] = { + { &hf_lte_rrc_t311_v1350 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t311_v1350 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PDCP_Parameters_NB_r13(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_lte_rrc_PDCP_Parameters_NB_r13, PDCP_Parameters_NB_r13_sequence); +dissect_lte_rrc_T_eag_1_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_1_05_sequence); return offset; } -static const value_string lte_rrc_T_multiTone_r13_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_t301_v1530_vals[] = { + { 0, "ms80000" }, + { 1, "ms100000" }, + { 2, "ms120000" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multiTone_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t301_v1530(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, - 1, NULL, FALSE, 0, NULL); + 3, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_multiCarrier_r13_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_t311_v1530_vals[] = { + { 0, "ms160000" }, + { 1, "ms200000" }, { 0, NULL } }; static int -dissect_lte_rrc_T_multiCarrier_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_t311_v1530(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, - 1, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PhyLayerParameters_NB_r13_sequence[] = { - { &hf_lte_rrc_multiTone_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiTone_r13 }, - { &hf_lte_rrc_multiCarrier_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiCarrier_r13 }, +static const per_sequence_t T_eag_2_03_sequence[] = { + { &hf_lte_rrc_t301_v1530 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t301_v1530 }, + { &hf_lte_rrc_t311_v1530 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t311_v1530 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhyLayerParameters_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_eag_2_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_2_03_sequence); + + return offset; +} + + +static const per_sequence_t T_setup_172_sequence[] = { + { &hf_lte_rrc_t301_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t301_r13 }, + { &hf_lte_rrc_t310_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t310_r13 }, + { &hf_lte_rrc_n310_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n310_r13 }, + { &hf_lte_rrc_t311_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t311_r13 }, + { &hf_lte_rrc_n311_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n311_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_1_05 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_2_03 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_setup_172(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_lte_rrc_PhyLayerParameters_NB_r13, PhyLayerParameters_NB_r13_sequence); + ett_lte_rrc_T_setup_172, T_setup_172_sequence); return offset; } +static const value_string lte_rrc_RLF_TimersAndConstants_NB_r13_vals[] = { + { 0, "release" }, + { 1, "setup" }, + { 0, NULL } +}; + +static const per_choice_t RLF_TimersAndConstants_NB_r13_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_197 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_172 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_FreqBandIndicator_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxFBI2, NULL, FALSE); +dissect_lte_rrc_RLF_TimersAndConstants_NB_r13(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_lte_rrc_RLF_TimersAndConstants_NB_r13, RLF_TimersAndConstants_NB_r13_choice, + NULL); return offset; } -static const value_string lte_rrc_T_powerClassNB_20dBm_r13_vals[] = { - { 0, "supported" }, +static const value_string lte_rrc_T_sr_WithHARQ_ACK_Config_r15_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_powerClassNB_20dBm_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sr_WithHARQ_ACK_Config_r15(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, 1, NULL, FALSE, 0, NULL); @@ -79377,143 +96812,160 @@ dissect_lte_rrc_T_powerClassNB_20dBm_r13(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const per_sequence_t SupportedBand_NB_r13_sequence[] = { - { &hf_lte_rrc_band_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_FreqBandIndicator_NB_r13 }, - { &hf_lte_rrc_powerClassNB_20dBm_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerClassNB_20dBm_r13 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SupportedBand_NB_r13(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_lte_rrc_SupportedBand_NB_r13, SupportedBand_NB_r13_sequence); +dissect_lte_rrc_INTEGER_0_maxNonAnchorCarriers_NB_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, maxNonAnchorCarriers_NB_r14, NULL, FALSE); return offset; } -static const per_sequence_t SupportedBandList_NB_r13_sequence_of[1] = { - { &hf_lte_rrc_SupportedBandList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBand_NB_r13 }, -}; static int -dissect_lte_rrc_SupportedBandList_NB_r13(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_lte_rrc_SupportedBandList_NB_r13, SupportedBandList_NB_r13_sequence_of, - 1, maxBands, FALSE); +dissect_lte_rrc_INTEGER_1_maxNPRACH_Resources_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxNPRACH_Resources_NB_r13, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_multiNS_Pmax_r13_vals[] = { - { 0, "supported" }, + +static int +dissect_lte_rrc_INTEGER_0_47(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 47U, NULL, FALSE); + + return offset; +} + + + +static int +dissect_lte_rrc_INTEGER_0_143(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 143U, NULL, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_nprach_SubCarrierIndex_r15_vals[] = { + { 0, "nprach-Fmt0Fmt1-r15" }, + { 1, "nprach-Fmt2-r15" }, { 0, NULL } }; +static const per_choice_t T_nprach_SubCarrierIndex_r15_choice[] = { + { 0, &hf_lte_rrc_nprach_Fmt0Fmt1_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_47 }, + { 1, &hf_lte_rrc_nprach_Fmt2_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_INTEGER_0_143 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_multiNS_Pmax_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_nprach_SubCarrierIndex_r15(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_lte_rrc_T_nprach_SubCarrierIndex_r15, T_nprach_SubCarrierIndex_r15_choice, + NULL); return offset; } -static const per_sequence_t RF_Parameters_NB_r13_sequence[] = { - { &hf_lte_rrc_supportedBandList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SupportedBandList_NB_r13 }, - { &hf_lte_rrc_multiNS_Pmax_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiNS_Pmax_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_alpha_r15_vals[] = { + { 0, "al0" }, + { 1, "al04" }, + { 2, "al05" }, + { 3, "al06" }, + { 4, "al07" }, + { 5, "al08" }, + { 6, "al09" }, + { 7, "al1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RF_Parameters_NB_r13(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_lte_rrc_RF_Parameters_NB_r13, RF_Parameters_NB_r13_sequence); +dissect_lte_rrc_T_alpha_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_dummy_03_sequence[] = { +static const per_sequence_t SR_NPRACH_Resource_NB_r15_sequence[] = { + { &hf_lte_rrc_nprach_CarrierIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_maxNonAnchorCarriers_NB_r14 }, + { &hf_lte_rrc_nprach_ResourceIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_maxNPRACH_Resources_NB_r13 }, + { &hf_lte_rrc_nprach_SubCarrierIndex_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_SubCarrierIndex_r15 }, + { &hf_lte_rrc_p0_SR_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, + { &hf_lte_rrc_alpha_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_alpha_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_dummy_03(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SR_NPRACH_Resource_NB_r15(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_lte_rrc_T_dummy_03, T_dummy_03_sequence); + ett_lte_rrc_SR_NPRACH_Resource_NB_r15, SR_NPRACH_Resource_NB_r15_sequence); return offset; } -static const per_sequence_t UE_Capability_NB_r13_sequence[] = { - { &hf_lte_rrc_accessStratumRelease_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AccessStratumRelease_NB_r13 }, - { &hf_lte_rrc_ue_Category_NB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_Category_NB_r13 }, - { &hf_lte_rrc_multipleDRB_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multipleDRB_r13 }, - { &hf_lte_rrc_pdcp_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_Parameters_NB_r13 }, - { &hf_lte_rrc_phyLayerParameters_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhyLayerParameters_NB_r13 }, - { &hf_lte_rrc_rf_Parameters_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RF_Parameters_NB_r13 }, - { &hf_lte_rrc_dummy_04 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dummy_03 }, +static const per_sequence_t T_setup_173_sequence[] = { + { &hf_lte_rrc_sr_ProhibitTimer_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_7 }, + { &hf_lte_rrc_sr_NPRACH_Resource_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SR_NPRACH_Resource_NB_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UE_Capability_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_173(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_lte_rrc_UE_Capability_NB_r13, UE_Capability_NB_r13_sequence); + ett_lte_rrc_T_setup_173, T_setup_173_sequence); return offset; } -static const value_string lte_rrc_T_PollRetransmit_NB_r13_vals[] = { - { 0, "ms250" }, - { 1, "ms500" }, - { 2, "ms1000" }, - { 3, "ms2000" }, - { 4, "ms3000" }, - { 5, "ms4000" }, - { 6, "ms6000" }, - { 7, "ms10000" }, - { 8, "ms15000" }, - { 9, "ms25000" }, - { 10, "ms40000" }, - { 11, "ms60000" }, - { 12, "ms90000" }, - { 13, "ms120000" }, - { 14, "ms180000" }, - { 15, "spare1" }, +static const value_string lte_rrc_SR_WithoutHARQ_ACK_Config_NB_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t SR_WithoutHARQ_ACK_Config_NB_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_198 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_173 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_PollRetransmit_NB_r13(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SR_WithoutHARQ_ACK_Config_NB_r15(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_lte_rrc_SR_WithoutHARQ_ACK_Config_NB_r15, SR_WithoutHARQ_ACK_Config_NB_r15_choice, + NULL); return offset; } -static const value_string lte_rrc_T_maxRetxThreshold_r13_vals[] = { - { 0, "t1" }, - { 1, "t2" }, - { 2, "t3" }, - { 3, "t4" }, - { 4, "t6" }, - { 5, "t8" }, - { 6, "t16" }, - { 7, "t32" }, +static const value_string lte_rrc_T_semiPersistSchedIntervalUL_r15_vals[] = { + { 0, "sf128" }, + { 1, "sf256" }, + { 2, "sf512" }, + { 3, "sf1024" }, + { 4, "sf1280" }, + { 5, "sf2048" }, + { 6, "sf2560" }, + { 7, "sf5120" }, { 0, NULL } }; static int -dissect_lte_rrc_T_maxRetxThreshold_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_semiPersistSchedIntervalUL_r15(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, 8, NULL, FALSE, 0, NULL); @@ -79521,1118 +96973,1052 @@ dissect_lte_rrc_T_maxRetxThreshold_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t UL_AM_RLC_NB_r13_sequence[] = { - { &hf_lte_rrc_t_PollRetransmit_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_PollRetransmit_NB_r13 }, - { &hf_lte_rrc_maxRetxThreshold_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_maxRetxThreshold_r13 }, +static const per_sequence_t T_setup_174_sequence[] = { + { &hf_lte_rrc_semiPersistSchedC_RNTI_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_semiPersistSchedIntervalUL_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_semiPersistSchedIntervalUL_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UL_AM_RLC_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_setup_174(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_lte_rrc_UL_AM_RLC_NB_r13, UL_AM_RLC_NB_r13_sequence); + ett_lte_rrc_T_setup_174, T_setup_174_sequence); return offset; } -static const value_string lte_rrc_T_enableStatusReportSN_Gap_r13_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_SR_SPS_BSR_Config_NB_r15_vals[] = { + { 0, "release" }, + { 1, "setup" }, { 0, NULL } }; +static const per_choice_t SR_SPS_BSR_Config_NB_r15_choice[] = { + { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 1, &hf_lte_rrc_setup_199 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_174 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_enableStatusReportSN_Gap_r13(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_SR_SPS_BSR_Config_NB_r15(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_lte_rrc_SR_SPS_BSR_Config_NB_r15, SR_SPS_BSR_Config_NB_r15_choice, + NULL); return offset; } -static const per_sequence_t DL_AM_RLC_NB_r13_sequence[] = { - { &hf_lte_rrc_enableStatusReportSN_Gap_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enableStatusReportSN_Gap_r13 }, +static const per_sequence_t SchedulingRequestConfig_NB_r15_sequence[] = { + { &hf_lte_rrc_sr_WithHARQ_ACK_Config_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_sr_WithHARQ_ACK_Config_r15 }, + { &hf_lte_rrc_sr_WithoutHARQ_ACK_Config_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SR_WithoutHARQ_ACK_Config_NB_r15 }, + { &hf_lte_rrc_sr_SPS_BSR_Config_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SR_SPS_BSR_Config_NB_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DL_AM_RLC_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SchedulingRequestConfig_NB_r15(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_lte_rrc_DL_AM_RLC_NB_r13, DL_AM_RLC_NB_r13_sequence); + ett_lte_rrc_SchedulingRequestConfig_NB_r15, SchedulingRequestConfig_NB_r15_sequence); return offset; } -static const per_sequence_t T_am_01_sequence[] = { - { &hf_lte_rrc_ul_AM_RLC_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_AM_RLC_NB_r13 }, - { &hf_lte_rrc_dl_AM_RLC_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_AM_RLC_NB_r13 }, +static const per_sequence_t RadioResourceConfigDedicated_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_schedulingRequestConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SchedulingRequestConfig_NB_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_am_01(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_lte_rrc_T_am_01, T_am_01_sequence); +dissect_lte_rrc_RadioResourceConfigDedicated_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigDedicated_NB_r13_eag_1_sequence); return offset; } -static const value_string lte_rrc_RLC_Config_NB_r13_vals[] = { - { 0, "am" }, - { 0, NULL } -}; - -static const per_choice_t RLC_Config_NB_r13_choice[] = { - { 0, &hf_lte_rrc_am_01 , ASN1_EXTENSION_ROOT , dissect_lte_rrc_T_am_01 }, - { 0, NULL, 0, NULL } +static const per_sequence_t RadioResourceConfigDedicated_NB_r13_sequence[] = { + { &hf_lte_rrc_srb_ToAddModList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SRB_ToAddModList_NB_r13 }, + { &hf_lte_rrc_drb_ToAddModList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToAddModList_NB_r13 }, + { &hf_lte_rrc_drb_ToReleaseList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToReleaseList_NB_r13 }, + { &hf_lte_rrc_mac_MainConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_mac_MainConfig_r13 }, + { &hf_lte_rrc_physicalConfigDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicated_NB_r13 }, + { &hf_lte_rrc_rlf_TimersAndConstants_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RLF_TimersAndConstants_NB_r13 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_NB_r13_eag_1 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RLC_Config_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - drb_mapping_t *mapping = private_data_get_drb_mapping(actx); - offset = dissect_per_choice(tvb, offset, actx, tree, hf_index, - ett_lte_rrc_RLC_Config_NB_r13, RLC_Config_NB_r13_choice, - NULL); - - if (mapping != NULL) { - mapping->rlcMode = RLC_AM_MODE; - mapping->rlcMode_present = TRUE; - mapping->pdcp_sn_size = 7; - mapping->pdcp_sn_size_present = TRUE; - } - +dissect_lte_rrc_RadioResourceConfigDedicated_NB_r13(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_lte_rrc_RadioResourceConfigDedicated_NB_r13, RadioResourceConfigDedicated_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_rlc_Config_r13_vals[] = { - { 0, "explicitValue" }, - { 1, "defaultValue" }, - { 0, NULL } -}; - -static const per_choice_t T_rlc_Config_r13_choice[] = { - { 0, &hf_lte_rrc_explicitValue_07, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RLC_Config_NB_r13 }, - { 1, &hf_lte_rrc_defaultValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t AS_Config_NB_sequence[] = { + { &hf_lte_rrc_sourceRadioResourceConfig_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_NB_r13 }, + { &hf_lte_rrc_sourceSecurityAlgorithmConfig_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityAlgorithmConfig }, + { &hf_lte_rrc_sourceUE_Identity_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, + { &hf_lte_rrc_sourceDl_CarrierFreq_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreq_NB_r13 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_rlc_Config_r13(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_lte_rrc_T_rlc_Config_r13, T_rlc_Config_r13_choice, - NULL); +dissect_lte_rrc_AS_Config_NB(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_lte_rrc_AS_Config_NB, AS_Config_NB_sequence); return offset; } +static const value_string lte_rrc_T_ue_InactiveTime_01_vals[] = { + { 0, "s1" }, + { 1, "s2" }, + { 2, "s3" }, + { 3, "s5" }, + { 4, "s7" }, + { 5, "s10" }, + { 6, "s15" }, + { 7, "s20" }, + { 8, "s25" }, + { 9, "s30" }, + { 10, "s40" }, + { 11, "s50" }, + { 12, "min1" }, + { 13, "min1s20" }, + { 14, "min1s40" }, + { 15, "min2" }, + { 16, "min2s30" }, + { 17, "min3" }, + { 18, "min3s30" }, + { 19, "min4" }, + { 20, "min5" }, + { 21, "min6" }, + { 22, "min7" }, + { 23, "min8" }, + { 24, "min9" }, + { 25, "min10" }, + { 26, "min12" }, + { 27, "min14" }, + { 28, "min17" }, + { 29, "min20" }, + { 30, "min24" }, + { 31, "min28" }, + { 32, "min33" }, + { 33, "min38" }, + { 34, "min44" }, + { 35, "min50" }, + { 36, "hr1" }, + { 37, "hr1min30" }, + { 38, "hr2" }, + { 39, "hr2min30" }, + { 40, "hr3" }, + { 41, "hr3min30" }, + { 42, "hr4" }, + { 43, "hr5" }, + { 44, "hr6" }, + { 45, "hr8" }, + { 46, "hr10" }, + { 47, "hr13" }, + { 48, "hr16" }, + { 49, "hr20" }, + { 50, "day1" }, + { 51, "day1hr12" }, + { 52, "day2" }, + { 53, "day2hr12" }, + { 54, "day3" }, + { 55, "day4" }, + { 56, "day5" }, + { 57, "day7" }, + { 58, "day10" }, + { 59, "day14" }, + { 60, "day19" }, + { 61, "day24" }, + { 62, "day30" }, + { 63, "dayMoreThan30" }, + { 0, NULL } +}; -static int -dissect_lte_rrc_T_priority_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 value; - drb_mapping_t *mapping = private_data_get_drb_mapping(actx); - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, 16U, &value, FALSE); +static value_string_ext lte_rrc_T_ue_InactiveTime_01_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_ue_InactiveTime_01_vals); - if (mapping != NULL) { - mapping->ul_priority = value; - mapping->ul_priority_present = TRUE; - } +static int +dissect_lte_rrc_T_ue_InactiveTime_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, + 64, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t LogicalChannelConfig_NB_r13_sequence[] = { - { &hf_lte_rrc_priority_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_priority_r13 }, - { &hf_lte_rrc_logicalChannelSR_Prohibit_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t RRM_Config_NB_sequence[] = { + { &hf_lte_rrc_ue_InactiveTime_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_InactiveTime_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_LogicalChannelConfig_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRM_Config_NB(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_lte_rrc_LogicalChannelConfig_NB_r13, LogicalChannelConfig_NB_r13_sequence); + ett_lte_rrc_RRM_Config_NB, RRM_Config_NB_sequence); return offset; } -static const value_string lte_rrc_T_logicalChannelConfig_r13_vals[] = { - { 0, "explicitValue" }, - { 1, "defaultValue" }, - { 0, NULL } -}; - -static const per_choice_t T_logicalChannelConfig_r13_choice[] = { - { 0, &hf_lte_rrc_explicitValue_08, ASN1_NO_EXTENSIONS , dissect_lte_rrc_LogicalChannelConfig_NB_r13 }, - { 1, &hf_lte_rrc_defaultValue, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t ReestablishmentInfo_NB_sequence[] = { + { &hf_lte_rrc_sourcePhysCellId_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, + { &hf_lte_rrc_targetCellShortMAC_I_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ShortMAC_I }, + { &hf_lte_rrc_additionalReestabInfoList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalReestabInfoList }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_logicalChannelConfig_r13(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_lte_rrc_T_logicalChannelConfig_r13, T_logicalChannelConfig_r13_choice, - NULL); +dissect_lte_rrc_ReestablishmentInfo_NB(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_lte_rrc_ReestablishmentInfo_NB, ReestablishmentInfo_NB_sequence); return offset; } -static const per_sequence_t RLC_Config_NB_v1430_sequence[] = { - { &hf_lte_rrc_t_Reordering_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_Reordering }, +static const per_sequence_t AS_Context_NB_sequence[] = { + { &hf_lte_rrc_reestablishmentInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_ReestablishmentInfo_NB }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RLC_Config_NB_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_AS_Context_NB(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_lte_rrc_RLC_Config_NB_v1430, RLC_Config_NB_v1430_sequence); + ett_lte_rrc_AS_Context_NB, AS_Context_NB_sequence); return offset; } -static const per_sequence_t SRB_ToAddMod_NB_r13_eag_1_sequence[] = { - { &hf_lte_rrc_rlc_Config_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_NB_v1430 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_SRB_ToAddMod_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SRB_ToAddMod_NB_r13_eag_1_sequence); +dissect_lte_rrc_T_ue_RadioAccessCapabilityInfoExt_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UE_Capability_NB_Ext_r14_IEs_PDU); return offset; } -static const per_sequence_t SRB_ToAddMod_NB_r13_sequence[] = { - { &hf_lte_rrc_rlc_Config_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_rlc_Config_r13 }, - { &hf_lte_rrc_logicalChannelConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_logicalChannelConfig_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SRB_ToAddMod_NB_r13_eag_1 }, +static const per_sequence_t T_nonCriticalExtension_79_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_SRB_ToAddMod_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_79(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_lte_rrc_SRB_ToAddMod_NB_r13, SRB_ToAddMod_NB_r13_sequence); - - return offset; -} - - -static const per_sequence_t SRB_ToAddModList_NB_r13_sequence_of[1] = { - { &hf_lte_rrc_SRB_ToAddModList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SRB_ToAddMod_NB_r13 }, -}; - -static int -dissect_lte_rrc_SRB_ToAddModList_NB_r13(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_lte_rrc_SRB_ToAddModList_NB_r13, SRB_ToAddModList_NB_r13_sequence_of, - 1, 1, FALSE); + ett_lte_rrc_T_nonCriticalExtension_79, T_nonCriticalExtension_79_sequence); return offset; } -static const value_string lte_rrc_T_discardTimer_r13_vals[] = { - { 0, "ms5120" }, - { 1, "ms10240" }, - { 2, "ms20480" }, - { 3, "ms40960" }, - { 4, "ms81920" }, - { 5, "infinity" }, - { 6, "spare2" }, - { 7, "spare1" }, - { 0, NULL } +static const per_sequence_t HandoverPreparationInformation_NB_Ext_r14_IEs_sequence[] = { + { &hf_lte_rrc_ue_RadioAccessCapabilityInfoExt_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_RadioAccessCapabilityInfoExt_r14 }, + { &hf_lte_rrc_nonCriticalExtension_272, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_79 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_discardTimer_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_HandoverPreparationInformation_NB_Ext_r14_IEs(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_lte_rrc_HandoverPreparationInformation_NB_Ext_r14_IEs, HandoverPreparationInformation_NB_Ext_r14_IEs_sequence); return offset; } -static const per_sequence_t T_profiles_r13_sequence[] = { - { &hf_lte_rrc_profile0x0002, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0003, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0004, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0006, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0102, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0103, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_profile0x0104, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, +static const per_sequence_t HandoverPreparationInformation_NB_v1380_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_271, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_NB_Ext_r14_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_profiles_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverPreparationInformation_NB_v1380_IEs(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_lte_rrc_T_profiles_r13, T_profiles_r13_sequence); + ett_lte_rrc_HandoverPreparationInformation_NB_v1380_IEs, HandoverPreparationInformation_NB_v1380_IEs_sequence); return offset; } -static const per_sequence_t T_rohc_01_sequence[] = { - { &hf_lte_rrc_maxCID_r13 , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_16383 }, - { &hf_lte_rrc_profiles_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_profiles_r13 }, +static const per_sequence_t HandoverPreparationInformation_NB_IEs_sequence[] = { + { &hf_lte_rrc_ue_RadioAccessCapabilityInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_Capability_NB_r13 }, + { &hf_lte_rrc_as_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Config_NB }, + { &hf_lte_rrc_rrm_Config_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRM_Config_NB }, + { &hf_lte_rrc_as_Context_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Context_NB }, + { &hf_lte_rrc_nonCriticalExtension_270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_NB_v1380_IEs }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_rohc_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_HandoverPreparationInformation_NB_IEs(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_lte_rrc_T_rohc_01, T_rohc_01_sequence); + ett_lte_rrc_HandoverPreparationInformation_NB_IEs, HandoverPreparationInformation_NB_IEs_sequence); return offset; } -static const value_string lte_rrc_T_headerCompression_r13_vals[] = { - { 0, "notUsed" }, - { 1, "rohc" }, +static const value_string lte_rrc_T_c1_50_vals[] = { + { 0, "handoverPreparationInformation-r13" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, { 0, NULL } }; -static const per_choice_t T_headerCompression_r13_choice[] = { - { 0, &hf_lte_rrc_notUsed , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_rohc_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_rohc_01 }, +static const per_choice_t T_c1_50_choice[] = { + { 0, &hf_lte_rrc_handoverPreparationInformation_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_HandoverPreparationInformation_NB_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_headerCompression_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_c1_50(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_lte_rrc_T_headerCompression_r13, T_headerCompression_r13_choice, + ett_lte_rrc_T_c1_50, T_c1_50_choice, NULL); return offset; } -static const per_sequence_t PDCP_Config_NB_r13_sequence[] = { - { &hf_lte_rrc_discardTimer_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_discardTimer_r13 }, - { &hf_lte_rrc_headerCompression_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_headerCompression_r13 }, +static const per_sequence_t T_criticalExtensionsFuture_55_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PDCP_Config_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_55(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_lte_rrc_PDCP_Config_NB_r13, PDCP_Config_NB_r13_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_55, T_criticalExtensionsFuture_55_sequence); return offset; } +static const value_string lte_rrc_T_criticalExtensions_56_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_56_choice[] = { + { 0, &hf_lte_rrc_c1_50 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_50 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_55, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_55 }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_logicalChannelIdentity_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - guint32 value; - drb_mapping_t *mapping = private_data_get_drb_mapping(actx); - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 3U, 10U, &value, FALSE); +dissect_lte_rrc_T_criticalExtensions_56(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_lte_rrc_T_criticalExtensions_56, T_criticalExtensions_56_choice, + NULL); + + return offset; +} - if (mapping != NULL) { - mapping->lcid = (guint8)value; - mapping->lcid_present = TRUE; - } +static const per_sequence_t HandoverPreparationInformation_NB_sequence[] = { + { &hf_lte_rrc_criticalExtensions_56, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_56 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_HandoverPreparationInformation_NB(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_lte_rrc_HandoverPreparationInformation_NB, HandoverPreparationInformation_NB_sequence); return offset; } -static const per_sequence_t DRB_ToAddMod_NB_r13_eag_1_sequence[] = { - { &hf_lte_rrc_rlc_Config_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_NB_v1430 }, +static const per_sequence_t T_nonCriticalExtension_80_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DRB_ToAddMod_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DRB_ToAddMod_NB_r13_eag_1_sequence); +dissect_lte_rrc_T_nonCriticalExtension_80(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_lte_rrc_T_nonCriticalExtension_80, T_nonCriticalExtension_80_sequence); return offset; } -static const per_sequence_t DRB_ToAddMod_NB_r13_sequence[] = { - { &hf_lte_rrc_eps_BearerIdentity_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, - { &hf_lte_rrc_drb_Identity_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, - { &hf_lte_rrc_pdcp_Config_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PDCP_Config_NB_r13 }, - { &hf_lte_rrc_rlc_Config_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RLC_Config_NB_r13 }, - { &hf_lte_rrc_logicalChannelIdentity_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_logicalChannelIdentity_r13 }, - { &hf_lte_rrc_logicalChannelConfig_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_LogicalChannelConfig_NB_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddMod_NB_r13_eag_1 }, +static const per_sequence_t UEPagingCoverageInformation_NB_IEs_sequence[] = { + { &hf_lte_rrc_npdcch_NumRepetitionPaging_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_2048 }, + { &hf_lte_rrc_nonCriticalExtension_273, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_80 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DRB_ToAddMod_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - struct mac_lte_info *p_mac_lte_info; - struct rlc_lte_info *p_rlc_lte_info; - /* Get the struct and clear it out */ - drb_mapping_t *drb_mapping = private_data_get_drb_mapping(actx); - memset(drb_mapping, 0, sizeof(*drb_mapping)); +dissect_lte_rrc_UEPagingCoverageInformation_NB_IEs(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_lte_rrc_DRB_ToAddMod_NB_r13, DRB_ToAddMod_NB_r13_sequence); + ett_lte_rrc_UEPagingCoverageInformation_NB_IEs, UEPagingCoverageInformation_NB_IEs_sequence); - /* Need UE identifier */ - p_mac_lte_info = (mac_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_mac_lte, 0); - if (p_mac_lte_info) { - drb_mapping->ueid = p_mac_lte_info->ueid; - /* Tell MAC about this mapping */ - set_mac_lte_channel_mapping(drb_mapping); - } + return offset; +} - /* Also tell RLC how many PDCP sequence number bits and whether it should use extended LI */ - p_rlc_lte_info = (rlc_lte_info *)p_get_proto_data(wmem_file_scope(), actx->pinfo, proto_rlc_lte, 0); - if (p_rlc_lte_info) { - if (drb_mapping->pdcp_sn_size_present) { - set_rlc_lte_drb_pdcp_seqnum_length(actx->pinfo, - p_rlc_lte_info->ueid, - drb_mapping->drbid, - drb_mapping->pdcp_sn_size); - } - if (drb_mapping->rlcMode_present) { - set_rlc_lte_drb_li_field(actx->pinfo, - p_rlc_lte_info->ueid, - drb_mapping->drbid, - drb_mapping->rlc_ul_ext_li_field, - drb_mapping->rlc_dl_ext_li_field); - } - } - /* Clear out the struct again */ - memset(&drb_mapping, 0, sizeof(drb_mapping)); +static const value_string lte_rrc_T_c1_51_vals[] = { + { 0, "uePagingCoverageInformation-r13" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, + { 0, NULL } +}; + +static const per_choice_t T_c1_51_choice[] = { + { 0, &hf_lte_rrc_uePagingCoverageInformation_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEPagingCoverageInformation_NB_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; +static int +dissect_lte_rrc_T_c1_51(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_lte_rrc_T_c1_51, T_c1_51_choice, + NULL); return offset; } -static const per_sequence_t DRB_ToAddModList_NB_r13_sequence_of[1] = { - { &hf_lte_rrc_DRB_ToAddModList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_ToAddMod_NB_r13 }, +static const per_sequence_t T_criticalExtensionsFuture_56_sequence[] = { + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DRB_ToAddModList_NB_r13(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_lte_rrc_DRB_ToAddModList_NB_r13, DRB_ToAddModList_NB_r13_sequence_of, - 1, maxDRB_NB_r13, FALSE); +dissect_lte_rrc_T_criticalExtensionsFuture_56(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_lte_rrc_T_criticalExtensionsFuture_56, T_criticalExtensionsFuture_56_sequence); return offset; } -static const per_sequence_t DRB_ToReleaseList_NB_r13_sequence_of[1] = { - { &hf_lte_rrc_DRB_ToReleaseList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DRB_Identity }, +static const value_string lte_rrc_T_criticalExtensions_57_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_57_choice[] = { + { 0, &hf_lte_rrc_c1_51 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_51 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_56, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_56 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_DRB_ToReleaseList_NB_r13(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_lte_rrc_DRB_ToReleaseList_NB_r13, DRB_ToReleaseList_NB_r13_sequence_of, - 1, maxDRB_NB_r13, FALSE); +dissect_lte_rrc_T_criticalExtensions_57(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_lte_rrc_T_criticalExtensions_57, T_criticalExtensions_57_choice, + NULL); return offset; } -static const value_string lte_rrc_PeriodicBSR_Timer_NB_r13_vals[] = { - { 0, "pp2" }, - { 1, "pp4" }, - { 2, "pp8" }, - { 3, "pp16" }, - { 4, "pp64" }, - { 5, "pp128" }, - { 6, "infinity" }, - { 7, "spare" }, - { 0, NULL } +static const per_sequence_t UEPagingCoverageInformation_NB_sequence[] = { + { &hf_lte_rrc_criticalExtensions_57, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_57 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_PeriodicBSR_Timer_NB_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UEPagingCoverageInformation_NB(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_lte_rrc_UEPagingCoverageInformation_NB, UEPagingCoverageInformation_NB_sequence); return offset; } -static const value_string lte_rrc_RetxBSR_Timer_NB_r13_vals[] = { - { 0, "pp4" }, - { 1, "pp16" }, - { 2, "pp64" }, - { 3, "pp128" }, - { 4, "pp256" }, - { 5, "pp512" }, - { 6, "infinity" }, - { 7, "spare" }, - { 0, NULL } -}; - static int -dissect_lte_rrc_RetxBSR_Timer_NB_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UE_Capability_NB_r13_PDU); return offset; } -static const per_sequence_t T_ul_SCH_Config_r13_sequence[] = { - { &hf_lte_rrc_periodicBSR_Timer_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PeriodicBSR_Timer_NB_r13 }, - { &hf_lte_rrc_retxBSR_Timer_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RetxBSR_Timer_NB_r13 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_ul_SCH_Config_r13(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_lte_rrc_T_ul_SCH_Config_r13, T_ul_SCH_Config_r13_sequence); +dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UECapabilityInformation_NB_PDU); return offset; } -static const value_string lte_rrc_T_onDurationTimer_r13_vals[] = { - { 0, "pp1" }, - { 1, "pp2" }, - { 2, "pp3" }, - { 3, "pp4" }, - { 4, "pp8" }, - { 5, "pp16" }, - { 6, "pp32" }, - { 7, "spare" }, - { 0, NULL } +static const per_sequence_t T_nonCriticalExtension_81_sequence[] = { + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_onDurationTimer_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_nonCriticalExtension_81(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_lte_rrc_T_nonCriticalExtension_81, T_nonCriticalExtension_81_sequence); return offset; } -static const value_string lte_rrc_T_drx_InactivityTimer_r13_vals[] = { - { 0, "pp0" }, - { 1, "pp1" }, - { 2, "pp2" }, - { 3, "pp3" }, - { 4, "pp4" }, - { 5, "pp8" }, - { 6, "pp16" }, - { 7, "pp32" }, - { 0, NULL } +static const per_sequence_t UERadioAccessCapabilityInformation_NB_r14_IEs_sequence[] = { + { &hf_lte_rrc_ue_RadioAccessCapabilityInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo_r14 }, + { &hf_lte_rrc_nonCriticalExtension_276, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_81 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_drx_InactivityTimer_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_r14_IEs(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_lte_rrc_UERadioAccessCapabilityInformation_NB_r14_IEs, UERadioAccessCapabilityInformation_NB_r14_IEs_sequence); return offset; } -static const value_string lte_rrc_T_drx_RetransmissionTimer_r13_vals[] = { - { 0, "pp0" }, - { 1, "pp1" }, - { 2, "pp2" }, - { 3, "pp4" }, - { 4, "pp6" }, - { 5, "pp8" }, - { 6, "pp16" }, - { 7, "pp24" }, - { 8, "pp33" }, - { 9, "spare7" }, - { 10, "spare6" }, - { 11, "spare5" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } +static const per_sequence_t UERadioAccessCapabilityInformation_NB_v1380_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_275, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_r14_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_drx_RetransmissionTimer_r13(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_v1380_IEs(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_lte_rrc_UERadioAccessCapabilityInformation_NB_v1380_IEs, UERadioAccessCapabilityInformation_NB_v1380_IEs_sequence); return offset; } -static const value_string lte_rrc_T_drx_Cycle_r13_vals[] = { - { 0, "sf256" }, - { 1, "sf512" }, - { 2, "sf1024" }, - { 3, "sf1536" }, - { 4, "sf2048" }, - { 5, "sf3072" }, - { 6, "sf4096" }, - { 7, "sf4608" }, - { 8, "sf6144" }, - { 9, "sf7680" }, - { 10, "sf8192" }, - { 11, "sf9216" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } +static const per_sequence_t UERadioAccessCapabilityInformation_NB_IEs_sequence[] = { + { &hf_lte_rrc_ue_RadioAccessCapabilityInfo_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo_r13 }, + { &hf_lte_rrc_nonCriticalExtension_274, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_v1380_IEs }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_drx_Cycle_r13(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_IEs(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_lte_rrc_UERadioAccessCapabilityInformation_NB_IEs, UERadioAccessCapabilityInformation_NB_IEs_sequence); return offset; } -static const value_string lte_rrc_T_drx_ULRetransmissionTimer_r13_01_vals[] = { - { 0, "pp0" }, - { 1, "pp1" }, - { 2, "pp2" }, - { 3, "pp4" }, - { 4, "pp6" }, - { 5, "pp8" }, - { 6, "pp16" }, - { 7, "pp24" }, - { 8, "pp33" }, - { 9, "pp40" }, - { 10, "pp64" }, - { 11, "pp80" }, - { 12, "pp96" }, - { 13, "pp112" }, - { 14, "pp128" }, - { 15, "pp160" }, - { 16, "pp320" }, +static const value_string lte_rrc_T_c1_52_vals[] = { + { 0, "ueRadioAccessCapabilityInformation-r13" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, { 0, NULL } }; -static value_string_ext lte_rrc_T_drx_ULRetransmissionTimer_r13_01_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_drx_ULRetransmissionTimer_r13_01_vals); - +static const per_choice_t T_c1_52_choice[] = { + { 0, &hf_lte_rrc_ueRadioAccessCapabilityInformation_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_drx_ULRetransmissionTimer_r13_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, - 17, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_c1_52(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_lte_rrc_T_c1_52, T_c1_52_choice, + NULL); return offset; } -static const per_sequence_t T_setup_131_sequence[] = { - { &hf_lte_rrc_onDurationTimer_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_onDurationTimer_r13 }, - { &hf_lte_rrc_drx_InactivityTimer_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_InactivityTimer_r13 }, - { &hf_lte_rrc_drx_RetransmissionTimer_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_RetransmissionTimer_r13 }, - { &hf_lte_rrc_drx_Cycle_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_Cycle_r13 }, - { &hf_lte_rrc_drx_StartOffset_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_255 }, - { &hf_lte_rrc_drx_ULRetransmissionTimer_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_drx_ULRetransmissionTimer_r13_01 }, +static const per_sequence_t T_criticalExtensionsFuture_57_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_131(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_57(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_lte_rrc_T_setup_131, T_setup_131_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_57, T_criticalExtensionsFuture_57_sequence); return offset; } -static const value_string lte_rrc_DRX_Config_NB_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_criticalExtensions_58_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t DRX_Config_NB_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_149 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_131 }, +static const per_choice_t T_criticalExtensions_58_choice[] = { + { 0, &hf_lte_rrc_c1_52 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_52 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_57, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_57 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_DRX_Config_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_58(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_lte_rrc_DRX_Config_NB_r13, DRX_Config_NB_r13_choice, + ett_lte_rrc_T_criticalExtensions_58, T_criticalExtensions_58_choice, NULL); return offset; } -static const value_string lte_rrc_T_logicalChannelSR_ProhibitTimer_r13_vals[] = { - { 0, "pp2" }, - { 1, "pp8" }, - { 2, "pp32" }, - { 3, "pp128" }, - { 4, "pp512" }, - { 5, "pp1024" }, - { 6, "pp2048" }, - { 7, "spare" }, - { 0, NULL } +static const per_sequence_t UERadioAccessCapabilityInformation_NB_sequence[] = { + { &hf_lte_rrc_criticalExtensions_58, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_58 }, + { NULL, 0, 0, NULL } }; +static int +dissect_lte_rrc_UERadioAccessCapabilityInformation_NB(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_lte_rrc_UERadioAccessCapabilityInformation_NB, UERadioAccessCapabilityInformation_NB_sequence); + + return offset; +} + + static int -dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_ue_RadioPagingInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, + NO_BOUND, NO_BOUND, FALSE, dissect_UE_RadioPagingInfo_NB_r13_PDU); return offset; } -static const per_sequence_t T_setup_129_sequence[] = { - { &hf_lte_rrc_logicalChannelSR_ProhibitTimer_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_logicalChannelSR_ProhibitTimer_r13 }, +static const per_sequence_t T_nonCriticalExtension_82_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_129(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_82(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_lte_rrc_T_setup_129, T_setup_129_sequence); + ett_lte_rrc_T_nonCriticalExtension_82, T_nonCriticalExtension_82_sequence); return offset; } -static const value_string lte_rrc_T_logicalChannelSR_Config_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, - { 0, NULL } -}; - -static const per_choice_t T_logicalChannelSR_Config_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_147 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_129 }, - { 0, NULL, 0, NULL } +static const per_sequence_t UERadioPagingInformation_NB_IEs_sequence[] = { + { &hf_lte_rrc_ue_RadioPagingInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_RadioPagingInfo_r13 }, + { &hf_lte_rrc_nonCriticalExtension_277, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_82 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_logicalChannelSR_Config_r13(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_lte_rrc_T_logicalChannelSR_Config_r13, T_logicalChannelSR_Config_r13_choice, - NULL); +dissect_lte_rrc_UERadioPagingInformation_NB_IEs(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_lte_rrc_UERadioPagingInformation_NB_IEs, UERadioPagingInformation_NB_IEs_sequence); return offset; } -static const value_string lte_rrc_T_rai_Activation_r14_01_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_c1_53_vals[] = { + { 0, "ueRadioPagingInformation-r13" }, + { 1, "spare3" }, + { 2, "spare2" }, + { 3, "spare1" }, { 0, NULL } }; +static const per_choice_t T_c1_53_choice[] = { + { 0, &hf_lte_rrc_ueRadioPagingInformation_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UERadioPagingInformation_NB_IEs }, + { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 0, NULL, 0, NULL } +}; static int -dissect_lte_rrc_T_rai_Activation_r14_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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_T_c1_53(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_lte_rrc_T_c1_53, T_c1_53_choice, + NULL); return offset; } -static const per_sequence_t T_setup_130_sequence[] = { - { &hf_lte_rrc_dataInactivityTimer_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DataInactivityTimer_r14 }, +static const per_sequence_t T_criticalExtensionsFuture_58_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_130(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_58(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_lte_rrc_T_setup_130, T_setup_130_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_58, T_criticalExtensionsFuture_58_sequence); return offset; } -static const value_string lte_rrc_T_dataInactivityTimerConfig_r14_01_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_criticalExtensions_59_vals[] = { + { 0, "c1" }, + { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_dataInactivityTimerConfig_r14_01_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_148 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_130 }, +static const per_choice_t T_criticalExtensions_59_choice[] = { + { 0, &hf_lte_rrc_c1_53 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_53 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_58, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_58 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_dataInactivityTimerConfig_r14_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_59(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_lte_rrc_T_dataInactivityTimerConfig_r14_01, T_dataInactivityTimerConfig_r14_01_choice, + ett_lte_rrc_T_criticalExtensions_59, T_criticalExtensions_59_choice, NULL); return offset; } -static const per_sequence_t MAC_MainConfig_NB_r13_eag_1_sequence[] = { - { &hf_lte_rrc_rai_Activation_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rai_Activation_r14_01 }, - { &hf_lte_rrc_dataInactivityTimerConfig_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dataInactivityTimerConfig_r14_01 }, +static const per_sequence_t UERadioPagingInformation_NB_sequence[] = { + { &hf_lte_rrc_criticalExtensions_59, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_59 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MAC_MainConfig_NB_r13_eag_1_sequence); +dissect_lte_rrc_UERadioPagingInformation_NB(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_lte_rrc_UERadioPagingInformation_NB, UERadioPagingInformation_NB_sequence); return offset; } -static const value_string lte_rrc_T_drx_Cycle_v1430_vals[] = { - { 0, "sf1280" }, - { 1, "sf2560" }, - { 2, "sf5120" }, - { 3, "sf10240" }, - { 0, NULL } +static const per_sequence_t Inband_SamePCI_NB_r13_sequence[] = { + { &hf_lte_rrc_eutra_CRS_SequenceInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_drx_Cycle_v1430(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); +dissect_lte_rrc_Inband_SamePCI_NB_r13(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_lte_rrc_Inband_SamePCI_NB_r13, Inband_SamePCI_NB_r13_sequence); return offset; } -static const per_sequence_t MAC_MainConfig_NB_r13_eag_2_sequence[] = { - { &hf_lte_rrc_drx_Cycle_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drx_Cycle_v1430 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_eutra_NumCRS_Ports_r13_vals[] = { + { 0, "same" }, + { 1, "four" }, + { 0, NULL } }; + static int -dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MAC_MainConfig_NB_r13_eag_2_sequence); +dissect_lte_rrc_T_eutra_NumCRS_Ports_r13(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, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ra_CFRA_Config_r14_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_ChannelRasterOffset_NB_r13_vals[] = { + { 0, "khz-7dot5" }, + { 1, "khz-2dot5" }, + { 2, "khz2dot5" }, + { 3, "khz7dot5" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ra_CFRA_Config_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_ChannelRasterOffset_NB_r13(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, - 1, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t MAC_MainConfig_NB_r13_eag_3_sequence[] = { - { &hf_lte_rrc_ra_CFRA_Config_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ra_CFRA_Config_r14 }, +static const per_sequence_t Inband_DifferentPCI_NB_r13_sequence[] = { + { &hf_lte_rrc_eutra_NumCRS_Ports_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eutra_NumCRS_Ports_r13 }, + { &hf_lte_rrc_rasterOffset_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ChannelRasterOffset_NB_r13 }, + { &hf_lte_rrc_spare_03 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_2 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, MAC_MainConfig_NB_r13_eag_3_sequence); +dissect_lte_rrc_Inband_DifferentPCI_NB_r13(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_lte_rrc_Inband_DifferentPCI_NB_r13, Inband_DifferentPCI_NB_r13_sequence); return offset; } -static const per_sequence_t MAC_MainConfig_NB_r13_sequence[] = { - { &hf_lte_rrc_ul_SCH_Config_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ul_SCH_Config_r13 }, - { &hf_lte_rrc_drx_Config_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRX_Config_NB_r13 }, - { &hf_lte_rrc_timeAlignmentTimerDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TimeAlignmentTimer }, - { &hf_lte_rrc_logicalChannelSR_Config_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_logicalChannelSR_Config_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_2 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_MainConfig_NB_r13_eag_3 }, +static const per_sequence_t Guardband_NB_r13_sequence[] = { + { &hf_lte_rrc_rasterOffset_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ChannelRasterOffset_NB_r13 }, + { &hf_lte_rrc_spare_06 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_3 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MAC_MainConfig_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_Guardband_NB_r13(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_lte_rrc_MAC_MainConfig_NB_r13, MAC_MainConfig_NB_r13_sequence); + ett_lte_rrc_Guardband_NB_r13, Guardband_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_mac_MainConfig_r13_vals[] = { - { 0, "explicitValue-r13" }, - { 1, "defaultValue-r13" }, +static const per_sequence_t Standalone_NB_r13_sequence[] = { + { &hf_lte_rrc_spare_07 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_5 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_Standalone_NB_r13(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_lte_rrc_Standalone_NB_r13, Standalone_NB_r13_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_operationModeInfo_r13_vals[] = { + { 0, "inband-SamePCI-r13" }, + { 1, "inband-DifferentPCI-r13" }, + { 2, "guardband-r13" }, + { 3, "standalone-r13" }, { 0, NULL } }; -static const per_choice_t T_mac_MainConfig_r13_choice[] = { - { 0, &hf_lte_rrc_explicitValue_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_MAC_MainConfig_NB_r13 }, - { 1, &hf_lte_rrc_defaultValue_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, +static const per_choice_t T_operationModeInfo_r13_choice[] = { + { 0, &hf_lte_rrc_inband_SamePCI_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_Inband_SamePCI_NB_r13 }, + { 1, &hf_lte_rrc_inband_DifferentPCI_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_Inband_DifferentPCI_NB_r13 }, + { 2, &hf_lte_rrc_guardband_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_Guardband_NB_r13 }, + { 3, &hf_lte_rrc_standalone_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_Standalone_NB_r13 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_mac_MainConfig_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_operationModeInfo_r13(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_lte_rrc_T_mac_MainConfig_r13, T_mac_MainConfig_r13_choice, + ett_lte_rrc_T_operationModeInfo_r13, T_operationModeInfo_r13_choice, NULL); return offset; } -static const value_string lte_rrc_T_carrierFreqOffset_r13_vals[] = { - { 0, "v-10" }, - { 1, "v-9" }, - { 2, "v-8" }, - { 3, "v-7" }, - { 4, "v-6" }, - { 5, "v-5" }, - { 6, "v-4" }, - { 7, "v-3" }, - { 8, "v-2" }, - { 9, "v-1" }, - { 10, "v-0dot5" }, - { 11, "v0" }, - { 12, "v1" }, - { 13, "v2" }, - { 14, "v3" }, - { 15, "v4" }, - { 16, "v5" }, - { 17, "v6" }, - { 18, "v7" }, - { 19, "v8" }, - { 20, "v9" }, - { 0, NULL } +static const per_sequence_t MasterInformationBlock_NB_sequence[] = { + { &hf_lte_rrc_systemFrameNumber_MSB_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_4 }, + { &hf_lte_rrc_hyperSFN_LSB_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_2 }, + { &hf_lte_rrc_schedulingInfoSIB1_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_systemInfoValueTag_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_ab_Enabled_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_operationModeInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_operationModeInfo_r13 }, + { &hf_lte_rrc_additionalTransmissionSIB1_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_spare_05 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_10 }, + { NULL, 0, 0, NULL } }; -static value_string_ext lte_rrc_T_carrierFreqOffset_r13_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_carrierFreqOffset_r13_vals); +static int +dissect_lte_rrc_MasterInformationBlock_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MasterInformationBlock-NB"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_MasterInformationBlock_NB, MasterInformationBlock_NB_sequence); + + return offset; +} + static int -dissect_lte_rrc_T_carrierFreqOffset_r13(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, - 21, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BCCH_BCH_MessageType_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_MasterInformationBlock_NB(tvb, offset, actx, tree, hf_index); return offset; } -static const per_sequence_t CarrierFreq_NB_r13_sequence[] = { - { &hf_lte_rrc_carrierFreq_r13_02, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ARFCN_ValueEUTRA_r9 }, - { &hf_lte_rrc_carrierFreqOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_carrierFreqOffset_r13 }, +static const per_sequence_t BCCH_BCH_Message_NB_sequence[] = { + { &hf_lte_rrc_message_14 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_BCH_MessageType_NB }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CarrierFreq_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_BCCH_BCH_Message_NB(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_lte_rrc_CarrierFreq_NB_r13, CarrierFreq_NB_r13_sequence); + ett_lte_rrc_BCCH_BCH_Message_NB, BCCH_BCH_Message_NB_sequence); return offset; } -static const value_string lte_rrc_DL_Bitmap_NB_r13_vals[] = { - { 0, "subframePattern10-r13" }, - { 1, "subframePattern40-r13" }, +static const value_string lte_rrc_T_sib_InbandLocation_r15_vals[] = { + { 0, "lower" }, + { 1, "higher" }, { 0, NULL } }; -static const per_choice_t DL_Bitmap_NB_r13_choice[] = { - { 0, &hf_lte_rrc_subframePattern10_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_10 }, - { 1, &hf_lte_rrc_subframePattern40_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_BIT_STRING_SIZE_40 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_DL_Bitmap_NB_r13(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_lte_rrc_DL_Bitmap_NB_r13, DL_Bitmap_NB_r13_choice, - NULL); +dissect_lte_rrc_T_sib_InbandLocation_r15(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, FALSE, 0, NULL); return offset; } - -static const value_string lte_rrc_T_downlinkBitmapNonAnchor_r13_vals[] = { - { 0, "useNoBitmap-r13" }, - { 1, "useAnchorBitmap-r13" }, - { 2, "explicitBitmapConfiguration-r13" }, - { 3, "spare" }, - { 0, NULL } -}; - -static const per_choice_t T_downlinkBitmapNonAnchor_r13_choice[] = { - { 0, &hf_lte_rrc_useNoBitmap_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_useAnchorBitmap_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_explicitBitmapConfiguration_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DL_Bitmap_NB_r13 }, - { 3, &hf_lte_rrc_spare , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } + +static const per_sequence_t Inband_SamePCI_TDD_NB_r15_sequence[] = { + { &hf_lte_rrc_eutra_CRS_SequenceInfo_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_sib_InbandLocation_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_InbandLocation_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_downlinkBitmapNonAnchor_r13(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_lte_rrc_T_downlinkBitmapNonAnchor_r13, T_downlinkBitmapNonAnchor_r13_choice, - NULL); +dissect_lte_rrc_Inband_SamePCI_TDD_NB_r15(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_lte_rrc_Inband_SamePCI_TDD_NB_r15, Inband_SamePCI_TDD_NB_r15_sequence); return offset; } -static const value_string lte_rrc_T_dl_GapThreshold_r13_vals[] = { - { 0, "n32" }, - { 1, "n64" }, - { 2, "n128" }, - { 3, "n256" }, +static const value_string lte_rrc_T_eutra_NumCRS_Ports_r15_vals[] = { + { 0, "same" }, + { 1, "four" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dl_GapThreshold_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_eutra_NumCRS_Ports_r15(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); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_dl_GapPeriodicity_r13_vals[] = { - { 0, "sf64" }, - { 1, "sf128" }, - { 2, "sf256" }, - { 3, "sf512" }, +static const value_string lte_rrc_T_sib_InbandLocation_r15_01_vals[] = { + { 0, "lower" }, + { 1, "higher" }, { 0, NULL } }; static int -dissect_lte_rrc_T_dl_GapPeriodicity_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sib_InbandLocation_r15_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); + 2, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_dl_GapDurationCoeff_r13_vals[] = { - { 0, "oneEighth" }, - { 1, "oneFourth" }, - { 2, "threeEighth" }, - { 3, "oneHalf" }, - { 0, NULL } +static const per_sequence_t Inband_DifferentPCI_TDD_NB_r15_sequence[] = { + { &hf_lte_rrc_eutra_NumCRS_Ports_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eutra_NumCRS_Ports_r15 }, + { &hf_lte_rrc_rasterOffset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ChannelRasterOffset_NB_r13 }, + { &hf_lte_rrc_sib_InbandLocation_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_InbandLocation_r15_01 }, + { &hf_lte_rrc_spare_03 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_2 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_dl_GapDurationCoeff_r13(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); +dissect_lte_rrc_Inband_DifferentPCI_TDD_NB_r15(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_lte_rrc_Inband_DifferentPCI_TDD_NB_r15, Inband_DifferentPCI_TDD_NB_r15_sequence); return offset; } -static const per_sequence_t DL_GapConfig_NB_r13_sequence[] = { - { &hf_lte_rrc_dl_GapThreshold_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_GapThreshold_r13 }, - { &hf_lte_rrc_dl_GapPeriodicity_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_GapPeriodicity_r13 }, - { &hf_lte_rrc_dl_GapDurationCoeff_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_GapDurationCoeff_r13 }, +static const per_sequence_t SIB_GuardbandAnchorTDD_NB_r15_sequence[] = { + { &hf_lte_rrc_spare_04 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DL_GapConfig_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SIB_GuardbandAnchorTDD_NB_r15(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_lte_rrc_DL_GapConfig_NB_r13, DL_GapConfig_NB_r13_sequence); + ett_lte_rrc_SIB_GuardbandAnchorTDD_NB_r15, SIB_GuardbandAnchorTDD_NB_r15_sequence); return offset; } -static const value_string lte_rrc_T_dl_GapNonAnchor_r13_vals[] = { - { 0, "useNoGap-r13" }, - { 1, "useAnchorGapConfig-r13" }, - { 2, "explicitGapConfiguration-r13" }, - { 3, "spare" }, +static const value_string lte_rrc_T_sib_GuardbandGuardbandLocation_r15_vals[] = { + { 0, "same" }, + { 1, "opposite" }, { 0, NULL } }; -static const per_choice_t T_dl_GapNonAnchor_r13_choice[] = { - { 0, &hf_lte_rrc_useNoGap_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_useAnchorGapConfig_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_explicitGapConfiguration_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_DL_GapConfig_NB_r13 }, - { 3, &hf_lte_rrc_spare , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_dl_GapNonAnchor_r13(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_lte_rrc_T_dl_GapNonAnchor_r13, T_dl_GapNonAnchor_r13_choice, - NULL); +dissect_lte_rrc_T_sib_GuardbandGuardbandLocation_r15(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, FALSE, 0, NULL); return offset; } +static const per_sequence_t SIB_GuardbandGuardbandTDD_NB_r15_sequence[] = { + { &hf_lte_rrc_sib_GuardbandGuardbandLocation_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_GuardbandGuardbandLocation_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_INTEGER_M55_54(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - -55, 54U, NULL, FALSE); +dissect_lte_rrc_SIB_GuardbandGuardbandTDD_NB_r15(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_lte_rrc_SIB_GuardbandGuardbandTDD_NB_r15, SIB_GuardbandGuardbandTDD_NB_r15_sequence); return offset; } -static const per_sequence_t T_samePCI_r13_sequence[] = { - { &hf_lte_rrc_indexToMidPRB_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M55_54 }, +static const per_sequence_t SIB_GuardbandInbandSamePCI_TDD_NB_r15_sequence[] = { + { &hf_lte_rrc_spare_04 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_samePCI_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SIB_GuardbandInbandSamePCI_TDD_NB_r15(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_lte_rrc_T_samePCI_r13, T_samePCI_r13_sequence); + ett_lte_rrc_SIB_GuardbandInbandSamePCI_TDD_NB_r15, SIB_GuardbandInbandSamePCI_TDD_NB_r15_sequence); return offset; } -static const value_string lte_rrc_T_eutra_NumCRS_Ports_r13_01_vals[] = { +static const value_string lte_rrc_T_sib_EUTRA_NumCRS_Ports_r15_vals[] = { { 0, "same" }, { 1, "four" }, { 0, NULL } @@ -80640,7 +98026,7 @@ static const value_string lte_rrc_T_eutra_NumCRS_Ports_r13_01_vals[] = { static int -dissect_lte_rrc_T_eutra_NumCRS_Ports_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sib_EUTRA_NumCRS_Ports_r15(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, FALSE, 0, NULL); @@ -80648,201 +98034,210 @@ dissect_lte_rrc_T_eutra_NumCRS_Ports_r13_01(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t T_differentPCI_r13_sequence[] = { - { &hf_lte_rrc_eutra_NumCRS_Ports_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eutra_NumCRS_Ports_r13_01 }, +static const per_sequence_t SIB_GuardbandInbandDiffPCI_TDD_NB_r15_sequence[] = { + { &hf_lte_rrc_sib_EUTRA_NumCRS_Ports_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_EUTRA_NumCRS_Ports_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_differentPCI_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_SIB_GuardbandInbandDiffPCI_TDD_NB_r15(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_lte_rrc_T_differentPCI_r13, T_differentPCI_r13_sequence); + ett_lte_rrc_SIB_GuardbandInbandDiffPCI_TDD_NB_r15, SIB_GuardbandInbandDiffPCI_TDD_NB_r15_sequence); return offset; } -static const value_string lte_rrc_T_samePCI_Indicator_r13_vals[] = { - { 0, "samePCI-r13" }, - { 1, "differentPCI-r13" }, +static const value_string lte_rrc_T_sib_GuardbandInfo_r15_vals[] = { + { 0, "sib-GuardbandAnchor-r15" }, + { 1, "sib-GuardbandGuardband-r15" }, + { 2, "sib-GuardbandInbandSamePCI-r15" }, + { 3, "sib-GuardbandinbandDiffPCI-r15" }, { 0, NULL } }; -static const per_choice_t T_samePCI_Indicator_r13_choice[] = { - { 0, &hf_lte_rrc_samePCI_r13 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_samePCI_r13 }, - { 1, &hf_lte_rrc_differentPCI_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_differentPCI_r13 }, +static const per_choice_t T_sib_GuardbandInfo_r15_choice[] = { + { 0, &hf_lte_rrc_sib_GuardbandAnchor_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SIB_GuardbandAnchorTDD_NB_r15 }, + { 1, &hf_lte_rrc_sib_GuardbandGuardband_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SIB_GuardbandGuardbandTDD_NB_r15 }, + { 2, &hf_lte_rrc_sib_GuardbandInbandSamePCI_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SIB_GuardbandInbandSamePCI_TDD_NB_r15 }, + { 3, &hf_lte_rrc_sib_GuardbandinbandDiffPCI_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SIB_GuardbandInbandDiffPCI_TDD_NB_r15 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_samePCI_Indicator_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sib_GuardbandInfo_r15(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_lte_rrc_T_samePCI_Indicator_r13, T_samePCI_Indicator_r13_choice, + ett_lte_rrc_T_sib_GuardbandInfo_r15, T_sib_GuardbandInfo_r15_choice, NULL); return offset; } -static const value_string lte_rrc_T_eutraControlRegionSize_r13_01_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, +static const value_string lte_rrc_T_eutra_Bandwitdh_r15_vals[] = { + { 0, "bw5or10" }, + { 1, "bw15or20" }, { 0, NULL } }; static int -dissect_lte_rrc_T_eutraControlRegionSize_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_eutra_Bandwitdh_r15(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, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_inbandCarrierInfo_r13_sequence[] = { - { &hf_lte_rrc_samePCI_Indicator_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_samePCI_Indicator_r13 }, - { &hf_lte_rrc_eutraControlRegionSize_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eutraControlRegionSize_r13_01 }, +static const per_sequence_t GuardbandTDD_NB_r15_sequence[] = { + { &hf_lte_rrc_rasterOffset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ChannelRasterOffset_NB_r13 }, + { &hf_lte_rrc_sib_GuardbandInfo_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_GuardbandInfo_r15 }, + { &hf_lte_rrc_eutra_Bandwitdh_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eutra_Bandwitdh_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_inbandCarrierInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_GuardbandTDD_NB_r15(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_lte_rrc_T_inbandCarrierInfo_r13, T_inbandCarrierInfo_r13_sequence); + ett_lte_rrc_GuardbandTDD_NB_r15, GuardbandTDD_NB_r15_sequence); return offset; } -static const value_string lte_rrc_T_nrs_PowerOffsetNonAnchor_v1330_vals[] = { - { 0, "dB-12" }, - { 1, "dB-10" }, - { 2, "dB-8" }, - { 3, "dB-6" }, - { 4, "dB-4" }, - { 5, "dB-2" }, - { 6, "dB0" }, - { 7, "dB3" }, +static const value_string lte_rrc_T_sib_StandaloneLocation_r15_vals[] = { + { 0, "lower" }, + { 1, "higher" }, { 0, NULL } }; static int -dissect_lte_rrc_T_nrs_PowerOffsetNonAnchor_v1330(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_sib_StandaloneLocation_r15(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, - 8, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t DL_CarrierConfigDedicated_NB_r13_eag_1_sequence[] = { - { &hf_lte_rrc_nrs_PowerOffsetNonAnchor_v1330, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nrs_PowerOffsetNonAnchor_v1330 }, +static const per_sequence_t StandaloneTDD_NB_r15_sequence[] = { + { &hf_lte_rrc_sib_StandaloneLocation_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_StandaloneLocation_r15 }, + { &hf_lte_rrc_spare_07 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_5 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DL_CarrierConfigDedicated_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DL_CarrierConfigDedicated_NB_r13_eag_1_sequence); +dissect_lte_rrc_StandaloneTDD_NB_r15(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_lte_rrc_StandaloneTDD_NB_r15, StandaloneTDD_NB_r15_sequence); return offset; } -static const per_sequence_t DL_CarrierConfigDedicated_NB_r13_sequence[] = { - { &hf_lte_rrc_dl_CarrierFreq_r13_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreq_NB_r13 }, - { &hf_lte_rrc_downlinkBitmapNonAnchor_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_downlinkBitmapNonAnchor_r13 }, - { &hf_lte_rrc_dl_GapNonAnchor_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_dl_GapNonAnchor_r13 }, - { &hf_lte_rrc_inbandCarrierInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_inbandCarrierInfo_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CarrierConfigDedicated_NB_r13_eag_1 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_operationModeInfo_r15_vals[] = { + { 0, "inband-SamePCI-r15" }, + { 1, "inband-DifferentPCI-r15" }, + { 2, "guardband-r15" }, + { 3, "standalone-r15" }, + { 0, NULL } +}; + +static const per_choice_t T_operationModeInfo_r15_choice[] = { + { 0, &hf_lte_rrc_inband_SamePCI_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_Inband_SamePCI_TDD_NB_r15 }, + { 1, &hf_lte_rrc_inband_DifferentPCI_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_Inband_DifferentPCI_TDD_NB_r15 }, + { 2, &hf_lte_rrc_guardband_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_GuardbandTDD_NB_r15 }, + { 3, &hf_lte_rrc_standalone_r15, ASN1_NO_EXTENSIONS , dissect_lte_rrc_StandaloneTDD_NB_r15 }, + { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_DL_CarrierConfigDedicated_NB_r13(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_lte_rrc_DL_CarrierConfigDedicated_NB_r13, DL_CarrierConfigDedicated_NB_r13_sequence); +dissect_lte_rrc_T_operationModeInfo_r15(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_lte_rrc_T_operationModeInfo_r15, T_operationModeInfo_r15_choice, + NULL); return offset; } -static const per_sequence_t UL_CarrierConfigDedicated_NB_r13_sequence[] = { - { &hf_lte_rrc_ul_CarrierFreq_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierFreq_NB_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_sib1_CarrierInfo_r15_vals[] = { + { 0, "anchor" }, + { 1, "non-anchor" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UL_CarrierConfigDedicated_NB_r13(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_lte_rrc_UL_CarrierConfigDedicated_NB_r13, UL_CarrierConfigDedicated_NB_r13_sequence); +dissect_lte_rrc_T_sib1_CarrierInfo_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t CarrierConfigDedicated_NB_r13_sequence[] = { - { &hf_lte_rrc_dl_CarrierConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CarrierConfigDedicated_NB_r13 }, - { &hf_lte_rrc_ul_CarrierConfig_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CarrierConfigDedicated_NB_r13 }, +static const per_sequence_t MasterInformationBlock_TDD_NB_r15_sequence[] = { + { &hf_lte_rrc_systemFrameNumber_MSB_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_4 }, + { &hf_lte_rrc_hyperSFN_LSB_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_2 }, + { &hf_lte_rrc_schedulingInfoSIB1_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, + { &hf_lte_rrc_systemInfoValueTag_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, + { &hf_lte_rrc_ab_Enabled_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_operationModeInfo_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_operationModeInfo_r15 }, + { &hf_lte_rrc_sib1_CarrierInfo_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib1_CarrierInfo_r15 }, + { &hf_lte_rrc_spare_08 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_9 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_CarrierConfigDedicated_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_MasterInformationBlock_TDD_NB_r15(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_lte_rrc_CarrierConfigDedicated_NB_r13, CarrierConfigDedicated_NB_r13_sequence); + ett_lte_rrc_MasterInformationBlock_TDD_NB_r15, MasterInformationBlock_TDD_NB_r15_sequence); return offset; } -static const value_string lte_rrc_T_npdcch_NumRepetitions_r13_vals[] = { - { 0, "r1" }, - { 1, "r2" }, - { 2, "r4" }, - { 3, "r8" }, - { 4, "r16" }, - { 5, "r32" }, - { 6, "r64" }, - { 7, "r128" }, - { 8, "r256" }, - { 9, "r512" }, - { 10, "r1024" }, - { 11, "r2048" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } -}; +static int +dissect_lte_rrc_BCCH_BCH_MessageType_TDD_NB_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_MasterInformationBlock_TDD_NB_r15(tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const per_sequence_t BCCH_BCH_Message_TDD_NB_sequence[] = { + { &hf_lte_rrc_message_15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_BCH_MessageType_TDD_NB_r15 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_npdcch_NumRepetitions_r13(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BCCH_BCH_Message_TDD_NB(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_lte_rrc_BCCH_BCH_Message_TDD_NB, BCCH_BCH_Message_TDD_NB_sequence); return offset; } -static const value_string lte_rrc_T_npdcch_StartSF_USS_r13_vals[] = { - { 0, "v1dot5" }, - { 1, "v2" }, - { 2, "v4" }, - { 3, "v8" }, - { 4, "v16" }, - { 5, "v32" }, - { 6, "v48" }, - { 7, "v64" }, +static const value_string lte_rrc_T_ra_ResponseWindowSize_r13_01_vals[] = { + { 0, "pp2" }, + { 1, "pp3" }, + { 2, "pp4" }, + { 3, "pp5" }, + { 4, "pp6" }, + { 5, "pp7" }, + { 6, "pp8" }, + { 7, "pp10" }, { 0, NULL } }; static int -dissect_lte_rrc_T_npdcch_StartSF_USS_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_ra_ResponseWindowSize_r13_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, 8, NULL, FALSE, 0, NULL); @@ -80850,1216 +98245,1316 @@ dissect_lte_rrc_T_npdcch_StartSF_USS_r13(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_npdcch_Offset_USS_r13_vals[] = { - { 0, "zero" }, - { 1, "oneEighth" }, - { 2, "oneFourth" }, - { 3, "threeEighth" }, +static const value_string lte_rrc_T_mac_ContentionResolutionTimer_r13_01_vals[] = { + { 0, "pp1" }, + { 1, "pp2" }, + { 2, "pp3" }, + { 3, "pp4" }, + { 4, "pp8" }, + { 5, "pp16" }, + { 6, "pp32" }, + { 7, "pp64" }, { 0, NULL } }; static int -dissect_lte_rrc_T_npdcch_Offset_USS_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mac_ContentionResolutionTimer_r13_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); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t NPDCCH_ConfigDedicated_NB_r13_sequence[] = { - { &hf_lte_rrc_npdcch_NumRepetitions_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_NumRepetitions_r13 }, - { &hf_lte_rrc_npdcch_StartSF_USS_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_StartSF_USS_r13 }, - { &hf_lte_rrc_npdcch_Offset_USS_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_Offset_USS_r13 }, +static const per_sequence_t RACH_Info_NB_r13_sequence[] = { + { &hf_lte_rrc_ra_ResponseWindowSize_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ra_ResponseWindowSize_r13_01 }, + { &hf_lte_rrc_mac_ContentionResolutionTimer_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mac_ContentionResolutionTimer_r13_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NPDCCH_ConfigDedicated_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RACH_Info_NB_r13(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_lte_rrc_NPDCCH_ConfigDedicated_NB_r13, NPDCCH_ConfigDedicated_NB_r13_sequence); + ett_lte_rrc_RACH_Info_NB_r13, RACH_Info_NB_r13_sequence); return offset; } -static const value_string lte_rrc_ACK_NACK_NumRepetitions_NB_r13_vals[] = { - { 0, "r1" }, - { 1, "r2" }, - { 2, "r4" }, - { 3, "r8" }, - { 4, "r16" }, - { 5, "r32" }, - { 6, "r64" }, - { 7, "r128" }, +static const per_sequence_t RACH_InfoList_NB_r13_sequence_of[1] = { + { &hf_lte_rrc_RACH_InfoList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_Info_NB_r13 }, +}; + +static int +dissect_lte_rrc_RACH_InfoList_NB_r13(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_lte_rrc_RACH_InfoList_NB_r13, RACH_InfoList_NB_r13_sequence_of, + 1, maxNPRACH_Resources_NB_r13, FALSE); + + return offset; +} + + +static const value_string lte_rrc_T_preambleInitialReceivedTargetPower_v1450_vals[] = { + { 0, "dBm-130" }, + { 1, "dBm-128" }, + { 2, "dBm-126" }, + { 3, "dBm-124" }, + { 4, "dBm-122" }, + { 5, "dBm-88" }, + { 6, "dBm-86" }, + { 7, "dBm-84" }, + { 8, "dBm-82" }, + { 9, "dBm-80" }, { 0, NULL } }; static int -dissect_lte_rrc_ACK_NACK_NumRepetitions_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_preambleInitialReceivedTargetPower_v1450(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, - 8, NULL, FALSE, 0, NULL); + 10, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_groupHoppingDisabled_r13_01_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_powerRampingStepCE1_r14_vals[] = { + { 0, "dB0" }, + { 1, "dB2" }, + { 2, "dB4" }, + { 3, "dB6" }, { 0, NULL } }; static int -dissect_lte_rrc_T_groupHoppingDisabled_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_powerRampingStepCE1_r14(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, - 1, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t NPUSCH_ConfigDedicated_NB_r13_sequence[] = { - { &hf_lte_rrc_ack_NACK_NumRepetitions_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_ACK_NACK_NumRepetitions_NB_r13 }, - { &hf_lte_rrc_npusch_AllSymbols_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_groupHoppingDisabled_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_groupHoppingDisabled_r13_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_preambleInitialReceivedTargetPowerCE1_r14_vals[] = { + { 0, "dBm-130" }, + { 1, "dBm-128" }, + { 2, "dBm-126" }, + { 3, "dBm-124" }, + { 4, "dBm-122" }, + { 5, "dBm-120" }, + { 6, "dBm-118" }, + { 7, "dBm-116" }, + { 8, "dBm-114" }, + { 9, "dBm-112" }, + { 10, "dBm-110" }, + { 11, "dBm-108" }, + { 12, "dBm-106" }, + { 13, "dBm-104" }, + { 14, "dBm-102" }, + { 15, "dBm-100" }, + { 16, "dBm-98" }, + { 17, "dBm-96" }, + { 18, "dBm-94" }, + { 19, "dBm-92" }, + { 20, "dBm-90" }, + { 21, "dBm-88" }, + { 22, "dBm-86" }, + { 23, "dBm-84" }, + { 24, "dBm-82" }, + { 25, "dBm-80" }, + { 0, NULL } }; +static value_string_ext lte_rrc_T_preambleInitialReceivedTargetPowerCE1_r14_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_preambleInitialReceivedTargetPowerCE1_r14_vals); + + static int -dissect_lte_rrc_NPUSCH_ConfigDedicated_NB_r13(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_lte_rrc_NPUSCH_ConfigDedicated_NB_r13, NPUSCH_ConfigDedicated_NB_r13_sequence); +dissect_lte_rrc_T_preambleInitialReceivedTargetPowerCE1_r14(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, + 26, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UplinkPowerControlDedicated_NB_r13_sequence[] = { - { &hf_lte_rrc_p0_UE_NPUSCH_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M8_7 }, +static const per_sequence_t T_powerRampingParametersCE1_r14_sequence[] = { + { &hf_lte_rrc_powerRampingStepCE1_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_powerRampingStepCE1_r14 }, + { &hf_lte_rrc_preambleInitialReceivedTargetPowerCE1_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_preambleInitialReceivedTargetPowerCE1_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UplinkPowerControlDedicated_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_powerRampingParametersCE1_r14(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_lte_rrc_UplinkPowerControlDedicated_NB_r13, UplinkPowerControlDedicated_NB_r13_sequence); + ett_lte_rrc_T_powerRampingParametersCE1_r14, T_powerRampingParametersCE1_r14_sequence); return offset; } -static const value_string lte_rrc_T_twoHARQ_ProcessesConfig_r14_vals[] = { - { 0, "true" }, - { 0, NULL } +static const per_sequence_t PowerRampingParameters_NB_v1450_sequence[] = { + { &hf_lte_rrc_preambleInitialReceivedTargetPower_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_preambleInitialReceivedTargetPower_v1450 }, + { &hf_lte_rrc_powerRampingParametersCE1_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerRampingParametersCE1_r14 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_twoHARQ_ProcessesConfig_r14(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, - 1, NULL, FALSE, 0, NULL); +dissect_lte_rrc_PowerRampingParameters_NB_v1450(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_lte_rrc_PowerRampingParameters_NB_v1450, PowerRampingParameters_NB_v1450_sequence); return offset; } -static const per_sequence_t PhysicalConfigDedicated_NB_r13_eag_1_sequence[] = { - { &hf_lte_rrc_twoHARQ_ProcessesConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_twoHARQ_ProcessesConfig_r14 }, +static const per_sequence_t RACH_ConfigCommon_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_powerRampingParameters_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PowerRampingParameters_NB_v1450 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhysicalConfigDedicated_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicated_NB_r13_eag_1_sequence); +dissect_lte_rrc_RACH_ConfigCommon_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RACH_ConfigCommon_NB_r13_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_interferenceRandomisationConfig_r14_vals[] = { - { 0, "true" }, +static const value_string lte_rrc_T_mac_ContentionResolutionTimer_r15_01_vals[] = { + { 0, "pp1" }, + { 1, "pp2" }, + { 2, "pp3" }, + { 3, "pp4" }, + { 4, "pp8" }, + { 5, "pp16" }, + { 6, "pp32" }, + { 7, "pp64" }, { 0, NULL } }; static int -dissect_lte_rrc_T_interferenceRandomisationConfig_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_mac_ContentionResolutionTimer_r15_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, - 1, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PhysicalConfigDedicated_NB_r13_eag_2_sequence[] = { - { &hf_lte_rrc_interferenceRandomisationConfig_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_interferenceRandomisationConfig_r14 }, +static const per_sequence_t RACH_Info_NB_v1530_sequence[] = { + { &hf_lte_rrc_mac_ContentionResolutionTimer_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mac_ContentionResolutionTimer_r15_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PhysicalConfigDedicated_NB_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, PhysicalConfigDedicated_NB_r13_eag_2_sequence); +dissect_lte_rrc_RACH_Info_NB_v1530(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_lte_rrc_RACH_Info_NB_v1530, RACH_Info_NB_v1530_sequence); return offset; } -static const per_sequence_t PhysicalConfigDedicated_NB_r13_sequence[] = { - { &hf_lte_rrc_carrierConfigDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_CarrierConfigDedicated_NB_r13 }, - { &hf_lte_rrc_npdcch_ConfigDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NPDCCH_ConfigDedicated_NB_r13 }, - { &hf_lte_rrc_npusch_ConfigDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NPUSCH_ConfigDedicated_NB_r13 }, - { &hf_lte_rrc_uplinkPowerControlDedicated_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UplinkPowerControlDedicated_NB_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_NB_r13_eag_1 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysicalConfigDedicated_NB_r13_eag_2 }, - { NULL, 0, 0, NULL } +static const per_sequence_t RACH_InfoList_NB_v1530_sequence_of[1] = { + { &hf_lte_rrc_RACH_InfoList_NB_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_Info_NB_v1530 }, }; static int -dissect_lte_rrc_PhysicalConfigDedicated_NB_r13(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_lte_rrc_PhysicalConfigDedicated_NB_r13, PhysicalConfigDedicated_NB_r13_sequence); +dissect_lte_rrc_RACH_InfoList_NB_v1530(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_lte_rrc_RACH_InfoList_NB_v1530, RACH_InfoList_NB_v1530_sequence_of, + 1, maxNPRACH_Resources_NB_r13, FALSE); return offset; } -static const value_string lte_rrc_T_t301_r13_vals[] = { - { 0, "ms2500" }, - { 1, "ms4000" }, - { 2, "ms6000" }, - { 3, "ms10000" }, - { 4, "ms15000" }, - { 5, "ms25000" }, - { 6, "ms40000" }, - { 7, "ms60000" }, - { 0, NULL } +static const per_sequence_t RACH_ConfigCommon_NB_r13_eag_2_sequence[] = { + { &hf_lte_rrc_rach_InfoList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RACH_InfoList_NB_v1530 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_t301_r13(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, - 8, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RACH_ConfigCommon_NB_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RACH_ConfigCommon_NB_r13_eag_2_sequence); return offset; } -static const value_string lte_rrc_T_t310_r13_vals[] = { - { 0, "ms0" }, - { 1, "ms200" }, - { 2, "ms500" }, - { 3, "ms1000" }, - { 4, "ms2000" }, - { 5, "ms4000" }, - { 6, "ms8000" }, - { 0, NULL } +static const per_sequence_t RACH_ConfigCommon_NB_r13_sequence[] = { + { &hf_lte_rrc_preambleTransMax_CE_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PreambleTransMax }, + { &hf_lte_rrc_powerRampingParameters_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PowerRampingParameters }, + { &hf_lte_rrc_rach_InfoList_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_InfoList_NB_r13 }, + { &hf_lte_rrc_connEstFailOffset_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_ConfigCommon_NB_r13_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_ConfigCommon_NB_r13_eag_2 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_t310_r13(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, - 7, NULL, FALSE, 0, NULL); +dissect_lte_rrc_RACH_ConfigCommon_NB_r13(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_lte_rrc_RACH_ConfigCommon_NB_r13, RACH_ConfigCommon_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_n310_r13_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, - { 4, "n6" }, - { 5, "n8" }, - { 6, "n10" }, - { 7, "n20" }, +static const value_string lte_rrc_T_modificationPeriodCoeff_r13_vals[] = { + { 0, "n16" }, + { 1, "n32" }, + { 2, "n64" }, + { 3, "n128" }, { 0, NULL } }; static int -dissect_lte_rrc_T_n310_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_modificationPeriodCoeff_r13(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, - 8, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_t311_r13_vals[] = { - { 0, "ms1000" }, - { 1, "ms3000" }, - { 2, "ms5000" }, - { 3, "ms10000" }, - { 4, "ms15000" }, - { 5, "ms20000" }, - { 6, "ms30000" }, - { 0, NULL } +static const per_sequence_t BCCH_Config_NB_r13_sequence[] = { + { &hf_lte_rrc_modificationPeriodCoeff_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_modificationPeriodCoeff_r13 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_t311_r13(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, - 7, NULL, FALSE, 0, NULL); +dissect_lte_rrc_BCCH_Config_NB_r13(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_lte_rrc_BCCH_Config_NB_r13, BCCH_Config_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_n311_r13_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n3" }, - { 3, "n4" }, - { 4, "n5" }, - { 5, "n6" }, - { 6, "n8" }, - { 7, "n10" }, +static const value_string lte_rrc_T_defaultPagingCycle_r13_vals[] = { + { 0, "rf128" }, + { 1, "rf256" }, + { 2, "rf512" }, + { 3, "rf1024" }, { 0, NULL } }; static int -dissect_lte_rrc_T_n311_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_defaultPagingCycle_r13(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, - 8, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_t311_v1350_vals[] = { - { 0, "ms40000" }, - { 1, "ms60000" }, - { 2, "ms90000" }, - { 3, "ms120000" }, +static const value_string lte_rrc_T_nB_r13_vals[] = { + { 0, "fourT" }, + { 1, "twoT" }, + { 2, "oneT" }, + { 3, "halfT" }, + { 4, "quarterT" }, + { 5, "one8thT" }, + { 6, "one16thT" }, + { 7, "one32ndT" }, + { 8, "one64thT" }, + { 9, "one128thT" }, + { 10, "one256thT" }, + { 11, "one512thT" }, + { 12, "one1024thT" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t311_v1350(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nB_r13(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); + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_eag_1_05_sequence[] = { - { &hf_lte_rrc_t311_v1350 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t311_v1350 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_npdcch_NumRepetitionPaging_r13_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "r128" }, + { 8, "r256" }, + { 9, "r512" }, + { 10, "r1024" }, + { 11, "r2048" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_eag_1_05(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, T_eag_1_05_sequence); +dissect_lte_rrc_T_npdcch_NumRepetitionPaging_r13(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_setup_132_sequence[] = { - { &hf_lte_rrc_t301_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t301_r13 }, - { &hf_lte_rrc_t310_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t310_r13 }, - { &hf_lte_rrc_n310_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n310_r13 }, - { &hf_lte_rrc_t311_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t311_r13 }, - { &hf_lte_rrc_n311_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n311_r13 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eag_1_05 }, +static const per_sequence_t PCCH_Config_NB_r13_sequence[] = { + { &hf_lte_rrc_defaultPagingCycle_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_defaultPagingCycle_r13 }, + { &hf_lte_rrc_nB_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nB_r13 }, + { &hf_lte_rrc_npdcch_NumRepetitionPaging_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_NumRepetitionPaging_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_setup_132(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_PCCH_Config_NB_r13(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_lte_rrc_T_setup_132, T_setup_132_sequence); + ett_lte_rrc_PCCH_Config_NB_r13, PCCH_Config_NB_r13_sequence); return offset; } -static const value_string lte_rrc_RLF_TimersAndConstants_NB_r13_vals[] = { - { 0, "release" }, - { 1, "setup" }, +static const value_string lte_rrc_T_nprach_CP_Length_r13_vals[] = { + { 0, "us66dot7" }, + { 1, "us266dot7" }, { 0, NULL } }; -static const per_choice_t RLF_TimersAndConstants_NB_r13_choice[] = { - { 0, &hf_lte_rrc_release , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 1, &hf_lte_rrc_setup_150 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_setup_132 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_RLF_TimersAndConstants_NB_r13(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_lte_rrc_RLF_TimersAndConstants_NB_r13, RLF_TimersAndConstants_NB_r13_choice, - NULL); +dissect_lte_rrc_T_nprach_CP_Length_r13(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t RadioResourceConfigDedicated_NB_r13_sequence[] = { - { &hf_lte_rrc_srb_ToAddModList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_SRB_ToAddModList_NB_r13 }, - { &hf_lte_rrc_drb_ToAddModList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToAddModList_NB_r13 }, - { &hf_lte_rrc_drb_ToReleaseList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DRB_ToReleaseList_NB_r13 }, - { &hf_lte_rrc_mac_MainConfig_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_mac_MainConfig_r13 }, - { &hf_lte_rrc_physicalConfigDedicated_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhysicalConfigDedicated_NB_r13 }, - { &hf_lte_rrc_rlf_TimersAndConstants_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_RLF_TimersAndConstants_NB_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t RSRP_ThresholdsNPRACH_InfoList_NB_r13_sequence_of[1] = { + { &hf_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, }; static int -dissect_lte_rrc_RadioResourceConfigDedicated_NB_r13(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_lte_rrc_RadioResourceConfigDedicated_NB_r13, RadioResourceConfigDedicated_NB_r13_sequence); +dissect_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13(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_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13, RSRP_ThresholdsNPRACH_InfoList_NB_r13_sequence_of, + 1, 2, FALSE); return offset; } -static const per_sequence_t AS_Config_NB_sequence[] = { - { &hf_lte_rrc_sourceRadioResourceConfig_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_NB_r13 }, - { &hf_lte_rrc_sourceSecurityAlgorithmConfig_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SecurityAlgorithmConfig }, - { &hf_lte_rrc_sourceUE_Identity_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_C_RNTI }, - { &hf_lte_rrc_sourceDl_CarrierFreq_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreq_NB_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_Periodicity_r13_vals[] = { + { 0, "ms40" }, + { 1, "ms80" }, + { 2, "ms160" }, + { 3, "ms240" }, + { 4, "ms320" }, + { 5, "ms640" }, + { 6, "ms1280" }, + { 7, "ms2560" }, + { 0, NULL } }; + static int -dissect_lte_rrc_AS_Config_NB(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_lte_rrc_AS_Config_NB, AS_Config_NB_sequence); +dissect_lte_rrc_T_nprach_Periodicity_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_ue_InactiveTime_01_vals[] = { - { 0, "s1" }, - { 1, "s2" }, - { 2, "s3" }, - { 3, "s5" }, - { 4, "s7" }, - { 5, "s10" }, - { 6, "s15" }, - { 7, "s20" }, - { 8, "s25" }, - { 9, "s30" }, - { 10, "s40" }, - { 11, "s50" }, - { 12, "min1" }, - { 13, "min1s20" }, - { 14, "min1s40" }, - { 15, "min2" }, - { 16, "min2s30" }, - { 17, "min3" }, - { 18, "min3s30" }, - { 19, "min4" }, - { 20, "min5" }, - { 21, "min6" }, - { 22, "min7" }, - { 23, "min8" }, - { 24, "min9" }, - { 25, "min10" }, - { 26, "min12" }, - { 27, "min14" }, - { 28, "min17" }, - { 29, "min20" }, - { 30, "min24" }, - { 31, "min28" }, - { 32, "min33" }, - { 33, "min38" }, - { 34, "min44" }, - { 35, "min50" }, - { 36, "hr1" }, - { 37, "hr1min30" }, - { 38, "hr2" }, - { 39, "hr2min30" }, - { 40, "hr3" }, - { 41, "hr3min30" }, - { 42, "hr4" }, - { 43, "hr5" }, - { 44, "hr6" }, - { 45, "hr8" }, - { 46, "hr10" }, - { 47, "hr13" }, - { 48, "hr16" }, - { 49, "hr20" }, - { 50, "day1" }, - { 51, "day1hr12" }, - { 52, "day2" }, - { 53, "day2hr12" }, - { 54, "day3" }, - { 55, "day4" }, - { 56, "day5" }, - { 57, "day7" }, - { 58, "day10" }, - { 59, "day14" }, - { 60, "day19" }, - { 61, "day24" }, - { 62, "day30" }, - { 63, "dayMoreThan30" }, +static const value_string lte_rrc_T_nprach_StartTime_r13_vals[] = { + { 0, "ms8" }, + { 1, "ms16" }, + { 2, "ms32" }, + { 3, "ms64" }, + { 4, "ms128" }, + { 5, "ms256" }, + { 6, "ms512" }, + { 7, "ms1024" }, { 0, NULL } }; -static value_string_ext lte_rrc_T_ue_InactiveTime_01_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_ue_InactiveTime_01_vals); - static int -dissect_lte_rrc_T_ue_InactiveTime_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_StartTime_r13(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, - 64, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RRM_Config_NB_sequence[] = { - { &hf_lte_rrc_ue_InactiveTime_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_InactiveTime_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_SubcarrierOffset_r13_vals[] = { + { 0, "n0" }, + { 1, "n12" }, + { 2, "n24" }, + { 3, "n36" }, + { 4, "n2" }, + { 5, "n18" }, + { 6, "n34" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RRM_Config_NB(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_lte_rrc_RRM_Config_NB, RRM_Config_NB_sequence); +dissect_lte_rrc_T_nprach_SubcarrierOffset_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t ReestablishmentInfo_NB_sequence[] = { - { &hf_lte_rrc_sourcePhysCellId_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PhysCellId }, - { &hf_lte_rrc_targetCellShortMAC_I_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ShortMAC_I }, - { &hf_lte_rrc_additionalReestabInfoList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_AdditionalReestabInfoList }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_NumSubcarriers_r13_vals[] = { + { 0, "n12" }, + { 1, "n24" }, + { 2, "n36" }, + { 3, "n48" }, + { 0, NULL } }; + static int -dissect_lte_rrc_ReestablishmentInfo_NB(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_lte_rrc_ReestablishmentInfo_NB, ReestablishmentInfo_NB_sequence); +dissect_lte_rrc_T_nprach_NumSubcarriers_r13(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 per_sequence_t AS_Context_NB_sequence[] = { - { &hf_lte_rrc_reestablishmentInfo_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_ReestablishmentInfo_NB }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r13_vals[] = { + { 0, "zero" }, + { 1, "oneThird" }, + { 2, "twoThird" }, + { 3, "one" }, + { 0, NULL } }; -static int -dissect_lte_rrc_AS_Context_NB(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_lte_rrc_AS_Context_NB, AS_Context_NB_sequence); - - return offset; -} - - static int -dissect_lte_rrc_T_ue_RadioAccessCapabilityInfoExt_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UE_Capability_NB_Ext_r14_IEs_PDU); +dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r13(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 per_sequence_t T_nonCriticalExtension_72_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_maxNumPreambleAttemptCE_r13_01_vals[] = { + { 0, "n3" }, + { 1, "n4" }, + { 2, "n5" }, + { 3, "n6" }, + { 4, "n7" }, + { 5, "n8" }, + { 6, "n10" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_nonCriticalExtension_72(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_lte_rrc_T_nonCriticalExtension_72, T_nonCriticalExtension_72_sequence); +dissect_lte_rrc_T_maxNumPreambleAttemptCE_r13_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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t HandoverPreparationInformation_NB_Ext_r14_IEs_sequence[] = { - { &hf_lte_rrc_ue_RadioAccessCapabilityInfoExt_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_RadioAccessCapabilityInfoExt_r14 }, - { &hf_lte_rrc_nonCriticalExtension_244, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_72 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_numRepetitionsPerPreambleAttempt_r13_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n32" }, + { 6, "n64" }, + { 7, "n128" }, + { 0, NULL } }; + static int -dissect_lte_rrc_HandoverPreparationInformation_NB_Ext_r14_IEs(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_lte_rrc_HandoverPreparationInformation_NB_Ext_r14_IEs, HandoverPreparationInformation_NB_Ext_r14_IEs_sequence); +dissect_lte_rrc_T_numRepetitionsPerPreambleAttempt_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t HandoverPreparationInformation_NB_v1380_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_243, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_NB_Ext_r14_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_npdcch_NumRepetitions_RA_r13_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "r128" }, + { 8, "r256" }, + { 9, "r512" }, + { 10, "r1024" }, + { 11, "r2048" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_HandoverPreparationInformation_NB_v1380_IEs(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_lte_rrc_HandoverPreparationInformation_NB_v1380_IEs, HandoverPreparationInformation_NB_v1380_IEs_sequence); +dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r13(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t HandoverPreparationInformation_NB_IEs_sequence[] = { - { &hf_lte_rrc_ue_RadioAccessCapabilityInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_Capability_NB_r13 }, - { &hf_lte_rrc_as_Config_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_AS_Config_NB }, - { &hf_lte_rrc_rrm_Config_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRM_Config_NB }, - { &hf_lte_rrc_as_Context_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_AS_Context_NB }, - { &hf_lte_rrc_nonCriticalExtension_242, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_HandoverPreparationInformation_NB_v1380_IEs }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_npdcch_StartSF_CSS_RA_r13_vals[] = { + { 0, "v1dot5" }, + { 1, "v2" }, + { 2, "v4" }, + { 3, "v8" }, + { 4, "v16" }, + { 5, "v32" }, + { 6, "v48" }, + { 7, "v64" }, + { 0, NULL } }; + static int -dissect_lte_rrc_HandoverPreparationInformation_NB_IEs(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_lte_rrc_HandoverPreparationInformation_NB_IEs, HandoverPreparationInformation_NB_IEs_sequence); +dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_c1_50_vals[] = { - { 0, "handoverPreparationInformation-r13" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_npdcch_Offset_RA_r13_vals[] = { + { 0, "zero" }, + { 1, "oneEighth" }, + { 2, "oneFourth" }, + { 3, "threeEighth" }, { 0, NULL } }; -static const per_choice_t T_c1_50_choice[] = { - { 0, &hf_lte_rrc_handoverPreparationInformation_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_HandoverPreparationInformation_NB_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_50(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_lte_rrc_T_c1_50, T_c1_50_choice, - NULL); +dissect_lte_rrc_T_npdcch_Offset_RA_r13(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 per_sequence_t T_criticalExtensionsFuture_53_sequence[] = { +static const per_sequence_t NPRACH_Parameters_NB_r13_sequence[] = { + { &hf_lte_rrc_nprach_Periodicity_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_Periodicity_r13 }, + { &hf_lte_rrc_nprach_StartTime_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_StartTime_r13 }, + { &hf_lte_rrc_nprach_SubcarrierOffset_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_SubcarrierOffset_r13 }, + { &hf_lte_rrc_nprach_NumSubcarriers_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_NumSubcarriers_r13 }, + { &hf_lte_rrc_nprach_SubcarrierMSG3_RangeStart_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r13 }, + { &hf_lte_rrc_maxNumPreambleAttemptCE_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_maxNumPreambleAttemptCE_r13_01 }, + { &hf_lte_rrc_numRepetitionsPerPreambleAttempt_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numRepetitionsPerPreambleAttempt_r13 }, + { &hf_lte_rrc_npdcch_NumRepetitions_RA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r13 }, + { &hf_lte_rrc_npdcch_StartSF_CSS_RA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r13 }, + { &hf_lte_rrc_npdcch_Offset_RA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_Offset_RA_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_53(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NPRACH_Parameters_NB_r13(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_lte_rrc_T_criticalExtensionsFuture_53, T_criticalExtensionsFuture_53_sequence); + ett_lte_rrc_NPRACH_Parameters_NB_r13, NPRACH_Parameters_NB_r13_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_53_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_53_choice[] = { - { 0, &hf_lte_rrc_c1_50 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_50 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_53, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_53 }, - { 0, NULL, 0, NULL } +static const per_sequence_t NPRACH_ParametersList_NB_r13_sequence_of[1] = { + { &hf_lte_rrc_NPRACH_ParametersList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_Parameters_NB_r13 }, }; static int -dissect_lte_rrc_T_criticalExtensions_53(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_lte_rrc_T_criticalExtensions_53, T_criticalExtensions_53_choice, - NULL); +dissect_lte_rrc_NPRACH_ParametersList_NB_r13(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_lte_rrc_NPRACH_ParametersList_NB_r13, NPRACH_ParametersList_NB_r13_sequence_of, + 1, maxNPRACH_Resources_NB_r13, FALSE); return offset; } -static const per_sequence_t HandoverPreparationInformation_NB_sequence[] = { - { &hf_lte_rrc_criticalExtensions_53, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_53 }, +static const per_sequence_t NPRACH_ConfigSIB_NB_r13_sequence[] = { + { &hf_lte_rrc_nprach_CP_Length_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_CP_Length_r13 }, + { &hf_lte_rrc_rsrp_ThresholdsPrachInfoList_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13 }, + { &hf_lte_rrc_nprach_ParametersList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_ParametersList_NB_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_HandoverPreparationInformation_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NPRACH_ConfigSIB_NB_r13(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_lte_rrc_HandoverPreparationInformation_NB, HandoverPreparationInformation_NB_sequence); + ett_lte_rrc_NPRACH_ConfigSIB_NB_r13, NPRACH_ConfigSIB_NB_r13_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_73_sequence[] = { +static const per_sequence_t NPDSCH_ConfigCommon_NB_r13_sequence[] = { + { &hf_lte_rrc_nrs_Power_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_50 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_73(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NPDSCH_ConfigCommon_NB_r13(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_lte_rrc_T_nonCriticalExtension_73, T_nonCriticalExtension_73_sequence); + ett_lte_rrc_NPDSCH_ConfigCommon_NB_r13, NPDSCH_ConfigCommon_NB_r13_sequence); return offset; } -static const per_sequence_t UEPagingCoverageInformation_NB_IEs_sequence[] = { - { &hf_lte_rrc_npdcch_NumRepetitionPaging_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_2048 }, - { &hf_lte_rrc_nonCriticalExtension_245, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_73 }, - { NULL, 0, 0, NULL } +static const per_sequence_t SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13_sequence_of[1] = { + { &hf_lte_rrc_ack_NACK_NumRepetitions_Msg4_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ACK_NACK_NumRepetitions_NB_r13 }, }; static int -dissect_lte_rrc_UEPagingCoverageInformation_NB_IEs(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_lte_rrc_UEPagingCoverageInformation_NB_IEs, UEPagingCoverageInformation_NB_IEs_sequence); +dissect_lte_rrc_SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13(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_lte_rrc_SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13, SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13_sequence_of, + 1, maxNPRACH_Resources_NB_r13, FALSE); return offset; } -static const value_string lte_rrc_T_c1_51_vals[] = { - { 0, "uePagingCoverageInformation-r13" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_srs_SubframeConfig_r13_vals[] = { + { 0, "sc0" }, + { 1, "sc1" }, + { 2, "sc2" }, + { 3, "sc3" }, + { 4, "sc4" }, + { 5, "sc5" }, + { 6, "sc6" }, + { 7, "sc7" }, + { 8, "sc8" }, + { 9, "sc9" }, + { 10, "sc10" }, + { 11, "sc11" }, + { 12, "sc12" }, + { 13, "sc13" }, + { 14, "sc14" }, + { 15, "sc15" }, { 0, NULL } }; -static const per_choice_t T_c1_51_choice[] = { - { 0, &hf_lte_rrc_uePagingCoverageInformation_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UEPagingCoverageInformation_NB_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_51(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_lte_rrc_T_c1_51, T_c1_51_choice, - NULL); +dissect_lte_rrc_T_srs_SubframeConfig_r13(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_54_sequence[] = { - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensionsFuture_54(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_lte_rrc_T_criticalExtensionsFuture_54, T_criticalExtensionsFuture_54_sequence); +dissect_lte_rrc_INTEGER_0_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 0U, 30U, NULL, FALSE); return offset; } -static const value_string lte_rrc_T_criticalExtensions_54_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, - { 0, NULL } -}; - -static const per_choice_t T_criticalExtensions_54_choice[] = { - { 0, &hf_lte_rrc_c1_51 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_51 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_54, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_54 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_dmrs_Config_r13_sequence[] = { + { &hf_lte_rrc_threeTone_BaseSequence_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_12 }, + { &hf_lte_rrc_threeTone_CyclicShift_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2 }, + { &hf_lte_rrc_sixTone_BaseSequence_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_14 }, + { &hf_lte_rrc_sixTone_CyclicShift_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, + { &hf_lte_rrc_twelveTone_BaseSequence_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_30 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_54(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_lte_rrc_T_criticalExtensions_54, T_criticalExtensions_54_choice, - NULL); +dissect_lte_rrc_T_dmrs_Config_r13(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_lte_rrc_T_dmrs_Config_r13, T_dmrs_Config_r13_sequence); return offset; } -static const per_sequence_t UEPagingCoverageInformation_NB_sequence[] = { - { &hf_lte_rrc_criticalExtensions_54, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_54 }, +static const per_sequence_t UL_ReferenceSignalsNPUSCH_NB_r13_sequence[] = { + { &hf_lte_rrc_groupHoppingEnabled_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_groupAssignmentNPUSCH_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_29 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UEPagingCoverageInformation_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UL_ReferenceSignalsNPUSCH_NB_r13(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_lte_rrc_UEPagingCoverageInformation_NB, UEPagingCoverageInformation_NB_sequence); + ett_lte_rrc_UL_ReferenceSignalsNPUSCH_NB_r13, UL_ReferenceSignalsNPUSCH_NB_r13_sequence); return offset; } +static const per_sequence_t NPUSCH_ConfigCommon_NB_r13_sequence[] = { + { &hf_lte_rrc_ack_NACK_NumRepetitions_Msg4_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13 }, + { &hf_lte_rrc_srs_SubframeConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_SubframeConfig_r13 }, + { &hf_lte_rrc_dmrs_Config_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_Config_r13 }, + { &hf_lte_rrc_ul_ReferenceSignalsNPUSCH_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_ReferenceSignalsNPUSCH_NB_r13 }, + { NULL, 0, 0, NULL } +}; static int -dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UE_Capability_NB_r13_PDU); +dissect_lte_rrc_NPUSCH_ConfigCommon_NB_r13(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_lte_rrc_NPUSCH_ConfigCommon_NB_r13, NPUSCH_ConfigCommon_NB_r13_sequence); return offset; } +static const value_string lte_rrc_T_alpha_r13_vals[] = { + { 0, "al0" }, + { 1, "al04" }, + { 2, "al05" }, + { 3, "al06" }, + { 4, "al07" }, + { 5, "al08" }, + { 6, "al09" }, + { 7, "al1" }, + { 0, NULL } +}; + static int -dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UECapabilityInformation_NB_PDU); +dissect_lte_rrc_T_alpha_r13(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_nonCriticalExtension_74_sequence[] = { +static const per_sequence_t UplinkPowerControlCommon_NB_r13_sequence[] = { + { &hf_lte_rrc_p0_NominalNPUSCH_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, + { &hf_lte_rrc_alpha_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_alpha_r13 }, + { &hf_lte_rrc_deltaPreambleMsg3_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M1_6 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_74(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_UplinkPowerControlCommon_NB_r13(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_lte_rrc_T_nonCriticalExtension_74, T_nonCriticalExtension_74_sequence); + ett_lte_rrc_UplinkPowerControlCommon_NB_r13, UplinkPowerControlCommon_NB_r13_sequence); return offset; } -static const per_sequence_t UERadioAccessCapabilityInformation_NB_r14_IEs_sequence[] = { - { &hf_lte_rrc_ue_RadioAccessCapabilityInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo_r14 }, - { &hf_lte_rrc_nonCriticalExtension_248, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_74 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r13_vals[] = { + { 0, "n8" }, + { 1, "n10" }, + { 2, "n11" }, + { 3, "n12" }, + { 4, "n20" }, + { 5, "n22" }, + { 6, "n23" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n34" }, + { 10, "n35" }, + { 11, "n36" }, + { 12, "n40" }, + { 13, "n44" }, + { 14, "n46" }, + { 15, "n48" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_r14_IEs(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_lte_rrc_UERadioAccessCapabilityInformation_NB_r14_IEs, UERadioAccessCapabilityInformation_NB_r14_IEs_sequence); +dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r13(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UERadioAccessCapabilityInformation_NB_v1380_IEs_sequence[] = { - { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_247, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_r14_IEs }, +static const per_sequence_t NPRACH_Parameters_NB_v1330_sequence[] = { + { &hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r13 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_v1380_IEs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NPRACH_Parameters_NB_v1330(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_lte_rrc_UERadioAccessCapabilityInformation_NB_v1380_IEs, UERadioAccessCapabilityInformation_NB_v1380_IEs_sequence); + ett_lte_rrc_NPRACH_Parameters_NB_v1330, NPRACH_Parameters_NB_v1330_sequence); return offset; } -static const per_sequence_t UERadioAccessCapabilityInformation_NB_IEs_sequence[] = { - { &hf_lte_rrc_ue_RadioAccessCapabilityInfo_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_RadioAccessCapabilityInfo_r13 }, - { &hf_lte_rrc_nonCriticalExtension_246, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_v1380_IEs }, - { NULL, 0, 0, NULL } +static const per_sequence_t NPRACH_ParametersList_NB_v1330_sequence_of[1] = { + { &hf_lte_rrc_NPRACH_ParametersList_NB_v1330_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_Parameters_NB_v1330 }, }; static int -dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_IEs(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_lte_rrc_UERadioAccessCapabilityInformation_NB_IEs, UERadioAccessCapabilityInformation_NB_IEs_sequence); +dissect_lte_rrc_NPRACH_ParametersList_NB_v1330(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_lte_rrc_NPRACH_ParametersList_NB_v1330, NPRACH_ParametersList_NB_v1330_sequence_of, + 1, maxNPRACH_Resources_NB_r13, FALSE); return offset; } -static const value_string lte_rrc_T_c1_52_vals[] = { - { 0, "ueRadioAccessCapabilityInformation-r13" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, - { 0, NULL } -}; - -static const per_choice_t T_c1_52_choice[] = { - { 0, &hf_lte_rrc_ueRadioAccessCapabilityInformation_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UERadioAccessCapabilityInformation_NB_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } +static const per_sequence_t NPRACH_ConfigSIB_NB_v1330_sequence[] = { + { &hf_lte_rrc_nprach_ParametersList_v1330, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_ParametersList_NB_v1330 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_c1_52(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_lte_rrc_T_c1_52, T_c1_52_choice, - NULL); +dissect_lte_rrc_NPRACH_ConfigSIB_NB_v1330(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_lte_rrc_NPRACH_ConfigSIB_NB_v1330, NPRACH_ConfigSIB_NB_v1330_sequence); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_55_sequence[] = { +static const per_sequence_t RadioResourceConfigCommonSIB_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_nprach_Config_v1330, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ConfigSIB_NB_v1330 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_55(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_lte_rrc_T_criticalExtensionsFuture_55, T_criticalExtensionsFuture_55_sequence); +dissect_lte_rrc_RadioResourceConfigCommonSIB_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_NB_r13_eag_1_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_55_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_maxNumPreambleAttemptCE_r14_vals[] = { + { 0, "n3" }, + { 1, "n4" }, + { 2, "n5" }, + { 3, "n6" }, + { 4, "n7" }, + { 5, "n8" }, + { 6, "n10" }, + { 7, "spare1" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_55_choice[] = { - { 0, &hf_lte_rrc_c1_52 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_52 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_55, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_55 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_55(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_lte_rrc_T_criticalExtensions_55, T_criticalExtensions_55_choice, - NULL); +dissect_lte_rrc_T_maxNumPreambleAttemptCE_r14(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UERadioAccessCapabilityInformation_NB_sequence[] = { - { &hf_lte_rrc_criticalExtensions_55, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_55 }, +static const per_sequence_t NPRACH_ConfigSIB_NB_v1450_sequence[] = { + { &hf_lte_rrc_maxNumPreambleAttemptCE_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_maxNumPreambleAttemptCE_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UERadioAccessCapabilityInformation_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NPRACH_ConfigSIB_NB_v1450(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_lte_rrc_UERadioAccessCapabilityInformation_NB, UERadioAccessCapabilityInformation_NB_sequence); - - return offset; -} - - - -static int -dissect_lte_rrc_T_ue_RadioPagingInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_octet_string_containing_pdu_new(tvb, offset, actx, tree, hf_index, - NO_BOUND, NO_BOUND, FALSE, dissect_UE_RadioPagingInfo_NB_r13_PDU); + ett_lte_rrc_NPRACH_ConfigSIB_NB_v1450, NPRACH_ConfigSIB_NB_v1450_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_75_sequence[] = { +static const per_sequence_t RadioResourceConfigCommonSIB_NB_r13_eag_2_sequence[] = { + { &hf_lte_rrc_nprach_Config_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ConfigSIB_NB_v1450 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_75(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_lte_rrc_T_nonCriticalExtension_75, T_nonCriticalExtension_75_sequence); +dissect_lte_rrc_RadioResourceConfigCommonSIB_NB_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_NB_r13_eag_2_sequence); return offset; } -static const per_sequence_t UERadioPagingInformation_NB_IEs_sequence[] = { - { &hf_lte_rrc_ue_RadioPagingInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_RadioPagingInfo_r13 }, - { &hf_lte_rrc_nonCriticalExtension_249, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_75 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_PreambleFormat_r15_vals[] = { + { 0, "fmt0" }, + { 1, "fmt1" }, + { 2, "fmt2" }, + { 3, "fmt0-a" }, + { 4, "fmt1-a" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UERadioPagingInformation_NB_IEs(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_lte_rrc_UERadioPagingInformation_NB_IEs, UERadioPagingInformation_NB_IEs_sequence); +dissect_lte_rrc_T_nprach_PreambleFormat_r15(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, + 5, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_c1_53_vals[] = { - { 0, "ueRadioPagingInformation-r13" }, - { 1, "spare3" }, - { 2, "spare2" }, - { 3, "spare1" }, +static const value_string lte_rrc_T_numRepetitionsPerPreambleAttempt_r15_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 4, "n16" }, + { 5, "n32" }, + { 6, "n64" }, + { 7, "n128" }, + { 8, "n256" }, + { 9, "n512" }, + { 10, "n1024" }, { 0, NULL } }; -static const per_choice_t T_c1_53_choice[] = { - { 0, &hf_lte_rrc_ueRadioPagingInformation_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UERadioPagingInformation_NB_IEs }, - { 1, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 2, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_c1_53(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_lte_rrc_T_c1_53, T_c1_53_choice, - NULL); +dissect_lte_rrc_T_numRepetitionsPerPreambleAttempt_r15(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, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_criticalExtensionsFuture_56_sequence[] = { - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_Periodicity_r15_vals[] = { + { 0, "ms80" }, + { 1, "ms160" }, + { 2, "ms320" }, + { 3, "ms640" }, + { 4, "ms1280" }, + { 5, "ms2560" }, + { 6, "ms5120" }, + { 7, "ms10240" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_criticalExtensionsFuture_56(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_lte_rrc_T_criticalExtensionsFuture_56, T_criticalExtensionsFuture_56_sequence); +dissect_lte_rrc_T_nprach_Periodicity_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_criticalExtensions_56_vals[] = { - { 0, "c1" }, - { 1, "criticalExtensionsFuture" }, +static const value_string lte_rrc_T_nprach_StartTime_r15_vals[] = { + { 0, "ms10" }, + { 1, "ms20" }, + { 2, "ms40" }, + { 3, "ms80" }, + { 4, "ms160" }, + { 5, "ms320" }, + { 6, "ms640" }, + { 7, "ms1280" }, + { 8, "ms2560" }, + { 9, "ms5120" }, + { 10, "spare6" }, + { 11, "spare5" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_56_choice[] = { - { 0, &hf_lte_rrc_c1_53 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_53 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_56, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_56 }, - { 0, NULL, 0, NULL } -}; static int -dissect_lte_rrc_T_criticalExtensions_56(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_lte_rrc_T_criticalExtensions_56, T_criticalExtensions_56_choice, - NULL); +dissect_lte_rrc_T_nprach_StartTime_r15(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UERadioPagingInformation_NB_sequence[] = { - { &hf_lte_rrc_criticalExtensions_56, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_56 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_SubcarrierOffset_r15_vals[] = { + { 0, "n0" }, + { 1, "n12" }, + { 2, "n24" }, + { 3, "n36" }, + { 4, "n2" }, + { 5, "n18" }, + { 6, "n34" }, + { 7, "spare1" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UERadioPagingInformation_NB(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_lte_rrc_UERadioPagingInformation_NB, UERadioPagingInformation_NB_sequence); +dissect_lte_rrc_T_nprach_SubcarrierOffset_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t Inband_SamePCI_NB_r13_sequence[] = { - { &hf_lte_rrc_eutra_CRS_SequenceInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_NumSubcarriers_r15_vals[] = { + { 0, "n12" }, + { 1, "n24" }, + { 2, "n36" }, + { 3, "n48" }, + { 0, NULL } }; + static int -dissect_lte_rrc_Inband_SamePCI_NB_r13(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_lte_rrc_Inband_SamePCI_NB_r13, Inband_SamePCI_NB_r13_sequence); +dissect_lte_rrc_T_nprach_NumSubcarriers_r15(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 lte_rrc_T_eutra_NumCRS_Ports_r13_vals[] = { - { 0, "same" }, - { 1, "four" }, +static const value_string lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r15_vals[] = { + { 0, "zero" }, + { 1, "oneThird" }, + { 2, "twoThird" }, + { 3, "one" }, { 0, NULL } }; static int -dissect_lte_rrc_T_eutra_NumCRS_Ports_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r15(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, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_ChannelRasterOffset_NB_r13_vals[] = { - { 0, "khz-7dot5" }, - { 1, "khz-2dot5" }, - { 2, "khz2dot5" }, - { 3, "khz7dot5" }, +static const value_string lte_rrc_T_npdcch_NumRepetitions_RA_r15_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "r128" }, + { 8, "r256" }, + { 9, "r512" }, + { 10, "r1024" }, + { 11, "r2048" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_ChannelRasterOffset_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r15(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); + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t Inband_DifferentPCI_NB_r13_sequence[] = { - { &hf_lte_rrc_eutra_NumCRS_Ports_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_eutra_NumCRS_Ports_r13 }, - { &hf_lte_rrc_rasterOffset_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ChannelRasterOffset_NB_r13 }, - { &hf_lte_rrc_spare_03 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_2 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_npdcch_StartSF_CSS_RA_r15_vals[] = { + { 0, "v4" }, + { 1, "v8" }, + { 2, "v16" }, + { 3, "v32" }, + { 4, "v48" }, + { 5, "v64" }, + { 6, "v96" }, + { 7, "v128" }, + { 0, NULL } }; + static int -dissect_lte_rrc_Inband_DifferentPCI_NB_r13(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_lte_rrc_Inband_DifferentPCI_NB_r13, Inband_DifferentPCI_NB_r13_sequence); +dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r15(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, + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t Guardband_NB_r13_sequence[] = { - { &hf_lte_rrc_rasterOffset_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ChannelRasterOffset_NB_r13 }, - { &hf_lte_rrc_spare_06 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_3 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_npdcch_Offset_RA_r15_vals[] = { + { 0, "zero" }, + { 1, "oneEighth" }, + { 2, "oneFourth" }, + { 3, "threeEighth" }, + { 0, NULL } }; + static int -dissect_lte_rrc_Guardband_NB_r13(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_lte_rrc_Guardband_NB_r13, Guardband_NB_r13_sequence); +dissect_lte_rrc_T_npdcch_Offset_RA_r15(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 per_sequence_t Standalone_NB_r13_sequence[] = { - { &hf_lte_rrc_spare_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_5 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r15_vals[] = { + { 0, "n8" }, + { 1, "n10" }, + { 2, "n11" }, + { 3, "n12" }, + { 4, "n20" }, + { 5, "n22" }, + { 6, "n23" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n34" }, + { 10, "n35" }, + { 11, "n36" }, + { 12, "n40" }, + { 13, "n44" }, + { 14, "n46" }, + { 15, "n48" }, + { 0, NULL } }; + static int -dissect_lte_rrc_Standalone_NB_r13(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_lte_rrc_Standalone_NB_r13, Standalone_NB_r13_sequence); +dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r15(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_operationModeInfo_r13_vals[] = { - { 0, "inband-SamePCI-r13" }, - { 1, "inband-DifferentPCI-r13" }, - { 2, "guardband-r13" }, - { 3, "standalone-r13" }, - { 0, NULL } -}; - -static const per_choice_t T_operationModeInfo_r13_choice[] = { - { 0, &hf_lte_rrc_inband_SamePCI_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_Inband_SamePCI_NB_r13 }, - { 1, &hf_lte_rrc_inband_DifferentPCI_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_Inband_DifferentPCI_NB_r13 }, - { 2, &hf_lte_rrc_guardband_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_Guardband_NB_r13 }, - { 3, &hf_lte_rrc_standalone_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_Standalone_NB_r13 }, - { 0, NULL, 0, NULL } +static const per_sequence_t T_nprach_Parameters_r15_sequence[] = { + { &hf_lte_rrc_nprach_Periodicity_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_Periodicity_r15 }, + { &hf_lte_rrc_nprach_StartTime_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_StartTime_r15 }, + { &hf_lte_rrc_nprach_SubcarrierOffset_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_SubcarrierOffset_r15 }, + { &hf_lte_rrc_nprach_NumSubcarriers_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_NumSubcarriers_r15 }, + { &hf_lte_rrc_nprach_SubcarrierMSG3_RangeStart_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r15 }, + { &hf_lte_rrc_npdcch_NumRepetitions_RA_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r15 }, + { &hf_lte_rrc_npdcch_StartSF_CSS_RA_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r15 }, + { &hf_lte_rrc_npdcch_Offset_RA_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_Offset_RA_r15 }, + { &hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r15 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_operationModeInfo_r13(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_lte_rrc_T_operationModeInfo_r13, T_operationModeInfo_r13_choice, - NULL); +dissect_lte_rrc_T_nprach_Parameters_r15(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_lte_rrc_T_nprach_Parameters_r15, T_nprach_Parameters_r15_sequence); return offset; } -static const per_sequence_t MasterInformationBlock_NB_sequence[] = { - { &hf_lte_rrc_systemFrameNumber_MSB_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_4 }, - { &hf_lte_rrc_hyperSFN_LSB_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_2 }, - { &hf_lte_rrc_schedulingInfoSIB1_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_15 }, - { &hf_lte_rrc_systemInfoValueTag_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_31 }, - { &hf_lte_rrc_ab_Enabled_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_operationModeInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_operationModeInfo_r13 }, - { &hf_lte_rrc_spare_05 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_11 }, +static const per_sequence_t NPRACH_ParametersTDD_NB_r15_sequence[] = { + { &hf_lte_rrc_nprach_Parameters_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_Parameters_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_MasterInformationBlock_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "MasterInformationBlock-NB"); - +dissect_lte_rrc_NPRACH_ParametersTDD_NB_r15(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_lte_rrc_MasterInformationBlock_NB, MasterInformationBlock_NB_sequence); + ett_lte_rrc_NPRACH_ParametersTDD_NB_r15, NPRACH_ParametersTDD_NB_r15_sequence); return offset; } +static const per_sequence_t NPRACH_ParametersListTDD_NB_r15_sequence_of[1] = { + { &hf_lte_rrc_NPRACH_ParametersListTDD_NB_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_ParametersTDD_NB_r15 }, +}; static int -dissect_lte_rrc_BCCH_BCH_MessageType_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_lte_rrc_MasterInformationBlock_NB(tvb, offset, actx, tree, hf_index); +dissect_lte_rrc_NPRACH_ParametersListTDD_NB_r15(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_lte_rrc_NPRACH_ParametersListTDD_NB_r15, NPRACH_ParametersListTDD_NB_r15_sequence_of, + 1, maxNPRACH_Resources_NB_r13, FALSE); return offset; } -static const per_sequence_t BCCH_BCH_Message_NB_sequence[] = { - { &hf_lte_rrc_message_14 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_BCH_MessageType_NB }, +static const per_sequence_t T_tdd_Parameters_r15_01_sequence[] = { + { &hf_lte_rrc_nprach_PreambleFormat_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_PreambleFormat_r15 }, + { &hf_lte_rrc_numRepetitionsPerPreambleAttempt_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numRepetitionsPerPreambleAttempt_r15 }, + { &hf_lte_rrc_nprach_ParametersListTDD_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_ParametersListTDD_NB_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_BCCH_BCH_Message_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_tdd_Parameters_r15_01(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_lte_rrc_BCCH_BCH_Message_NB, BCCH_BCH_Message_NB_sequence); + ett_lte_rrc_T_tdd_Parameters_r15_01, T_tdd_Parameters_r15_01_sequence); return offset; } -static const value_string lte_rrc_T_ra_ResponseWindowSize_r13_01_vals[] = { - { 0, "pp2" }, - { 1, "pp3" }, - { 2, "pp4" }, - { 3, "pp5" }, - { 4, "pp6" }, - { 5, "pp7" }, - { 6, "pp8" }, - { 7, "pp10" }, +static const value_string lte_rrc_T_nprach_Periodicity_r15_01_vals[] = { + { 0, "ms40" }, + { 1, "ms80" }, + { 2, "ms160" }, + { 3, "ms320" }, + { 4, "ms640" }, + { 5, "ms1280" }, + { 6, "ms2560" }, + { 7, "ms5120" }, { 0, NULL } }; static int -dissect_lte_rrc_T_ra_ResponseWindowSize_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_Periodicity_r15_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, 8, NULL, FALSE, 0, NULL); @@ -82067,21 +99562,21 @@ dissect_lte_rrc_T_ra_ResponseWindowSize_r13_01(tvbuff_t *tvb _U_, int offset _U_ } -static const value_string lte_rrc_T_mac_ContentionResolutionTimer_r13_01_vals[] = { - { 0, "pp1" }, - { 1, "pp2" }, - { 2, "pp3" }, - { 3, "pp4" }, - { 4, "pp8" }, - { 5, "pp16" }, - { 6, "pp32" }, - { 7, "pp64" }, +static const value_string lte_rrc_T_nprach_StartTime_r15_01_vals[] = { + { 0, "ms8" }, + { 1, "ms16" }, + { 2, "ms32" }, + { 3, "ms64" }, + { 4, "ms128" }, + { 5, "ms256" }, + { 6, "ms512" }, + { 7, "ms1024" }, { 0, NULL } }; static int -dissect_lte_rrc_T_mac_ContentionResolutionTimer_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_StartTime_r15_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, 8, NULL, FALSE, 0, NULL); @@ -82089,337 +99584,315 @@ dissect_lte_rrc_T_mac_ContentionResolutionTimer_r13_01(tvbuff_t *tvb _U_, int of } -static const per_sequence_t RACH_Info_NB_r13_sequence[] = { - { &hf_lte_rrc_ra_ResponseWindowSize_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ra_ResponseWindowSize_r13_01 }, - { &hf_lte_rrc_mac_ContentionResolutionTimer_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_mac_ContentionResolutionTimer_r13_01 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_SubcarrierOffset_r15_01_vals[] = { + { 0, "n0" }, + { 1, "n36" }, + { 2, "n72" }, + { 3, "n108" }, + { 4, "n6" }, + { 5, "n54" }, + { 6, "n102" }, + { 7, "n42" }, + { 8, "n78" }, + { 9, "n90" }, + { 10, "n12" }, + { 11, "n24" }, + { 12, "n48" }, + { 13, "n84" }, + { 14, "n60" }, + { 15, "n18" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RACH_Info_NB_r13(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_lte_rrc_RACH_Info_NB_r13, RACH_Info_NB_r13_sequence); +dissect_lte_rrc_T_nprach_SubcarrierOffset_r15_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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RACH_InfoList_NB_r13_sequence_of[1] = { - { &hf_lte_rrc_RACH_InfoList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_Info_NB_r13 }, +static const value_string lte_rrc_T_nprach_NumSubcarriers_r15_01_vals[] = { + { 0, "n36" }, + { 1, "n72" }, + { 2, "n108" }, + { 3, "n144" }, + { 0, NULL } }; + static int -dissect_lte_rrc_RACH_InfoList_NB_r13(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_lte_rrc_RACH_InfoList_NB_r13, RACH_InfoList_NB_r13_sequence_of, - 1, maxNPRACH_Resources_NB_r13, FALSE); +dissect_lte_rrc_T_nprach_NumSubcarriers_r15_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 lte_rrc_T_preambleInitialReceivedTargetPower_v1450_vals[] = { - { 0, "dBm-130" }, - { 1, "dBm-128" }, - { 2, "dBm-126" }, - { 3, "dBm-124" }, - { 4, "dBm-122" }, - { 5, "dBm-88" }, - { 6, "dBm-86" }, - { 7, "dBm-84" }, - { 8, "dBm-82" }, - { 9, "dBm-80" }, +static const value_string lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r15_01_vals[] = { + { 0, "zero" }, + { 1, "oneThird" }, + { 2, "twoThird" }, + { 3, "one" }, { 0, NULL } }; static int -dissect_lte_rrc_T_preambleInitialReceivedTargetPower_v1450(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r15_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, - 10, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_powerRampingStepCE1_r14_vals[] = { - { 0, "dB0" }, - { 1, "dB2" }, - { 2, "dB4" }, - { 3, "dB6" }, +static const value_string lte_rrc_T_npdcch_NumRepetitions_RA_r15_01_vals[] = { + { 0, "r1" }, + { 1, "r2" }, + { 2, "r4" }, + { 3, "r8" }, + { 4, "r16" }, + { 5, "r32" }, + { 6, "r64" }, + { 7, "r128" }, + { 8, "r256" }, + { 9, "r512" }, + { 10, "r1024" }, + { 11, "r2048" }, + { 12, "spare4" }, + { 13, "spare3" }, + { 14, "spare2" }, + { 15, "spare1" }, { 0, NULL } }; static int -dissect_lte_rrc_T_powerRampingStepCE1_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r15_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); + 16, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_preambleInitialReceivedTargetPowerCE1_r14_vals[] = { - { 0, "dBm-130" }, - { 1, "dBm-128" }, - { 2, "dBm-126" }, - { 3, "dBm-124" }, - { 4, "dBm-122" }, - { 5, "dBm-120" }, - { 6, "dBm-118" }, - { 7, "dBm-116" }, - { 8, "dBm-114" }, - { 9, "dBm-112" }, - { 10, "dBm-110" }, - { 11, "dBm-108" }, - { 12, "dBm-106" }, - { 13, "dBm-104" }, - { 14, "dBm-102" }, - { 15, "dBm-100" }, - { 16, "dBm-98" }, - { 17, "dBm-96" }, - { 18, "dBm-94" }, - { 19, "dBm-92" }, - { 20, "dBm-90" }, - { 21, "dBm-88" }, - { 22, "dBm-86" }, - { 23, "dBm-84" }, - { 24, "dBm-82" }, - { 25, "dBm-80" }, +static const value_string lte_rrc_T_npdcch_StartSF_CSS_RA_r15_01_vals[] = { + { 0, "v1dot5" }, + { 1, "v2" }, + { 2, "v4" }, + { 3, "v8" }, + { 4, "v16" }, + { 5, "v32" }, + { 6, "v48" }, + { 7, "v64" }, { 0, NULL } -}; - -static value_string_ext lte_rrc_T_preambleInitialReceivedTargetPowerCE1_r14_vals_ext = VALUE_STRING_EXT_INIT(lte_rrc_T_preambleInitialReceivedTargetPowerCE1_r14_vals); +}; static int -dissect_lte_rrc_T_preambleInitialReceivedTargetPowerCE1_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r15_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, - 26, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t T_powerRampingParametersCE1_r14_sequence[] = { - { &hf_lte_rrc_powerRampingStepCE1_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_powerRampingStepCE1_r14 }, - { &hf_lte_rrc_preambleInitialReceivedTargetPowerCE1_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_preambleInitialReceivedTargetPowerCE1_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_npdcch_Offset_RA_r15_01_vals[] = { + { 0, "zero" }, + { 1, "oneEighth" }, + { 2, "oneFourth" }, + { 3, "threeEighth" }, + { 0, NULL } }; + static int -dissect_lte_rrc_T_powerRampingParametersCE1_r14(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_lte_rrc_T_powerRampingParametersCE1_r14, T_powerRampingParametersCE1_r14_sequence); +dissect_lte_rrc_T_npdcch_Offset_RA_r15_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 per_sequence_t PowerRampingParameters_NB_v1450_sequence[] = { - { &hf_lte_rrc_preambleInitialReceivedTargetPower_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_preambleInitialReceivedTargetPower_v1450 }, - { &hf_lte_rrc_powerRampingParametersCE1_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_powerRampingParametersCE1_r14 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r15_01_vals[] = { + { 0, "n24" }, + { 1, "n30" }, + { 2, "n33" }, + { 3, "n36" }, + { 4, "n60" }, + { 5, "n66" }, + { 6, "n69" }, + { 7, "n72" }, + { 8, "n96" }, + { 9, "n102" }, + { 10, "n105" }, + { 11, "n108" }, + { 12, "n120" }, + { 13, "n132" }, + { 14, "n138" }, + { 15, "n144" }, + { 0, NULL } }; + static int -dissect_lte_rrc_PowerRampingParameters_NB_v1450(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_lte_rrc_PowerRampingParameters_NB_v1450, PowerRampingParameters_NB_v1450_sequence); +dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r15_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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RACH_ConfigCommon_NB_r13_eag_1_sequence[] = { - { &hf_lte_rrc_powerRampingParameters_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PowerRampingParameters_NB_v1450 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RACH_ConfigCommon_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RACH_ConfigCommon_NB_r13_eag_1_sequence); +dissect_lte_rrc_INTEGER_1_maxNonAnchorCarriers_NB_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, + 1U, maxNonAnchorCarriers_NB_r14, NULL, FALSE); return offset; } -static const per_sequence_t RACH_ConfigCommon_NB_r13_sequence[] = { - { &hf_lte_rrc_preambleTransMax_CE_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PreambleTransMax }, - { &hf_lte_rrc_powerRampingParameters_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PowerRampingParameters }, - { &hf_lte_rrc_rach_InfoList_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_InfoList_NB_r13 }, - { &hf_lte_rrc_connEstFailOffset_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_15 }, - { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RACH_ConfigCommon_NB_r13_eag_1 }, +static const per_sequence_t T_nprach_Parameters_r15_01_sequence[] = { + { &hf_lte_rrc_nprach_Periodicity_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_Periodicity_r15_01 }, + { &hf_lte_rrc_nprach_StartTime_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_StartTime_r15_01 }, + { &hf_lte_rrc_nprach_SubcarrierOffset_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_SubcarrierOffset_r15_01 }, + { &hf_lte_rrc_nprach_NumSubcarriers_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_NumSubcarriers_r15_01 }, + { &hf_lte_rrc_nprach_SubcarrierMSG3_RangeStart_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r15_01 }, + { &hf_lte_rrc_npdcch_NumRepetitions_RA_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r15_01 }, + { &hf_lte_rrc_npdcch_StartSF_CSS_RA_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r15_01 }, + { &hf_lte_rrc_npdcch_Offset_RA_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_Offset_RA_r15_01 }, + { &hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r15_01 }, + { &hf_lte_rrc_npdcch_CarrierIndex_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxNonAnchorCarriers_NB_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RACH_ConfigCommon_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_Parameters_r15_01(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_lte_rrc_RACH_ConfigCommon_NB_r13, RACH_ConfigCommon_NB_r13_sequence); + ett_lte_rrc_T_nprach_Parameters_r15_01, T_nprach_Parameters_r15_01_sequence); return offset; } -static const value_string lte_rrc_T_modificationPeriodCoeff_r13_vals[] = { - { 0, "n16" }, - { 1, "n32" }, - { 2, "n64" }, - { 3, "n128" }, - { 0, NULL } +static const per_sequence_t NPRACH_ParametersFmt2_NB_r15_sequence[] = { + { &hf_lte_rrc_nprach_Parameters_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_Parameters_r15_01 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_modificationPeriodCoeff_r13(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); +dissect_lte_rrc_NPRACH_ParametersFmt2_NB_r15(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_lte_rrc_NPRACH_ParametersFmt2_NB_r15, NPRACH_ParametersFmt2_NB_r15_sequence); return offset; } -static const per_sequence_t BCCH_Config_NB_r13_sequence[] = { - { &hf_lte_rrc_modificationPeriodCoeff_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_modificationPeriodCoeff_r13 }, - { NULL, 0, 0, NULL } +static const per_sequence_t NPRACH_ParametersListFmt2_NB_r15_sequence_of[1] = { + { &hf_lte_rrc_NPRACH_ParametersListFmt2_NB_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_ParametersFmt2_NB_r15 }, }; static int -dissect_lte_rrc_BCCH_Config_NB_r13(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_lte_rrc_BCCH_Config_NB_r13, BCCH_Config_NB_r13_sequence); +dissect_lte_rrc_NPRACH_ParametersListFmt2_NB_r15(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_lte_rrc_NPRACH_ParametersListFmt2_NB_r15, NPRACH_ParametersListFmt2_NB_r15_sequence_of, + 1, maxNPRACH_Resources_NB_r13, FALSE); return offset; } -static const value_string lte_rrc_T_defaultPagingCycle_r13_vals[] = { - { 0, "rf128" }, - { 1, "rf256" }, - { 2, "rf512" }, - { 3, "rf1024" }, - { 0, NULL } +static const per_sequence_t T_fmt2_Parameters_r15_sequence[] = { + { &hf_lte_rrc_nprach_ParametersListFmt2_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ParametersListFmt2_NB_r15 }, + { &hf_lte_rrc_nprach_ParametersListFmt2EDT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ParametersListFmt2_NB_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_defaultPagingCycle_r13(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); +dissect_lte_rrc_T_fmt2_Parameters_r15(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_lte_rrc_T_fmt2_Parameters_r15, T_fmt2_Parameters_r15_sequence); return offset; } -static const value_string lte_rrc_T_nB_r13_vals[] = { - { 0, "fourT" }, - { 1, "twoT" }, - { 2, "oneT" }, - { 3, "halfT" }, - { 4, "quarterT" }, - { 5, "one8thT" }, - { 6, "one16thT" }, - { 7, "one32ndT" }, - { 8, "one64thT" }, - { 9, "one128thT" }, - { 10, "one256thT" }, - { 11, "one512thT" }, - { 12, "one1024thT" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, +static const value_string lte_rrc_T_edt_SmallTBS_Subset_r15_01_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_nB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_edt_SmallTBS_Subset_r15_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, - 16, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_npdcch_NumRepetitionPaging_r13_vals[] = { - { 0, "r1" }, - { 1, "r2" }, - { 2, "r4" }, - { 3, "r8" }, - { 4, "r16" }, - { 5, "r32" }, - { 6, "r64" }, - { 7, "r128" }, - { 8, "r256" }, - { 9, "r512" }, - { 10, "r1024" }, - { 11, "r2048" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, +static const value_string lte_rrc_T_edt_TBS_r15_01_vals[] = { + { 0, "b328" }, + { 1, "b408" }, + { 2, "b504" }, + { 3, "b584" }, + { 4, "b680" }, + { 5, "b808" }, + { 6, "b936" }, + { 7, "b1000" }, { 0, NULL } }; static int -dissect_lte_rrc_T_npdcch_NumRepetitionPaging_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_edt_TBS_r15_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, - 16, NULL, FALSE, 0, NULL); + 8, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t PCCH_Config_NB_r13_sequence[] = { - { &hf_lte_rrc_defaultPagingCycle_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_defaultPagingCycle_r13 }, - { &hf_lte_rrc_nB_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nB_r13 }, - { &hf_lte_rrc_npdcch_NumRepetitionPaging_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_NumRepetitionPaging_r13 }, +static const per_sequence_t EDT_TBS_NB_r15_sequence[] = { + { &hf_lte_rrc_edt_SmallTBS_Enabled_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, + { &hf_lte_rrc_edt_TBS_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_edt_TBS_r15_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_PCCH_Config_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_EDT_TBS_NB_r15(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_lte_rrc_PCCH_Config_NB_r13, PCCH_Config_NB_r13_sequence); - - return offset; -} - - -static const value_string lte_rrc_T_nprach_CP_Length_r13_vals[] = { - { 0, "us66dot7" }, - { 1, "us266dot7" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_nprach_CP_Length_r13(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, FALSE, 0, NULL); + ett_lte_rrc_EDT_TBS_NB_r15, EDT_TBS_NB_r15_sequence); return offset; } -static const per_sequence_t RSRP_ThresholdsNPRACH_InfoList_NB_r13_sequence_of[1] = { - { &hf_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RSRP_Range }, +static const per_sequence_t EDT_TBS_InfoList_NB_r15_sequence_of[1] = { + { &hf_lte_rrc_EDT_TBS_InfoList_NB_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_EDT_TBS_NB_r15 }, }; static int -dissect_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_EDT_TBS_InfoList_NB_r15(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_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13, RSRP_ThresholdsNPRACH_InfoList_NB_r13_sequence_of, - 1, 2, FALSE); + ett_lte_rrc_EDT_TBS_InfoList_NB_r15, EDT_TBS_InfoList_NB_r15_sequence_of, + 1, maxNPRACH_Resources_NB_r13, FALSE); return offset; } -static const value_string lte_rrc_T_nprach_Periodicity_r13_vals[] = { +static const value_string lte_rrc_T_nprach_Periodicity_r14_vals[] = { { 0, "ms40" }, { 1, "ms80" }, { 2, "ms160" }, @@ -82433,7 +99906,7 @@ static const value_string lte_rrc_T_nprach_Periodicity_r13_vals[] = { static int -dissect_lte_rrc_T_nprach_Periodicity_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_Periodicity_r14(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, 8, NULL, FALSE, 0, NULL); @@ -82441,7 +99914,7 @@ dissect_lte_rrc_T_nprach_Periodicity_r13(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const value_string lte_rrc_T_nprach_StartTime_r13_vals[] = { +static const value_string lte_rrc_T_nprach_StartTime_r14_vals[] = { { 0, "ms8" }, { 1, "ms16" }, { 2, "ms32" }, @@ -82455,7 +99928,7 @@ static const value_string lte_rrc_T_nprach_StartTime_r13_vals[] = { static int -dissect_lte_rrc_T_nprach_StartTime_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_StartTime_r14(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, 8, NULL, FALSE, 0, NULL); @@ -82463,7 +99936,7 @@ dissect_lte_rrc_T_nprach_StartTime_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const value_string lte_rrc_T_nprach_SubcarrierOffset_r13_vals[] = { +static const value_string lte_rrc_T_nprach_SubcarrierOffset_r14_vals[] = { { 0, "n0" }, { 1, "n12" }, { 2, "n24" }, @@ -82477,7 +99950,7 @@ static const value_string lte_rrc_T_nprach_SubcarrierOffset_r13_vals[] = { static int -dissect_lte_rrc_T_nprach_SubcarrierOffset_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_SubcarrierOffset_r14(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, 8, NULL, FALSE, 0, NULL); @@ -82485,7 +99958,7 @@ dissect_lte_rrc_T_nprach_SubcarrierOffset_r13(tvbuff_t *tvb _U_, int offset _U_, } -static const value_string lte_rrc_T_nprach_NumSubcarriers_r13_vals[] = { +static const value_string lte_rrc_T_nprach_NumSubcarriers_r14_vals[] = { { 0, "n12" }, { 1, "n24" }, { 2, "n36" }, @@ -82495,7 +99968,7 @@ static const value_string lte_rrc_T_nprach_NumSubcarriers_r13_vals[] = { static int -dissect_lte_rrc_T_nprach_NumSubcarriers_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_NumSubcarriers_r14(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); @@ -82503,7 +99976,7 @@ dissect_lte_rrc_T_nprach_NumSubcarriers_r13(tvbuff_t *tvb _U_, int offset _U_, a } -static const value_string lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r13_vals[] = { +static const value_string lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r14_vals[] = { { 0, "zero" }, { 1, "oneThird" }, { 2, "twoThird" }, @@ -82513,7 +99986,7 @@ static const value_string lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r13_vals[] static int -dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r14(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); @@ -82521,51 +99994,7 @@ dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r13(tvbuff_t *tvb _U_, int of } -static const value_string lte_rrc_T_maxNumPreambleAttemptCE_r13_01_vals[] = { - { 0, "n3" }, - { 1, "n4" }, - { 2, "n5" }, - { 3, "n6" }, - { 4, "n7" }, - { 5, "n8" }, - { 6, "n10" }, - { 7, "spare1" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_maxNumPreambleAttemptCE_r13_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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_numRepetitionsPerPreambleAttempt_r13_vals[] = { - { 0, "n1" }, - { 1, "n2" }, - { 2, "n4" }, - { 3, "n8" }, - { 4, "n16" }, - { 5, "n32" }, - { 6, "n64" }, - { 7, "n128" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_numRepetitionsPerPreambleAttempt_r13(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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_npdcch_NumRepetitions_RA_r13_vals[] = { +static const value_string lte_rrc_T_npdcch_NumRepetitions_RA_r14_vals[] = { { 0, "r1" }, { 1, "r2" }, { 2, "r4" }, @@ -82587,7 +100016,7 @@ static const value_string lte_rrc_T_npdcch_NumRepetitions_RA_r13_vals[] = { static int -dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r14(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, 16, NULL, FALSE, 0, NULL); @@ -82595,7 +100024,7 @@ dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r13(tvbuff_t *tvb _U_, int offset _U_ } -static const value_string lte_rrc_T_npdcch_StartSF_CSS_RA_r13_vals[] = { +static const value_string lte_rrc_T_npdcch_StartSF_CSS_RA_r14_vals[] = { { 0, "v1dot5" }, { 1, "v2" }, { 2, "v4" }, @@ -82609,7 +100038,7 @@ static const value_string lte_rrc_T_npdcch_StartSF_CSS_RA_r13_vals[] = { static int -dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r14(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, 8, NULL, FALSE, 0, NULL); @@ -82617,7 +100046,7 @@ dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r13(tvbuff_t *tvb _U_, int offset _U_, a } -static const value_string lte_rrc_T_npdcch_Offset_RA_r13_vals[] = { +static const value_string lte_rrc_T_npdcch_Offset_RA_r14_vals[] = { { 0, "zero" }, { 1, "oneEighth" }, { 2, "oneFourth" }, @@ -82627,7 +100056,7 @@ static const value_string lte_rrc_T_npdcch_Offset_RA_r13_vals[] = { static int -dissect_lte_rrc_T_npdcch_Offset_RA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_npdcch_Offset_RA_r14(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); @@ -82635,354 +100064,256 @@ dissect_lte_rrc_T_npdcch_Offset_RA_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t NPRACH_Parameters_NB_r13_sequence[] = { - { &hf_lte_rrc_nprach_Periodicity_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_Periodicity_r13 }, - { &hf_lte_rrc_nprach_StartTime_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_StartTime_r13 }, - { &hf_lte_rrc_nprach_SubcarrierOffset_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_SubcarrierOffset_r13 }, - { &hf_lte_rrc_nprach_NumSubcarriers_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_NumSubcarriers_r13 }, - { &hf_lte_rrc_nprach_SubcarrierMSG3_RangeStart_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r13 }, - { &hf_lte_rrc_maxNumPreambleAttemptCE_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_maxNumPreambleAttemptCE_r13_01 }, - { &hf_lte_rrc_numRepetitionsPerPreambleAttempt_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numRepetitionsPerPreambleAttempt_r13 }, - { &hf_lte_rrc_npdcch_NumRepetitions_RA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r13 }, - { &hf_lte_rrc_npdcch_StartSF_CSS_RA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r13 }, - { &hf_lte_rrc_npdcch_Offset_RA_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_npdcch_Offset_RA_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r14_vals[] = { + { 0, "n8" }, + { 1, "n10" }, + { 2, "n11" }, + { 3, "n12" }, + { 4, "n20" }, + { 5, "n22" }, + { 6, "n23" }, + { 7, "n24" }, + { 8, "n32" }, + { 9, "n34" }, + { 10, "n35" }, + { 11, "n36" }, + { 12, "n40" }, + { 13, "n44" }, + { 14, "n46" }, + { 15, "n48" }, + { 0, NULL } }; -static int -dissect_lte_rrc_NPRACH_Parameters_NB_r13(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_lte_rrc_NPRACH_Parameters_NB_r13, NPRACH_Parameters_NB_r13_sequence); - - return offset; -} - - -static const per_sequence_t NPRACH_ParametersList_NB_r13_sequence_of[1] = { - { &hf_lte_rrc_NPRACH_ParametersList_NB_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_Parameters_NB_r13 }, -}; static int -dissect_lte_rrc_NPRACH_ParametersList_NB_r13(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_lte_rrc_NPRACH_ParametersList_NB_r13, NPRACH_ParametersList_NB_r13_sequence_of, - 1, maxNPRACH_Resources_NB_r13, FALSE); +dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r14(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, + 16, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t NPRACH_ConfigSIB_NB_r13_sequence[] = { - { &hf_lte_rrc_nprach_CP_Length_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_CP_Length_r13 }, - { &hf_lte_rrc_rsrp_ThresholdsPrachInfoList_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13 }, - { &hf_lte_rrc_nprach_ParametersList_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_ParametersList_NB_r13 }, +static const per_sequence_t T_nprach_Parameters_r14_sequence[] = { + { &hf_lte_rrc_nprach_Periodicity_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_Periodicity_r14 }, + { &hf_lte_rrc_nprach_StartTime_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_StartTime_r14 }, + { &hf_lte_rrc_nprach_SubcarrierOffset_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_SubcarrierOffset_r14 }, + { &hf_lte_rrc_nprach_NumSubcarriers_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_NumSubcarriers_r14 }, + { &hf_lte_rrc_nprach_SubcarrierMSG3_RangeStart_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r14 }, + { &hf_lte_rrc_npdcch_NumRepetitions_RA_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r14 }, + { &hf_lte_rrc_npdcch_StartSF_CSS_RA_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r14 }, + { &hf_lte_rrc_npdcch_Offset_RA_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_Offset_RA_r14 }, + { &hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r14 }, + { &hf_lte_rrc_npdcch_CarrierIndex_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxNonAnchorCarriers_NB_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NPRACH_ConfigSIB_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nprach_Parameters_r14(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_lte_rrc_NPRACH_ConfigSIB_NB_r13, NPRACH_ConfigSIB_NB_r13_sequence); + ett_lte_rrc_T_nprach_Parameters_r14, T_nprach_Parameters_r14_sequence); return offset; } -static const per_sequence_t NPDSCH_ConfigCommon_NB_r13_sequence[] = { - { &hf_lte_rrc_nrs_Power_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M60_50 }, +static const per_sequence_t NPRACH_Parameters_NB_r14_sequence[] = { + { &hf_lte_rrc_nprach_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_Parameters_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NPDSCH_ConfigCommon_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NPRACH_Parameters_NB_r14(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_lte_rrc_NPDSCH_ConfigCommon_NB_r13, NPDSCH_ConfigCommon_NB_r13_sequence); + ett_lte_rrc_NPRACH_Parameters_NB_r14, NPRACH_Parameters_NB_r14_sequence); return offset; } -static const per_sequence_t SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13_sequence_of[1] = { - { &hf_lte_rrc_ack_NACK_NumRepetitions_Msg4_r13_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ACK_NACK_NumRepetitions_NB_r13 }, +static const per_sequence_t NPRACH_ParametersList_NB_r14_sequence_of[1] = { + { &hf_lte_rrc_NPRACH_ParametersList_NB_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_Parameters_NB_r14 }, }; static int -dissect_lte_rrc_SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NPRACH_ParametersList_NB_r14(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_lte_rrc_SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13, SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13_sequence_of, + ett_lte_rrc_NPRACH_ParametersList_NB_r14, NPRACH_ParametersList_NB_r14_sequence_of, 1, maxNPRACH_Resources_NB_r13, FALSE); return offset; } -static const value_string lte_rrc_T_srs_SubframeConfig_r13_vals[] = { - { 0, "sc0" }, - { 1, "sc1" }, - { 2, "sc2" }, - { 3, "sc3" }, - { 4, "sc4" }, - { 5, "sc5" }, - { 6, "sc6" }, - { 7, "sc7" }, - { 8, "sc8" }, - { 9, "sc9" }, - { 10, "sc10" }, - { 11, "sc11" }, - { 12, "sc12" }, - { 13, "sc13" }, - { 14, "sc14" }, - { 15, "sc15" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_srs_SubframeConfig_r13(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, - 16, NULL, FALSE, 0, NULL); - - return offset; -} - - - -static int -dissect_lte_rrc_INTEGER_0_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 2U, NULL, FALSE); - - return offset; -} - - - -static int -dissect_lte_rrc_INTEGER_0_30(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, 30U, NULL, FALSE); - - return offset; -} - - -static const per_sequence_t T_dmrs_Config_r13_sequence[] = { - { &hf_lte_rrc_threeTone_BaseSequence_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_12 }, - { &hf_lte_rrc_threeTone_CyclicShift_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_2 }, - { &hf_lte_rrc_sixTone_BaseSequence_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_14 }, - { &hf_lte_rrc_sixTone_CyclicShift_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_3 }, - { &hf_lte_rrc_twelveTone_BaseSequence_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_30 }, - { NULL, 0, 0, NULL } -}; - -static int -dissect_lte_rrc_T_dmrs_Config_r13(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_lte_rrc_T_dmrs_Config_r13, T_dmrs_Config_r13_sequence); - - return offset; -} - - -static const per_sequence_t UL_ReferenceSignalsNPUSCH_NB_r13_sequence[] = { - { &hf_lte_rrc_groupHoppingEnabled_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_groupAssignmentNPUSCH_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_0_29 }, +static const per_sequence_t T_edt_Parameters_r15_01_sequence[] = { + { &hf_lte_rrc_edt_SmallTBS_Subset_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_edt_SmallTBS_Subset_r15_01 }, + { &hf_lte_rrc_edt_TBS_InfoList_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_EDT_TBS_InfoList_NB_r15 }, + { &hf_lte_rrc_nprach_ParametersListEDT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ParametersList_NB_r14 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_UL_ReferenceSignalsNPUSCH_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_edt_Parameters_r15_01(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_lte_rrc_UL_ReferenceSignalsNPUSCH_NB_r13, UL_ReferenceSignalsNPUSCH_NB_r13_sequence); + ett_lte_rrc_T_edt_Parameters_r15_01, T_edt_Parameters_r15_01_sequence); return offset; } -static const per_sequence_t NPUSCH_ConfigCommon_NB_r13_sequence[] = { - { &hf_lte_rrc_ack_NACK_NumRepetitions_Msg4_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13 }, - { &hf_lte_rrc_srs_SubframeConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_srs_SubframeConfig_r13 }, - { &hf_lte_rrc_dmrs_Config_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_dmrs_Config_r13 }, - { &hf_lte_rrc_ul_ReferenceSignalsNPUSCH_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_ReferenceSignalsNPUSCH_NB_r13 }, +static const per_sequence_t NPRACH_ConfigSIB_NB_v1530_sequence[] = { + { &hf_lte_rrc_tdd_Parameters_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdd_Parameters_r15_01 }, + { &hf_lte_rrc_fmt2_Parameters_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fmt2_Parameters_r15 }, + { &hf_lte_rrc_edt_Parameters_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_edt_Parameters_r15_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NPUSCH_ConfigCommon_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_NPRACH_ConfigSIB_NB_v1530(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_lte_rrc_NPUSCH_ConfigCommon_NB_r13, NPUSCH_ConfigCommon_NB_r13_sequence); + ett_lte_rrc_NPRACH_ConfigSIB_NB_v1530, NPRACH_ConfigSIB_NB_v1530_sequence); return offset; } -static const value_string lte_rrc_T_alpha_r13_vals[] = { - { 0, "al0" }, - { 1, "al04" }, - { 2, "al05" }, - { 3, "al06" }, - { 4, "al07" }, - { 5, "al08" }, - { 6, "al09" }, - { 7, "al1" }, +static const value_string lte_rrc_WUS_MaxDurationFactor_NB_r15_vals[] = { + { 0, "one128th" }, + { 1, "one64th" }, + { 2, "one32th" }, + { 3, "one16th" }, + { 4, "oneEighth" }, + { 5, "oneQuarter" }, + { 6, "oneHalf" }, { 0, NULL } }; static int -dissect_lte_rrc_T_alpha_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_WUS_MaxDurationFactor_NB_r15(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, - 8, NULL, FALSE, 0, NULL); + 7, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t UplinkPowerControlCommon_NB_r13_sequence[] = { - { &hf_lte_rrc_p0_NominalNPUSCH_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M126_24 }, - { &hf_lte_rrc_alpha_r13 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_alpha_r13 }, - { &hf_lte_rrc_deltaPreambleMsg3_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_M1_6 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_numPOs_r15_01_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 0, NULL } }; + static int -dissect_lte_rrc_UplinkPowerControlCommon_NB_r13(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_lte_rrc_UplinkPowerControlCommon_NB_r13, UplinkPowerControlCommon_NB_r13_sequence); +dissect_lte_rrc_T_numPOs_r15_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, + 3, NULL, FALSE, 0, NULL); return offset; } -static const value_string lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r13_vals[] = { - { 0, "n8" }, - { 1, "n10" }, - { 2, "n11" }, - { 3, "n12" }, - { 4, "n20" }, - { 5, "n22" }, - { 6, "n23" }, - { 7, "n24" }, - { 8, "n32" }, - { 9, "n34" }, - { 10, "n35" }, - { 11, "n36" }, - { 12, "n40" }, - { 13, "n44" }, - { 14, "n46" }, - { 15, "n48" }, +static const value_string lte_rrc_T_numDRX_CyclesRelaxed_r15_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, { 0, NULL } }; static int -dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_numDRX_CyclesRelaxed_r15(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, - 16, NULL, FALSE, 0, NULL); + 4, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t NPRACH_Parameters_NB_v1330_sequence[] = { - { &hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r13 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_timeOffsetDRX_r15_01_vals[] = { + { 0, "ms40" }, + { 1, "ms80" }, + { 2, "ms160" }, + { 3, "ms240" }, + { 0, NULL } }; -static int -dissect_lte_rrc_NPRACH_Parameters_NB_v1330(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_lte_rrc_NPRACH_Parameters_NB_v1330, NPRACH_Parameters_NB_v1330_sequence); - - return offset; -} - - -static const per_sequence_t NPRACH_ParametersList_NB_v1330_sequence_of[1] = { - { &hf_lte_rrc_NPRACH_ParametersList_NB_v1330_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_Parameters_NB_v1330 }, -}; static int -dissect_lte_rrc_NPRACH_ParametersList_NB_v1330(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_lte_rrc_NPRACH_ParametersList_NB_v1330, NPRACH_ParametersList_NB_v1330_sequence_of, - 1, maxNPRACH_Resources_NB_r13, FALSE); +dissect_lte_rrc_T_timeOffsetDRX_r15_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 per_sequence_t NPRACH_ConfigSIB_NB_v1330_sequence[] = { - { &hf_lte_rrc_nprach_ParametersList_v1330, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_ParametersList_NB_v1330 }, - { NULL, 0, 0, NULL } +static const value_string lte_rrc_T_timeOffset_eDRX_Short_r15_01_vals[] = { + { 0, "ms40" }, + { 1, "ms80" }, + { 2, "ms160" }, + { 3, "ms240" }, + { 0, NULL } }; -static int -dissect_lte_rrc_NPRACH_ConfigSIB_NB_v1330(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_lte_rrc_NPRACH_ConfigSIB_NB_v1330, NPRACH_ConfigSIB_NB_v1330_sequence); - - return offset; -} - - -static const per_sequence_t RadioResourceConfigCommonSIB_NB_r13_eag_1_sequence[] = { - { &hf_lte_rrc_nprach_Config_v1330, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ConfigSIB_NB_v1330 }, - { NULL, 0, 0, NULL } -}; static int -dissect_lte_rrc_RadioResourceConfigCommonSIB_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_NB_r13_eag_1_sequence); +dissect_lte_rrc_T_timeOffset_eDRX_Short_r15_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 lte_rrc_T_maxNumPreambleAttemptCE_r14_vals[] = { - { 0, "n3" }, - { 1, "n4" }, - { 2, "n5" }, - { 3, "n6" }, - { 4, "n7" }, - { 5, "n8" }, - { 6, "n10" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_timeOffset_eDRX_Long_r15_01_vals[] = { + { 0, "ms1000" }, + { 1, "ms2000" }, { 0, NULL } }; static int -dissect_lte_rrc_T_maxNumPreambleAttemptCE_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_timeOffset_eDRX_Long_r15_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, - 8, NULL, FALSE, 0, NULL); + 2, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t NPRACH_ConfigSIB_NB_v1450_sequence[] = { - { &hf_lte_rrc_maxNumPreambleAttemptCE_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_maxNumPreambleAttemptCE_r14 }, +static const per_sequence_t WUS_Config_NB_r15_sequence[] = { + { &hf_lte_rrc_maxDurationFactor_r15_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WUS_MaxDurationFactor_NB_r15 }, + { &hf_lte_rrc_numPOs_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_numPOs_r15_01 }, + { &hf_lte_rrc_numDRX_CyclesRelaxed_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_numDRX_CyclesRelaxed_r15 }, + { &hf_lte_rrc_timeOffsetDRX_r15_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_timeOffsetDRX_r15_01 }, + { &hf_lte_rrc_timeOffset_eDRX_Short_r15_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_timeOffset_eDRX_Short_r15_01 }, + { &hf_lte_rrc_timeOffset_eDRX_Long_r15_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_timeOffset_eDRX_Long_r15_01 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NPRACH_ConfigSIB_NB_v1450(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_WUS_Config_NB_r15(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_lte_rrc_NPRACH_ConfigSIB_NB_v1450, NPRACH_ConfigSIB_NB_v1450_sequence); + ett_lte_rrc_WUS_Config_NB_r15, WUS_Config_NB_r15_sequence); return offset; } -static const per_sequence_t RadioResourceConfigCommonSIB_NB_r13_eag_2_sequence[] = { - { &hf_lte_rrc_nprach_Config_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ConfigSIB_NB_v1450 }, +static const per_sequence_t RadioResourceConfigCommonSIB_NB_r13_eag_3_sequence[] = { + { &hf_lte_rrc_nprach_Config_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ConfigSIB_NB_v1530 }, + { &hf_lte_rrc_dl_Gap_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DL_GapConfig_NB_v1530 }, + { &hf_lte_rrc_wus_Config_r15_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WUS_Config_NB_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RadioResourceConfigCommonSIB_NB_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_NB_r13_eag_2_sequence); +dissect_lte_rrc_RadioResourceConfigCommonSIB_NB_r13_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, RadioResourceConfigCommonSIB_NB_r13_eag_3_sequence); return offset; } @@ -82999,6 +100330,7 @@ static const per_sequence_t RadioResourceConfigCommonSIB_NB_r13_sequence[] = { { &hf_lte_rrc_uplinkPowerControlCommon_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UplinkPowerControlCommon_NB_r13 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_NB_r13_eag_1 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_NB_r13_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_NB_r13_eag_3 }, { NULL, 0, 0, NULL } }; @@ -83172,6 +100504,94 @@ dissect_lte_rrc_UE_TimersAndConstants_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset } +static const value_string lte_rrc_T_t300_v1530_vals[] = { + { 0, "ms80000" }, + { 1, "ms100000" }, + { 2, "ms120000" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_t300_v1530(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_t301_v1530_01_vals[] = { + { 0, "ms80000" }, + { 1, "ms100000" }, + { 2, "ms120000" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_t301_v1530_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, + 3, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_t311_v1530_01_vals[] = { + { 0, "ms160000" }, + { 1, "ms200000" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_t311_v1530_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, + 2, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_t300_r15_01_vals[] = { + { 0, "ms6000" }, + { 1, "ms10000" }, + { 2, "ms15000" }, + { 3, "ms25000" }, + { 4, "ms40000" }, + { 5, "ms60000" }, + { 6, "ms80000" }, + { 7, "ms120000" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_t300_r15_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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t UE_TimersAndConstants_NB_r13_eag_2_sequence[] = { + { &hf_lte_rrc_t300_v1530 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t300_v1530 }, + { &hf_lte_rrc_t301_v1530_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t301_v1530_01 }, + { &hf_lte_rrc_t311_v1530_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t311_v1530_01 }, + { &hf_lte_rrc_t300_r15_01 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_t300_r15_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_TimersAndConstants_NB_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_TimersAndConstants_NB_r13_eag_2_sequence); + + return offset; +} + + static const per_sequence_t UE_TimersAndConstants_NB_r13_sequence[] = { { &hf_lte_rrc_t300_r13 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t300_r13 }, { &hf_lte_rrc_t301_r13_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t301_r13_01 }, @@ -83180,6 +100600,7 @@ static const per_sequence_t UE_TimersAndConstants_NB_r13_sequence[] = { { &hf_lte_rrc_t311_r13_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t311_r13_01 }, { &hf_lte_rrc_n311_r13_01 , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_n311_r13_01 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_TimersAndConstants_NB_r13_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_TimersAndConstants_NB_r13_eag_2 }, { NULL, 0, 0, NULL } }; @@ -83249,14 +100670,14 @@ dissect_lte_rrc_SystemInformationBlockType2_NB_r13_eag_1(tvbuff_t *tvb _U_, int } -static const value_string lte_rrc_T_cqi_Reporting_r14_vals[] = { +static const value_string lte_rrc_T_servingCellMeasInfo_r14_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_cqi_Reporting_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_servingCellMeasInfo_r14(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, 1, NULL, FALSE, 0, NULL); @@ -83264,14 +100685,14 @@ dissect_lte_rrc_T_cqi_Reporting_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } -static const value_string lte_rrc_T_servingCellMeasInfo_r14_vals[] = { +static const value_string lte_rrc_T_cqi_Reporting_r14_vals[] = { { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_servingCellMeasInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_cqi_Reporting_r14(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, 1, NULL, FALSE, 0, NULL); @@ -83280,8 +100701,8 @@ dissect_lte_rrc_T_servingCellMeasInfo_r14(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t SystemInformationBlockType2_NB_r13_eag_2_sequence[] = { - { &hf_lte_rrc_cqi_Reporting_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cqi_Reporting_r14 }, { &hf_lte_rrc_servingCellMeasInfo_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_servingCellMeasInfo_r14 }, + { &hf_lte_rrc_cqi_Reporting_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cqi_Reporting_r14 }, { NULL, 0, 0, NULL } }; @@ -83293,6 +100714,81 @@ dissect_lte_rrc_SystemInformationBlockType2_NB_r13_eag_2(tvbuff_t *tvb _U_, int } +static const value_string lte_rrc_T_enhancedPHR_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_enhancedPHR_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_freqInfo_v1530_sequence[] = { + { &hf_lte_rrc_tdd_UL_DL_AlignmentOffset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TDD_UL_DL_AlignmentOffset_NB_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_freqInfo_v1530(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_lte_rrc_T_freqInfo_v1530, T_freqInfo_v1530_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_cp_EDT_r15_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_cp_EDT_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_up_EDT_r15_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_up_EDT_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType2_NB_r13_eag_3_sequence[] = { + { &hf_lte_rrc_enhancedPHR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_enhancedPHR_r15 }, + { &hf_lte_rrc_freqInfo_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_freqInfo_v1530 }, + { &hf_lte_rrc_cp_EDT_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_cp_EDT_r15_01 }, + { &hf_lte_rrc_up_EDT_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_up_EDT_r15_01 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType2_NB_r13_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType2_NB_r13_eag_3_sequence); + + return offset; +} + + static const per_sequence_t SystemInformationBlockType2_NB_r13_sequence[] = { { &hf_lte_rrc_radioResourceConfigCommon_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigCommonSIB_NB_r13 }, { &hf_lte_rrc_ue_TimersAndConstants_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_TimersAndConstants_NB_r13 }, @@ -83302,6 +100798,7 @@ static const per_sequence_t SystemInformationBlockType2_NB_r13_sequence[] = { { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_NB_r13_eag_1 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_NB_r13_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType2_NB_r13_eag_3 }, { NULL, 0, 0, NULL } }; @@ -83635,6 +101132,85 @@ dissect_lte_rrc_SystemInformationBlockType3_NB_r13_eag_4(tvbuff_t *tvb _U_, int } +static const value_string lte_rrc_T_nsss_RRM_PowerOffset_r15_vals[] = { + { 0, "dB-3" }, + { 1, "db0" }, + { 2, "dB3" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_nsss_RRM_PowerOffset_r15(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, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_nsss_NumOccDiffPrecoders_r15_vals[] = { + { 0, "n1" }, + { 1, "n2" }, + { 2, "n4" }, + { 3, "n8" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_nsss_NumOccDiffPrecoders_r15(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 per_sequence_t NSSS_RRM_Config_NB_r15_sequence[] = { + { &hf_lte_rrc_nsss_RRM_PowerOffset_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_nsss_RRM_PowerOffset_r15 }, + { &hf_lte_rrc_nsss_NumOccDiffPrecoders_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nsss_NumOccDiffPrecoders_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_NSSS_RRM_Config_NB_r15(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_lte_rrc_NSSS_RRM_Config_NB_r15, NSSS_RRM_Config_NB_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_npbch_RRM_Config_r15_vals[] = { + { 0, "enabled" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_npbch_RRM_Config_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType3_NB_r13_eag_5_sequence[] = { + { &hf_lte_rrc_nsss_RRM_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NSSS_RRM_Config_NB_r15 }, + { &hf_lte_rrc_npbch_RRM_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_npbch_RRM_Config_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType3_NB_r13_eag_5(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType3_NB_r13_eag_5_sequence); + + return offset; +} + + static const per_sequence_t SystemInformationBlockType3_NB_r13_sequence[] = { { &hf_lte_rrc_cellReselectionInfoCommon_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReselectionInfoCommon_r13 }, { &hf_lte_rrc_cellReselectionServingFreqInfo_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_cellReselectionServingFreqInfo_r13 }, @@ -83646,6 +101222,7 @@ static const per_sequence_t SystemInformationBlockType3_NB_r13_sequence[] = { { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_NB_r13_eag_2 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_NB_r13_eag_3 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_NB_r13_eag_4 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType3_NB_r13_eag_5 }, { NULL, 0, 0, NULL } }; @@ -83660,10 +101237,53 @@ dissect_lte_rrc_SystemInformationBlockType3_NB_r13(tvbuff_t *tvb _U_, int offset } +static const per_sequence_t IntraFreqNeighCellInfo_NB_v1530_sequence[] = { + { &hf_lte_rrc_nsss_RRM_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NSSS_RRM_Config_NB_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_IntraFreqNeighCellInfo_NB_v1530(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_lte_rrc_IntraFreqNeighCellInfo_NB_v1530, IntraFreqNeighCellInfo_NB_v1530_sequence); + + return offset; +} + + +static const per_sequence_t IntraFreqNeighCellList_NB_v1530_sequence_of[1] = { + { &hf_lte_rrc_IntraFreqNeighCellList_NB_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_IntraFreqNeighCellInfo_NB_v1530 }, +}; + +static int +dissect_lte_rrc_IntraFreqNeighCellList_NB_v1530(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_lte_rrc_IntraFreqNeighCellList_NB_v1530, IntraFreqNeighCellList_NB_v1530_sequence_of, + 1, maxCellIntra, FALSE); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType4_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_nsss_RRM_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NSSS_RRM_Config_NB_r15 }, + { &hf_lte_rrc_intraFreqNeighCellList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_IntraFreqNeighCellList_NB_v1530 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType4_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType4_NB_r13_eag_1_sequence); + + return offset; +} + + static const per_sequence_t SystemInformationBlockType4_NB_r13_sequence[] = { { &hf_lte_rrc_intraFreqNeighCellList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IntraFreqNeighCellList }, { &hf_lte_rrc_intraFreqBlackCellList_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_IntraFreqBlackCellList }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType4_NB_r13_eag_1 }, { NULL, 0, 0, NULL } }; @@ -83803,6 +101423,48 @@ dissect_lte_rrc_InterFreqCarrierFreqInfo_NB_r13_eag_2(tvbuff_t *tvb _U_, int off } +static const per_sequence_t InterFreqNeighCellInfo_NB_v1530_sequence[] = { + { &hf_lte_rrc_nsss_RRM_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NSSS_RRM_Config_NB_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InterFreqNeighCellInfo_NB_v1530(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_lte_rrc_InterFreqNeighCellInfo_NB_v1530, InterFreqNeighCellInfo_NB_v1530_sequence); + + return offset; +} + + +static const per_sequence_t InterFreqNeighCellList_NB_v1530_sequence_of[1] = { + { &hf_lte_rrc_InterFreqNeighCellList_NB_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqNeighCellInfo_NB_v1530 }, +}; + +static int +dissect_lte_rrc_InterFreqNeighCellList_NB_v1530(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_lte_rrc_InterFreqNeighCellList_NB_v1530, InterFreqNeighCellList_NB_v1530_sequence_of, + 1, maxCellInter, FALSE); + + return offset; +} + + +static const per_sequence_t InterFreqCarrierFreqInfo_NB_r13_eag_3_sequence[] = { + { &hf_lte_rrc_nsss_RRM_Config_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NSSS_RRM_Config_NB_r15 }, + { &hf_lte_rrc_interFreqNeighCellList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_InterFreqNeighCellList_NB_v1530 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_InterFreqCarrierFreqInfo_NB_r13_eag_3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, InterFreqCarrierFreqInfo_NB_r13_eag_3_sequence); + + return offset; +} + + static const per_sequence_t InterFreqCarrierFreqInfo_NB_r13_sequence[] = { { &hf_lte_rrc_dl_CarrierFreq_r13_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreq_NB_r13 }, { &hf_lte_rrc_q_RxLevMin_r13, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_Q_RxLevMin }, @@ -83814,6 +101476,7 @@ static const per_sequence_t InterFreqCarrierFreqInfo_NB_r13_sequence[] = { { &hf_lte_rrc_multiBandInfoList_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_MultiBandInfoList_NB_r13 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_NB_r13_eag_1 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_NB_r13_eag_2 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_InterFreqCarrierFreqInfo_NB_r13_eag_3 }, { NULL, 0, 0, NULL } }; @@ -83964,9 +101627,39 @@ dissect_lte_rrc_T_ab_Param_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac } +static const value_string lte_rrc_T_ab_PerNRSRP_r15_vals[] = { + { 0, "thresh1" }, + { 1, "thresh2" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ab_PerNRSRP_r15(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType14_NB_r13_eag_1_sequence[] = { + { &hf_lte_rrc_ab_PerNRSRP_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_ab_PerNRSRP_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType14_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType14_NB_r13_eag_1_sequence); + + return offset; +} + + static const per_sequence_t SystemInformationBlockType14_NB_r13_sequence[] = { { &hf_lte_rrc_ab_Param_r13, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ab_Param_r13 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType14_NB_r13_eag_1 }, { NULL, 0, 0, NULL } }; @@ -84306,12 +101999,26 @@ dissect_lte_rrc_T_nrs_PowerOffsetNonAnchor_r14(tvbuff_t *tvb _U_, int offset _U_ } +static const per_sequence_t DL_CarrierConfigCommon_NB_r14_eag_1_sequence[] = { + { &hf_lte_rrc_dl_GapNonAnchor_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DL_GapConfig_NB_v1530 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_DL_CarrierConfigCommon_NB_r14_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DL_CarrierConfigCommon_NB_r14_eag_1_sequence); + + return offset; +} + + static const per_sequence_t DL_CarrierConfigCommon_NB_r14_sequence[] = { { &hf_lte_rrc_dl_CarrierFreq_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreq_NB_r13 }, { &hf_lte_rrc_downlinkBitmapNonAnchor_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_downlinkBitmapNonAnchor_r14 }, { &hf_lte_rrc_dl_GapNonAnchor_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_dl_GapNonAnchor_r14 }, { &hf_lte_rrc_inbandCarrierInfo_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_inbandCarrierInfo_r14 }, { &hf_lte_rrc_nrs_PowerOffsetNonAnchor_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nrs_PowerOffsetNonAnchor_r14 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CarrierConfigCommon_NB_r14_eag_1 }, { NULL, 0, 0, NULL } }; @@ -84324,16 +102031,6 @@ dissect_lte_rrc_DL_CarrierConfigCommon_NB_r14(tvbuff_t *tvb _U_, int offset _U_, } - -static int -dissect_lte_rrc_INTEGER_0_maxNonAnchorCarriers_NB_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 0U, maxNonAnchorCarriers_NB_r14, NULL, FALSE); - - return offset; -} - - static const value_string lte_rrc_T_sc_mcch_CarrierConfig_r14_vals[] = { { 0, "dl-CarrierConfig-r14" }, { 1, "dl-CarrierIndex-r14" }, @@ -84615,293 +102312,71 @@ dissect_lte_rrc_PCCH_Config_NB_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t DL_ConfigCommon_NB_r14_sequence[] = { - { &hf_lte_rrc_dl_CarrierConfig_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CarrierConfigCommon_NB_r14 }, - { &hf_lte_rrc_pcch_Config_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PCCH_Config_NB_r14 }, +static const per_sequence_t WUS_ConfigPerCarrier_NB_r15_sequence[] = { + { &hf_lte_rrc_maxDurationFactor_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_WUS_MaxDurationFactor_NB_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_DL_ConfigCommon_NB_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_WUS_ConfigPerCarrier_NB_r15(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_lte_rrc_DL_ConfigCommon_NB_r14, DL_ConfigCommon_NB_r14_sequence); - - return offset; -} - - -static const per_sequence_t DL_ConfigCommonList_NB_r14_sequence_of[1] = { - { &hf_lte_rrc_DL_ConfigCommonList_NB_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_ConfigCommon_NB_r14 }, -}; - -static int -dissect_lte_rrc_DL_ConfigCommonList_NB_r14(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_lte_rrc_DL_ConfigCommonList_NB_r14, DL_ConfigCommonList_NB_r14_sequence_of, - 1, maxNonAnchorCarriers_NB_r14, FALSE); - - return offset; -} - - -static const value_string lte_rrc_T_nprach_Periodicity_r14_vals[] = { - { 0, "ms40" }, - { 1, "ms80" }, - { 2, "ms160" }, - { 3, "ms240" }, - { 4, "ms320" }, - { 5, "ms640" }, - { 6, "ms1280" }, - { 7, "ms2560" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_nprach_Periodicity_r14(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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_nprach_StartTime_r14_vals[] = { - { 0, "ms8" }, - { 1, "ms16" }, - { 2, "ms32" }, - { 3, "ms64" }, - { 4, "ms128" }, - { 5, "ms256" }, - { 6, "ms512" }, - { 7, "ms1024" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_nprach_StartTime_r14(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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_nprach_SubcarrierOffset_r14_vals[] = { - { 0, "n0" }, - { 1, "n12" }, - { 2, "n24" }, - { 3, "n36" }, - { 4, "n2" }, - { 5, "n18" }, - { 6, "n34" }, - { 7, "spare1" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_nprach_SubcarrierOffset_r14(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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_nprach_NumSubcarriers_r14_vals[] = { - { 0, "n12" }, - { 1, "n24" }, - { 2, "n36" }, - { 3, "n48" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_nprach_NumSubcarriers_r14(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 lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r14_vals[] = { - { 0, "zero" }, - { 1, "oneThird" }, - { 2, "twoThird" }, - { 3, "one" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r14(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); + ett_lte_rrc_WUS_ConfigPerCarrier_NB_r15, WUS_ConfigPerCarrier_NB_r15_sequence); return offset; } -static const value_string lte_rrc_T_npdcch_NumRepetitions_RA_r14_vals[] = { - { 0, "r1" }, - { 1, "r2" }, - { 2, "r4" }, - { 3, "r8" }, - { 4, "r16" }, - { 5, "r32" }, - { 6, "r64" }, - { 7, "r128" }, - { 8, "r256" }, - { 9, "r512" }, - { 10, "r1024" }, - { 11, "r2048" }, - { 12, "spare4" }, - { 13, "spare3" }, - { 14, "spare2" }, - { 15, "spare1" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r14(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, - 16, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_npdcch_StartSF_CSS_RA_r14_vals[] = { - { 0, "v1dot5" }, - { 1, "v2" }, - { 2, "v4" }, - { 3, "v8" }, - { 4, "v16" }, - { 5, "v32" }, - { 6, "v48" }, - { 7, "v64" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r14(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, - 8, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_npdcch_Offset_RA_r14_vals[] = { - { 0, "zero" }, - { 1, "oneEighth" }, - { 2, "oneFourth" }, - { 3, "threeEighth" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_npdcch_Offset_RA_r14(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 lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r14_vals[] = { - { 0, "n8" }, - { 1, "n10" }, - { 2, "n11" }, - { 3, "n12" }, - { 4, "n20" }, - { 5, "n22" }, - { 6, "n23" }, - { 7, "n24" }, - { 8, "n32" }, - { 9, "n34" }, - { 10, "n35" }, - { 11, "n36" }, - { 12, "n40" }, - { 13, "n44" }, - { 14, "n46" }, - { 15, "n48" }, - { 0, NULL } +static const per_sequence_t DL_ConfigCommon_NB_r14_eag_1_sequence[] = { + { &hf_lte_rrc_wus_Config_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_WUS_ConfigPerCarrier_NB_r15 }, + { NULL, 0, 0, NULL } }; - static int -dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r14(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, - 16, NULL, FALSE, 0, NULL); +dissect_lte_rrc_DL_ConfigCommon_NB_r14_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, DL_ConfigCommon_NB_r14_eag_1_sequence); return offset; } - -static int -dissect_lte_rrc_INTEGER_1_maxNonAnchorCarriers_NB_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index, - 1U, maxNonAnchorCarriers_NB_r14, NULL, FALSE); - - return offset; -} - - -static const per_sequence_t T_nprach_Parameters_r14_sequence[] = { - { &hf_lte_rrc_nprach_Periodicity_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_Periodicity_r14 }, - { &hf_lte_rrc_nprach_StartTime_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_StartTime_r14 }, - { &hf_lte_rrc_nprach_SubcarrierOffset_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_SubcarrierOffset_r14 }, - { &hf_lte_rrc_nprach_NumSubcarriers_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_NumSubcarriers_r14 }, - { &hf_lte_rrc_nprach_SubcarrierMSG3_RangeStart_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r14 }, - { &hf_lte_rrc_npdcch_NumRepetitions_RA_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_NumRepetitions_RA_r14 }, - { &hf_lte_rrc_npdcch_StartSF_CSS_RA_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_StartSF_CSS_RA_r14 }, - { &hf_lte_rrc_npdcch_Offset_RA_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_npdcch_Offset_RA_r14 }, - { &hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r14 }, - { &hf_lte_rrc_npdcch_CarrierIndex_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxNonAnchorCarriers_NB_r14 }, +static const per_sequence_t DL_ConfigCommon_NB_r14_sequence[] = { + { &hf_lte_rrc_dl_CarrierConfig_r14, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CarrierConfigCommon_NB_r14 }, + { &hf_lte_rrc_pcch_Config_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PCCH_Config_NB_r14 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_ConfigCommon_NB_r14_eag_1 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nprach_Parameters_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_DL_ConfigCommon_NB_r14(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_lte_rrc_T_nprach_Parameters_r14, T_nprach_Parameters_r14_sequence); + ett_lte_rrc_DL_ConfigCommon_NB_r14, DL_ConfigCommon_NB_r14_sequence); return offset; } -static const per_sequence_t NPRACH_Parameters_NB_r14_sequence[] = { - { &hf_lte_rrc_nprach_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_Parameters_r14 }, - { NULL, 0, 0, NULL } +static const per_sequence_t DL_ConfigCommonList_NB_r14_sequence_of[1] = { + { &hf_lte_rrc_DL_ConfigCommonList_NB_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_ConfigCommon_NB_r14 }, }; static int -dissect_lte_rrc_NPRACH_Parameters_NB_r14(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_lte_rrc_NPRACH_Parameters_NB_r14, NPRACH_Parameters_NB_r14_sequence); +dissect_lte_rrc_DL_ConfigCommonList_NB_r14(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_lte_rrc_DL_ConfigCommonList_NB_r14, DL_ConfigCommonList_NB_r14_sequence_of, + 1, maxNonAnchorCarriers_NB_r14, FALSE); return offset; } -static const per_sequence_t NPRACH_ParametersList_NB_r14_sequence_of[1] = { - { &hf_lte_rrc_NPRACH_ParametersList_NB_r14_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NPRACH_Parameters_NB_r14 }, +static const per_sequence_t UL_ConfigCommon_NB_r14_eag_1_sequence[] = { + { &hf_lte_rrc_nprach_ParametersListEDT_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ParametersList_NB_r14 }, + { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_NPRACH_ParametersList_NB_r14(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_lte_rrc_NPRACH_ParametersList_NB_r14, NPRACH_ParametersList_NB_r14_sequence_of, - 1, maxNPRACH_Resources_NB_r13, FALSE); +dissect_lte_rrc_UL_ConfigCommon_NB_r14_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UL_ConfigCommon_NB_r14_eag_1_sequence); return offset; } @@ -84910,6 +102385,7 @@ dissect_lte_rrc_NPRACH_ParametersList_NB_r14(tvbuff_t *tvb _U_, int offset _U_, static const per_sequence_t UL_ConfigCommon_NB_r14_sequence[] = { { &hf_lte_rrc_ul_CarrierFreq_r14_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CarrierFreq_NB_r13 }, { &hf_lte_rrc_nprach_ParametersList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ParametersList_NB_r14 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_ConfigCommon_NB_r14_eag_1 }, { NULL, 0, 0, NULL } }; @@ -84994,12 +102470,103 @@ dissect_lte_rrc_NPRACH_ProbabilityAnchorList_NB_r14(tvbuff_t *tvb _U_, int offse } +static const value_string lte_rrc_T_pagingDistribution_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_pagingDistribution_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_nprach_Distribution_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_nprach_Distribution_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_mixedOperationModeConfig_r15_sequence[] = { + { &hf_lte_rrc_dl_ConfigListMixed_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DL_ConfigCommonList_NB_r14 }, + { &hf_lte_rrc_ul_ConfigListMixed_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UL_ConfigCommonList_NB_r14 }, + { &hf_lte_rrc_pagingDistribution_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_pagingDistribution_r15 }, + { &hf_lte_rrc_nprach_Distribution_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_Distribution_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_mixedOperationModeConfig_r15(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_lte_rrc_T_mixedOperationModeConfig_r15, T_mixedOperationModeConfig_r15_sequence); + + return offset; +} + + +static const per_sequence_t UL_ConfigCommonTDD_NB_r15_sequence[] = { + { &hf_lte_rrc_tdd_UL_DL_AlignmentOffset_r15, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TDD_UL_DL_AlignmentOffset_NB_r15 }, + { &hf_lte_rrc_nprach_ParametersListTDD_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ParametersListTDD_NB_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UL_ConfigCommonTDD_NB_r15(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_lte_rrc_UL_ConfigCommonTDD_NB_r15, UL_ConfigCommonTDD_NB_r15_sequence); + + return offset; +} + + +static const per_sequence_t UL_ConfigCommonListTDD_NB_r15_sequence_of[1] = { + { &hf_lte_rrc_UL_ConfigCommonListTDD_NB_r15_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_ConfigCommonTDD_NB_r15 }, +}; + +static int +dissect_lte_rrc_UL_ConfigCommonListTDD_NB_r15(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_lte_rrc_UL_ConfigCommonListTDD_NB_r15, UL_ConfigCommonListTDD_NB_r15_sequence_of, + 1, maxNonAnchorCarriers_NB_r14, FALSE); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType22_NB_r14_eag_1_sequence[] = { + { &hf_lte_rrc_mixedOperationModeConfig_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mixedOperationModeConfig_r15 }, + { &hf_lte_rrc_ul_ConfigList_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UL_ConfigCommonListTDD_NB_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType22_NB_r14_eag_1(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, SystemInformationBlockType22_NB_r14_eag_1_sequence); + + return offset; +} + + static const per_sequence_t SystemInformationBlockType22_NB_r14_sequence[] = { { &hf_lte_rrc_dl_ConfigList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_DL_ConfigCommonList_NB_r14 }, { &hf_lte_rrc_ul_ConfigList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UL_ConfigCommonList_NB_r14 }, { &hf_lte_rrc_pagingWeightAnchor_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PagingWeight_NB_r14 }, { &hf_lte_rrc_nprach_ProbabilityAnchorList_r14, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ProbabilityAnchorList_NB_r14 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_SystemInformationBlockType22_NB_r14_eag_1 }, { NULL, 0, 0, NULL } }; @@ -85014,6 +102581,53 @@ dissect_lte_rrc_SystemInformationBlockType22_NB_r14(tvbuff_t *tvb _U_, int offse } +static const per_sequence_t UL_ConfigCommon_NB_v1530_sequence[] = { + { &hf_lte_rrc_nprach_ParametersListFmt2_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ParametersListFmt2_NB_r15 }, + { &hf_lte_rrc_nprach_ParametersListFmt2EDT_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_NPRACH_ParametersListFmt2_NB_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UL_ConfigCommon_NB_v1530(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_lte_rrc_UL_ConfigCommon_NB_v1530, UL_ConfigCommon_NB_v1530_sequence); + + return offset; +} + + +static const per_sequence_t UL_ConfigCommonList_NB_v1530_sequence_of[1] = { + { &hf_lte_rrc_UL_ConfigCommonList_NB_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_ConfigCommon_NB_v1530 }, +}; + +static int +dissect_lte_rrc_UL_ConfigCommonList_NB_v1530(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_lte_rrc_UL_ConfigCommonList_NB_v1530, UL_ConfigCommonList_NB_v1530_sequence_of, + 1, maxNonAnchorCarriers_NB_r14, FALSE); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType23_NB_r15_sequence[] = { + { &hf_lte_rrc_ul_ConfigList_v1530, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UL_ConfigCommonList_NB_v1530 }, + { &hf_lte_rrc_ul_ConfigListMixed_v1530, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_UL_ConfigCommonList_NB_v1530 }, + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType23_NB_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + col_append_str(actx->pinfo->cinfo, COL_INFO, " SIB23"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_SystemInformationBlockType23_NB_r15, SystemInformationBlockType23_NB_r15_sequence); + + return offset; +} + + static const value_string lte_rrc_T_sib_TypeAndInfo_r13_item_vals[] = { { 0, "sib2-r13" }, { 1, "sib3-r13" }, @@ -85024,6 +102638,7 @@ static const value_string lte_rrc_T_sib_TypeAndInfo_r13_item_vals[] = { { 6, "sib15-v1430" }, { 7, "sib20-v1430" }, { 8, "sib22-v1430" }, + { 9, "sib23-v1530" }, { 0, NULL } }; @@ -85037,6 +102652,7 @@ static const per_choice_t T_sib_TypeAndInfo_r13_item_choice[] = { { 6, &hf_lte_rrc_sib15_v1430 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType15_NB_r14 }, { 7, &hf_lte_rrc_sib20_v1430 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType20_NB_r14 }, { 8, &hf_lte_rrc_sib22_v1430 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType22_NB_r14 }, + { 9, &hf_lte_rrc_sib23_v1530 , ASN1_NOT_EXTENSION_ROOT, dissect_lte_rrc_SystemInformationBlockType23_NB_r15 }, { 0, NULL, 0, NULL } }; @@ -85064,14 +102680,14 @@ dissect_lte_rrc_T_sib_TypeAndInfo_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } -static const per_sequence_t T_nonCriticalExtension_89_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_98_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_89(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_98(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_lte_rrc_T_nonCriticalExtension_89, T_nonCriticalExtension_89_sequence); + ett_lte_rrc_T_nonCriticalExtension_98, T_nonCriticalExtension_98_sequence); return offset; } @@ -85080,7 +102696,7 @@ dissect_lte_rrc_T_nonCriticalExtension_89(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t SystemInformation_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_sib_TypeAndInfo_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_sib_TypeAndInfo_r13 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_269, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_89 }, + { &hf_lte_rrc_nonCriticalExtension_300, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_98 }, { NULL, 0, 0, NULL } }; @@ -85093,35 +102709,35 @@ dissect_lte_rrc_SystemInformation_NB_r13_IEs(tvbuff_t *tvb _U_, int offset _U_, } -static const per_sequence_t T_criticalExtensionsFuture_71_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_75_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_71(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_75(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_lte_rrc_T_criticalExtensionsFuture_71, T_criticalExtensionsFuture_71_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_75, T_criticalExtensionsFuture_75_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_71_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_76_vals[] = { { 0, "systemInformation-r13" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_71_choice[] = { +static const per_choice_t T_criticalExtensions_76_choice[] = { { 0, &hf_lte_rrc_systemInformation_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_SystemInformation_NB_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_71, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_71 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_75, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_75 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_71(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_76(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_lte_rrc_T_criticalExtensions_71, T_criticalExtensions_71_choice, + ett_lte_rrc_T_criticalExtensions_76, T_criticalExtensions_76_choice, NULL); return offset; @@ -85129,7 +102745,7 @@ dissect_lte_rrc_T_criticalExtensions_71(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t SystemInformation_NB_sequence[] = { - { &hf_lte_rrc_criticalExtensions_71, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_71 }, + { &hf_lte_rrc_criticalExtensions_76, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_76 }, { NULL, 0, 0, NULL } }; @@ -85585,14 +103201,186 @@ dissect_lte_rrc_T_nrs_CRS_PowerOffset_v1450(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t T_nonCriticalExtension_90_sequence[] = { +static const value_string lte_rrc_T_subframeAssignment_r15_vals[] = { + { 0, "sa1" }, + { 1, "sa2" }, + { 2, "sa3" }, + { 3, "sa4" }, + { 4, "sa5" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_subframeAssignment_r15(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, + 5, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_specialSubframePatterns_r15_vals[] = { + { 0, "ssp0" }, + { 1, "ssp1" }, + { 2, "ssp2" }, + { 3, "ssp3" }, + { 4, "ssp4" }, + { 5, "ssp5" }, + { 6, "ssp6" }, + { 7, "ssp7" }, + { 8, "ssp8" }, + { 9, "ssp9" }, + { 10, "ssp10" }, + { 11, "ssp10-CRS-LessDwPTS" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_specialSubframePatterns_r15(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, + 12, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t TDD_Config_NB_r15_sequence[] = { + { &hf_lte_rrc_subframeAssignment_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_subframeAssignment_r15 }, + { &hf_lte_rrc_specialSubframePatterns_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_specialSubframePatterns_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_90(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_TDD_Config_NB_r15(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_lte_rrc_T_nonCriticalExtension_90, T_nonCriticalExtension_90_sequence); + ett_lte_rrc_TDD_Config_NB_r15, TDD_Config_NB_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_tdd_SI_CarrierInfo_r15_vals[] = { + { 0, "anchor" }, + { 1, "non-anchor" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_tdd_SI_CarrierInfo_r15(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, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t T_tdd_Parameters_r15_sequence[] = { + { &hf_lte_rrc_tdd_Config_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_TDD_Config_NB_r15 }, + { &hf_lte_rrc_tdd_SI_CarrierInfo_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_tdd_SI_CarrierInfo_r15 }, + { &hf_lte_rrc_tdd_SI_SubframesBitmap_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DL_Bitmap_NB_r13 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_tdd_Parameters_r15(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_lte_rrc_T_tdd_Parameters_r15, T_tdd_Parameters_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_SIB_Type_NB_v1530_vals[] = { + { 0, "sibType23-NB-r15" }, + { 1, "spare7" }, + { 2, "spare6" }, + { 3, "spare5" }, + { 4, "spare4" }, + { 5, "spare3" }, + { 6, "spare2" }, + { 7, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_SIB_Type_NB_v1530(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t SIB_MappingInfo_NB_v1530_sequence_of[1] = { + { &hf_lte_rrc_SIB_MappingInfo_NB_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SIB_Type_NB_v1530 }, +}; + +static int +dissect_lte_rrc_SIB_MappingInfo_NB_v1530(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_lte_rrc_SIB_MappingInfo_NB_v1530, SIB_MappingInfo_NB_v1530_sequence_of, + 1, 8, FALSE); + + return offset; +} + + +static const per_sequence_t SchedulingInfo_NB_v1530_sequence[] = { + { &hf_lte_rrc_sib_MappingInfo_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SIB_MappingInfo_NB_v1530 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SchedulingInfo_NB_v1530(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_lte_rrc_SchedulingInfo_NB_v1530, SchedulingInfo_NB_v1530_sequence); + + return offset; +} + + +static const per_sequence_t SchedulingInfoList_NB_v1530_sequence_of[1] = { + { &hf_lte_rrc_SchedulingInfoList_NB_v1530_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SchedulingInfo_NB_v1530 }, +}; + +static int +dissect_lte_rrc_SchedulingInfoList_NB_v1530(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_lte_rrc_SchedulingInfoList_NB_v1530, SchedulingInfoList_NB_v1530_sequence_of, + 1, maxSI_Message_NB_r13, FALSE); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_99_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_99(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_lte_rrc_T_nonCriticalExtension_99, T_nonCriticalExtension_99_sequence); + + return offset; +} + + +static const per_sequence_t SystemInformationBlockType1_NB_v1530_sequence[] = { + { &hf_lte_rrc_tdd_Parameters_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_tdd_Parameters_r15 }, + { &hf_lte_rrc_schedulingInfoList_v1530, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SchedulingInfoList_NB_v1530 }, + { &hf_lte_rrc_nonCriticalExtension_305, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_99 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_SystemInformationBlockType1_NB_v1530(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_lte_rrc_SystemInformationBlockType1_NB_v1530, SystemInformationBlockType1_NB_v1530_sequence); return offset; } @@ -85600,7 +103388,7 @@ dissect_lte_rrc_T_nonCriticalExtension_90(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t SystemInformationBlockType1_NB_v1450_sequence[] = { { &hf_lte_rrc_nrs_CRS_PowerOffset_v1450, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nrs_CRS_PowerOffset_v1450 }, - { &hf_lte_rrc_nonCriticalExtension_273, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_90 }, + { &hf_lte_rrc_nonCriticalExtension_304, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_NB_v1530 }, { NULL, 0, 0, NULL } }; @@ -85615,7 +103403,7 @@ dissect_lte_rrc_SystemInformationBlockType1_NB_v1450(tvbuff_t *tvb _U_, int offs static const per_sequence_t SystemInformationBlockType1_NB_v1430_sequence[] = { { &hf_lte_rrc_cellSelectionInfo_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfo_NB_v1430 }, - { &hf_lte_rrc_nonCriticalExtension_272, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_NB_v1450 }, + { &hf_lte_rrc_nonCriticalExtension_303, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_NB_v1450 }, { NULL, 0, 0, NULL } }; @@ -85630,7 +103418,7 @@ dissect_lte_rrc_SystemInformationBlockType1_NB_v1430(tvbuff_t *tvb _U_, int offs static const per_sequence_t SystemInformationBlockType1_NB_v1350_sequence[] = { { &hf_lte_rrc_cellSelectionInfo_v1350, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CellSelectionInfo_NB_v1350 }, - { &hf_lte_rrc_nonCriticalExtension_271, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_NB_v1430 }, + { &hf_lte_rrc_nonCriticalExtension_302, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_NB_v1430 }, { NULL, 0, 0, NULL } }; @@ -85659,7 +103447,7 @@ static const per_sequence_t SystemInformationBlockType1_NB_sequence[] = { { &hf_lte_rrc_si_RadioFrameOffset_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_15 }, { &hf_lte_rrc_systemInfoValueTagList_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInfoValueTagList_NB_r13 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_270, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_NB_v1350 }, + { &hf_lte_rrc_nonCriticalExtension_301, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SystemInformationBlockType1_NB_v1350 }, { NULL, 0, 0, NULL } }; @@ -85732,7 +103520,7 @@ dissect_lte_rrc_BCCH_DL_SCH_MessageType_NB(tvbuff_t *tvb _U_, int offset _U_, as static const per_sequence_t BCCH_DL_SCH_Message_NB_sequence[] = { - { &hf_lte_rrc_message_15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_DL_SCH_MessageType_NB }, + { &hf_lte_rrc_message_16 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BCCH_DL_SCH_MessageType_NB }, { NULL, 0, 0, NULL } }; @@ -85803,14 +103591,14 @@ dissect_lte_rrc_T_systemInfoModification_eDRX_r13_01(tvbuff_t *tvb _U_, int offs } -static const per_sequence_t T_nonCriticalExtension_77_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_84_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_77(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_84(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_lte_rrc_T_nonCriticalExtension_77, T_nonCriticalExtension_77_sequence); + ett_lte_rrc_T_nonCriticalExtension_84, T_nonCriticalExtension_84_sequence); return offset; } @@ -85820,7 +103608,7 @@ static const per_sequence_t Paging_NB_sequence[] = { { &hf_lte_rrc_pagingRecordList_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PagingRecordList_NB_r13 }, { &hf_lte_rrc_systemInfoModification_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInfoModification_r13 }, { &hf_lte_rrc_systemInfoModification_eDRX_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_systemInfoModification_eDRX_r13_01 }, - { &hf_lte_rrc_nonCriticalExtension_251, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_77 }, + { &hf_lte_rrc_nonCriticalExtension_279, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_84 }, { NULL, 0, 0, NULL } }; @@ -85891,7 +103679,7 @@ dissect_lte_rrc_PCCH_MessageType_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ static const per_sequence_t PCCH_Message_NB_sequence[] = { - { &hf_lte_rrc_message_16 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PCCH_MessageType_NB }, + { &hf_lte_rrc_message_17 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_PCCH_MessageType_NB }, { NULL, 0, 0, NULL } }; @@ -85904,14 +103692,14 @@ dissect_lte_rrc_PCCH_Message_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *a } -static const per_sequence_t T_nonCriticalExtension_80_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_87_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_80(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_87(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_lte_rrc_T_nonCriticalExtension_80, T_nonCriticalExtension_80_sequence); + ett_lte_rrc_T_nonCriticalExtension_87, T_nonCriticalExtension_87_sequence); return offset; } @@ -85919,7 +103707,7 @@ dissect_lte_rrc_T_nonCriticalExtension_80(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t RRCConnectionReestablishment_NB_v1430_IEs_sequence[] = { { &hf_lte_rrc_dl_NAS_MAC , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_BIT_STRING_SIZE_16 }, - { &hf_lte_rrc_nonCriticalExtension_255, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_80 }, + { &hf_lte_rrc_nonCriticalExtension_283, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_87 }, { NULL, 0, 0, NULL } }; @@ -85936,7 +103724,7 @@ static const per_sequence_t RRCConnectionReestablishment_NB_r13_IEs_sequence[] = { &hf_lte_rrc_radioResourceConfigDedicated_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_NB_r13 }, { &hf_lte_rrc_nextHopChainingCount_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NextHopChainingCount }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_254, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishment_NB_v1430_IEs }, + { &hf_lte_rrc_nonCriticalExtension_282, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishment_NB_v1430_IEs }, { NULL, 0, 0, NULL } }; @@ -85971,35 +103759,35 @@ dissect_lte_rrc_T_c1_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } -static const per_sequence_t T_criticalExtensionsFuture_60_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_62_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_60(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_62(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_lte_rrc_T_criticalExtensionsFuture_60, T_criticalExtensionsFuture_60_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_62, T_criticalExtensionsFuture_62_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_60_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_63_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_60_choice[] = { +static const per_choice_t T_criticalExtensions_63_choice[] = { { 0, &hf_lte_rrc_c1_63 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_63 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_60, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_60 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_62, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_62 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_60(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_63(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_lte_rrc_T_criticalExtensions_60, T_criticalExtensions_60_choice, + ett_lte_rrc_T_criticalExtensions_63, T_criticalExtensions_63_choice, NULL); return offset; @@ -86008,7 +103796,7 @@ dissect_lte_rrc_T_criticalExtensions_60(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionReestablishment_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_60, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_60 }, + { &hf_lte_rrc_criticalExtensions_63, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_63 }, { NULL, 0, 0, NULL } }; @@ -86038,14 +103826,14 @@ dissect_lte_rrc_T_rrc_SuspendIndication_r13_01(tvbuff_t *tvb _U_, int offset _U_ } -static const per_sequence_t T_nonCriticalExtension_82_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_89_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_82(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_89(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_lte_rrc_T_nonCriticalExtension_82, T_nonCriticalExtension_82_sequence); + ett_lte_rrc_T_nonCriticalExtension_89, T_nonCriticalExtension_89_sequence); return offset; } @@ -86055,7 +103843,7 @@ static const per_sequence_t RRCConnectionReject_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_extendedWaitTime_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_INTEGER_1_1800 }, { &hf_lte_rrc_rrc_SuspendIndication_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rrc_SuspendIndication_r13_01 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_258, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_82 }, + { &hf_lte_rrc_nonCriticalExtension_286, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_89 }, { NULL, 0, 0, NULL } }; @@ -86090,35 +103878,35 @@ dissect_lte_rrc_T_c1_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } -static const per_sequence_t T_criticalExtensionsFuture_63_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_65_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_65(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_lte_rrc_T_criticalExtensionsFuture_63, T_criticalExtensionsFuture_63_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_65, T_criticalExtensionsFuture_65_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_63_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_66_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_63_choice[] = { +static const per_choice_t T_criticalExtensions_66_choice[] = { { 0, &hf_lte_rrc_c1_64 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_64 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_63, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_63 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_65, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_65 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_66(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_lte_rrc_T_criticalExtensions_63, T_criticalExtensions_63_choice, + ett_lte_rrc_T_criticalExtensions_66, T_criticalExtensions_66_choice, NULL); return offset; @@ -86126,7 +103914,7 @@ dissect_lte_rrc_T_criticalExtensions_63(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionReject_NB_sequence[] = { - { &hf_lte_rrc_criticalExtensions_63, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_63 }, + { &hf_lte_rrc_criticalExtensions_66, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_66 }, { NULL, 0, 0, NULL } }; @@ -86141,14 +103929,14 @@ dissect_lte_rrc_RRCConnectionReject_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_c } -static const per_sequence_t T_nonCriticalExtension_86_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_93_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_86(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_93(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_lte_rrc_T_nonCriticalExtension_86, T_nonCriticalExtension_86_sequence); + ett_lte_rrc_T_nonCriticalExtension_93, T_nonCriticalExtension_93_sequence); return offset; } @@ -86157,7 +103945,7 @@ dissect_lte_rrc_T_nonCriticalExtension_86(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t RRCConnectionSetup_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_radioResourceConfigDedicated_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RadioResourceConfigDedicated_NB_r13 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_264, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_86 }, + { &hf_lte_rrc_nonCriticalExtension_293, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_93 }, { NULL, 0, 0, NULL } }; @@ -86192,35 +103980,35 @@ dissect_lte_rrc_T_c1_67(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } -static const per_sequence_t T_criticalExtensionsFuture_69_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_71_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_69(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_71(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_lte_rrc_T_criticalExtensionsFuture_69, T_criticalExtensionsFuture_69_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_71, T_criticalExtensionsFuture_71_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_69_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_72_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_69_choice[] = { +static const per_choice_t T_criticalExtensions_72_choice[] = { { 0, &hf_lte_rrc_c1_67 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_67 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_69, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_69 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_71, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_71 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_69(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_72(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_lte_rrc_T_criticalExtensions_69, T_criticalExtensions_69_choice, + ett_lte_rrc_T_criticalExtensions_72, T_criticalExtensions_72_choice, NULL); return offset; @@ -86229,7 +104017,7 @@ dissect_lte_rrc_T_criticalExtensions_69(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionSetup_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_69, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_69 }, + { &hf_lte_rrc_criticalExtensions_72, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_72 }, { NULL, 0, 0, NULL } }; @@ -86244,12 +104032,170 @@ dissect_lte_rrc_RRCConnectionSetup_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ct } + +static int +dissect_lte_rrc_RedirectedCarrierInfo_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_lte_rrc_CarrierFreq_NB_r13(tvb, offset, actx, tree, hf_index); + + return offset; +} + + +static const value_string lte_rrc_T_redirectedCarrierOffsetDedicated_r14_vals[] = { + { 0, "dB1" }, + { 1, "dB2" }, + { 2, "dB3" }, + { 3, "dB4" }, + { 4, "dB5" }, + { 5, "dB6" }, + { 6, "dB8" }, + { 7, "dB10" }, + { 8, "dB12" }, + { 9, "dB14" }, + { 10, "dB16" }, + { 11, "dB18" }, + { 12, "dB20" }, + { 13, "dB22" }, + { 14, "dB24" }, + { 15, "dB26" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_redirectedCarrierOffsetDedicated_r14(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, + 16, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_t322_r14_vals[] = { + { 0, "min5" }, + { 1, "min10" }, + { 2, "min20" }, + { 3, "min30" }, + { 4, "min60" }, + { 5, "min120" }, + { 6, "min180" }, + { 7, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_t322_r14(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, + 8, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t RedirectedCarrierInfo_NB_v1430_sequence[] = { + { &hf_lte_rrc_redirectedCarrierOffsetDedicated_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_redirectedCarrierOffsetDedicated_r14 }, + { &hf_lte_rrc_t322_r14 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t322_r14 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RedirectedCarrierInfo_NB_v1430(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_lte_rrc_RedirectedCarrierInfo_NB_v1430, RedirectedCarrierInfo_NB_v1430_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_95_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_95(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_lte_rrc_T_nonCriticalExtension_95, T_nonCriticalExtension_95_sequence); + + return offset; +} + + +static const per_sequence_t RRCEarlyDataComplete_NB_r15_IEs_sequence[] = { + { &hf_lte_rrc_dedicatedInfoNAS_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DedicatedInfoNAS }, + { &hf_lte_rrc_extendedWaitTime_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_1800 }, + { &hf_lte_rrc_redirectedCarrierInfo_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedirectedCarrierInfo_NB_r13 }, + { &hf_lte_rrc_redirectedCarrierInfoExt_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedirectedCarrierInfo_NB_v1430 }, + { &hf_lte_rrc_nonCriticalExtension_297, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_95 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCEarlyDataComplete_NB_r15_IEs(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_lte_rrc_RRCEarlyDataComplete_NB_r15_IEs, RRCEarlyDataComplete_NB_r15_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_73_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_73(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_lte_rrc_T_criticalExtensionsFuture_73, T_criticalExtensionsFuture_73_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_74_vals[] = { + { 0, "rrcEarlyDataComplete-r15" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_74_choice[] = { + { 0, &hf_lte_rrc_rrcEarlyDataComplete_r15_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCEarlyDataComplete_NB_r15_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_73, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_73 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_74(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_lte_rrc_T_criticalExtensions_74, T_criticalExtensions_74_choice, + NULL); + + return offset; +} + + +static const per_sequence_t RRCEarlyDataComplete_NB_r15_sequence[] = { + { &hf_lte_rrc_criticalExtensions_74, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_74 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCEarlyDataComplete_NB_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCEarlyDataComplete-NB-r15"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RRCEarlyDataComplete_NB_r15, RRCEarlyDataComplete_NB_r15_sequence); + + return offset; +} + + static const value_string lte_rrc_T_c1_56_vals[] = { { 0, "rrcConnectionReestablishment-r13" }, { 1, "rrcConnectionReestablishmentReject-r13" }, { 2, "rrcConnectionReject-r13" }, { 3, "rrcConnectionSetup-r13" }, - { 4, "spare4" }, + { 4, "rrcEarlyDataComplete-r15" }, { 5, "spare3" }, { 6, "spare2" }, { 7, "spare1" }, @@ -86261,7 +104207,7 @@ static const per_choice_t T_c1_56_choice[] = { { 1, &hf_lte_rrc_rrcConnectionReestablishmentReject_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentReject }, { 2, &hf_lte_rrc_rrcConnectionReject_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReject_NB }, { 3, &hf_lte_rrc_rrcConnectionSetup_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionSetup_NB }, - { 4, &hf_lte_rrc_spare4 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 4, &hf_lte_rrc_rrcEarlyDataComplete_r15_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCEarlyDataComplete_NB_r15 }, { 5, &hf_lte_rrc_spare3 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 6, &hf_lte_rrc_spare2 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, { 7, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, @@ -86314,7 +104260,7 @@ dissect_lte_rrc_DL_CCCH_MessageType_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_c static const per_sequence_t DL_CCCH_Message_NB_sequence[] = { - { &hf_lte_rrc_message_17 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CCCH_MessageType_NB }, + { &hf_lte_rrc_message_18 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_CCCH_MessageType_NB }, { NULL, 0, 0, NULL } }; @@ -86327,14 +104273,14 @@ dissect_lte_rrc_DL_CCCH_Message_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t T_nonCriticalExtension_76_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_83_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_76(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_83(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_lte_rrc_T_nonCriticalExtension_76, T_nonCriticalExtension_76_sequence); + ett_lte_rrc_T_nonCriticalExtension_83, T_nonCriticalExtension_83_sequence); return offset; } @@ -86343,7 +104289,7 @@ dissect_lte_rrc_T_nonCriticalExtension_76(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t DLInformationTransfer_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_dedicatedInfoNAS_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoNAS }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_250, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_76 }, + { &hf_lte_rrc_nonCriticalExtension_278, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_83 }, { NULL, 0, 0, NULL } }; @@ -86378,35 +104324,35 @@ dissect_lte_rrc_T_c1_61(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } -static const per_sequence_t T_criticalExtensionsFuture_57_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_59_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_57(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_59(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_lte_rrc_T_criticalExtensionsFuture_57, T_criticalExtensionsFuture_57_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_59, T_criticalExtensionsFuture_59_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_57_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_60_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_57_choice[] = { +static const per_choice_t T_criticalExtensions_60_choice[] = { { 0, &hf_lte_rrc_c1_61 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_61 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_57, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_57 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_59, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_59 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_57(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_60(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_lte_rrc_T_criticalExtensions_57, T_criticalExtensions_57_choice, + ett_lte_rrc_T_criticalExtensions_60, T_criticalExtensions_60_choice, NULL); return offset; @@ -86415,7 +104361,7 @@ dissect_lte_rrc_T_criticalExtensions_57(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t DLInformationTransfer_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_57, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_57 }, + { &hf_lte_rrc_criticalExtensions_60, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_60 }, { NULL, 0, 0, NULL } }; @@ -86459,14 +104405,14 @@ dissect_lte_rrc_T_fullConfig_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t * } -static const per_sequence_t T_nonCriticalExtension_78_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_85_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_78(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_85(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_lte_rrc_T_nonCriticalExtension_78, T_nonCriticalExtension_78_sequence); + ett_lte_rrc_T_nonCriticalExtension_85, T_nonCriticalExtension_85_sequence); return offset; } @@ -86477,7 +104423,7 @@ static const per_sequence_t RRCConnectionReconfiguration_NB_r13_IEs_sequence[] = { &hf_lte_rrc_radioResourceConfigDedicated_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RadioResourceConfigDedicated_NB_r13 }, { &hf_lte_rrc_fullConfig_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_fullConfig_r13 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_252, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_78 }, + { &hf_lte_rrc_nonCriticalExtension_280, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_85 }, { NULL, 0, 0, NULL } }; @@ -86512,35 +104458,35 @@ dissect_lte_rrc_T_c1_62(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } -static const per_sequence_t T_criticalExtensionsFuture_58_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_60_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_58(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_60(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_lte_rrc_T_criticalExtensionsFuture_58, T_criticalExtensionsFuture_58_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_60, T_criticalExtensionsFuture_60_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_58_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_61_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_58_choice[] = { +static const per_choice_t T_criticalExtensions_61_choice[] = { { 0, &hf_lte_rrc_c1_62 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_62 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_58, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_58 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_60, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_60 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_58(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_61(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_lte_rrc_T_criticalExtensions_58, T_criticalExtensions_58_choice, + ett_lte_rrc_T_criticalExtensions_61, T_criticalExtensions_61_choice, NULL); return offset; @@ -86549,7 +104495,7 @@ dissect_lte_rrc_T_criticalExtensions_58(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionReconfiguration_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_58, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_58 }, + { &hf_lte_rrc_criticalExtensions_61, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_61 }, { NULL, 0, 0, NULL } }; @@ -86582,90 +104528,45 @@ dissect_lte_rrc_ReleaseCause_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_ } - -static int -dissect_lte_rrc_RedirectedCarrierInfo_NB_r13(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { - offset = dissect_lte_rrc_CarrierFreq_NB_r13(tvb, offset, actx, tree, hf_index); - - return offset; -} - - -static const value_string lte_rrc_T_redirectedCarrierOffsetDedicated_r14_vals[] = { - { 0, "dB1" }, - { 1, "dB2" }, - { 2, "dB3" }, - { 3, "dB4" }, - { 4, "dB5" }, - { 5, "dB6" }, - { 6, "dB8" }, - { 7, "dB10" }, - { 8, "dB12" }, - { 9, "dB14" }, - { 10, "dB16" }, - { 11, "dB18" }, - { 12, "dB20" }, - { 13, "dB22" }, - { 14, "dB24" }, - { 15, "dB26" }, - { 0, NULL } -}; - - -static int -dissect_lte_rrc_T_redirectedCarrierOffsetDedicated_r14(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, - 16, NULL, FALSE, 0, NULL); - - return offset; -} - - -static const value_string lte_rrc_T_t322_r14_vals[] = { - { 0, "min5" }, - { 1, "min10" }, - { 2, "min20" }, - { 3, "min30" }, - { 4, "min60" }, - { 5, "min120" }, - { 6, "min180" }, - { 7, "spare1" }, +static const value_string lte_rrc_T_drb_ContinueROHC_r15_01_vals[] = { + { 0, "true" }, { 0, NULL } }; static int -dissect_lte_rrc_T_t322_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_drb_ContinueROHC_r15_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, - 8, NULL, FALSE, 0, NULL); + 1, NULL, FALSE, 0, NULL); return offset; } -static const per_sequence_t RedirectedCarrierInfo_NB_v1430_sequence[] = { - { &hf_lte_rrc_redirectedCarrierOffsetDedicated_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_redirectedCarrierOffsetDedicated_r14 }, - { &hf_lte_rrc_t322_r14 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_t322_r14 }, +static const per_sequence_t T_nonCriticalExtension_90_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_RedirectedCarrierInfo_NB_v1430(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_90(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_lte_rrc_RedirectedCarrierInfo_NB_v1430, RedirectedCarrierInfo_NB_v1430_sequence); + ett_lte_rrc_T_nonCriticalExtension_90, T_nonCriticalExtension_90_sequence); return offset; } -static const per_sequence_t T_nonCriticalExtension_83_sequence[] = { +static const per_sequence_t RRCConnectionRelease_NB_v1530_IEs_sequence[] = { + { &hf_lte_rrc_drb_ContinueROHC_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_ContinueROHC_r15_01 }, + { &hf_lte_rrc_nextHopChainingCount_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_NextHopChainingCount }, + { &hf_lte_rrc_nonCriticalExtension_289, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_90 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_83(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RRCConnectionRelease_NB_v1530_IEs(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_lte_rrc_T_nonCriticalExtension_83, T_nonCriticalExtension_83_sequence); + ett_lte_rrc_RRCConnectionRelease_NB_v1530_IEs, RRCConnectionRelease_NB_v1530_IEs_sequence); return offset; } @@ -86674,7 +104575,7 @@ dissect_lte_rrc_T_nonCriticalExtension_83(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t RRCConnectionRelease_NB_v1430_IEs_sequence[] = { { &hf_lte_rrc_redirectedCarrierInfo_v1430, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedirectedCarrierInfo_NB_v1430 }, { &hf_lte_rrc_extendedWaitTime_CPdata_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_1800 }, - { &hf_lte_rrc_nonCriticalExtension_260, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_83 }, + { &hf_lte_rrc_nonCriticalExtension_288, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_NB_v1530_IEs }, { NULL, 0, 0, NULL } }; @@ -86693,7 +104594,7 @@ static const per_sequence_t RRCConnectionRelease_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_extendedWaitTime_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_1800 }, { &hf_lte_rrc_redirectedCarrierInfo_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RedirectedCarrierInfo_NB_r13 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_259, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_NB_v1430_IEs }, + { &hf_lte_rrc_nonCriticalExtension_287, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionRelease_NB_v1430_IEs }, { NULL, 0, 0, NULL } }; @@ -86728,35 +104629,35 @@ dissect_lte_rrc_T_c1_65(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } -static const per_sequence_t T_criticalExtensionsFuture_64_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_66_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_66(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_lte_rrc_T_criticalExtensionsFuture_64, T_criticalExtensionsFuture_64_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_66, T_criticalExtensionsFuture_66_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_64_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_67_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_64_choice[] = { +static const per_choice_t T_criticalExtensions_67_choice[] = { { 0, &hf_lte_rrc_c1_65 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_65 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_64, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_64 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_66, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_66 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_67(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_lte_rrc_T_criticalExtensions_64, T_criticalExtensions_64_choice, + ett_lte_rrc_T_criticalExtensions_67, T_criticalExtensions_67_choice, NULL); return offset; @@ -86765,7 +104666,7 @@ dissect_lte_rrc_T_criticalExtensions_64(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionRelease_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_64, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_64 }, + { &hf_lte_rrc_criticalExtensions_67, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_67 }, { NULL, 0, 0, NULL } }; @@ -86780,14 +104681,14 @@ dissect_lte_rrc_RRCConnectionRelease_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ } -static const per_sequence_t T_nonCriticalExtension_91_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_100_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_91(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_100(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_lte_rrc_T_nonCriticalExtension_91, T_nonCriticalExtension_91_sequence); + ett_lte_rrc_T_nonCriticalExtension_100, T_nonCriticalExtension_100_sequence); return offset; } @@ -86795,7 +104696,7 @@ dissect_lte_rrc_T_nonCriticalExtension_91(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t UECapabilityEnquiry_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_274, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_91 }, + { &hf_lte_rrc_nonCriticalExtension_306, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_100 }, { NULL, 0, 0, NULL } }; @@ -86830,35 +104731,35 @@ dissect_lte_rrc_T_c1_68(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } -static const per_sequence_t T_criticalExtensionsFuture_72_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_76_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_72(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_76(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_lte_rrc_T_criticalExtensionsFuture_72, T_criticalExtensionsFuture_72_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_76, T_criticalExtensionsFuture_76_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_72_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_77_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_72_choice[] = { +static const per_choice_t T_criticalExtensions_77_choice[] = { { 0, &hf_lte_rrc_c1_68 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_68 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_72, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_72 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_76, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_76 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_72(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_77(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_lte_rrc_T_criticalExtensions_72, T_criticalExtensions_72_choice, + ett_lte_rrc_T_criticalExtensions_77, T_criticalExtensions_77_choice, NULL); return offset; @@ -86867,7 +104768,7 @@ dissect_lte_rrc_T_criticalExtensions_72(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t UECapabilityEnquiry_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_72, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_72 }, + { &hf_lte_rrc_criticalExtensions_77, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_77 }, { NULL, 0, 0, NULL } }; @@ -86897,14 +104798,14 @@ dissect_lte_rrc_T_drb_ContinueROHC_r13_01(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t T_nonCriticalExtension_84_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_91_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_84(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_91(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_lte_rrc_T_nonCriticalExtension_84, T_nonCriticalExtension_84_sequence); + ett_lte_rrc_T_nonCriticalExtension_91, T_nonCriticalExtension_91_sequence); return offset; } @@ -86915,7 +104816,7 @@ static const per_sequence_t RRCConnectionResume_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_nextHopChainingCount_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_NextHopChainingCount }, { &hf_lte_rrc_drb_ContinueROHC_r13_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_drb_ContinueROHC_r13_01 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_261, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_84 }, + { &hf_lte_rrc_nonCriticalExtension_290, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_91 }, { NULL, 0, 0, NULL } }; @@ -86950,35 +104851,35 @@ dissect_lte_rrc_T_c1_66(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, } -static const per_sequence_t T_criticalExtensionsFuture_66_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_68_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_66(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_68(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_lte_rrc_T_criticalExtensionsFuture_66, T_criticalExtensionsFuture_66_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_68, T_criticalExtensionsFuture_68_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_66_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_69_vals[] = { { 0, "c1" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_66_choice[] = { +static const per_choice_t T_criticalExtensions_69_choice[] = { { 0, &hf_lte_rrc_c1_66 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_c1_66 }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_66, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_66 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_68, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_68 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_66(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_69(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_lte_rrc_T_criticalExtensions_66, T_criticalExtensions_66_choice, + ett_lte_rrc_T_criticalExtensions_69, T_criticalExtensions_69_choice, NULL); return offset; @@ -86987,7 +104888,7 @@ dissect_lte_rrc_T_criticalExtensions_66(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionResume_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_66, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_66 }, + { &hf_lte_rrc_criticalExtensions_69, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_69 }, { NULL, 0, 0, NULL } }; @@ -87072,7 +104973,7 @@ dissect_lte_rrc_DL_DCCH_MessageType_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_c static const per_sequence_t DL_DCCH_Message_NB_sequence[] = { - { &hf_lte_rrc_message_18 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_DCCH_MessageType_NB }, + { &hf_lte_rrc_message_19 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DL_DCCH_MessageType_NB }, { NULL, 0, 0, NULL } }; @@ -87137,7 +105038,7 @@ static const per_sequence_t RRCConnectionReestablishmentRequest_NB_r13_IEs_seque { &hf_lte_rrc_reestablishmentCause_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ReestablishmentCause_NB_r13 }, { &hf_lte_rrc_cqi_NPDCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CQI_NPDCCH_NB_r14 }, { &hf_lte_rrc_earlyContentionResolution_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_spare_07 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_20 }, + { &hf_lte_rrc_spare_09 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_20 }, { NULL, 0, 0, NULL } }; @@ -87202,14 +105103,14 @@ dissect_lte_rrc_RRCConnectionReestablishmentRequest_NB_r14_IEs(tvbuff_t *tvb _U_ } -static const per_sequence_t T_criticalExtensionsFuture_62_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_64_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_62(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_64(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_lte_rrc_T_criticalExtensionsFuture_62, T_criticalExtensionsFuture_62_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_64, T_criticalExtensionsFuture_64_sequence); return offset; } @@ -87223,7 +105124,7 @@ static const value_string lte_rrc_T_later_01_vals[] = { static const per_choice_t T_later_01_choice[] = { { 0, &hf_lte_rrc_rrcConnectionReestablishmentRequest_r14, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentRequest_NB_r14_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_62, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_62 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_64, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_64 }, { 0, NULL, 0, NULL } }; @@ -87237,22 +105138,22 @@ dissect_lte_rrc_T_later_01(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _ } -static const value_string lte_rrc_T_criticalExtensions_62_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_65_vals[] = { { 0, "rrcConnectionReestablishmentRequest-r13" }, { 1, "later" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_62_choice[] = { +static const per_choice_t T_criticalExtensions_65_choice[] = { { 0, &hf_lte_rrc_rrcConnectionReestablishmentRequest_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentRequest_NB_r13_IEs }, { 1, &hf_lte_rrc_later_01 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_later_01 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_62(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_65(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_lte_rrc_T_criticalExtensions_62, T_criticalExtensions_62_choice, + ett_lte_rrc_T_criticalExtensions_65, T_criticalExtensions_65_choice, NULL); return offset; @@ -87260,7 +105161,7 @@ dissect_lte_rrc_T_criticalExtensions_62(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionReestablishmentRequest_NB_sequence[] = { - { &hf_lte_rrc_criticalExtensions_62, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_62 }, + { &hf_lte_rrc_criticalExtensions_65, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_65 }, { NULL, 0, 0, NULL } }; @@ -87332,9 +105233,9 @@ static const per_sequence_t RRCConnectionRequest_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_establishmentCause_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_EstablishmentCause_NB_r13 }, { &hf_lte_rrc_multiToneSupport_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiToneSupport_r13 }, { &hf_lte_rrc_multiCarrierSupport_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiCarrierSupport_r13 }, - { &hf_lte_rrc_cqi_NPDCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CQI_NPDCCH_NB_r14 }, { &hf_lte_rrc_earlyContentionResolution_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_spare_08 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_17 }, + { &hf_lte_rrc_cqi_NPDCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CQI_NPDCCH_NB_r14 }, + { &hf_lte_rrc_spare_10 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_17 }, { NULL, 0, 0, NULL } }; @@ -87347,35 +105248,35 @@ dissect_lte_rrc_RRCConnectionRequest_NB_r13_IEs(tvbuff_t *tvb _U_, int offset _U } -static const per_sequence_t T_criticalExtensionsFuture_65_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_67_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_65(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_67(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_lte_rrc_T_criticalExtensionsFuture_65, T_criticalExtensionsFuture_65_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_67, T_criticalExtensionsFuture_67_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_65_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_68_vals[] = { { 0, "rrcConnectionRequest-r13" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_65_choice[] = { +static const per_choice_t T_criticalExtensions_68_choice[] = { { 0, &hf_lte_rrc_rrcConnectionRequest_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionRequest_NB_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_65, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_65 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_67, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_67 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_65(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_68(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_lte_rrc_T_criticalExtensions_65, T_criticalExtensions_65_choice, + ett_lte_rrc_T_criticalExtensions_68, T_criticalExtensions_68_choice, NULL); return offset; @@ -87383,7 +105284,7 @@ dissect_lte_rrc_T_criticalExtensions_65(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionRequest_NB_sequence[] = { - { &hf_lte_rrc_criticalExtensions_65, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_65 }, + { &hf_lte_rrc_criticalExtensions_68, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_68 }, { NULL, 0, 0, NULL } }; @@ -87402,9 +105303,9 @@ static const per_sequence_t RRCConnectionResumeRequest_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_resumeID_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ResumeIdentity_r13 }, { &hf_lte_rrc_shortResumeMAC_I_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_ShortMAC_I }, { &hf_lte_rrc_resumeCause_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_EstablishmentCause_NB_r13 }, - { &hf_lte_rrc_cqi_NPDCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CQI_NPDCCH_NB_r14 }, { &hf_lte_rrc_earlyContentionResolution_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BOOLEAN }, - { &hf_lte_rrc_spare_09 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_4 }, + { &hf_lte_rrc_cqi_NPDCCH_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_CQI_NPDCCH_NB_r14 }, + { &hf_lte_rrc_spare_01 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_BIT_STRING_SIZE_4 }, { NULL, 0, 0, NULL } }; @@ -87417,35 +105318,35 @@ dissect_lte_rrc_RRCConnectionResumeRequest_NB_r13_IEs(tvbuff_t *tvb _U_, int off } -static const per_sequence_t T_criticalExtensionsFuture_68_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_70_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_68(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_70(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_lte_rrc_T_criticalExtensionsFuture_68, T_criticalExtensionsFuture_68_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_70, T_criticalExtensionsFuture_70_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_68_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_71_vals[] = { { 0, "rrcConnectionResumeRequest-r13" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_68_choice[] = { +static const per_choice_t T_criticalExtensions_71_choice[] = { { 0, &hf_lte_rrc_rrcConnectionResumeRequest_r13_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeRequest_NB_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_68, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_68 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_70, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_70 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_68(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_71(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_lte_rrc_T_criticalExtensions_68, T_criticalExtensions_68_choice, + ett_lte_rrc_T_criticalExtensions_71, T_criticalExtensions_71_choice, NULL); return offset; @@ -87453,7 +105354,7 @@ dissect_lte_rrc_T_criticalExtensions_68(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionResumeRequest_NB_sequence[] = { - { &hf_lte_rrc_criticalExtensions_68, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_68 }, + { &hf_lte_rrc_criticalExtensions_71, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_71 }, { NULL, 0, 0, NULL } }; @@ -87468,11 +105369,111 @@ dissect_lte_rrc_RRCConnectionResumeRequest_NB(tvbuff_t *tvb _U_, int offset _U_, } +static const value_string lte_rrc_T_establishmentCause_r15_01_vals[] = { + { 0, "mo-Data-r15" }, + { 1, "mo-ExceptionData-r15" }, + { 2, "delayTolerantAccess-r15" }, + { 3, "spare1" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_establishmentCause_r15_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 per_sequence_t T_nonCriticalExtension_96_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_96(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_lte_rrc_T_nonCriticalExtension_96, T_nonCriticalExtension_96_sequence); + + return offset; +} + + +static const per_sequence_t RRCEarlyDataRequest_NB_r15_IEs_sequence[] = { + { &hf_lte_rrc_s_TMSI_r15 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_S_TMSI }, + { &hf_lte_rrc_establishmentCause_r15_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_establishmentCause_r15_01 }, + { &hf_lte_rrc_cqi_NPDCCH_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_CQI_NPDCCH_NB_r14 }, + { &hf_lte_rrc_dedicatedInfoNAS_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoNAS }, + { &hf_lte_rrc_nonCriticalExtension_298, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_96 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCEarlyDataRequest_NB_r15_IEs(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_lte_rrc_RRCEarlyDataRequest_NB_r15_IEs, RRCEarlyDataRequest_NB_r15_IEs_sequence); + + return offset; +} + + +static const per_sequence_t T_criticalExtensionsFuture_74_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensionsFuture_74(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_lte_rrc_T_criticalExtensionsFuture_74, T_criticalExtensionsFuture_74_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_criticalExtensions_75_vals[] = { + { 0, "rrcEarlyDataRequest-r15" }, + { 1, "criticalExtensionsFuture" }, + { 0, NULL } +}; + +static const per_choice_t T_criticalExtensions_75_choice[] = { + { 0, &hf_lte_rrc_rrcEarlyDataRequest_r15_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCEarlyDataRequest_NB_r15_IEs }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_74, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_74 }, + { 0, NULL, 0, NULL } +}; + +static int +dissect_lte_rrc_T_criticalExtensions_75(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_lte_rrc_T_criticalExtensions_75, T_criticalExtensions_75_choice, + NULL); + + return offset; +} + + +static const per_sequence_t RRCEarlyDataRequest_NB_r15_sequence[] = { + { &hf_lte_rrc_criticalExtensions_75, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_75 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_RRCEarlyDataRequest_NB_r15(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + col_append_sep_str(actx->pinfo->cinfo, COL_INFO, NULL, "RRCEarlyDataRequest-NB-r15"); + + offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index, + ett_lte_rrc_RRCEarlyDataRequest_NB_r15, RRCEarlyDataRequest_NB_r15_sequence); + + return offset; +} + + static const value_string lte_rrc_T_c1_58_vals[] = { { 0, "rrcConnectionReestablishmentRequest-r13" }, { 1, "rrcConnectionRequest-r13" }, { 2, "rrcConnectionResumeRequest-r13" }, - { 3, "spare1" }, + { 3, "rrcEarlyDataRequest-r15" }, { 0, NULL } }; @@ -87480,7 +105481,7 @@ static const per_choice_t T_c1_58_choice[] = { { 0, &hf_lte_rrc_rrcConnectionReestablishmentRequest_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentRequest_NB }, { 1, &hf_lte_rrc_rrcConnectionRequest_r13, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionRequest_NB }, { 2, &hf_lte_rrc_rrcConnectionResumeRequest_r13_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeRequest_NB }, - { 3, &hf_lte_rrc_spare1 , ASN1_NO_EXTENSIONS , dissect_lte_rrc_NULL }, + { 3, &hf_lte_rrc_rrcEarlyDataRequest_r15_02, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCEarlyDataRequest_NB_r15 }, { 0, NULL, 0, NULL } }; @@ -87530,7 +105531,7 @@ dissect_lte_rrc_UL_CCCH_MessageType_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_c static const per_sequence_t UL_CCCH_Message_NB_sequence[] = { - { &hf_lte_rrc_message_19 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CCCH_MessageType_NB }, + { &hf_lte_rrc_message_20 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_CCCH_MessageType_NB }, { NULL, 0, 0, NULL } }; @@ -87840,14 +105841,14 @@ dissect_lte_rrc_SCPTM_NeighbourCellList_NB_r14(tvbuff_t *tvb _U_, int offset _U_ } -static const per_sequence_t T_nonCriticalExtension_88_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_97_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_88(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_97(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_lte_rrc_T_nonCriticalExtension_88, T_nonCriticalExtension_88_sequence); + ett_lte_rrc_T_nonCriticalExtension_97, T_nonCriticalExtension_97_sequence); return offset; } @@ -87857,7 +105858,7 @@ static const per_sequence_t SCPTMConfiguration_NB_r14_sequence[] = { { &hf_lte_rrc_sc_mtch_InfoList_r14_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MTCH_InfoList_NB_r14 }, { &hf_lte_rrc_scptm_NeighbourCellList_r14_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_SCPTM_NeighbourCellList_NB_r14 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_268, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_88 }, + { &hf_lte_rrc_nonCriticalExtension_299, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_97 }, { NULL, 0, 0, NULL } }; @@ -87928,7 +105929,7 @@ dissect_lte_rrc_SC_MCCH_MessageType_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_c static const per_sequence_t SC_MCCH_Message_NB_sequence[] = { - { &hf_lte_rrc_message_20 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MCCH_MessageType_NB }, + { &hf_lte_rrc_message_21 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_SC_MCCH_MessageType_NB }, { NULL, 0, 0, NULL } }; @@ -87941,14 +105942,14 @@ dissect_lte_rrc_SC_MCCH_Message_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t T_nonCriticalExtension_79_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_86_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_79(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_86(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_lte_rrc_T_nonCriticalExtension_79, T_nonCriticalExtension_79_sequence); + ett_lte_rrc_T_nonCriticalExtension_86, T_nonCriticalExtension_86_sequence); return offset; } @@ -87956,7 +105957,7 @@ dissect_lte_rrc_T_nonCriticalExtension_79(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t RRCConnectionReconfigurationComplete_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_253, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_79 }, + { &hf_lte_rrc_nonCriticalExtension_281, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_86 }, { NULL, 0, 0, NULL } }; @@ -87969,35 +105970,35 @@ dissect_lte_rrc_RRCConnectionReconfigurationComplete_NB_r13_IEs(tvbuff_t *tvb _U } -static const per_sequence_t T_criticalExtensionsFuture_59_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_61_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_61(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_lte_rrc_T_criticalExtensionsFuture_59, T_criticalExtensionsFuture_59_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_61, T_criticalExtensionsFuture_61_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_59_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_62_vals[] = { { 0, "rrcConnectionReconfigurationComplete-r13" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_59_choice[] = { +static const per_choice_t T_criticalExtensions_62_choice[] = { { 0, &hf_lte_rrc_rrcConnectionReconfigurationComplete_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReconfigurationComplete_NB_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_59, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_59 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_61, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_61 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_62(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_lte_rrc_T_criticalExtensions_59, T_criticalExtensions_59_choice, + ett_lte_rrc_T_criticalExtensions_62, T_criticalExtensions_62_choice, NULL); return offset; @@ -88006,7 +106007,7 @@ dissect_lte_rrc_T_criticalExtensions_59(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionReconfigurationComplete_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_59, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_59 }, + { &hf_lte_rrc_criticalExtensions_62, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_62 }, { NULL, 0, 0, NULL } }; @@ -88056,14 +106057,14 @@ dissect_lte_rrc_MeasResultServCell_NB_r14(tvbuff_t *tvb _U_, int offset _U_, asn } -static const per_sequence_t T_nonCriticalExtension_81_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_88_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_81(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_88(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_lte_rrc_T_nonCriticalExtension_81, T_nonCriticalExtension_81_sequence); + ett_lte_rrc_T_nonCriticalExtension_88, T_nonCriticalExtension_88_sequence); return offset; } @@ -88071,7 +106072,7 @@ dissect_lte_rrc_T_nonCriticalExtension_81(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t RRCConnectionReestablishmentComplete_NB_v1470_IEs_sequence[] = { { &hf_lte_rrc_measResultServCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServCell_NB_r14 }, - { &hf_lte_rrc_nonCriticalExtension_257, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_81 }, + { &hf_lte_rrc_nonCriticalExtension_285, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_88 }, { NULL, 0, 0, NULL } }; @@ -88086,7 +106087,7 @@ dissect_lte_rrc_RRCConnectionReestablishmentComplete_NB_v1470_IEs(tvbuff_t *tvb static const per_sequence_t RRCConnectionReestablishmentComplete_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_256, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_NB_v1470_IEs }, + { &hf_lte_rrc_nonCriticalExtension_284, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionReestablishmentComplete_NB_v1470_IEs }, { NULL, 0, 0, NULL } }; @@ -88099,35 +106100,35 @@ dissect_lte_rrc_RRCConnectionReestablishmentComplete_NB_r13_IEs(tvbuff_t *tvb _U } -static const per_sequence_t T_criticalExtensionsFuture_61_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_63_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_61(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_63(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_lte_rrc_T_criticalExtensionsFuture_61, T_criticalExtensionsFuture_61_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_63, T_criticalExtensionsFuture_63_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_61_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_64_vals[] = { { 0, "rrcConnectionReestablishmentComplete-r13" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_61_choice[] = { +static const per_choice_t T_criticalExtensions_64_choice[] = { { 0, &hf_lte_rrc_rrcConnectionReestablishmentComplete_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionReestablishmentComplete_NB_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_61, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_61 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_63, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_63 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_61(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_64(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_lte_rrc_T_criticalExtensions_61, T_criticalExtensions_61_choice, + ett_lte_rrc_T_criticalExtensions_64, T_criticalExtensions_64_choice, NULL); return offset; @@ -88136,7 +106137,7 @@ dissect_lte_rrc_T_criticalExtensions_61(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionReestablishmentComplete_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_61, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_61 }, + { &hf_lte_rrc_criticalExtensions_64, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_64 }, { NULL, 0, 0, NULL } }; @@ -88196,14 +106197,14 @@ dissect_lte_rrc_T_gummei_Type_r14(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t } -static const per_sequence_t T_nonCriticalExtension_87_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_94_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_87(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_94(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_lte_rrc_T_nonCriticalExtension_87, T_nonCriticalExtension_87_sequence); + ett_lte_rrc_T_nonCriticalExtension_94, T_nonCriticalExtension_94_sequence); return offset; } @@ -88211,7 +106212,7 @@ dissect_lte_rrc_T_nonCriticalExtension_87(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t RRCConnectionSetupComplete_NB_v1470_IEs_sequence[] = { { &hf_lte_rrc_measResultServCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServCell_NB_r14 }, - { &hf_lte_rrc_nonCriticalExtension_267, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_87 }, + { &hf_lte_rrc_nonCriticalExtension_296, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_94 }, { NULL, 0, 0, NULL } }; @@ -88227,7 +106228,7 @@ dissect_lte_rrc_RRCConnectionSetupComplete_NB_v1470_IEs(tvbuff_t *tvb _U_, int o static const per_sequence_t RRCConnectionSetupComplete_NB_v1430_IEs_sequence[] = { { &hf_lte_rrc_gummei_Type_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_gummei_Type_r14 }, { &hf_lte_rrc_dcn_ID_r14 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_0_65535 }, - { &hf_lte_rrc_nonCriticalExtension_266, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_NB_v1470_IEs }, + { &hf_lte_rrc_nonCriticalExtension_295, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_NB_v1470_IEs }, { NULL, 0, 0, NULL } }; @@ -88248,7 +106249,7 @@ static const per_sequence_t RRCConnectionSetupComplete_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_attachWithoutPDN_Connectivity_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_attachWithoutPDN_Connectivity_r13_02 }, { &hf_lte_rrc_up_CIoT_EPS_Optimisation_r13_02, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_up_CIoT_EPS_Optimisation_r13_02 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_265, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_NB_v1430_IEs }, + { &hf_lte_rrc_nonCriticalExtension_294, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionSetupComplete_NB_v1430_IEs }, { NULL, 0, 0, NULL } }; @@ -88261,35 +106262,35 @@ dissect_lte_rrc_RRCConnectionSetupComplete_NB_r13_IEs(tvbuff_t *tvb _U_, int off } -static const per_sequence_t T_criticalExtensionsFuture_70_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_72_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_70(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_72(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_lte_rrc_T_criticalExtensionsFuture_70, T_criticalExtensionsFuture_70_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_72, T_criticalExtensionsFuture_72_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_70_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_73_vals[] = { { 0, "rrcConnectionSetupComplete-r13" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_70_choice[] = { +static const per_choice_t T_criticalExtensions_73_choice[] = { { 0, &hf_lte_rrc_rrcConnectionSetupComplete_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionSetupComplete_NB_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_70, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_70 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_72, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_72 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_70(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_73(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_lte_rrc_T_criticalExtensions_70, T_criticalExtensions_70_choice, + ett_lte_rrc_T_criticalExtensions_73, T_criticalExtensions_73_choice, NULL); return offset; @@ -88298,7 +106299,7 @@ dissect_lte_rrc_T_criticalExtensions_70(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionSetupComplete_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_70, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_70 }, + { &hf_lte_rrc_criticalExtensions_73, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_73 }, { NULL, 0, 0, NULL } }; @@ -88356,9 +106357,89 @@ dissect_lte_rrc_UE_RadioPagingInfo_NB_r13_eag_1(tvbuff_t *tvb _U_, int offset _U } +static const value_string lte_rrc_T_mixedOperationMode_r15_01_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mixedOperationMode_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_wakeUpSignal_r15_01_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_wakeUpSignal_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_wakeUpSignalMinGap_eDRX_r15_01_vals[] = { + { 0, "ms40" }, + { 1, "ms240" }, + { 2, "ms1000" }, + { 3, "ms2000" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_wakeUpSignalMinGap_eDRX_r15_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 lte_rrc_T_multiCarrierPagingTDD_r15_vals[] = { + { 0, "true" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_multiCarrierPagingTDD_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t UE_RadioPagingInfo_NB_r13_eag_2_sequence[] = { + { &hf_lte_rrc_mixedOperationMode_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mixedOperationMode_r15_01 }, + { &hf_lte_rrc_wakeUpSignal_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wakeUpSignal_r15_01 }, + { &hf_lte_rrc_wakeUpSignalMinGap_eDRX_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_wakeUpSignalMinGap_eDRX_r15_01 }, + { &hf_lte_rrc_multiCarrierPagingTDD_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_multiCarrierPagingTDD_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_RadioPagingInfo_NB_r13_eag_2(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { + offset = dissect_per_sequence_eag(tvb, offset, actx, tree, UE_RadioPagingInfo_NB_r13_eag_2_sequence); + + return offset; +} + + static const per_sequence_t UE_RadioPagingInfo_NB_r13_sequence[] = { { &hf_lte_rrc_ue_Category_NB_r13_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_Category_NB_r13_01 }, { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_RadioPagingInfo_NB_r13_eag_1 }, + { &dummy_hf_lte_rrc_eag_field, ASN1_NOT_EXTENSION_ROOT, ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_RadioPagingInfo_NB_r13_eag_2 }, { NULL, 0, 0, NULL } }; @@ -88381,14 +106462,14 @@ dissect_lte_rrc_T_ue_Capability_ContainerExt_r14(tvbuff_t *tvb _U_, int offset _ } -static const per_sequence_t T_nonCriticalExtension_92_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_101_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_92(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_101(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_lte_rrc_T_nonCriticalExtension_92, T_nonCriticalExtension_92_sequence); + ett_lte_rrc_T_nonCriticalExtension_101, T_nonCriticalExtension_101_sequence); return offset; } @@ -88396,7 +106477,7 @@ dissect_lte_rrc_T_nonCriticalExtension_92(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t UECapabilityInformation_NB_Ext_r14_IEs_sequence[] = { { &hf_lte_rrc_ue_Capability_ContainerExt_r14, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_ue_Capability_ContainerExt_r14 }, - { &hf_lte_rrc_nonCriticalExtension_276, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_92 }, + { &hf_lte_rrc_nonCriticalExtension_308, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_101 }, { NULL, 0, 0, NULL } }; @@ -88413,7 +106494,7 @@ static const per_sequence_t UECapabilityInformation_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_ue_Capability_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_Capability_NB_r13 }, { &hf_lte_rrc_ue_RadioPagingInfo_r13_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UE_RadioPagingInfo_NB_r13 }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_275, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityInformation_NB_Ext_r14_IEs }, + { &hf_lte_rrc_nonCriticalExtension_307, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UECapabilityInformation_NB_Ext_r14_IEs }, { NULL, 0, 0, NULL } }; @@ -88426,35 +106507,35 @@ dissect_lte_rrc_UECapabilityInformation_NB_r13_IEs(tvbuff_t *tvb _U_, int offset } -static const per_sequence_t T_criticalExtensionsFuture_73_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_77_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_73(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_77(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_lte_rrc_T_criticalExtensionsFuture_73, T_criticalExtensionsFuture_73_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_77, T_criticalExtensionsFuture_77_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_73_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_78_vals[] = { { 0, "ueCapabilityInformation-r13" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_73_choice[] = { +static const per_choice_t T_criticalExtensions_78_choice[] = { { 0, &hf_lte_rrc_ueCapabilityInformation_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_UECapabilityInformation_NB_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_73, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_73 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_77, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_77 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_73(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_78(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_lte_rrc_T_criticalExtensions_73, T_criticalExtensions_73_choice, + ett_lte_rrc_T_criticalExtensions_78, T_criticalExtensions_78_choice, NULL); return offset; @@ -88463,7 +106544,7 @@ dissect_lte_rrc_T_criticalExtensions_73(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t UECapabilityInformation_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_73, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_73 }, + { &hf_lte_rrc_criticalExtensions_78, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_78 }, { NULL, 0, 0, NULL } }; @@ -88478,14 +106559,14 @@ dissect_lte_rrc_UECapabilityInformation_NB(tvbuff_t *tvb _U_, int offset _U_, as } -static const per_sequence_t T_nonCriticalExtension_93_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_102_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_93(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_102(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_lte_rrc_T_nonCriticalExtension_93, T_nonCriticalExtension_93_sequence); + ett_lte_rrc_T_nonCriticalExtension_102, T_nonCriticalExtension_102_sequence); return offset; } @@ -88494,7 +106575,7 @@ dissect_lte_rrc_T_nonCriticalExtension_93(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t ULInformationTransfer_NB_r13_IEs_sequence[] = { { &hf_lte_rrc_dedicatedInfoNAS_r13, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_DedicatedInfoNAS }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_277, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_93 }, + { &hf_lte_rrc_nonCriticalExtension_309, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_102 }, { NULL, 0, 0, NULL } }; @@ -88507,35 +106588,35 @@ dissect_lte_rrc_ULInformationTransfer_NB_r13_IEs(tvbuff_t *tvb _U_, int offset _ } -static const per_sequence_t T_criticalExtensionsFuture_74_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_78_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_74(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_78(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_lte_rrc_T_criticalExtensionsFuture_74, T_criticalExtensionsFuture_74_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_78, T_criticalExtensionsFuture_78_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_74_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_79_vals[] = { { 0, "ulInformationTransfer-r13" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_74_choice[] = { +static const per_choice_t T_criticalExtensions_79_choice[] = { { 0, &hf_lte_rrc_ulInformationTransfer_r13_01, ASN1_NO_EXTENSIONS , dissect_lte_rrc_ULInformationTransfer_NB_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_74, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_74 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_78, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_78 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_74(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_79(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_lte_rrc_T_criticalExtensions_74, T_criticalExtensions_74_choice, + ett_lte_rrc_T_criticalExtensions_79, T_criticalExtensions_79_choice, NULL); return offset; @@ -88543,7 +106624,7 @@ dissect_lte_rrc_T_criticalExtensions_74(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t ULInformationTransfer_NB_sequence[] = { - { &hf_lte_rrc_criticalExtensions_74, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_74 }, + { &hf_lte_rrc_criticalExtensions_79, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_79 }, { NULL, 0, 0, NULL } }; @@ -88558,14 +106639,14 @@ dissect_lte_rrc_ULInformationTransfer_NB(tvbuff_t *tvb _U_, int offset _U_, asn1 } -static const per_sequence_t T_nonCriticalExtension_85_sequence[] = { +static const per_sequence_t T_nonCriticalExtension_92_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_85(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_nonCriticalExtension_92(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_lte_rrc_T_nonCriticalExtension_85, T_nonCriticalExtension_85_sequence); + ett_lte_rrc_T_nonCriticalExtension_92, T_nonCriticalExtension_92_sequence); return offset; } @@ -88573,7 +106654,7 @@ dissect_lte_rrc_T_nonCriticalExtension_85(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t RRCConnectionResumeComplete_NB_v1470_IEs_sequence[] = { { &hf_lte_rrc_measResultServCell_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MeasResultServCell_NB_r14 }, - { &hf_lte_rrc_nonCriticalExtension_263, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_85 }, + { &hf_lte_rrc_nonCriticalExtension_292, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_92 }, { NULL, 0, 0, NULL } }; @@ -88590,7 +106671,7 @@ static const per_sequence_t RRCConnectionResumeComplete_NB_r13_IEs_sequence[] = { &hf_lte_rrc_selectedPLMN_Identity_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_INTEGER_1_maxPLMN_r11 }, { &hf_lte_rrc_dedicatedInfoNAS_r13, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_DedicatedInfoNAS }, { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, - { &hf_lte_rrc_nonCriticalExtension_262, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionResumeComplete_NB_v1470_IEs }, + { &hf_lte_rrc_nonCriticalExtension_291, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_RRCConnectionResumeComplete_NB_v1470_IEs }, { NULL, 0, 0, NULL } }; @@ -88603,35 +106684,35 @@ dissect_lte_rrc_RRCConnectionResumeComplete_NB_r13_IEs(tvbuff_t *tvb _U_, int of } -static const per_sequence_t T_criticalExtensionsFuture_67_sequence[] = { +static const per_sequence_t T_criticalExtensionsFuture_69_sequence[] = { { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensionsFuture_67(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensionsFuture_69(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_lte_rrc_T_criticalExtensionsFuture_67, T_criticalExtensionsFuture_67_sequence); + ett_lte_rrc_T_criticalExtensionsFuture_69, T_criticalExtensionsFuture_69_sequence); return offset; } -static const value_string lte_rrc_T_criticalExtensions_67_vals[] = { +static const value_string lte_rrc_T_criticalExtensions_70_vals[] = { { 0, "rrcConnectionResumeComplete-r13" }, { 1, "criticalExtensionsFuture" }, { 0, NULL } }; -static const per_choice_t T_criticalExtensions_67_choice[] = { +static const per_choice_t T_criticalExtensions_70_choice[] = { { 0, &hf_lte_rrc_rrcConnectionResumeComplete_r13_03, ASN1_NO_EXTENSIONS , dissect_lte_rrc_RRCConnectionResumeComplete_NB_r13_IEs }, - { 1, &hf_lte_rrc_criticalExtensionsFuture_67, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_67 }, + { 1, &hf_lte_rrc_criticalExtensionsFuture_69, ASN1_NO_EXTENSIONS , dissect_lte_rrc_T_criticalExtensionsFuture_69 }, { 0, NULL, 0, NULL } }; static int -dissect_lte_rrc_T_criticalExtensions_67(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_T_criticalExtensions_70(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_lte_rrc_T_criticalExtensions_67, T_criticalExtensions_67_choice, + ett_lte_rrc_T_criticalExtensions_70, T_criticalExtensions_70_choice, NULL); return offset; @@ -88640,7 +106721,7 @@ dissect_lte_rrc_T_criticalExtensions_67(tvbuff_t *tvb _U_, int offset _U_, asn1_ static const per_sequence_t RRCConnectionResumeComplete_NB_sequence[] = { { &hf_lte_rrc_rrc_TransactionIdentifier, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RRC_TransactionIdentifier }, - { &hf_lte_rrc_criticalExtensions_67, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_67 }, + { &hf_lte_rrc_criticalExtensions_70, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_T_criticalExtensions_70 }, { NULL, 0, 0, NULL } }; @@ -88741,7 +106822,7 @@ dissect_lte_rrc_UL_DCCH_MessageType_NB(tvbuff_t *tvb _U_, int offset _U_, asn1_c static const per_sequence_t UL_DCCH_Message_NB_sequence[] = { - { &hf_lte_rrc_message_21 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_DCCH_MessageType_NB }, + { &hf_lte_rrc_message_22 , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_UL_DCCH_MessageType_NB }, { NULL, 0, 0, NULL } }; @@ -88919,14 +107000,262 @@ dissect_lte_rrc_PhyLayerParameters_NB_v1440(tvbuff_t *tvb _U_, int offset _U_, a } -static const per_sequence_t T_nonCriticalExtension_94_sequence[] = { +static const value_string lte_rrc_T_earlyData_UP_r15_01_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_earlyData_UP_r15_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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_rlc_UM_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_rlc_UM_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t RLC_Parameters_NB_r15_sequence[] = { + { &hf_lte_rrc_rlc_UM_r15 , ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_rlc_UM_r15 }, { NULL, 0, 0, NULL } }; static int -dissect_lte_rrc_T_nonCriticalExtension_94(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) { +dissect_lte_rrc_RLC_Parameters_NB_r15(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_lte_rrc_T_nonCriticalExtension_94, T_nonCriticalExtension_94_sequence); + ett_lte_rrc_RLC_Parameters_NB_r15, RLC_Parameters_NB_r15_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_sr_SPS_BSR_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_sr_SPS_BSR_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t MAC_Parameters_NB_v1530_sequence[] = { + { &hf_lte_rrc_sr_SPS_BSR_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sr_SPS_BSR_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_MAC_Parameters_NB_v1530(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_lte_rrc_MAC_Parameters_NB_v1530, MAC_Parameters_NB_v1530_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_mixedOperationMode_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_mixedOperationMode_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_sr_WithHARQ_ACK_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_sr_WithHARQ_ACK_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_sr_WithoutHARQ_ACK_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_sr_WithoutHARQ_ACK_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_nprach_Format2_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_nprach_Format2_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_additionalTransmissionSIB1_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_additionalTransmissionSIB1_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const value_string lte_rrc_T_npusch_3dot75kHz_SCS_TDD_r15_vals[] = { + { 0, "supported" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_npusch_3dot75kHz_SCS_TDD_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t PhyLayerParameters_NB_v1530_sequence[] = { + { &hf_lte_rrc_mixedOperationMode_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_mixedOperationMode_r15 }, + { &hf_lte_rrc_sr_WithHARQ_ACK_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sr_WithHARQ_ACK_r15 }, + { &hf_lte_rrc_sr_WithoutHARQ_ACK_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_sr_WithoutHARQ_ACK_r15 }, + { &hf_lte_rrc_nprach_Format2_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nprach_Format2_r15 }, + { &hf_lte_rrc_additionalTransmissionSIB1_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_additionalTransmissionSIB1_r15 }, + { &hf_lte_rrc_npusch_3dot75kHz_SCS_TDD_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_npusch_3dot75kHz_SCS_TDD_r15 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_PhyLayerParameters_NB_v1530(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_lte_rrc_PhyLayerParameters_NB_v1530, PhyLayerParameters_NB_v1530_sequence); + + return offset; +} + + +static const value_string lte_rrc_T_ue_Category_NB_r15_vals[] = { + { 0, "nb2" }, + { 0, NULL } +}; + + +static int +dissect_lte_rrc_T_ue_Category_NB_r15(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, + 1, NULL, FALSE, 0, NULL); + + return offset; +} + + +static const per_sequence_t TDD_UE_Capability_NB_r15_sequence[] = { + { &hf_lte_rrc_ue_Category_NB_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_T_ue_Category_NB_r15 }, + { &hf_lte_rrc_phyLayerParametersRel13_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_NB_r13 }, + { &hf_lte_rrc_phyLayerParametersRel14_r15, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_NB_v1430 }, + { &hf_lte_rrc_phyLayerParameters_v1530_01, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_NB_v1530 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_TDD_UE_Capability_NB_r15(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_lte_rrc_TDD_UE_Capability_NB_r15, TDD_UE_Capability_NB_r15_sequence); + + return offset; +} + + +static const per_sequence_t T_nonCriticalExtension_103_sequence[] = { + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_T_nonCriticalExtension_103(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_lte_rrc_T_nonCriticalExtension_103, T_nonCriticalExtension_103_sequence); + + return offset; +} + + +static const per_sequence_t UE_Capability_NB_v1530_IEs_sequence[] = { + { &hf_lte_rrc_earlyData_UP_r15_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_earlyData_UP_r15_01 }, + { &hf_lte_rrc_rlc_Parameters_r15, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RLC_Parameters_NB_r15 }, + { &hf_lte_rrc_mac_Parameters_v1530_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_MAC_Parameters_NB_v1530 }, + { &hf_lte_rrc_phyLayerParameters_v1530_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_NB_v1530 }, + { &hf_lte_rrc_tdd_UE_Capability_r15, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_TDD_UE_Capability_NB_r15 }, + { &hf_lte_rrc_nonCriticalExtension_313, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_103 }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_Capability_NB_v1530_IEs(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_lte_rrc_UE_Capability_NB_v1530_IEs, UE_Capability_NB_v1530_IEs_sequence); + + return offset; +} + + +static const per_sequence_t UE_Capability_NB_v14x0_IEs_sequence[] = { + { &hf_lte_rrc_lateNonCriticalExtension_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_OCTET_STRING }, + { &hf_lte_rrc_nonCriticalExtension_312, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_Capability_NB_v1530_IEs }, + { NULL, 0, 0, NULL } +}; + +static int +dissect_lte_rrc_UE_Capability_NB_v14x0_IEs(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_lte_rrc_UE_Capability_NB_v14x0_IEs, UE_Capability_NB_v14x0_IEs_sequence); return offset; } @@ -88934,7 +107263,7 @@ dissect_lte_rrc_T_nonCriticalExtension_94(tvbuff_t *tvb _U_, int offset _U_, asn static const per_sequence_t UE_Capability_NB_v1440_IEs_sequence[] = { { &hf_lte_rrc_phyLayerParameters_v1440, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_NB_v1440 }, - { &hf_lte_rrc_nonCriticalExtension_279, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_T_nonCriticalExtension_94 }, + { &hf_lte_rrc_nonCriticalExtension_311, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_Capability_NB_v14x0_IEs }, { NULL, 0, 0, NULL } }; @@ -88952,7 +107281,7 @@ static const per_sequence_t UE_Capability_NB_Ext_r14_IEs_sequence[] = { { &hf_lte_rrc_mac_Parameters_r14, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_MAC_Parameters_NB_r14 }, { &hf_lte_rrc_phyLayerParameters_v1430_01, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_PhyLayerParameters_NB_v1430 }, { &hf_lte_rrc_rf_Parameters_v1430_01, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_lte_rrc_RF_Parameters_NB_v1430 }, - { &hf_lte_rrc_nonCriticalExtension_278, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_Capability_NB_v1440_IEs }, + { &hf_lte_rrc_nonCriticalExtension_310, ASN1_NO_EXTENSIONS , ASN1_OPTIONAL , dissect_lte_rrc_UE_Capability_NB_v1440_IEs }, { NULL, 0, 0, NULL } }; @@ -89110,6 +107439,14 @@ static int dissect_SC_MCCH_Message_r13_PDU(tvbuff_t *tvb _U_, packet_info *pinfo offset += 7; offset >>= 3; return offset; } +static int dissect_RRCConnectionReconfiguration_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, FALSE, pinfo); + offset = dissect_lte_rrc_RRCConnectionReconfiguration(tvb, offset, &asn1_ctx, tree, hf_lte_rrc_RRCConnectionReconfiguration_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_UECapabilityInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -89206,6 +107543,14 @@ static int dissect_BCCH_BCH_Message_NB_PDU(tvbuff_t *tvb _U_, packet_info *pinfo offset += 7; offset >>= 3; return offset; } +static int dissect_BCCH_BCH_Message_TDD_NB_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, FALSE, pinfo); + offset = dissect_lte_rrc_BCCH_BCH_Message_TDD_NB(tvb, offset, &asn1_ctx, tree, hf_lte_rrc_BCCH_BCH_Message_TDD_NB_PDU); + offset += 7; offset >>= 3; + return offset; +} static int dissect_BCCH_DL_SCH_Message_NB_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) { int offset = 0; asn1_ctx_t asn1_ctx; @@ -89473,7 +107818,7 @@ static int dissect_UE_RadioPagingInfo_NB_r13_PDU(tvbuff_t *tvb _U_, packet_info /*--- End of included file: packet-lte-rrc-fn.c ---*/ -#line 3132 "./asn1/lte-rrc/packet-lte-rrc-template.c" +#line 3134 "./asn1/lte-rrc/packet-lte-rrc-template.c" static int dissect_lte_rrc_DL_CCCH(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree, void* data _U_) @@ -89908,6 +108253,10 @@ void proto_register_lte_rrc(void) { { "SC-MCCH-Message-r13", "lte-rrc.SC_MCCH_Message_r13_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_RRCConnectionReconfiguration_PDU, + { "RRCConnectionReconfiguration", "lte-rrc.RRCConnectionReconfiguration_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_UECapabilityInformation_PDU, { "UECapabilityInformation", "lte-rrc.UECapabilityInformation_element", FT_NONE, BASE_NONE, NULL, 0, @@ -89956,6 +108305,10 @@ void proto_register_lte_rrc(void) { { "BCCH-BCH-Message-NB", "lte-rrc.BCCH_BCH_Message_NB_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_BCCH_BCH_Message_TDD_NB_PDU, + { "BCCH-BCH-Message-TDD-NB", "lte-rrc.BCCH_BCH_Message_TDD_NB_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_BCCH_DL_SCH_Message_NB_PDU, { "BCCH-DL-SCH-Message-NB", "lte-rrc.BCCH_DL_SCH_Message_NB_element", FT_NONE, BASE_NONE, NULL, 0, @@ -90397,6 +108750,18 @@ void proto_register_lte_rrc(void) { FT_UINT32, BASE_DEC, VALS(lte_rrc_MeasGapConfigPerCC_List_r14_vals), 0, "MeasGapConfigPerCC_List_r14", HFILL }}, { &hf_lte_rrc_nonCriticalExtension_15, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "SCG_ConfigInfo_v1530_IEs", HFILL }}, + { &hf_lte_rrc_drb_ToAddModListSCG_r15, + { "drb-ToAddModListSCG-r15", "lte-rrc.drb_ToAddModListSCG_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "DRB_InfoListSCG_r15", HFILL }}, + { &hf_lte_rrc_drb_ToReleaseListSCG_r15, + { "drb-ToReleaseListSCG-r15", "lte-rrc.drb_ToReleaseListSCG_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "DRB_ToReleaseList_r15", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_16, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_nonCriticalExtension_04", HFILL }}, @@ -90404,6 +108769,10 @@ void proto_register_lte_rrc(void) { { "DRB-InfoSCG-r12", "lte-rrc.DRB_InfoSCG_r12_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_DRB_InfoListSCG_r15_item, + { "DRB-InfoSCG-r12", "lte-rrc.DRB_InfoSCG_r12_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_eps_BearerIdentity_r12, { "eps-BearerIdentity-r12", "lte-rrc.eps_BearerIdentity_r12", FT_UINT32, BASE_DEC, NULL, 0, @@ -90536,7 +108905,7 @@ void proto_register_lte_rrc(void) { { "mpdcch-NumRepetition-r13", "lte-rrc.mpdcch_NumRepetition_r13", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_1_256", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_16, + { &hf_lte_rrc_nonCriticalExtension_17, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_nonCriticalExtension_05", HFILL }}, @@ -90560,7 +108929,7 @@ void proto_register_lte_rrc(void) { { "ue-RadioAccessCapabilityInfo", "lte-rrc.ue_RadioAccessCapabilityInfo", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_17, + { &hf_lte_rrc_nonCriticalExtension_18, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_nonCriticalExtension_06", HFILL }}, @@ -90584,7 +108953,7 @@ void proto_register_lte_rrc(void) { { "ue-RadioPagingInfo-r12", "lte-rrc.ue_RadioPagingInfo_r12", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_18, + { &hf_lte_rrc_nonCriticalExtension_19, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UERadioPagingInformation_v1310_IEs", HFILL }}, @@ -90596,7 +108965,7 @@ void proto_register_lte_rrc(void) { { "FreqBandIndicator-r11", "lte-rrc.FreqBandIndicator_r11", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_19, + { &hf_lte_rrc_nonCriticalExtension_20, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_nonCriticalExtension_07", HFILL }}, @@ -90728,8 +109097,8 @@ void proto_register_lte_rrc(void) { { "sidelinkUEInformation-r12", "lte-rrc.sidelinkUEInformation_r12", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_sourceContextENDC_r15, - { "sourceContextENDC-r15", "lte-rrc.sourceContextENDC_r15", + { &hf_lte_rrc_sourceContextEN_DC_r15, + { "sourceContextEN-DC-r15", "lte-rrc.sourceContextEN_DC_r15", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_lte_rrc_wlanConnectionStatusReport_r13, @@ -90941,9 +109310,21 @@ void proto_register_lte_rrc(void) { FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_lte_rrc_messageClassExtension_05, - { "messageClassExtension", "lte-rrc.messageClassExtension_element", - FT_NONE, BASE_NONE, NULL, 0, + { "messageClassExtension", "lte-rrc.messageClassExtension", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_messageClassExtension_05_vals), 0, "T_messageClassExtension_05", HFILL }}, + { &hf_lte_rrc_c2_01, + { "c2", "lte-rrc.c2", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c2_01_vals), 0, + "T_c2_01", HFILL }}, + { &hf_lte_rrc_rrcEarlyDataComplete_r15, + { "rrcEarlyDataComplete-r15", "lte-rrc.rrcEarlyDataComplete_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_messageClassExtensionFuture_r15, + { "messageClassExtensionFuture-r15", "lte-rrc.messageClassExtensionFuture_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_message_08, { "message", "lte-rrc.message", FT_UINT32, BASE_DEC, VALS(lte_rrc_DL_DCCH_MessageType_vals), 0, @@ -91028,18 +109409,30 @@ void proto_register_lte_rrc(void) { { "messageClassExtension", "lte-rrc.messageClassExtension", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_messageClassExtension_07_vals), 0, "T_messageClassExtension_07", HFILL }}, - { &hf_lte_rrc_c2_01, + { &hf_lte_rrc_c2_02, { "c2", "lte-rrc.c2", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c2_01_vals), 0, - "T_c2_01", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c2_02_vals), 0, + "T_c2_02", HFILL }}, { &hf_lte_rrc_rrcConnectionResumeRequest_r13, { "rrcConnectionResumeRequest-r13", "lte-rrc.rrcConnectionResumeRequest_r13_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, { &hf_lte_rrc_messageClassExtensionFuture_r13, - { "messageClassExtensionFuture-r13", "lte-rrc.messageClassExtensionFuture_r13_element", + { "messageClassExtensionFuture-r13", "lte-rrc.messageClassExtensionFuture_r13", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_messageClassExtensionFuture_r13_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_c3, + { "c3", "lte-rrc.c3", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c3_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_rrcEarlyDataRequest_r15, + { "rrcEarlyDataRequest-r15", "lte-rrc.rrcEarlyDataRequest_r15_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_messageClassExtensionFuture_r15_01, + { "messageClassExtensionFuture-r15", "lte-rrc.messageClassExtensionFuture_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_messageClassExtensionFuture_r15_01", HFILL }}, { &hf_lte_rrc_message_10, { "message", "lte-rrc.message", FT_UINT32, BASE_DEC, VALS(lte_rrc_UL_DCCH_MessageType_vals), 0, @@ -91116,10 +109509,10 @@ void proto_register_lte_rrc(void) { { "messageClassExtension", "lte-rrc.messageClassExtension", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_messageClassExtension_08_vals), 0, "T_messageClassExtension_08", HFILL }}, - { &hf_lte_rrc_c2_02, + { &hf_lte_rrc_c2_03, { "c2", "lte-rrc.c2", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c2_02_vals), 0, - "T_c2_02", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c2_03_vals), 0, + "T_c2_03", HFILL }}, { &hf_lte_rrc_ueAssistanceInformation_r11, { "ueAssistanceInformation-r11", "lte-rrc.ueAssistanceInformation_r11_element", FT_NONE, BASE_NONE, NULL, 0, @@ -91156,6 +109549,14 @@ void proto_register_lte_rrc(void) { { "scgFailureInformationNR-r15", "lte-rrc.scgFailureInformationNR_r15_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_measReportAppLayer_r15, + { "measReportAppLayer-r15", "lte-rrc.measReportAppLayer_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_failureInformation_r15, + { "failureInformation-r15", "lte-rrc.failureInformation_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_messageClassExtensionFuture_r11, { "messageClassExtensionFuture-r11", "lte-rrc.messageClassExtensionFuture_r11_element", FT_NONE, BASE_NONE, NULL, 0, @@ -91176,10 +109577,10 @@ void proto_register_lte_rrc(void) { { "messageClassExtension", "lte-rrc.messageClassExtension", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_messageClassExtension_09_vals), 0, "T_messageClassExtension_09", HFILL }}, - { &hf_lte_rrc_c2_03, + { &hf_lte_rrc_c2_04, { "c2", "lte-rrc.c2", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c2_03_vals), 0, - "T_c2_03", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c2_04_vals), 0, + "T_c2_04", HFILL }}, { &hf_lte_rrc_scptmConfiguration_BR_r14, { "scptmConfiguration-BR-r14", "lte-rrc.scptmConfiguration_BR_r14_element", FT_NONE, BASE_NONE, NULL, 0, @@ -91216,11 +109617,19 @@ void proto_register_lte_rrc(void) { { "drb-CountMSB-InfoList", "lte-rrc.drb_CountMSB_InfoList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_20, + { &hf_lte_rrc_nonCriticalExtension_21, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "CounterCheck_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_21, + { &hf_lte_rrc_nonCriticalExtension_22, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "CounterCheck_v1530_IEs", HFILL }}, + { &hf_lte_rrc_drb_CountMSB_InfoListExt_r15, + { "drb-CountMSB-InfoListExt-r15", "lte-rrc.drb_CountMSB_InfoListExt_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_23, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_nonCriticalExtension_08", HFILL }}, @@ -91228,6 +109637,10 @@ void proto_register_lte_rrc(void) { { "DRB-CountMSB-Info", "lte-rrc.DRB_CountMSB_Info_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_DRB_CountMSB_InfoListExt_r15_item, + { "DRB-CountMSB-Info", "lte-rrc.DRB_CountMSB_Info_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_drb_Identity, { "drb-Identity", "lte-rrc.drb_Identity", FT_UINT32, BASE_DEC, NULL, 0, @@ -91256,11 +109669,19 @@ void proto_register_lte_rrc(void) { { "drb-CountInfoList", "lte-rrc.drb_CountInfoList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_22, + { &hf_lte_rrc_nonCriticalExtension_24, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "CounterCheckResponse_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_23, + { &hf_lte_rrc_nonCriticalExtension_25, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "CounterCheckResponse_v1530_IEs", HFILL }}, + { &hf_lte_rrc_drb_CountInfoListExt_r15, + { "drb-CountInfoListExt-r15", "lte-rrc.drb_CountInfoListExt_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_26, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_nonCriticalExtension_09", HFILL }}, @@ -91268,6 +109689,10 @@ void proto_register_lte_rrc(void) { { "DRB-CountInfo", "lte-rrc.DRB_CountInfo_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_DRB_CountInfoListExt_r15_item, + { "DRB-CountInfo", "lte-rrc.DRB_CountInfo_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_count_Uplink, { "count-Uplink", "lte-rrc.count_Uplink", FT_UINT32, BASE_DEC, NULL, 0, @@ -91288,11 +109713,11 @@ void proto_register_lte_rrc(void) { { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, "T_criticalExtensionsFuture_09", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_24, + { &hf_lte_rrc_nonCriticalExtension_27, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "CSFBParametersRequestCDMA2000_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_25, + { &hf_lte_rrc_nonCriticalExtension_28, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_nonCriticalExtension_10", HFILL }}, @@ -91316,11 +109741,11 @@ void proto_register_lte_rrc(void) { { "mobilityParameters", "lte-rrc.mobilityParameters", FT_BYTES, BASE_NONE, NULL, 0, "MobilityParametersCDMA2000", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_26, + { &hf_lte_rrc_nonCriticalExtension_29, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "CSFBParametersResponseCDMA2000_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_27, + { &hf_lte_rrc_nonCriticalExtension_30, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_nonCriticalExtension_11", HFILL }}, @@ -91336,6 +109761,10 @@ void proto_register_lte_rrc(void) { { "dlInformationTransfer-r8", "lte-rrc.dlInformationTransfer_r8_element", FT_NONE, BASE_NONE, NULL, 0, "DLInformationTransfer_r8_IEs", HFILL }}, + { &hf_lte_rrc_dlInformationTransfer_r15, + { "dlInformationTransfer-r15", "lte-rrc.dlInformationTransfer_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "DLInformationTransfer_r15_IEs", HFILL }}, { &hf_lte_rrc_criticalExtensionsFuture_11, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, @@ -91356,14 +109785,62 @@ void proto_register_lte_rrc(void) { { "dedicatedInfoCDMA2000-HRPD", "lte-rrc.dedicatedInfoCDMA2000_HRPD", FT_BYTES, BASE_NONE, NULL, 0, "DedicatedInfoCDMA2000", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_28, + { &hf_lte_rrc_nonCriticalExtension_31, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "DLInformationTransfer_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_29, + { &hf_lte_rrc_nonCriticalExtension_32, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_nonCriticalExtension_12", HFILL }}, + { &hf_lte_rrc_dedicatedInfoType_r15, + { "dedicatedInfoType-r15", "lte-rrc.dedicatedInfoType_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dedicatedInfoType_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dedicatedInfoNAS_r15, + { "dedicatedInfoNAS-r15", "lte-rrc.dedicatedInfoNAS_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "DedicatedInfoNAS", HFILL }}, + { &hf_lte_rrc_dedicatedInfoCDMA2000_1XRTT_r15, + { "dedicatedInfoCDMA2000-1XRTT-r15", "lte-rrc.dedicatedInfoCDMA2000_1XRTT_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "DedicatedInfoCDMA2000", HFILL }}, + { &hf_lte_rrc_dedicatedInfoCDMA2000_HRPD_r15, + { "dedicatedInfoCDMA2000-HRPD-r15", "lte-rrc.dedicatedInfoCDMA2000_HRPD_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "DedicatedInfoCDMA2000", HFILL }}, + { &hf_lte_rrc_timeReferenceInfo_r15, + { "timeReferenceInfo-r15", "lte-rrc.timeReferenceInfo_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_failedLogicalChannelInfo_r15, + { "failedLogicalChannelInfo-r15", "lte-rrc.failedLogicalChannelInfo_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_33, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_13", HFILL }}, + { &hf_lte_rrc_failedLogicalChannelIdentity_r15, + { "failedLogicalChannelIdentity-r15", "lte-rrc.failedLogicalChannelIdentity_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellGroupIndication_r15, + { "cellGroupIndication-r15", "lte-rrc.cellGroupIndication_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cellGroupIndication_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_logicalChannelIdentity_r15, + { "logicalChannelIdentity-r15", "lte-rrc.logicalChannelIdentity_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_10", HFILL }}, + { &hf_lte_rrc_logicalChannelIdentityExt_r15, + { "logicalChannelIdentityExt-r15", "lte-rrc.logicalChannelIdentityExt_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_32_38", HFILL }}, + { &hf_lte_rrc_failureType, + { "failureType", "lte-rrc.failureType", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_failureType_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_criticalExtensions_12, { "criticalExtensions", "lte-rrc.criticalExtensions", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_12_vals), 0, @@ -91384,11 +109861,11 @@ void proto_register_lte_rrc(void) { { "cdma2000-Type", "lte-rrc.cdma2000_Type", FT_UINT32, BASE_DEC, VALS(lte_rrc_CDMA2000_Type_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_30, + { &hf_lte_rrc_nonCriticalExtension_34, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "HandoverFromEUTRAPreparationRequest_v890_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_31, + { &hf_lte_rrc_nonCriticalExtension_35, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "HandoverFromEUTRAPreparationRequest_v920_IEs", HFILL }}, @@ -91396,7 +109873,7 @@ void proto_register_lte_rrc(void) { { "concurrPrepCDMA2000-HRPD-r9", "lte-rrc.concurrPrepCDMA2000_HRPD_r9", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_32, + { &hf_lte_rrc_nonCriticalExtension_36, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "HandoverFromEUTRAPreparationRequest_v1020_IEs", HFILL }}, @@ -91408,10 +109885,10 @@ void proto_register_lte_rrc(void) { { "redirectCarrierCDMA2000-1XRTT-r10", "lte-rrc.redirectCarrierCDMA2000_1XRTT_r10_element", FT_NONE, BASE_NONE, NULL, 0, "CarrierFreqCDMA2000", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_33, + { &hf_lte_rrc_nonCriticalExtension_37, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_13", HFILL }}, + "T_nonCriticalExtension_14", HFILL }}, { &hf_lte_rrc_criticalExtensions_13, { "criticalExtensions", "lte-rrc.criticalExtensions", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_13_vals), 0, @@ -91436,7 +109913,7 @@ void proto_register_lte_rrc(void) { { "tdm-AssistanceInfo-r11", "lte-rrc.tdm_AssistanceInfo_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_TDM_AssistanceInfo_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_34, + { &hf_lte_rrc_nonCriticalExtension_38, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "InDeviceCoexIndication_v11d0_IEs", HFILL }}, @@ -91452,7 +109929,7 @@ void proto_register_lte_rrc(void) { { "victimSystemType-r11", "lte-rrc.victimSystemType_r11_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_35, + { &hf_lte_rrc_nonCriticalExtension_39, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "InDeviceCoexIndication_v1310_IEs", HFILL }}, @@ -91464,7 +109941,7 @@ void proto_register_lte_rrc(void) { { "affectedCarrierFreqCombList-r13", "lte-rrc.affectedCarrierFreqCombList_r13", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_36, + { &hf_lte_rrc_nonCriticalExtension_40, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "InDeviceCoexIndication_v1360_IEs", HFILL }}, @@ -91472,10 +109949,18 @@ void proto_register_lte_rrc(void) { { "hardwareSharingProblem-r13", "lte-rrc.hardwareSharingProblem_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_hardwareSharingProblem_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_37, + { &hf_lte_rrc_nonCriticalExtension_41, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_14", HFILL }}, + "InDeviceCoexIndication_v1530_IEs", HFILL }}, + { &hf_lte_rrc_mrdc_AssistanceInfo_r15, + { "mrdc-AssistanceInfo-r15", "lte-rrc.mrdc_AssistanceInfo_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_42, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_15", HFILL }}, { &hf_lte_rrc_AffectedCarrierFreqList_r11_item, { "AffectedCarrierFreq-r11", "lte-rrc.AffectedCarrierFreq_r11_element", FT_NONE, BASE_NONE, NULL, 0, @@ -91580,6 +110065,42 @@ void proto_register_lte_rrc(void) { { "bluetooth-r11", "lte-rrc.bluetooth_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_bluetooth_r11_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_affectedCarrierFreqCombInfoListMRDC_r15, + { "affectedCarrierFreqCombInfoListMRDC-r15", "lte-rrc.affectedCarrierFreqCombInfoListMRDC_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxCombIDC_r11_OF_AffectedCarrierFreqCombInfoMRDC_r15", HFILL }}, + { &hf_lte_rrc_affectedCarrierFreqCombInfoListMRDC_r15_item, + { "AffectedCarrierFreqCombInfoMRDC-r15", "lte-rrc.AffectedCarrierFreqCombInfoMRDC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_victimSystemType_r15, + { "victimSystemType-r15", "lte-rrc.victimSystemType_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "VictimSystemType_r11", HFILL }}, + { &hf_lte_rrc_interferenceDirectionMRDC_r15, + { "interferenceDirectionMRDC-r15", "lte-rrc.interferenceDirectionMRDC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_interferenceDirectionMRDC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_affectedCarrierFreqCombMRDC_r15, + { "affectedCarrierFreqCombMRDC-r15", "lte-rrc.affectedCarrierFreqCombMRDC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_affectedCarrierFreqCombEUTRA_r15, + { "affectedCarrierFreqCombEUTRA-r15", "lte-rrc.affectedCarrierFreqCombEUTRA_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "AffectedCarrierFreqComb_r15", HFILL }}, + { &hf_lte_rrc_affectedCarrierFreqCombNR_r15, + { "affectedCarrierFreqCombNR-r15", "lte-rrc.affectedCarrierFreqCombNR_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_AffectedCarrierFreqComb_r15_item, + { "MeasObjectId-r13", "lte-rrc.MeasObjectId_r13", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_AffectedCarrierFreqCombNR_r15_item, + { "ARFCN-ValueNR-r15", "lte-rrc.ARFCN_ValueNR_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_criticalExtensions_14, { "criticalExtensions", "lte-rrc.criticalExtensions", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_14_vals), 0, @@ -91612,10 +110133,10 @@ void proto_register_lte_rrc(void) { { "stop", "lte-rrc.stop_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_38, + { &hf_lte_rrc_nonCriticalExtension_43, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_15", HFILL }}, + "T_nonCriticalExtension_16", HFILL }}, { &hf_lte_rrc_RSTD_InterFreqInfoList_r10_item, { "RSTD-InterFreqInfo-r10", "lte-rrc.RSTD_InterFreqInfo_r10_element", FT_NONE, BASE_NONE, NULL, 0, @@ -91632,6 +110153,94 @@ void proto_register_lte_rrc(void) { { "carrierFreq-v1090", "lte-rrc.carrierFreq_v1090", FT_UINT32, BASE_DEC, NULL, 0, "ARFCN_ValueEUTRA_v9e0", HFILL }}, + { &hf_lte_rrc_measPRS_Offset_r15, + { "measPRS-Offset-r15", "lte-rrc.measPRS_Offset_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_measPRS_Offset_r15_vals), 0, + "T_measPRS_Offset_r15", HFILL }}, + { &hf_lte_rrc_rstd0_r15, + { "rstd0-r15", "lte-rrc.rstd0_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_79", HFILL }}, + { &hf_lte_rrc_rstd1_r15, + { "rstd1-r15", "lte-rrc.rstd1_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_159", HFILL }}, + { &hf_lte_rrc_rstd2_r15, + { "rstd2-r15", "lte-rrc.rstd2_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_319", HFILL }}, + { &hf_lte_rrc_rstd3_r15, + { "rstd3-r15", "lte-rrc.rstd3_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_639", HFILL }}, + { &hf_lte_rrc_rstd4_r15, + { "rstd4-r15", "lte-rrc.rstd4_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1279", HFILL }}, + { &hf_lte_rrc_rstd5_r15, + { "rstd5-r15", "lte-rrc.rstd5_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_159", HFILL }}, + { &hf_lte_rrc_rstd6_r15, + { "rstd6-r15", "lte-rrc.rstd6_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_319", HFILL }}, + { &hf_lte_rrc_rstd7_r15, + { "rstd7-r15", "lte-rrc.rstd7_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_639", HFILL }}, + { &hf_lte_rrc_rstd8_r15, + { "rstd8-r15", "lte-rrc.rstd8_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1279", HFILL }}, + { &hf_lte_rrc_rstd9_r15, + { "rstd9-r15", "lte-rrc.rstd9_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_319", HFILL }}, + { &hf_lte_rrc_rstd10_r15, + { "rstd10-r15", "lte-rrc.rstd10_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_639", HFILL }}, + { &hf_lte_rrc_rstd11_r15, + { "rstd11-r15", "lte-rrc.rstd11_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1279", HFILL }}, + { &hf_lte_rrc_rstd12_r15, + { "rstd12-r15", "lte-rrc.rstd12_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_319", HFILL }}, + { &hf_lte_rrc_rstd13_r15, + { "rstd13-r15", "lte-rrc.rstd13_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_639", HFILL }}, + { &hf_lte_rrc_rstd14_r15, + { "rstd14-r15", "lte-rrc.rstd14_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1279", HFILL }}, + { &hf_lte_rrc_rstd15_r15, + { "rstd15-r15", "lte-rrc.rstd15_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_639", HFILL }}, + { &hf_lte_rrc_rstd16_r15, + { "rstd16-r15", "lte-rrc.rstd16_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1279", HFILL }}, + { &hf_lte_rrc_rstd17_r15, + { "rstd17-r15", "lte-rrc.rstd17_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_639", HFILL }}, + { &hf_lte_rrc_rstd18_r15, + { "rstd18-r15", "lte-rrc.rstd18_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1279", HFILL }}, + { &hf_lte_rrc_rstd19_r15, + { "rstd19-r15", "lte-rrc.rstd19_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_639", HFILL }}, + { &hf_lte_rrc_rstd20_r15, + { "rstd20-r15", "lte-rrc.rstd20_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1279", HFILL }}, { &hf_lte_rrc_criticalExtensions_15, { "criticalExtensions", "lte-rrc.criticalExtensions", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_15_vals), 0, @@ -91676,7 +110285,7 @@ void proto_register_lte_rrc(void) { { "loggingInterval-r10", "lte-rrc.loggingInterval_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_LoggingInterval_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_39, + { &hf_lte_rrc_nonCriticalExtension_44, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "LoggedMeasurementConfiguration_v1080_IEs", HFILL }}, @@ -91684,7 +110293,7 @@ void proto_register_lte_rrc(void) { { "lateNonCriticalExtension-r10", "lte-rrc.lateNonCriticalExtension_r10", FT_BYTES, BASE_NONE, NULL, 0, "OCTET_STRING", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_40, + { &hf_lte_rrc_nonCriticalExtension_45, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "LoggedMeasurementConfiguration_v1130_IEs", HFILL }}, @@ -91696,7 +110305,7 @@ void proto_register_lte_rrc(void) { { "areaConfiguration-v1130", "lte-rrc.areaConfiguration_v1130_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_41, + { &hf_lte_rrc_nonCriticalExtension_46, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "LoggedMeasurementConfiguration_v1250_IEs", HFILL }}, @@ -91704,10 +110313,22 @@ void proto_register_lte_rrc(void) { { "targetMBSFN-AreaList-r12", "lte-rrc.targetMBSFN_AreaList_r12", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_42, + { &hf_lte_rrc_nonCriticalExtension_47, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_16", HFILL }}, + "LoggedMeasurementConfiguration_v1530_IEs", HFILL }}, + { &hf_lte_rrc_bt_NameList_r15, + { "bt-NameList-r15", "lte-rrc.bt_NameList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_wlan_NameList_r15, + { "wlan-NameList-r15", "lte-rrc.wlan_NameList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_48, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_17", HFILL }}, { &hf_lte_rrc_TargetMBSFN_AreaList_r12_item, { "TargetMBSFN-Area-r12", "lte-rrc.TargetMBSFN_Area_r12_element", FT_NONE, BASE_NONE, NULL, 0, @@ -91736,10 +110357,14 @@ void proto_register_lte_rrc(void) { { "schedulingInfoSIB1-BR-r13", "lte-rrc.schedulingInfoSIB1_BR_r13", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_schedulingInfoSIB1_BR_r13_vals_ext, 0, "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_systemInfoUnchanged_BR_r15, + { "systemInfoUnchanged-BR-r15", "lte-rrc.systemInfoUnchanged_BR_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, { &hf_lte_rrc_spare_01, { "spare", "lte-rrc.spare", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_5", HFILL }}, + "BIT_STRING_SIZE_4", HFILL }}, { &hf_lte_rrc_dl_Bandwidth_MBMS_r14, { "dl-Bandwidth-MBMS-r14", "lte-rrc.dl_Bandwidth_MBMS_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dl_Bandwidth_MBMS_r14_vals), 0, @@ -91760,10 +110385,10 @@ void proto_register_lte_rrc(void) { { "countingRequestList-r10", "lte-rrc.countingRequestList_r10", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_43, + { &hf_lte_rrc_nonCriticalExtension_49, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_17", HFILL }}, + "T_nonCriticalExtension_18", HFILL }}, { &hf_lte_rrc_CountingRequestList_r10_item, { "CountingRequestInfo-r10", "lte-rrc.CountingRequestInfo_r10_element", FT_NONE, BASE_NONE, NULL, 0, @@ -91796,10 +110421,10 @@ void proto_register_lte_rrc(void) { { "countingResponseList-r10", "lte-rrc.countingResponseList_r10", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_44, + { &hf_lte_rrc_nonCriticalExtension_50, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_18", HFILL }}, + "T_nonCriticalExtension_19", HFILL }}, { &hf_lte_rrc_CountingResponseList_r10_item, { "CountingResponseInfo-r10", "lte-rrc.CountingResponseInfo_r10_element", FT_NONE, BASE_NONE, NULL, 0, @@ -91832,7 +110457,7 @@ void proto_register_lte_rrc(void) { { "mbms-Priority-r11", "lte-rrc.mbms_Priority_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mbms_Priority_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_45, + { &hf_lte_rrc_nonCriticalExtension_51, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "MBMSInterestIndication_v1310_IEs", HFILL }}, @@ -91840,10 +110465,10 @@ void proto_register_lte_rrc(void) { { "mbms-Services-r13", "lte-rrc.mbms_Services_r13", FT_UINT32, BASE_DEC, NULL, 0, "MBMS_ServiceList_r13", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_46, + { &hf_lte_rrc_nonCriticalExtension_52, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_19", HFILL }}, + "T_nonCriticalExtension_20", HFILL }}, { &hf_lte_rrc_commonSF_Alloc_r9, { "commonSF-Alloc-r9", "lte-rrc.commonSF_Alloc_r9", FT_UINT32, BASE_DEC, NULL, 0, @@ -91856,11 +110481,11 @@ void proto_register_lte_rrc(void) { { "pmch-InfoList-r9", "lte-rrc.pmch_InfoList_r9", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_47, + { &hf_lte_rrc_nonCriticalExtension_53, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "MBSFNAreaConfiguration_v930_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_48, + { &hf_lte_rrc_nonCriticalExtension_54, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "MBSFNAreaConfiguration_v1250_IEs", HFILL }}, @@ -91868,7 +110493,7 @@ void proto_register_lte_rrc(void) { { "pmch-InfoListExt-r12", "lte-rrc.pmch_InfoListExt_r12", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_49, + { &hf_lte_rrc_nonCriticalExtension_55, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "MBSFNAreaConfiguration_v1430_IEs", HFILL }}, @@ -91876,10 +110501,10 @@ void proto_register_lte_rrc(void) { { "commonSF-Alloc-r14", "lte-rrc.commonSF_Alloc_r14", FT_UINT32, BASE_DEC, NULL, 0, "CommonSF_AllocPatternList_r14", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_50, + { &hf_lte_rrc_nonCriticalExtension_56, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_20", HFILL }}, + "T_nonCriticalExtension_21", HFILL }}, { &hf_lte_rrc_CommonSF_AllocPatternList_r9_item, { "MBSFN-SubframeConfig", "lte-rrc.MBSFN_SubframeConfig_element", FT_NONE, BASE_NONE, NULL, 0, @@ -91892,6 +110517,30 @@ void proto_register_lte_rrc(void) { { "criticalExtensions", "lte-rrc.criticalExtensions", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_18_vals), 0, "T_criticalExtensions_18", HFILL }}, + { &hf_lte_rrc_measReportAppLayer_r15_01, + { "measReportAppLayer-r15", "lte-rrc.measReportAppLayer_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "MeasReportAppLayer_r15_IEs", HFILL }}, + { &hf_lte_rrc_criticalExtensionsFuture_18, + { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_criticalExtensionsFuture_18", HFILL }}, + { &hf_lte_rrc_measReportAppLayerContainer_r15, + { "measReportAppLayerContainer-r15", "lte-rrc.measReportAppLayerContainer_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_1_8000", HFILL }}, + { &hf_lte_rrc_serviceType, + { "serviceType", "lte-rrc.serviceType", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_serviceType_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_57, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_22", HFILL }}, + { &hf_lte_rrc_criticalExtensions_19, + { "criticalExtensions", "lte-rrc.criticalExtensions", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_19_vals), 0, + "T_criticalExtensions_19", HFILL }}, { &hf_lte_rrc_c1_25, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_25_vals), 0, @@ -91900,26 +110549,26 @@ void proto_register_lte_rrc(void) { { "measurementReport-r8", "lte-rrc.measurementReport_r8_element", FT_NONE, BASE_NONE, NULL, 0, "MeasurementReport_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_18, + { &hf_lte_rrc_criticalExtensionsFuture_19, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_18", HFILL }}, + "T_criticalExtensionsFuture_19", HFILL }}, { &hf_lte_rrc_measResults, { "measResults", "lte-rrc.measResults_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_51, + { &hf_lte_rrc_nonCriticalExtension_58, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "MeasurementReport_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_52, + { &hf_lte_rrc_nonCriticalExtension_59, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_21", HFILL }}, - { &hf_lte_rrc_criticalExtensions_19, + "T_nonCriticalExtension_23", HFILL }}, + { &hf_lte_rrc_criticalExtensions_20, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_19_vals), 0, - "T_criticalExtensions_19", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_20_vals), 0, + "T_criticalExtensions_20", HFILL }}, { &hf_lte_rrc_c1_26, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_26_vals), 0, @@ -91932,10 +110581,10 @@ void proto_register_lte_rrc(void) { { "mobilityFromEUTRACommand-r9", "lte-rrc.mobilityFromEUTRACommand_r9_element", FT_NONE, BASE_NONE, NULL, 0, "MobilityFromEUTRACommand_r9_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_19, + { &hf_lte_rrc_criticalExtensionsFuture_20, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_19", HFILL }}, + "T_criticalExtensionsFuture_20", HFILL }}, { &hf_lte_rrc_cs_FallbackIndicator, { "cs-FallbackIndicator", "lte-rrc.cs_FallbackIndicator", FT_BOOLEAN, BASE_NONE, NULL, 0, @@ -91952,11 +110601,11 @@ void proto_register_lte_rrc(void) { { "cellChangeOrder", "lte-rrc.cellChangeOrder_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_53, + { &hf_lte_rrc_nonCriticalExtension_60, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "MobilityFromEUTRACommand_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_54, + { &hf_lte_rrc_nonCriticalExtension_61, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "MobilityFromEUTRACommand_v8d0_IEs", HFILL }}, @@ -91964,10 +110613,10 @@ void proto_register_lte_rrc(void) { { "bandIndicator", "lte-rrc.bandIndicator", FT_UINT32, BASE_DEC, VALS(lte_rrc_BandIndicatorGERAN_vals), 0, "BandIndicatorGERAN", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_55, + { &hf_lte_rrc_nonCriticalExtension_62, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_22", HFILL }}, + "T_nonCriticalExtension_24", HFILL }}, { &hf_lte_rrc_purpose_01, { "purpose", "lte-rrc.purpose", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_purpose_01_vals), 0, @@ -91976,18 +110625,26 @@ void proto_register_lte_rrc(void) { { "e-CSFB-r9", "lte-rrc.e_CSFB_r9_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_56, + { &hf_lte_rrc_nonCriticalExtension_63, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "MobilityFromEUTRACommand_v930_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_57, + { &hf_lte_rrc_nonCriticalExtension_64, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "MobilityFromEUTRACommand_v960_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_58, + { &hf_lte_rrc_nonCriticalExtension_65, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_23", HFILL }}, + "MobilityFromEUTRACommand_v1530_IEs", HFILL }}, + { &hf_lte_rrc_smtc_r15, + { "smtc-r15", "lte-rrc.smtc_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "MTC_SSB_NR_r15", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_66, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_25", HFILL }}, { &hf_lte_rrc_targetRAT_Type, { "targetRAT-Type", "lte-rrc.targetRAT_Type", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_targetRAT_Type_vals), 0, @@ -92064,11 +110721,11 @@ void proto_register_lte_rrc(void) { { "etws-Indication", "lte-rrc.etws_Indication", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_etws_Indication_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_59, + { &hf_lte_rrc_nonCriticalExtension_67, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "Paging_v890_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_60, + { &hf_lte_rrc_nonCriticalExtension_68, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "Paging_v920_IEs", HFILL }}, @@ -92076,7 +110733,7 @@ void proto_register_lte_rrc(void) { { "cmas-Indication-r9", "lte-rrc.cmas_Indication_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cmas_Indication_r9_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_61, + { &hf_lte_rrc_nonCriticalExtension_69, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "Paging_v1130_IEs", HFILL }}, @@ -92084,7 +110741,7 @@ void proto_register_lte_rrc(void) { { "eab-ParamModification-r11", "lte-rrc.eab_ParamModification_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_eab_ParamModification_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_62, + { &hf_lte_rrc_nonCriticalExtension_70, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "Paging_v1310_IEs", HFILL }}, @@ -92096,10 +110753,18 @@ void proto_register_lte_rrc(void) { { "systemInfoModification-eDRX-r13", "lte-rrc.systemInfoModification_eDRX_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_systemInfoModification_eDRX_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_63, + { &hf_lte_rrc_nonCriticalExtension_71, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_24", HFILL }}, + "Paging_v1530_IEs", HFILL }}, + { &hf_lte_rrc_accessType, + { "accessType", "lte-rrc.accessType", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_accessType_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_72, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_26", HFILL }}, { &hf_lte_rrc_PagingRecordList_item, { "PagingRecord", "lte-rrc.PagingRecord_element", FT_NONE, BASE_NONE, NULL, 0, @@ -92120,14 +110785,22 @@ void proto_register_lte_rrc(void) { { "imsi", "lte-rrc.imsi", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_ng_5G_S_TMSI_r15, + { "ng-5G-S-TMSI-r15", "lte-rrc.ng_5G_S_TMSI_r15", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_i_RNTI_r15, + { "i-RNTI-r15", "lte-rrc.i_RNTI_r15", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_IMSI_item, { "IMSI-Digit", "lte-rrc.IMSI_Digit", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_criticalExtensions_20, + { &hf_lte_rrc_criticalExtensions_21, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_20_vals), 0, - "T_criticalExtensions_20", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_21_vals), 0, + "T_criticalExtensions_21", HFILL }}, { &hf_lte_rrc_c1_27, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_27_vals), 0, @@ -92136,10 +110809,10 @@ void proto_register_lte_rrc(void) { { "proximityIndication-r9", "lte-rrc.proximityIndication_r9_element", FT_NONE, BASE_NONE, NULL, 0, "ProximityIndication_r9_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_20, + { &hf_lte_rrc_criticalExtensionsFuture_21, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_20", HFILL }}, + "T_criticalExtensionsFuture_21", HFILL }}, { &hf_lte_rrc_type_r9, { "type-r9", "lte-rrc.type_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_type_r9_vals), 0, @@ -92160,18 +110833,18 @@ void proto_register_lte_rrc(void) { { "eutra2-v9e0", "lte-rrc.eutra2_v9e0", FT_UINT32, BASE_DEC, NULL, 0, "ARFCN_ValueEUTRA_v9e0", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_64, + { &hf_lte_rrc_nonCriticalExtension_73, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "ProximityIndication_v930_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_65, + { &hf_lte_rrc_nonCriticalExtension_74, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_25", HFILL }}, - { &hf_lte_rrc_criticalExtensions_21, + "T_nonCriticalExtension_27", HFILL }}, + { &hf_lte_rrc_criticalExtensions_22, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_21_vals), 0, - "T_criticalExtensions_21", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_22_vals), 0, + "T_criticalExtensions_22", HFILL }}, { &hf_lte_rrc_c1_28, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_28_vals), 0, @@ -92180,10 +110853,10 @@ void proto_register_lte_rrc(void) { { "rnReconfiguration-r10", "lte-rrc.rnReconfiguration_r10_element", FT_NONE, BASE_NONE, NULL, 0, "RNReconfiguration_r10_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_21, + { &hf_lte_rrc_criticalExtensionsFuture_22, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_21", HFILL }}, + "T_criticalExtensionsFuture_22", HFILL }}, { &hf_lte_rrc_rn_SystemInfo_r10, { "rn-SystemInfo-r10", "lte-rrc.rn_SystemInfo_r10_element", FT_NONE, BASE_NONE, NULL, 0, @@ -92192,10 +110865,10 @@ void proto_register_lte_rrc(void) { { "rn-SubframeConfig-r10", "lte-rrc.rn_SubframeConfig_r10_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_66, + { &hf_lte_rrc_nonCriticalExtension_75, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_26", HFILL }}, + "T_nonCriticalExtension_28", HFILL }}, { &hf_lte_rrc_systemInformationBlockType1_r10, { "systemInformationBlockType1-r10", "lte-rrc.systemInformationBlockType1_r10", FT_BYTES, BASE_NONE, NULL, 0, @@ -92204,10 +110877,10 @@ void proto_register_lte_rrc(void) { { "systemInformationBlockType2-r10", "lte-rrc.systemInformationBlockType2_r10_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType2", HFILL }}, - { &hf_lte_rrc_criticalExtensions_22, + { &hf_lte_rrc_criticalExtensions_23, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_22_vals), 0, - "T_criticalExtensions_22", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_23_vals), 0, + "T_criticalExtensions_23", HFILL }}, { &hf_lte_rrc_c1_29, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_29_vals), 0, @@ -92216,18 +110889,18 @@ void proto_register_lte_rrc(void) { { "rnReconfigurationComplete-r10", "lte-rrc.rnReconfigurationComplete_r10_element", FT_NONE, BASE_NONE, NULL, 0, "RNReconfigurationComplete_r10_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_22, + { &hf_lte_rrc_criticalExtensionsFuture_23, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_22", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_67, + "T_criticalExtensionsFuture_23", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_76, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_27", HFILL }}, - { &hf_lte_rrc_criticalExtensions_23, + "T_nonCriticalExtension_29", HFILL }}, + { &hf_lte_rrc_criticalExtensions_24, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_23_vals), 0, - "T_criticalExtensions_23", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_24_vals), 0, + "T_criticalExtensions_24", HFILL }}, { &hf_lte_rrc_c1_30, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_30_vals), 0, @@ -92236,10 +110909,10 @@ void proto_register_lte_rrc(void) { { "rrcConnectionReconfiguration-r8", "lte-rrc.rrcConnectionReconfiguration_r8_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_23, + { &hf_lte_rrc_criticalExtensionsFuture_24, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_23", HFILL }}, + "T_criticalExtensionsFuture_24", HFILL }}, { &hf_lte_rrc_measConfig, { "measConfig", "lte-rrc.measConfig_element", FT_NONE, BASE_NONE, NULL, 0, @@ -92264,7 +110937,7 @@ void proto_register_lte_rrc(void) { { "securityConfigHO", "lte-rrc.securityConfigHO_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_68, + { &hf_lte_rrc_nonCriticalExtension_77, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v890_IEs", HFILL }}, @@ -92272,15 +110945,15 @@ void proto_register_lte_rrc(void) { { "lateNonCriticalExtension", "lte-rrc.lateNonCriticalExtension", FT_BYTES, BASE_NONE, NULL, 0, "T_lateNonCriticalExtension_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_69, + { &hf_lte_rrc_nonCriticalExtension_78, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v920_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_70, + { &hf_lte_rrc_nonCriticalExtension_79, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v10i0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_71, + { &hf_lte_rrc_nonCriticalExtension_80, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v10l0_IEs", HFILL }}, @@ -92292,7 +110965,7 @@ void proto_register_lte_rrc(void) { { "sCellToAddModList-v10l0", "lte-rrc.sCellToAddModList_v10l0", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_72, + { &hf_lte_rrc_nonCriticalExtension_81, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v12f0_IEs", HFILL }}, @@ -92300,7 +110973,7 @@ void proto_register_lte_rrc(void) { { "scg-Configuration-v12f0", "lte-rrc.scg_Configuration_v12f0", FT_UINT32, BASE_DEC, VALS(lte_rrc_SCG_Configuration_v12f0_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_73, + { &hf_lte_rrc_nonCriticalExtension_82, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v1370_IEs", HFILL }}, @@ -92312,10 +110985,10 @@ void proto_register_lte_rrc(void) { { "sCellToAddModListExt-v1370", "lte-rrc.sCellToAddModListExt_v1370", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_74, + { &hf_lte_rrc_nonCriticalExtension_83, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_28", HFILL }}, + "T_nonCriticalExtension_30", HFILL }}, { &hf_lte_rrc_otherConfig_r9, { "otherConfig-r9", "lte-rrc.otherConfig_r9_element", FT_NONE, BASE_NONE, NULL, 0, @@ -92324,7 +110997,7 @@ void proto_register_lte_rrc(void) { { "fullConfig-r9", "lte-rrc.fullConfig_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_fullConfig_r9_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_75, + { &hf_lte_rrc_nonCriticalExtension_84, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v1020_IEs", HFILL }}, @@ -92336,7 +111009,7 @@ void proto_register_lte_rrc(void) { { "sCellToAddModList-r10", "lte-rrc.sCellToAddModList_r10", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_76, + { &hf_lte_rrc_nonCriticalExtension_85, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v1130_IEs", HFILL }}, @@ -92344,7 +111017,7 @@ void proto_register_lte_rrc(void) { { "systemInformationBlockType1Dedicated-r11", "lte-rrc.systemInformationBlockType1Dedicated_r11", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_77, + { &hf_lte_rrc_nonCriticalExtension_86, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v1250_IEs", HFILL }}, @@ -92384,7 +111057,7 @@ void proto_register_lte_rrc(void) { { "sl-CommConfig-r12", "lte-rrc.sl_CommConfig_r12_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_78, + { &hf_lte_rrc_nonCriticalExtension_87, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v1310_IEs", HFILL }}, @@ -92408,7 +111081,7 @@ void proto_register_lte_rrc(void) { { "rclwi-Configuration-r13", "lte-rrc.rclwi_Configuration_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_RCLWI_Configuration_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_79, + { &hf_lte_rrc_nonCriticalExtension_88, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v1430_IEs", HFILL }}, @@ -92428,7 +111101,7 @@ void proto_register_lte_rrc(void) { { "systemInformationBlockType2Dedicated-r14", "lte-rrc.systemInformationBlockType2Dedicated_r14", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_80, + { &hf_lte_rrc_nonCriticalExtension_89, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_v1510_IEs", HFILL }}, @@ -92480,10 +111153,38 @@ void proto_register_lte_rrc(void) { { "harq-Offset-r15", "lte-rrc.harq_Offset_r15", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_9", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_81, + { &hf_lte_rrc_nonCriticalExtension_90, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_29", HFILL }}, + "RRCConnectionReconfiguration_v1530_IEs", HFILL }}, + { &hf_lte_rrc_securityConfigHO_v1530, + { "securityConfigHO-v1530", "lte-rrc.securityConfigHO_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sCellGroupToReleaseList_r15, + { "sCellGroupToReleaseList-r15", "lte-rrc.sCellGroupToReleaseList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sCellGroupToAddModList_r15, + { "sCellGroupToAddModList-r15", "lte-rrc.sCellGroupToAddModList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_dedicatedInfoNASList_r15, + { "dedicatedInfoNASList-r15", "lte-rrc.dedicatedInfoNASList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxDRB_r15_OF_DedicatedInfoNAS", HFILL }}, + { &hf_lte_rrc_dedicatedInfoNASList_r15_item, + { "DedicatedInfoNAS", "lte-rrc.DedicatedInfoNAS", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_p_MaxUE_FR1_r15, + { "p-MaxUE-FR1-r15", "lte-rrc.p_MaxUE_FR1_r15", + FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0, + "P_Max", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_91, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_31", HFILL }}, { &hf_lte_rrc_networkControlledSyncTx_r12, { "networkControlledSyncTx-r12", "lte-rrc.networkControlledSyncTx_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_networkControlledSyncTx_r12_vals), 0, @@ -92548,6 +111249,10 @@ void proto_register_lte_rrc(void) { { "SCellToAddModExt-v1430", "lte-rrc.SCellToAddModExt_v1430_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_SCellGroupToAddModList_r15_item, + { "SCellGroupToAddMod-r15", "lte-rrc.SCellGroupToAddMod_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_sCellIndex_r10, { "sCellIndex-r10", "lte-rrc.sCellIndex_r10", FT_UINT32, BASE_DEC, NULL, 0, @@ -92572,6 +111277,10 @@ void proto_register_lte_rrc(void) { { "srs-SwitchFromServCellIndex-r14", "lte-rrc.srs_SwitchFromServCellIndex_r14", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_sCellState_r15, + { "sCellState-r15", "lte-rrc.sCellState_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sCellState_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_radioResourceConfigCommonSCell_v10l0, { "radioResourceConfigCommonSCell-v10l0", "lte-rrc.radioResourceConfigCommonSCell_v10l0_element", FT_NONE, BASE_NONE, NULL, 0, @@ -92604,6 +111313,26 @@ void proto_register_lte_rrc(void) { { "radioResourceConfigCommonSCell-v1370", "lte-rrc.radioResourceConfigCommonSCell_v1370_element", FT_NONE, BASE_NONE, NULL, 0, "RadioResourceConfigCommonSCell_v10l0", HFILL }}, + { &hf_lte_rrc_sCellState_r15_01, + { "sCellState-r15", "lte-rrc.sCellState_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sCellState_r15_01_vals), 0, + "T_sCellState_r15_01", HFILL }}, + { &hf_lte_rrc_sCellGroupIndex_r15, + { "sCellGroupIndex-r15", "lte-rrc.sCellGroupIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sCellConfigCommon_r15, + { "sCellConfigCommon-r15", "lte-rrc.sCellConfigCommon_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sCellToReleaseList_r15, + { "sCellToReleaseList-r15", "lte-rrc.sCellToReleaseList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SCellToReleaseListExt_r13", HFILL }}, + { &hf_lte_rrc_sCellToAddModList_r15, + { "sCellToAddModList-r15", "lte-rrc.sCellToAddModList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SCellToAddModListExt_r13", HFILL }}, { &hf_lte_rrc_SCellToReleaseList_r10_item, { "SCellIndex-r10", "lte-rrc.SCellIndex_r10", FT_UINT32, BASE_DEC, NULL, 0, @@ -92612,6 +111341,22 @@ void proto_register_lte_rrc(void) { { "SCellIndex-r13", "lte-rrc.SCellIndex_r13", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_SCellGroupToReleaseList_r15_item, + { "SCellGroupIndex-r15", "lte-rrc.SCellGroupIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_radioResourceConfigCommonSCell_r15, + { "radioResourceConfigCommonSCell-r15", "lte-rrc.radioResourceConfigCommonSCell_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RadioResourceConfigCommonSCell_r10", HFILL }}, + { &hf_lte_rrc_radioResourceConfigDedicatedSCell_r15, + { "radioResourceConfigDedicatedSCell-r15", "lte-rrc.radioResourceConfigDedicatedSCell_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RadioResourceConfigDedicatedSCell_r10", HFILL }}, + { &hf_lte_rrc_antennaInfoDedicatedSCell_r15, + { "antennaInfoDedicatedSCell-r15", "lte-rrc.antennaInfoDedicatedSCell_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "AntennaInfoDedicated_v10i0", HFILL }}, { &hf_lte_rrc_setup_03, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, @@ -92664,6 +111409,14 @@ void proto_register_lte_rrc(void) { { "pSCellToAddMod-v1440", "lte-rrc.pSCellToAddMod_v1440_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_sCellGroupToReleaseListSCG_r15, + { "sCellGroupToReleaseListSCG-r15", "lte-rrc.sCellGroupToReleaseListSCG_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SCellGroupToReleaseList_r15", HFILL }}, + { &hf_lte_rrc_sCellGroupToAddModListSCG_r15, + { "sCellGroupToAddModListSCG-r15", "lte-rrc.sCellGroupToAddModListSCG_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SCellGroupToAddModList_r15", HFILL }}, { &hf_lte_rrc_pSCellToAddMod_v12f0, { "pSCellToAddMod-v12f0", "lte-rrc.pSCellToAddMod_v12f0_element", FT_NONE, BASE_NONE, NULL, 0, @@ -92700,23 +111453,55 @@ void proto_register_lte_rrc(void) { { "nas-SecurityParamToEUTRA", "lte-rrc.nas_SecurityParamToEUTRA", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_criticalExtensions_24, + { &hf_lte_rrc_handoverType_v1530, + { "handoverType-v1530", "lte-rrc.handoverType_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_handoverType_v1530_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_intra5GC_r15, + { "intra5GC-r15", "lte-rrc.intra5GC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_securityAlgorithmConfig_r15, + { "securityAlgorithmConfig-r15", "lte-rrc.securityAlgorithmConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SecurityAlgorithmConfig", HFILL }}, + { &hf_lte_rrc_keyChangeIndicator_r15, + { "keyChangeIndicator-r15", "lte-rrc.keyChangeIndicator_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_nextHopChainingCount_r15, + { "nextHopChainingCount-r15", "lte-rrc.nextHopChainingCount_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "NextHopChainingCount", HFILL }}, + { &hf_lte_rrc_nas_Container_r15, + { "nas-Container-r15", "lte-rrc.nas_Container_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, + { &hf_lte_rrc_ngc_ToEPC_r15, + { "ngc-ToEPC-r15", "lte-rrc.ngc_ToEPC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_epc_ToNGC_r15, + { "epc-ToNGC-r15", "lte-rrc.epc_ToNGC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_criticalExtensions_25, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_24_vals), 0, - "T_criticalExtensions_24", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_25_vals), 0, + "T_criticalExtensions_25", HFILL }}, { &hf_lte_rrc_rrcConnectionReconfigurationComplete_r8, { "rrcConnectionReconfigurationComplete-r8", "lte-rrc.rrcConnectionReconfigurationComplete_r8_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfigurationComplete_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_24, + { &hf_lte_rrc_criticalExtensionsFuture_25, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_24", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_82, + "T_criticalExtensionsFuture_25", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_92, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfigurationComplete_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_83, + { &hf_lte_rrc_nonCriticalExtension_93, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfigurationComplete_v1020_IEs", HFILL }}, @@ -92728,7 +111513,7 @@ void proto_register_lte_rrc(void) { { "logMeasAvailable-r10", "lte-rrc.logMeasAvailable_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailable_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_84, + { &hf_lte_rrc_nonCriticalExtension_94, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfigurationComplete_v1130_IEs", HFILL }}, @@ -92736,7 +111521,7 @@ void proto_register_lte_rrc(void) { { "connEstFailInfoAvailable-r11", "lte-rrc.connEstFailInfoAvailable_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_connEstFailInfoAvailable_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_85, + { &hf_lte_rrc_nonCriticalExtension_95, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfigurationComplete_v1250_IEs", HFILL }}, @@ -92744,7 +111529,7 @@ void proto_register_lte_rrc(void) { { "logMeasAvailableMBSFN-r12", "lte-rrc.logMeasAvailableMBSFN_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableMBSFN_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_86, + { &hf_lte_rrc_nonCriticalExtension_96, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfigurationComplete_v1430_IEs", HFILL }}, @@ -92760,7 +111545,7 @@ void proto_register_lte_rrc(void) { { "numFreqEffectiveReduced-r14", "lte-rrc.numFreqEffectiveReduced_r14", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_1_12", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_87, + { &hf_lte_rrc_nonCriticalExtension_97, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfigurationComplete_v1510_IEs", HFILL }}, @@ -92768,14 +111553,30 @@ void proto_register_lte_rrc(void) { { "scg-ConfigResponseNR-r15", "lte-rrc.scg_ConfigResponseNR_r15", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_88, + { &hf_lte_rrc_nonCriticalExtension_98, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_30", HFILL }}, - { &hf_lte_rrc_criticalExtensions_25, + "RRCConnectionReconfigurationComplete_v1530_IEs", HFILL }}, + { &hf_lte_rrc_logMeasAvailableBT_r15, + { "logMeasAvailableBT-r15", "lte-rrc.logMeasAvailableBT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableBT_r15_vals), 0, + "T_logMeasAvailableBT_r15", HFILL }}, + { &hf_lte_rrc_logMeasAvailableWLAN_r15, + { "logMeasAvailableWLAN-r15", "lte-rrc.logMeasAvailableWLAN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableWLAN_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_flightPathInfoAvailable_r15, + { "flightPathInfoAvailable-r15", "lte-rrc.flightPathInfoAvailable_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_flightPathInfoAvailable_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_99, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_32", HFILL }}, + { &hf_lte_rrc_criticalExtensions_26, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_25_vals), 0, - "T_criticalExtensions_25", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_26_vals), 0, + "T_criticalExtensions_26", HFILL }}, { &hf_lte_rrc_c1_31, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_31_vals), 0, @@ -92784,31 +111585,31 @@ void proto_register_lte_rrc(void) { { "rrcConnectionReestablishment-r8", "lte-rrc.rrcConnectionReestablishment_r8_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishment_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_25, + { &hf_lte_rrc_criticalExtensionsFuture_26, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_25", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_89, + "T_criticalExtensionsFuture_26", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_100, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishment_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_90, + { &hf_lte_rrc_nonCriticalExtension_101, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_31", HFILL }}, - { &hf_lte_rrc_criticalExtensions_26, + "T_nonCriticalExtension_33", HFILL }}, + { &hf_lte_rrc_criticalExtensions_27, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_26_vals), 0, - "T_criticalExtensions_26", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_27_vals), 0, + "T_criticalExtensions_27", HFILL }}, { &hf_lte_rrc_rrcConnectionReestablishmentComplete_r8, { "rrcConnectionReestablishmentComplete-r8", "lte-rrc.rrcConnectionReestablishmentComplete_r8_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentComplete_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_26, + { &hf_lte_rrc_criticalExtensionsFuture_27, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_26", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_91, + "T_criticalExtensionsFuture_27", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_102, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentComplete_v920_IEs", HFILL }}, @@ -92816,11 +111617,11 @@ void proto_register_lte_rrc(void) { { "rlf-InfoAvailable-r9", "lte-rrc.rlf_InfoAvailable_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rlf_InfoAvailable_r9_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_92, + { &hf_lte_rrc_nonCriticalExtension_103, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentComplete_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_93, + { &hf_lte_rrc_nonCriticalExtension_104, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentComplete_v1020_IEs", HFILL }}, @@ -92828,7 +111629,7 @@ void proto_register_lte_rrc(void) { { "logMeasAvailable-r10", "lte-rrc.logMeasAvailable_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailable_r10_01_vals), 0, "T_logMeasAvailable_r10_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_94, + { &hf_lte_rrc_nonCriticalExtension_105, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentComplete_v1130_IEs", HFILL }}, @@ -92836,7 +111637,7 @@ void proto_register_lte_rrc(void) { { "connEstFailInfoAvailable-r11", "lte-rrc.connEstFailInfoAvailable_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_connEstFailInfoAvailable_r11_01_vals), 0, "T_connEstFailInfoAvailable_r11_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_95, + { &hf_lte_rrc_nonCriticalExtension_106, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentComplete_v1250_IEs", HFILL }}, @@ -92844,42 +111645,58 @@ void proto_register_lte_rrc(void) { { "logMeasAvailableMBSFN-r12", "lte-rrc.logMeasAvailableMBSFN_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableMBSFN_r12_01_vals), 0, "T_logMeasAvailableMBSFN_r12_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_96, + { &hf_lte_rrc_nonCriticalExtension_107, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_32", HFILL }}, - { &hf_lte_rrc_criticalExtensions_27, + "RRCConnectionReestablishmentComplete_v1530_IEs", HFILL }}, + { &hf_lte_rrc_logMeasAvailableBT_r15_01, + { "logMeasAvailableBT-r15", "lte-rrc.logMeasAvailableBT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableBT_r15_01_vals), 0, + "T_logMeasAvailableBT_r15_01", HFILL }}, + { &hf_lte_rrc_logMeasAvailableWLAN_r15_01, + { "logMeasAvailableWLAN-r15", "lte-rrc.logMeasAvailableWLAN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableWLAN_r15_01_vals), 0, + "T_logMeasAvailableWLAN_r15_01", HFILL }}, + { &hf_lte_rrc_flightPathInfoAvailable_r15_01, + { "flightPathInfoAvailable-r15", "lte-rrc.flightPathInfoAvailable_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_flightPathInfoAvailable_r15_01_vals), 0, + "T_flightPathInfoAvailable_r15_01", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_108, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_34", HFILL }}, + { &hf_lte_rrc_criticalExtensions_28, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_27_vals), 0, - "T_criticalExtensions_27", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_28_vals), 0, + "T_criticalExtensions_28", HFILL }}, { &hf_lte_rrc_rrcConnectionReestablishmentReject_r8, { "rrcConnectionReestablishmentReject-r8", "lte-rrc.rrcConnectionReestablishmentReject_r8_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentReject_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_27, + { &hf_lte_rrc_criticalExtensionsFuture_28, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_27", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_97, + "T_criticalExtensionsFuture_28", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_109, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentReject_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_98, + { &hf_lte_rrc_nonCriticalExtension_110, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_33", HFILL }}, - { &hf_lte_rrc_criticalExtensions_28, + "T_nonCriticalExtension_35", HFILL }}, + { &hf_lte_rrc_criticalExtensions_29, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_28_vals), 0, - "T_criticalExtensions_28", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_29_vals), 0, + "T_criticalExtensions_29", HFILL }}, { &hf_lte_rrc_rrcConnectionReestablishmentRequest_r8, { "rrcConnectionReestablishmentRequest-r8", "lte-rrc.rrcConnectionReestablishmentRequest_r8_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentRequest_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_28, + { &hf_lte_rrc_criticalExtensionsFuture_29, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_28", HFILL }}, + "T_criticalExtensionsFuture_29", HFILL }}, { &hf_lte_rrc_ue_Identity_01, { "ue-Identity", "lte-rrc.ue_Identity_element", FT_NONE, BASE_NONE, NULL, 0, @@ -92900,10 +111717,10 @@ void proto_register_lte_rrc(void) { { "physCellId", "lte-rrc.physCellId", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_criticalExtensions_29, + { &hf_lte_rrc_criticalExtensions_30, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_29_vals), 0, - "T_criticalExtensions_29", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_30_vals), 0, + "T_criticalExtensions_30", HFILL }}, { &hf_lte_rrc_c1_32, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_32_vals), 0, @@ -92912,19 +111729,19 @@ void proto_register_lte_rrc(void) { { "rrcConnectionReject-r8", "lte-rrc.rrcConnectionReject_r8_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReject_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_29, + { &hf_lte_rrc_criticalExtensionsFuture_30, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_29", HFILL }}, + "T_criticalExtensionsFuture_30", HFILL }}, { &hf_lte_rrc_waitTime, { "waitTime", "lte-rrc.waitTime", FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0, "INTEGER_1_16", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_99, + { &hf_lte_rrc_nonCriticalExtension_111, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReject_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_100, + { &hf_lte_rrc_nonCriticalExtension_112, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReject_v1020_IEs", HFILL }}, @@ -92932,7 +111749,7 @@ void proto_register_lte_rrc(void) { { "extendedWaitTime-r10", "lte-rrc.extendedWaitTime_r10", FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0, "INTEGER_1_1800", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_101, + { &hf_lte_rrc_nonCriticalExtension_113, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReject_v1130_IEs", HFILL }}, @@ -92948,7 +111765,7 @@ void proto_register_lte_rrc(void) { { "deprioritisationTimer-r11", "lte-rrc.deprioritisationTimer_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deprioritisationTimer_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_102, + { &hf_lte_rrc_nonCriticalExtension_114, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReject_v1320_IEs", HFILL }}, @@ -92956,14 +111773,14 @@ void proto_register_lte_rrc(void) { { "rrc-SuspendIndication-r13", "lte-rrc.rrc_SuspendIndication_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rrc_SuspendIndication_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_103, + { &hf_lte_rrc_nonCriticalExtension_115, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_34", HFILL }}, - { &hf_lte_rrc_criticalExtensions_30, + "T_nonCriticalExtension_36", HFILL }}, + { &hf_lte_rrc_criticalExtensions_31, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_30_vals), 0, - "T_criticalExtensions_30", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_31_vals), 0, + "T_criticalExtensions_31", HFILL }}, { &hf_lte_rrc_c1_33, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_33_vals), 0, @@ -92972,10 +111789,10 @@ void proto_register_lte_rrc(void) { { "rrcConnectionRelease-r8", "lte-rrc.rrcConnectionRelease_r8_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionRelease_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_30, + { &hf_lte_rrc_criticalExtensionsFuture_31, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_30", HFILL }}, + "T_criticalExtensionsFuture_31", HFILL }}, { &hf_lte_rrc_releaseCause, { "releaseCause", "lte-rrc.releaseCause", FT_UINT32, BASE_DEC, VALS(lte_rrc_ReleaseCause_vals), 0, @@ -92988,7 +111805,7 @@ void proto_register_lte_rrc(void) { { "idleModeMobilityControlInfo", "lte-rrc.idleModeMobilityControlInfo_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_104, + { &hf_lte_rrc_nonCriticalExtension_116, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionRelease_v890_IEs", HFILL }}, @@ -92996,7 +111813,7 @@ void proto_register_lte_rrc(void) { { "lateNonCriticalExtension", "lte-rrc.lateNonCriticalExtension", FT_BYTES, BASE_NONE, NULL, 0, "T_lateNonCriticalExtension_02", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_105, + { &hf_lte_rrc_nonCriticalExtension_117, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionRelease_v920_IEs", HFILL }}, @@ -93008,10 +111825,10 @@ void proto_register_lte_rrc(void) { { "idleModeMobilityControlInfo-v9e0", "lte-rrc.idleModeMobilityControlInfo_v9e0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_106, + { &hf_lte_rrc_nonCriticalExtension_118, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_35", HFILL }}, + "T_nonCriticalExtension_37", HFILL }}, { &hf_lte_rrc_cellInfoList_r9, { "cellInfoList-r9", "lte-rrc.cellInfoList_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cellInfoList_r9_vals), 0, @@ -93032,11 +111849,11 @@ void proto_register_lte_rrc(void) { { "utra-TDD-r10", "lte-rrc.utra_TDD_r10", FT_UINT32, BASE_DEC, NULL, 0, "CellInfoListUTRA_TDD_r10", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_107, + { &hf_lte_rrc_nonCriticalExtension_119, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionRelease_v1020_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_108, + { &hf_lte_rrc_nonCriticalExtension_120, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionRelease_v1320_IEs", HFILL }}, @@ -93044,10 +111861,30 @@ void proto_register_lte_rrc(void) { { "resumeIdentity-r13", "lte-rrc.resumeIdentity_r13", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_109, + { &hf_lte_rrc_nonCriticalExtension_121, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_36", HFILL }}, + "RRCConnectionRelease_v1530_IEs", HFILL }}, + { &hf_lte_rrc_drb_ContinueROHC_r15, + { "drb-ContinueROHC-r15", "lte-rrc.drb_ContinueROHC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_drb_ContinueROHC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_measIdleConfig_r15, + { "measIdleConfig-r15", "lte-rrc.measIdleConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "MeasIdleConfigDedicated_r15", HFILL }}, + { &hf_lte_rrc_rrc_InactiveConfig_r15, + { "rrc-InactiveConfig-r15", "lte-rrc.rrc_InactiveConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cn_Type_r15, + { "cn-Type-r15", "lte-rrc.cn_Type_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cn_Type_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_122, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_38", HFILL }}, { &hf_lte_rrc_eutra, { "eutra", "lte-rrc.eutra", FT_UINT32, BASE_DEC, NULL, 0, @@ -93076,10 +111913,86 @@ void proto_register_lte_rrc(void) { { "utra-TDD-r10", "lte-rrc.utra_TDD_r10", FT_UINT32, BASE_DEC, NULL, 0, "CarrierFreqListUTRA_TDD_r10", HFILL }}, + { &hf_lte_rrc_nr_r15, + { "nr-r15", "lte-rrc.nr_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "CarrierInfoNR_r15", HFILL }}, { &hf_lte_rrc_eutra_v9e0, { "eutra-v9e0", "lte-rrc.eutra_v9e0", FT_UINT32, BASE_DEC, NULL, 0, "ARFCN_ValueEUTRA_v9e0", HFILL }}, + { &hf_lte_rrc_fullI_RNTI_r15, + { "fullI-RNTI-r15", "lte-rrc.fullI_RNTI_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "I_RNTI_r15", HFILL }}, + { &hf_lte_rrc_shortI_RNTI_r15, + { "shortI-RNTI-r15", "lte-rrc.shortI_RNTI_r15", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ran_PagingCycle_r15, + { "ran-PagingCycle-r15", "lte-rrc.ran_PagingCycle_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ran_PagingCycle_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ran_NotificationAreaInfo_r15, + { "ran-NotificationAreaInfo-r15", "lte-rrc.ran_NotificationAreaInfo_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_RAN_NotificationAreaInfo_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_periodic_RNAU_timer_r15, + { "periodic-RNAU-timer-r15", "lte-rrc.periodic_RNAU_timer_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_periodic_RNAU_timer_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_123, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_39", HFILL }}, + { &hf_lte_rrc_cellList_r15, + { "cellList-r15", "lte-rrc.cellList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "PLMN_RAN_AreaCellList_r15", HFILL }}, + { &hf_lte_rrc_ran_AreaConfigList_r15, + { "ran-AreaConfigList-r15", "lte-rrc.ran_AreaConfigList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "PLMN_RAN_AreaConfigList_r15", HFILL }}, + { &hf_lte_rrc_PLMN_RAN_AreaCellList_r15_item, + { "PLMN-RAN-AreaCell-r15", "lte-rrc.PLMN_RAN_AreaCell_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_plmn_Identity_r15, + { "plmn-Identity-r15", "lte-rrc.plmn_Identity_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "PLMN_Identity", HFILL }}, + { &hf_lte_rrc_ran_AreaCells_r15, + { "ran-AreaCells-r15", "lte-rrc.ran_AreaCells_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_32_OF_CellIdentity", HFILL }}, + { &hf_lte_rrc_ran_AreaCells_r15_item, + { "CellIdentity", "lte-rrc.CellIdentity", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_PLMN_RAN_AreaConfigList_r15_item, + { "PLMN-RAN-AreaConfig-r15", "lte-rrc.PLMN_RAN_AreaConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ran_Area_r15, + { "ran-Area-r15", "lte-rrc.ran_Area_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_r15", HFILL }}, + { &hf_lte_rrc_ran_Area_r15_item, + { "RAN-AreaConfig-r15", "lte-rrc.RAN_AreaConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_trackingAreaCode_5GC_r15, + { "trackingAreaCode-5GC-r15", "lte-rrc.trackingAreaCode_5GC_r15", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ran_AreaCodeList_r15, + { "ran-AreaCodeList-r15", "lte-rrc.ran_AreaCodeList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_r15", HFILL }}, + { &hf_lte_rrc_ran_AreaCodeList_r15_item, + { "RAN-AreaCode-r15", "lte-rrc.RAN_AreaCode_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_CarrierFreqListUTRA_TDD_r10_item, { "ARFCN-ValueUTRA", "lte-rrc.ARFCN_ValueUTRA", FT_UINT32, BASE_DEC, NULL, 0, @@ -93124,6 +112037,10 @@ void proto_register_lte_rrc(void) { { "freqPriorityListExtEUTRA-v1310", "lte-rrc.freqPriorityListExtEUTRA_v1310", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_freqPriorityListNR_r15, + { "freqPriorityListNR-r15", "lte-rrc.freqPriorityListNR_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_freqPriorityListEUTRA_v9e0, { "freqPriorityListEUTRA-v9e0", "lte-rrc.freqPriorityListEUTRA_v9e0", FT_UINT32, BASE_DEC, NULL, 0, @@ -93168,6 +112085,22 @@ void proto_register_lte_rrc(void) { { "cellReselectionSubPriority-r13", "lte-rrc.cellReselectionSubPriority_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_CellReselectionSubPriority_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_FreqPriorityListNR_r15_item, + { "FreqPriorityNR-r15", "lte-rrc.FreqPriorityNR_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_carrierFreq_r15, + { "carrierFreq-r15", "lte-rrc.carrierFreq_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueNR_r15", HFILL }}, + { &hf_lte_rrc_cellReselectionPriority_r15, + { "cellReselectionPriority-r15", "lte-rrc.cellReselectionPriority_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "CellReselectionPriority", HFILL }}, + { &hf_lte_rrc_cellReselectionSubPriority_r15, + { "cellReselectionSubPriority-r15", "lte-rrc.cellReselectionSubPriority_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_CellReselectionSubPriority_r13_vals), 0, + "CellReselectionSubPriority_r13", HFILL }}, { &hf_lte_rrc_FreqsPriorityListGERAN_item, { "FreqsPriorityGERAN", "lte-rrc.FreqsPriorityGERAN_element", FT_NONE, BASE_NONE, NULL, 0, @@ -93216,6 +112149,10 @@ void proto_register_lte_rrc(void) { { "systemInformation-r9", "lte-rrc.systemInformation_r9", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_subcarrierSpacingSSB_r15, + { "subcarrierSpacingSSB-r15", "lte-rrc.subcarrierSpacingSSB_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_subcarrierSpacingSSB_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_CellInfoListUTRA_FDD_r9_item, { "CellInfoUTRA-FDD-r9", "lte-rrc.CellInfoUTRA_FDD_r9_element", FT_NONE, BASE_NONE, NULL, 0, @@ -93256,18 +112193,18 @@ void proto_register_lte_rrc(void) { { "utra-BCCH-Container-r10", "lte-rrc.utra_BCCH_Container_r10", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_criticalExtensions_31, + { &hf_lte_rrc_criticalExtensions_32, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_31_vals), 0, - "T_criticalExtensions_31", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_32_vals), 0, + "T_criticalExtensions_32", HFILL }}, { &hf_lte_rrc_rrcConnectionRequest_r8, { "rrcConnectionRequest-r8", "lte-rrc.rrcConnectionRequest_r8_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionRequest_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_31, + { &hf_lte_rrc_criticalExtensionsFuture_32, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_31", HFILL }}, + "T_criticalExtensionsFuture_32", HFILL }}, { &hf_lte_rrc_ue_Identity_02, { "ue-Identity", "lte-rrc.ue_Identity", FT_UINT32, BASE_DEC, VALS(lte_rrc_InitialUE_Identity_vals), 0, @@ -93284,10 +112221,10 @@ void proto_register_lte_rrc(void) { { "randomValue", "lte-rrc.randomValue", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_40", HFILL }}, - { &hf_lte_rrc_criticalExtensions_32, + { &hf_lte_rrc_criticalExtensions_33, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_32_vals), 0, - "T_criticalExtensions_32", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_33_vals), 0, + "T_criticalExtensions_33", HFILL }}, { &hf_lte_rrc_c1_34, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_34_vals), 0, @@ -93296,10 +112233,10 @@ void proto_register_lte_rrc(void) { { "rrcConnectionResume-r13", "lte-rrc.rrcConnectionResume_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionResume_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_32, + { &hf_lte_rrc_criticalExtensionsFuture_33, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_32", HFILL }}, + "T_criticalExtensionsFuture_33", HFILL }}, { &hf_lte_rrc_radioResourceConfigDedicated_r13, { "radioResourceConfigDedicated-r13", "lte-rrc.radioResourceConfigDedicated_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -93340,22 +112277,30 @@ void proto_register_lte_rrc(void) { { "nr-RadioBearerConfig2-r15", "lte-rrc.nr_RadioBearerConfig2_r15", FT_BYTES, BASE_NONE, NULL, 0, "T_nr_RadioBearerConfig2_r15_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_110, + { &hf_lte_rrc_nonCriticalExtension_124, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_37", HFILL }}, - { &hf_lte_rrc_criticalExtensions_33, + "RRCConnectionResume_v1530_IEs", HFILL }}, + { &hf_lte_rrc_fullConfig_r15, + { "fullConfig-r15", "lte-rrc.fullConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_fullConfig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_125, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_40", HFILL }}, + { &hf_lte_rrc_criticalExtensions_34, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_33_vals), 0, - "T_criticalExtensions_33", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_34_vals), 0, + "T_criticalExtensions_34", HFILL }}, { &hf_lte_rrc_rrcConnectionResumeComplete_r13_01, { "rrcConnectionResumeComplete-r13", "lte-rrc.rrcConnectionResumeComplete_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionResumeComplete_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_33, + { &hf_lte_rrc_criticalExtensionsFuture_34, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_33", HFILL }}, + "T_criticalExtensionsFuture_34", HFILL }}, { &hf_lte_rrc_selectedPLMN_Identity_r13, { "selectedPLMN-Identity-r13", "lte-rrc.selectedPLMN_Identity_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -93388,22 +112333,42 @@ void proto_register_lte_rrc(void) { { "logMeasAvailableMBSFN-r13", "lte-rrc.logMeasAvailableMBSFN_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableMBSFN_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_111, + { &hf_lte_rrc_nonCriticalExtension_126, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_38", HFILL }}, - { &hf_lte_rrc_criticalExtensions_34, + "RRCConnectionResumeComplete_v1530_IEs", HFILL }}, + { &hf_lte_rrc_logMeasAvailableBT_r15_02, + { "logMeasAvailableBT-r15", "lte-rrc.logMeasAvailableBT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableBT_r15_02_vals), 0, + "T_logMeasAvailableBT_r15_02", HFILL }}, + { &hf_lte_rrc_logMeasAvailableWLAN_r15_02, + { "logMeasAvailableWLAN-r15", "lte-rrc.logMeasAvailableWLAN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableWLAN_r15_02_vals), 0, + "T_logMeasAvailableWLAN_r15_02", HFILL }}, + { &hf_lte_rrc_idleMeasAvailable_r15, + { "idleMeasAvailable-r15", "lte-rrc.idleMeasAvailable_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_idleMeasAvailable_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_flightPathInfoAvailable_r15_02, + { "flightPathInfoAvailable-r15", "lte-rrc.flightPathInfoAvailable_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_flightPathInfoAvailable_r15_02_vals), 0, + "T_flightPathInfoAvailable_r15_02", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_127, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_41", HFILL }}, + { &hf_lte_rrc_criticalExtensions_35, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_34_vals), 0, - "T_criticalExtensions_34", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_35_vals), 0, + "T_criticalExtensions_35", HFILL }}, { &hf_lte_rrc_rrcConnectionResumeRequest_r13_01, { "rrcConnectionResumeRequest-r13", "lte-rrc.rrcConnectionResumeRequest_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionResumeRequest_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_34, - { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", + { &hf_lte_rrc_rrcConnectionResumeRequest_r15, + { "rrcConnectionResumeRequest-r15", "lte-rrc.rrcConnectionResumeRequest_r15_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_34", HFILL }}, + "RRCConnectionResumeRequest_5GC_r15_IEs", HFILL }}, { &hf_lte_rrc_resumeIdentity_r13_01, { "resumeIdentity-r13", "lte-rrc.resumeIdentity_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_resumeIdentity_r13_vals), 0, @@ -93424,10 +112389,22 @@ void proto_register_lte_rrc(void) { { "resumeCause-r13", "lte-rrc.resumeCause_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_ResumeCause_vals), 0, "ResumeCause", HFILL }}, - { &hf_lte_rrc_criticalExtensions_35, + { &hf_lte_rrc_resumeIdentity_r15, + { "resumeIdentity-r15", "lte-rrc.resumeIdentity_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_resumeIdentity_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_shortResumeMAC_I_r15, + { "shortResumeMAC-I-r15", "lte-rrc.shortResumeMAC_I_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, + { &hf_lte_rrc_resumeCause_r15, + { "resumeCause-r15", "lte-rrc.resumeCause_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_ResumeCause_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_criticalExtensions_36, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_35_vals), 0, - "T_criticalExtensions_35", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_36_vals), 0, + "T_criticalExtensions_36", HFILL }}, { &hf_lte_rrc_c1_35, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_35_vals), 0, @@ -93440,18 +112417,18 @@ void proto_register_lte_rrc(void) { { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, "T_criticalExtensionsFuture_35", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_112, + { &hf_lte_rrc_nonCriticalExtension_128, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetup_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_113, + { &hf_lte_rrc_nonCriticalExtension_129, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_39", HFILL }}, - { &hf_lte_rrc_criticalExtensions_36, + "T_nonCriticalExtension_42", HFILL }}, + { &hf_lte_rrc_criticalExtensions_37, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_36_vals), 0, - "T_criticalExtensions_36", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_37_vals), 0, + "T_criticalExtensions_37", HFILL }}, { &hf_lte_rrc_c1_36, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_36_vals), 0, @@ -93472,11 +112449,11 @@ void proto_register_lte_rrc(void) { { "registeredMME", "lte-rrc.registeredMME_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_114, + { &hf_lte_rrc_nonCriticalExtension_130, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetupComplete_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_115, + { &hf_lte_rrc_nonCriticalExtension_131, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetupComplete_v1020_IEs", HFILL }}, @@ -93496,7 +112473,7 @@ void proto_register_lte_rrc(void) { { "rn-SubframeConfigReq-r10", "lte-rrc.rn_SubframeConfigReq_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rn_SubframeConfigReq_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_116, + { &hf_lte_rrc_nonCriticalExtension_132, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetupComplete_v1130_IEs", HFILL }}, @@ -93504,7 +112481,7 @@ void proto_register_lte_rrc(void) { { "connEstFailInfoAvailable-r11", "lte-rrc.connEstFailInfoAvailable_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_connEstFailInfoAvailable_r11_02_vals), 0, "T_connEstFailInfoAvailable_r11_02", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_117, + { &hf_lte_rrc_nonCriticalExtension_133, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetupComplete_v1250_IEs", HFILL }}, @@ -93520,7 +112497,7 @@ void proto_register_lte_rrc(void) { { "logMeasAvailableMBSFN-r12", "lte-rrc.logMeasAvailableMBSFN_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableMBSFN_r12_02_vals), 0, "T_logMeasAvailableMBSFN_r12_02", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_118, + { &hf_lte_rrc_nonCriticalExtension_134, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetupComplete_v1320_IEs", HFILL }}, @@ -93544,7 +112521,7 @@ void proto_register_lte_rrc(void) { { "cp-CIoT-EPS-Optimisation-r13", "lte-rrc.cp_CIoT_EPS_Optimisation_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cp_CIoT_EPS_Optimisation_r13_vals), 0, "T_cp_CIoT_EPS_Optimisation_r13", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_119, + { &hf_lte_rrc_nonCriticalExtension_135, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetupComplete_v1330_IEs", HFILL }}, @@ -93552,7 +112529,7 @@ void proto_register_lte_rrc(void) { { "ue-CE-NeedULGaps-r13", "lte-rrc.ue_CE_NeedULGaps_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ue_CE_NeedULGaps_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_120, + { &hf_lte_rrc_nonCriticalExtension_136, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetupComplete_v1430_IEs", HFILL }}, @@ -93560,10 +112537,54 @@ void proto_register_lte_rrc(void) { { "dcn-ID-r14", "lte-rrc.dcn_ID_r14", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_65535", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_121, + { &hf_lte_rrc_nonCriticalExtension_137, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_40", HFILL }}, + "RRCConnectionSetupComplete_v1530_IEs", HFILL }}, + { &hf_lte_rrc_logMeasAvailableBT_r15_03, + { "logMeasAvailableBT-r15", "lte-rrc.logMeasAvailableBT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableBT_r15_03_vals), 0, + "T_logMeasAvailableBT_r15_03", HFILL }}, + { &hf_lte_rrc_logMeasAvailableWLAN_r15_03, + { "logMeasAvailableWLAN-r15", "lte-rrc.logMeasAvailableWLAN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableWLAN_r15_03_vals), 0, + "T_logMeasAvailableWLAN_r15_03", HFILL }}, + { &hf_lte_rrc_idleMeasAvailable_r15_01, + { "idleMeasAvailable-r15", "lte-rrc.idleMeasAvailable_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_idleMeasAvailable_r15_01_vals), 0, + "T_idleMeasAvailable_r15_01", HFILL }}, + { &hf_lte_rrc_flightPathInfoAvailable_r15_03, + { "flightPathInfoAvailable-r15", "lte-rrc.flightPathInfoAvailable_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_flightPathInfoAvailable_r15_03_vals), 0, + "T_flightPathInfoAvailable_r15_03", HFILL }}, + { &hf_lte_rrc_connectTo5GC_r15, + { "connectTo5GC-r15", "lte-rrc.connectTo5GC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_connectTo5GC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_registeredAMF_r15, + { "registeredAMF-r15", "lte-rrc.registeredAMF_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_s_NSSAI_list_r15, + { "s-NSSAI-list-r15", "lte-rrc.s_NSSAI_list_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxNrofS_NSSAI_r15_OF_S_NSSAI_r15", HFILL }}, + { &hf_lte_rrc_s_NSSAI_list_r15_item, + { "S-NSSAI-r15", "lte-rrc.S_NSSAI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_S_NSSAI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ng_5G_S_TMSI_Bits_r15, + { "ng-5G-S-TMSI-Bits-r15", "lte-rrc.ng_5G_S_TMSI_Bits_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ng_5G_S_TMSI_Bits_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ng_5G_S_TMSI_Part2_r15, + { "ng-5G-S-TMSI-Part2-r15", "lte-rrc.ng_5G_S_TMSI_Part2_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_138, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_43", HFILL }}, { &hf_lte_rrc_plmn_Identity, { "plmn-Identity", "lte-rrc.plmn_Identity_element", FT_NONE, BASE_NONE, NULL, 0, @@ -93576,10 +112597,94 @@ void proto_register_lte_rrc(void) { { "mmec", "lte-rrc.mmec", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_criticalExtensions_37, + { &hf_lte_rrc_amf_Identifier_r15, + { "amf-Identifier-r15", "lte-rrc.amf_Identifier_r15", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_criticalExtensions_38, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_37_vals), 0, - "T_criticalExtensions_37", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_38_vals), 0, + "T_criticalExtensions_38", HFILL }}, + { &hf_lte_rrc_rrcEarlyDataComplete_r15_01, + { "rrcEarlyDataComplete-r15", "lte-rrc.rrcEarlyDataComplete_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RRCEarlyDataComplete_r15_IEs", HFILL }}, + { &hf_lte_rrc_criticalExtensionsFuture_37, + { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_criticalExtensionsFuture_37", HFILL }}, + { &hf_lte_rrc_extendedWaitTime_r15, + { "extendedWaitTime-r15", "lte-rrc.extendedWaitTime_r15", + FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0, + "INTEGER_1_1800", HFILL }}, + { &hf_lte_rrc_idleModeMobilityControlInfo_r15, + { "idleModeMobilityControlInfo-r15", "lte-rrc.idleModeMobilityControlInfo_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "IdleModeMobilityControlInfo", HFILL }}, + { &hf_lte_rrc_idleModeMobilityControlInfoExt_r15, + { "idleModeMobilityControlInfoExt-r15", "lte-rrc.idleModeMobilityControlInfoExt_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "IdleModeMobilityControlInfo_v9e0", HFILL }}, + { &hf_lte_rrc_redirectedCarrierInfo_r15, + { "redirectedCarrierInfo-r15", "lte-rrc.redirectedCarrierInfo_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_RedirectedCarrierInfo_r15_IEs_vals), 0, + "RedirectedCarrierInfo_r15_IEs", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_139, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_44", HFILL }}, + { &hf_lte_rrc_eutra_r15, + { "eutra-r15", "lte-rrc.eutra_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueEUTRA_r9", HFILL }}, + { &hf_lte_rrc_geran_r15, + { "geran-r15", "lte-rrc.geran_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "CarrierFreqsGERAN", HFILL }}, + { &hf_lte_rrc_utra_FDD_r15, + { "utra-FDD-r15", "lte-rrc.utra_FDD_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueUTRA", HFILL }}, + { &hf_lte_rrc_cdma2000_HRPD_r15, + { "cdma2000-HRPD-r15", "lte-rrc.cdma2000_HRPD_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "CarrierFreqCDMA2000", HFILL }}, + { &hf_lte_rrc_cdma2000_1xRTT_r15, + { "cdma2000-1xRTT-r15", "lte-rrc.cdma2000_1xRTT_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "CarrierFreqCDMA2000", HFILL }}, + { &hf_lte_rrc_utra_TDD_r15, + { "utra-TDD-r15", "lte-rrc.utra_TDD_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "CarrierFreqListUTRA_TDD_r10", HFILL }}, + { &hf_lte_rrc_criticalExtensions_39, + { "criticalExtensions", "lte-rrc.criticalExtensions", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_39_vals), 0, + "T_criticalExtensions_39", HFILL }}, + { &hf_lte_rrc_rrcEarlyDataRequest_r15_01, + { "rrcEarlyDataRequest-r15", "lte-rrc.rrcEarlyDataRequest_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RRCEarlyDataRequest_r15_IEs", HFILL }}, + { &hf_lte_rrc_criticalExtensionsFuture_38, + { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_criticalExtensionsFuture_38", HFILL }}, + { &hf_lte_rrc_s_TMSI_r15, + { "s-TMSI-r15", "lte-rrc.s_TMSI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "S_TMSI", HFILL }}, + { &hf_lte_rrc_establishmentCause_r15, + { "establishmentCause-r15", "lte-rrc.establishmentCause_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_establishmentCause_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_140, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_45", HFILL }}, + { &hf_lte_rrc_criticalExtensions_40, + { "criticalExtensions", "lte-rrc.criticalExtensions", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_40_vals), 0, + "T_criticalExtensions_40", HFILL }}, { &hf_lte_rrc_c1_37, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_37_vals), 0, @@ -93588,15 +112693,15 @@ void proto_register_lte_rrc(void) { { "scgFailureInformation-r12", "lte-rrc.scgFailureInformation_r12_element", FT_NONE, BASE_NONE, NULL, 0, "SCGFailureInformation_r12_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_37, + { &hf_lte_rrc_criticalExtensionsFuture_39, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_37", HFILL }}, + "T_criticalExtensionsFuture_39", HFILL }}, { &hf_lte_rrc_failureReportSCG_r12, { "failureReportSCG-r12", "lte-rrc.failureReportSCG_r12_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_122, + { &hf_lte_rrc_nonCriticalExtension_141, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SCGFailureInformation_v1310_IEs", HFILL }}, @@ -93604,18 +112709,18 @@ void proto_register_lte_rrc(void) { { "lateNonCriticalExtension", "lte-rrc.lateNonCriticalExtension", FT_BYTES, BASE_NONE, NULL, 0, "T_lateNonCriticalExtension_03", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_123, + { &hf_lte_rrc_nonCriticalExtension_142, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_41", HFILL }}, + "T_nonCriticalExtension_46", HFILL }}, { &hf_lte_rrc_failureReportSCG_v12d0, { "failureReportSCG-v12d0", "lte-rrc.failureReportSCG_v12d0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_124, + { &hf_lte_rrc_nonCriticalExtension_143, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_42", HFILL }}, + "T_nonCriticalExtension_47", HFILL }}, { &hf_lte_rrc_failureType_r12, { "failureType-r12", "lte-rrc.failureType_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_failureType_r12_vals), 0, @@ -93640,10 +112745,10 @@ void proto_register_lte_rrc(void) { { "measResultNeighCells-v12d0", "lte-rrc.measResultNeighCells_v12d0", FT_UINT32, BASE_DEC, NULL, 0, "MeasResultList2EUTRA_v9e0", HFILL }}, - { &hf_lte_rrc_criticalExtensions_38, + { &hf_lte_rrc_criticalExtensions_41, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_38_vals), 0, - "T_criticalExtensions_38", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_41_vals), 0, + "T_criticalExtensions_41", HFILL }}, { &hf_lte_rrc_c1_38, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_38_vals), 0, @@ -93652,18 +112757,18 @@ void proto_register_lte_rrc(void) { { "scgFailureInformationNR-r15", "lte-rrc.scgFailureInformationNR_r15_element", FT_NONE, BASE_NONE, NULL, 0, "SCGFailureInformationNR_r15_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_38, + { &hf_lte_rrc_criticalExtensionsFuture_40, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_38", HFILL }}, + "T_criticalExtensionsFuture_40", HFILL }}, { &hf_lte_rrc_failureReportSCG_NR_r15, { "failureReportSCG-NR-r15", "lte-rrc.failureReportSCG_NR_r15_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_125, + { &hf_lte_rrc_nonCriticalExtension_144, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_43", HFILL }}, + "T_nonCriticalExtension_48", HFILL }}, { &hf_lte_rrc_failureType_r15, { "failureType-r15", "lte-rrc.failureType_r15", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_failureType_r15_vals), 0, @@ -93680,10 +112785,6 @@ void proto_register_lte_rrc(void) { { "MeasResultFreqFailNR-r15", "lte-rrc.MeasResultFreqFailNR_r15_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_carrierFreq_r15, - { "carrierFreq-r15", "lte-rrc.carrierFreq_r15", - FT_UINT32, BASE_DEC, NULL, 0, - "ARFCN_ValueNR_r15", HFILL }}, { &hf_lte_rrc_measResultCellList_r15, { "measResultCellList-r15", "lte-rrc.measResultCellList_r15", FT_UINT32, BASE_DEC, NULL, 0, @@ -93696,7 +112797,7 @@ void proto_register_lte_rrc(void) { { "scptm-NeighbourCellList-r13", "lte-rrc.scptm_NeighbourCellList_r13", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_126, + { &hf_lte_rrc_nonCriticalExtension_145, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SCPTMConfiguration_v1340", HFILL }}, @@ -93704,10 +112805,10 @@ void proto_register_lte_rrc(void) { { "p-b-r13", "lte-rrc.p_b_r13", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_3", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_127, + { &hf_lte_rrc_nonCriticalExtension_146, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_44", HFILL }}, + "T_nonCriticalExtension_49", HFILL }}, { &hf_lte_rrc_sc_mtch_InfoList_r14, { "sc-mtch-InfoList-r14", "lte-rrc.sc_mtch_InfoList_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -93720,14 +112821,14 @@ void proto_register_lte_rrc(void) { { "p-b-r14", "lte-rrc.p_b_r14", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_3", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_128, + { &hf_lte_rrc_nonCriticalExtension_147, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_45", HFILL }}, - { &hf_lte_rrc_criticalExtensions_39, + "T_nonCriticalExtension_50", HFILL }}, + { &hf_lte_rrc_criticalExtensions_42, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_39_vals), 0, - "T_criticalExtensions_39", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_42_vals), 0, + "T_criticalExtensions_42", HFILL }}, { &hf_lte_rrc_c1_39, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_39_vals), 0, @@ -93736,66 +112837,66 @@ void proto_register_lte_rrc(void) { { "securityModeCommand-r8", "lte-rrc.securityModeCommand_r8_element", FT_NONE, BASE_NONE, NULL, 0, "SecurityModeCommand_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_39, + { &hf_lte_rrc_criticalExtensionsFuture_41, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_39", HFILL }}, + "T_criticalExtensionsFuture_41", HFILL }}, { &hf_lte_rrc_securityConfigSMC, { "securityConfigSMC", "lte-rrc.securityConfigSMC_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_129, + { &hf_lte_rrc_nonCriticalExtension_148, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SecurityModeCommand_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_130, + { &hf_lte_rrc_nonCriticalExtension_149, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_46", HFILL }}, - { &hf_lte_rrc_criticalExtensions_40, + "T_nonCriticalExtension_51", HFILL }}, + { &hf_lte_rrc_criticalExtensions_43, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_40_vals), 0, - "T_criticalExtensions_40", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_43_vals), 0, + "T_criticalExtensions_43", HFILL }}, { &hf_lte_rrc_securityModeComplete_r8, { "securityModeComplete-r8", "lte-rrc.securityModeComplete_r8_element", FT_NONE, BASE_NONE, NULL, 0, "SecurityModeComplete_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_40, + { &hf_lte_rrc_criticalExtensionsFuture_42, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_40", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_131, + "T_criticalExtensionsFuture_42", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_150, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SecurityModeComplete_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_132, + { &hf_lte_rrc_nonCriticalExtension_151, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_47", HFILL }}, - { &hf_lte_rrc_criticalExtensions_41, + "T_nonCriticalExtension_52", HFILL }}, + { &hf_lte_rrc_criticalExtensions_44, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_41_vals), 0, - "T_criticalExtensions_41", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_44_vals), 0, + "T_criticalExtensions_44", HFILL }}, { &hf_lte_rrc_securityModeFailure_r8, { "securityModeFailure-r8", "lte-rrc.securityModeFailure_r8_element", FT_NONE, BASE_NONE, NULL, 0, "SecurityModeFailure_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_41, + { &hf_lte_rrc_criticalExtensionsFuture_43, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_41", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_133, + "T_criticalExtensionsFuture_43", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_152, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SecurityModeFailure_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_134, + { &hf_lte_rrc_nonCriticalExtension_153, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_48", HFILL }}, - { &hf_lte_rrc_criticalExtensions_42, + "T_nonCriticalExtension_53", HFILL }}, + { &hf_lte_rrc_criticalExtensions_45, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_42_vals), 0, - "T_criticalExtensions_42", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_45_vals), 0, + "T_criticalExtensions_45", HFILL }}, { &hf_lte_rrc_c1_40, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_40_vals), 0, @@ -93804,10 +112905,10 @@ void proto_register_lte_rrc(void) { { "sidelinkUEInformation-r12", "lte-rrc.sidelinkUEInformation_r12_element", FT_NONE, BASE_NONE, NULL, 0, "SidelinkUEInformation_r12_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_42, + { &hf_lte_rrc_criticalExtensionsFuture_44, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_42", HFILL }}, + "T_criticalExtensionsFuture_44", HFILL }}, { &hf_lte_rrc_commRxInterestedFreq_r12, { "commRxInterestedFreq-r12", "lte-rrc.commRxInterestedFreq_r12", FT_UINT32, BASE_DEC, NULL, 0, @@ -93824,7 +112925,7 @@ void proto_register_lte_rrc(void) { { "discTxResourceReq-r12", "lte-rrc.discTxResourceReq_r12", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_1_63", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_135, + { &hf_lte_rrc_nonCriticalExtension_154, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SidelinkUEInformation_v1310_IEs", HFILL }}, @@ -93876,7 +112977,7 @@ void proto_register_lte_rrc(void) { { "discSysInfoReportFreqList-r13", "lte-rrc.discSysInfoReportFreqList_r13", FT_UINT32, BASE_DEC, NULL, 0, "SL_DiscSysInfoReportFreqList_r13", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_136, + { &hf_lte_rrc_nonCriticalExtension_155, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SidelinkUEInformation_v1430_IEs", HFILL }}, @@ -93892,10 +112993,18 @@ void proto_register_lte_rrc(void) { { "v2x-CommTxResourceReq-r14", "lte-rrc.v2x_CommTxResourceReq_r14", FT_UINT32, BASE_DEC, NULL, 0, "SL_V2X_CommTxFreqList_r14", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_137, + { &hf_lte_rrc_nonCriticalExtension_156, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_49", HFILL }}, + "SidelinkUEInformation_v1530_IEs", HFILL }}, + { &hf_lte_rrc_reliabilityInfoListSL_r15, + { "reliabilityInfoListSL-r15", "lte-rrc.reliabilityInfoListSL_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_ReliabilityList_r15", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_157, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_54", HFILL }}, { &hf_lte_rrc_destinationInfoList_r12, { "destinationInfoList-r12", "lte-rrc.destinationInfoList_r12", FT_UINT32, BASE_DEC, NULL, 0, @@ -93936,18 +113045,26 @@ void proto_register_lte_rrc(void) { { "v2x-DestinationInfoList-r14", "lte-rrc.v2x_DestinationInfoList_r14", FT_UINT32, BASE_DEC, NULL, 0, "SL_DestinationInfoList_r12", HFILL }}, - { &hf_lte_rrc_criticalExtensions_43, + { &hf_lte_rrc_criticalExtensions_46, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_43_vals), 0, - "T_criticalExtensions_43", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_46_vals), 0, + "T_criticalExtensions_46", HFILL }}, { &hf_lte_rrc_systemInformation_r8, { "systemInformation-r8", "lte-rrc.systemInformation_r8_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformation_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_43, + { &hf_lte_rrc_criticalExtensionsFuture_r15, + { "criticalExtensionsFuture-r15", "lte-rrc.criticalExtensionsFuture_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensionsFuture_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_posSystemInformation_r15, + { "posSystemInformation-r15", "lte-rrc.posSystemInformation_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "PosSystemInformation_r15_IEs", HFILL }}, + { &hf_lte_rrc_criticalExtensionsFuture_45, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_43", HFILL }}, + "T_criticalExtensionsFuture_45", HFILL }}, { &hf_lte_rrc_sib_TypeAndInfo, { "sib-TypeAndInfo", "lte-rrc.sib_TypeAndInfo", FT_UINT32, BASE_DEC, NULL, 0, @@ -94036,14 +113153,146 @@ void proto_register_lte_rrc(void) { { "sib21-v1430", "lte-rrc.sib21_v1430_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType21_r14", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_138, + { &hf_lte_rrc_sib24_v1530, + { "sib24-v1530", "lte-rrc.sib24_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockType24_r15", HFILL }}, + { &hf_lte_rrc_sib25_v1530, + { "sib25-v1530", "lte-rrc.sib25_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockType25_r15", HFILL }}, + { &hf_lte_rrc_sib26_v1530, + { "sib26-v1530", "lte-rrc.sib26_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockType26_r15", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_158, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformation_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_139, + { &hf_lte_rrc_nonCriticalExtension_159, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_50", HFILL }}, + "T_nonCriticalExtension_55", HFILL }}, + { &hf_lte_rrc_posSIB_TypeAndInfo_r15, + { "posSIB-TypeAndInfo-r15", "lte-rrc.posSIB_TypeAndInfo_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_posSIB_TypeAndInfo_r15_item, + { "posSIB-TypeAndInfo-r15 item", "lte-rrc.posSIB_TypeAndInfo_r15_item", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_posSIB_TypeAndInfo_r15_item_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_posSib1_1_r15, + { "posSib1-1-r15", "lte-rrc.posSib1_1_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib1_2_r15, + { "posSib1-2-r15", "lte-rrc.posSib1_2_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib1_3_r15, + { "posSib1-3-r15", "lte-rrc.posSib1_3_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib1_4_r15, + { "posSib1-4-r15", "lte-rrc.posSib1_4_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib1_5_r15, + { "posSib1-5-r15", "lte-rrc.posSib1_5_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib1_6_r15, + { "posSib1-6-r15", "lte-rrc.posSib1_6_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib1_7_r15, + { "posSib1-7-r15", "lte-rrc.posSib1_7_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_1_r15, + { "posSib2-1-r15", "lte-rrc.posSib2_1_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_2_r15, + { "posSib2-2-r15", "lte-rrc.posSib2_2_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_3_r15, + { "posSib2-3-r15", "lte-rrc.posSib2_3_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_4_r15, + { "posSib2-4-r15", "lte-rrc.posSib2_4_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_5_r15, + { "posSib2-5-r15", "lte-rrc.posSib2_5_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_6_r15, + { "posSib2-6-r15", "lte-rrc.posSib2_6_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_7_r15, + { "posSib2-7-r15", "lte-rrc.posSib2_7_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_8_r15, + { "posSib2-8-r15", "lte-rrc.posSib2_8_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_9_r15, + { "posSib2-9-r15", "lte-rrc.posSib2_9_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_10_r15, + { "posSib2-10-r15", "lte-rrc.posSib2_10_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_11_r15, + { "posSib2-11-r15", "lte-rrc.posSib2_11_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_12_r15, + { "posSib2-12-r15", "lte-rrc.posSib2_12_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_13_r15, + { "posSib2-13-r15", "lte-rrc.posSib2_13_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_14_r15, + { "posSib2-14-r15", "lte-rrc.posSib2_14_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_15_r15, + { "posSib2-15-r15", "lte-rrc.posSib2_15_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_16_r15, + { "posSib2-16-r15", "lte-rrc.posSib2_16_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_17_r15, + { "posSib2-17-r15", "lte-rrc.posSib2_17_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_18_r15, + { "posSib2-18-r15", "lte-rrc.posSib2_18_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib2_19_r15, + { "posSib2-19-r15", "lte-rrc.posSib2_19_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_posSib3_1_r15, + { "posSib3-1-r15", "lte-rrc.posSib3_1_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockPos_r15", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_160, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_56", HFILL }}, { &hf_lte_rrc_cellAccessRelatedInfo, { "cellAccessRelatedInfo", "lte-rrc.cellAccessRelatedInfo_element", FT_NONE, BASE_NONE, NULL, 0, @@ -94108,7 +113357,7 @@ void proto_register_lte_rrc(void) { { "systemInfoValueTag", "lte-rrc.systemInfoValueTag", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_140, + { &hf_lte_rrc_nonCriticalExtension_161, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v890_IEs", HFILL }}, @@ -94116,7 +113365,7 @@ void proto_register_lte_rrc(void) { { "lateNonCriticalExtension", "lte-rrc.lateNonCriticalExtension", FT_BYTES, BASE_NONE, NULL, 0, "T_lateNonCriticalExtension_04", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_141, + { &hf_lte_rrc_nonCriticalExtension_162, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v920_IEs", HFILL }}, @@ -94124,7 +113373,7 @@ void proto_register_lte_rrc(void) { { "multiBandInfoList", "lte-rrc.multiBandInfoList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_142, + { &hf_lte_rrc_nonCriticalExtension_163, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v9e0_IEs", HFILL }}, @@ -94136,7 +113385,7 @@ void proto_register_lte_rrc(void) { { "multiBandInfoList-v9e0", "lte-rrc.multiBandInfoList_v9e0", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_143, + { &hf_lte_rrc_nonCriticalExtension_164, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v10j0_IEs", HFILL }}, @@ -94148,7 +113397,7 @@ void proto_register_lte_rrc(void) { { "multiBandInfoList-v10j0", "lte-rrc.multiBandInfoList_v10j0", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_144, + { &hf_lte_rrc_nonCriticalExtension_165, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v10l0_IEs", HFILL }}, @@ -94160,10 +113409,10 @@ void proto_register_lte_rrc(void) { { "multiBandInfoList-v10l0", "lte-rrc.multiBandInfoList_v10l0", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_145, + { &hf_lte_rrc_nonCriticalExtension_166, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_51", HFILL }}, + "T_nonCriticalExtension_57", HFILL }}, { &hf_lte_rrc_ims_EmergencySupport_r9, { "ims-EmergencySupport-r9", "lte-rrc.ims_EmergencySupport_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ims_EmergencySupport_r9_vals), 0, @@ -94172,7 +113421,7 @@ void proto_register_lte_rrc(void) { { "cellSelectionInfo-v920", "lte-rrc.cellSelectionInfo_v920_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_146, + { &hf_lte_rrc_nonCriticalExtension_167, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v1130_IEs", HFILL }}, @@ -94184,7 +113433,7 @@ void proto_register_lte_rrc(void) { { "cellSelectionInfo-v1130", "lte-rrc.cellSelectionInfo_v1130_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_147, + { &hf_lte_rrc_nonCriticalExtension_168, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v1250_IEs", HFILL }}, @@ -94204,7 +113453,7 @@ void proto_register_lte_rrc(void) { { "freqBandIndicatorPriority-r12", "lte-rrc.freqBandIndicatorPriority_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_freqBandIndicatorPriority_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_148, + { &hf_lte_rrc_nonCriticalExtension_169, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v1310_IEs", HFILL }}, @@ -94268,7 +113517,7 @@ void proto_register_lte_rrc(void) { { "systemInfoValueTagList-r13", "lte-rrc.systemInfoValueTagList_r13", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_149, + { &hf_lte_rrc_nonCriticalExtension_170, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v1320_IEs", HFILL }}, @@ -94308,7 +113557,7 @@ void proto_register_lte_rrc(void) { { "mpdcch-pdsch-HoppingOffset-r13", "lte-rrc.mpdcch_pdsch_HoppingOffset_r13", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_1_maxAvailNarrowBands_r13", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_150, + { &hf_lte_rrc_nonCriticalExtension_171, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v1350_IEs", HFILL }}, @@ -94316,7 +113565,7 @@ void proto_register_lte_rrc(void) { { "cellSelectionInfoCE1-r13", "lte-rrc.cellSelectionInfoCE1_r13_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_151, + { &hf_lte_rrc_nonCriticalExtension_172, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v1360_IEs", HFILL }}, @@ -94324,7 +113573,7 @@ void proto_register_lte_rrc(void) { { "cellSelectionInfoCE1-v1360", "lte-rrc.cellSelectionInfoCE1_v1360_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_152, + { &hf_lte_rrc_nonCriticalExtension_173, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v1430_IEs", HFILL }}, @@ -94344,7 +113593,7 @@ void proto_register_lte_rrc(void) { { "CellAccessRelatedInfo-r14", "lte-rrc.CellAccessRelatedInfo_r14_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_153, + { &hf_lte_rrc_nonCriticalExtension_174, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_v1450_IEs", HFILL }}, @@ -94352,10 +113601,74 @@ void proto_register_lte_rrc(void) { { "tdd-Config-v1450", "lte-rrc.tdd_Config_v1450_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_154, + { &hf_lte_rrc_nonCriticalExtension_175, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_52", HFILL }}, + "SystemInformationBlockType1_v1530_IEs", HFILL }}, + { &hf_lte_rrc_hsdn_Cell_r15, + { "hsdn-Cell-r15", "lte-rrc.hsdn_Cell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_hsdn_Cell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellSelectionInfoCE_v1530, + { "cellSelectionInfoCE-v1530", "lte-rrc.cellSelectionInfoCE_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_crs_IntfMitigConfig_r15, + { "crs-IntfMitigConfig-r15", "lte-rrc.crs_IntfMitigConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_crs_IntfMitigConfig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_crs_IntfMitigEnabled_15, + { "crs-IntfMitigEnabled-15", "lte-rrc.crs_IntfMitigEnabled_15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_crs_IntfMitigNumPRBs_r15, + { "crs-IntfMitigNumPRBs-r15", "lte-rrc.crs_IntfMitigNumPRBs_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_crs_IntfMitigNumPRBs_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellBarred_CRS_r15, + { "cellBarred-CRS-r15", "lte-rrc.cellBarred_CRS_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cellBarred_CRS_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_plmn_IdentityList_v1530, + { "plmn-IdentityList-v1530", "lte-rrc.plmn_IdentityList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_posSchedulingInfoList_r15, + { "posSchedulingInfoList-r15", "lte-rrc.posSchedulingInfoList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellAccessRelatedInfo_5GC_r15, + { "cellAccessRelatedInfo-5GC-r15", "lte-rrc.cellAccessRelatedInfo_5GC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellBarred_5GC_r15, + { "cellBarred-5GC-r15", "lte-rrc.cellBarred_5GC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cellBarred_5GC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellBarred_5GC_CRS_r15, + { "cellBarred-5GC-CRS-r15", "lte-rrc.cellBarred_5GC_CRS_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cellBarred_5GC_CRS_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellAccessRelatedInfoList_5GC_r15, + { "cellAccessRelatedInfoList-5GC-r15", "lte-rrc.cellAccessRelatedInfoList_5GC_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15", HFILL }}, + { &hf_lte_rrc_cellAccessRelatedInfoList_5GC_r15_item, + { "CellAccessRelatedInfo-5GC-r15", "lte-rrc.CellAccessRelatedInfo_5GC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ims_EmergencySupport5GC_r15, + { "ims-EmergencySupport5GC-r15", "lte-rrc.ims_EmergencySupport5GC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ims_EmergencySupport5GC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_eCallOverIMS_Support5GC_r15, + { "eCallOverIMS-Support5GC-r15", "lte-rrc.eCallOverIMS_Support5GC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_eCallOverIMS_Support5GC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_176, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_58", HFILL }}, { &hf_lte_rrc_PLMN_IdentityList_item, { "PLMN-IdentityInfo", "lte-rrc.PLMN_IdentityInfo_element", FT_NONE, BASE_NONE, NULL, 0, @@ -94364,6 +113677,34 @@ void proto_register_lte_rrc(void) { { "cellReservedForOperatorUse", "lte-rrc.cellReservedForOperatorUse", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cellReservedForOperatorUse_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_PLMN_IdentityList_v1530_item, + { "PLMN-IdentityInfo-v1530", "lte-rrc.PLMN_IdentityInfo_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellReservedForOperatorUse_CRS_r15, + { "cellReservedForOperatorUse-CRS-r15", "lte-rrc.cellReservedForOperatorUse_CRS_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cellReservedForOperatorUse_CRS_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_PLMN_IdentityList_r15_item, + { "PLMN-IdentityInfo-r15", "lte-rrc.PLMN_IdentityInfo_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_plmn_Identity_5GC_r15, + { "plmn-Identity-5GC-r15", "lte-rrc.plmn_Identity_5GC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_plmn_Identity_5GC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_plmn_Index_r15, + { "plmn-Index-r15", "lte-rrc.plmn_Index_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxPLMN_r11", HFILL }}, + { &hf_lte_rrc_cellReservedForOperatorUse_r15, + { "cellReservedForOperatorUse-r15", "lte-rrc.cellReservedForOperatorUse_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cellReservedForOperatorUse_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellReservedForOperatorUse_CRS_r15_01, + { "cellReservedForOperatorUse-CRS-r15", "lte-rrc.cellReservedForOperatorUse_CRS_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cellReservedForOperatorUse_CRS_r15_01_vals), 0, + "T_cellReservedForOperatorUse_CRS_r15_01", HFILL }}, { &hf_lte_rrc_SchedulingInfoList_item, { "SchedulingInfo", "lte-rrc.SchedulingInfo_element", FT_NONE, BASE_NONE, NULL, 0, @@ -94424,6 +113765,58 @@ void proto_register_lte_rrc(void) { { "cellIdentity-r14", "lte-rrc.cellIdentity_r14", FT_BYTES, BASE_NONE, NULL, 0, "CellIdentity", HFILL }}, + { &hf_lte_rrc_plmn_IdentityList_r15, + { "plmn-IdentityList-r15", "lte-rrc.plmn_IdentityList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ran_AreaCode_r15, + { "ran-AreaCode-r15", "lte-rrc.ran_AreaCode_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellIdentity_5GC_r15, + { "cellIdentity-5GC-r15", "lte-rrc.cellIdentity_5GC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_CellIdentity_5GC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_cellIdentity_r15, + { "cellIdentity-r15", "lte-rrc.cellIdentity_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "CellIdentity", HFILL }}, + { &hf_lte_rrc_cellId_Index_r15, + { "cellId-Index-r15", "lte-rrc.cellId_Index_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxPLMN_r11", HFILL }}, + { &hf_lte_rrc_PosSchedulingInfoList_r15_item, + { "PosSchedulingInfo-r15", "lte-rrc.PosSchedulingInfo_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_posSI_Periodicity_r15, + { "posSI-Periodicity-r15", "lte-rrc.posSI_Periodicity_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_posSI_Periodicity_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_posSIB_MappingInfo_r15, + { "posSIB-MappingInfo-r15", "lte-rrc.posSIB_MappingInfo_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_PosSIB_MappingInfo_r15_item, + { "PosSIB-Type-r15", "lte-rrc.PosSIB_Type_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_encrypted_r15, + { "encrypted-r15", "lte-rrc.encrypted_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_encrypted_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_gnss_id_r15, + { "gnss-id-r15", "lte-rrc.gnss_id_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sbas_id_r15, + { "sbas-id-r15", "lte-rrc.sbas_id_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_posSibType_r15, + { "posSibType-r15", "lte-rrc.posSibType_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_posSibType_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_cellAccessRelatedInfo_r14, { "cellAccessRelatedInfo-r14", "lte-rrc.cellAccessRelatedInfo_r14_element", FT_NONE, BASE_NONE, NULL, 0, @@ -94464,10 +113857,10 @@ void proto_register_lte_rrc(void) { { "systemInformationBlockType13-r14", "lte-rrc.systemInformationBlockType13_r14_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType13_r9", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_155, + { &hf_lte_rrc_nonCriticalExtension_177, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_53", HFILL }}, + "T_nonCriticalExtension_59", HFILL }}, { &hf_lte_rrc_PLMN_IdentityList_MBMS_r14_item, { "PLMN-Identity", "lte-rrc.PLMN_Identity_element", FT_NONE, BASE_NONE, NULL, 0, @@ -94500,10 +113893,10 @@ void proto_register_lte_rrc(void) { { "subframeAllocation-r14", "lte-rrc.subframeAllocation_r14", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_9", HFILL }}, - { &hf_lte_rrc_criticalExtensions_44, + { &hf_lte_rrc_criticalExtensions_47, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_44_vals), 0, - "T_criticalExtensions_44", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_47_vals), 0, + "T_criticalExtensions_47", HFILL }}, { &hf_lte_rrc_c1_41, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_41_vals), 0, @@ -94512,15 +113905,15 @@ void proto_register_lte_rrc(void) { { "ueAssistanceInformation-r11", "lte-rrc.ueAssistanceInformation_r11_element", FT_NONE, BASE_NONE, NULL, 0, "UEAssistanceInformation_r11_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_44, + { &hf_lte_rrc_criticalExtensionsFuture_46, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_44", HFILL }}, + "T_criticalExtensionsFuture_46", HFILL }}, { &hf_lte_rrc_powerPrefIndication_r11_01, { "powerPrefIndication-r11", "lte-rrc.powerPrefIndication_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_powerPrefIndication_r11_01_vals), 0, "T_powerPrefIndication_r11_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_156, + { &hf_lte_rrc_nonCriticalExtension_178, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UEAssistanceInformation_v1430_IEs", HFILL }}, @@ -94556,7 +113949,7 @@ void proto_register_lte_rrc(void) { { "delayBudgetReport-r14", "lte-rrc.delayBudgetReport_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_DelayBudgetReport_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_157, + { &hf_lte_rrc_nonCriticalExtension_179, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UEAssistanceInformation_v1450_IEs", HFILL }}, @@ -94564,10 +113957,22 @@ void proto_register_lte_rrc(void) { { "overheatingAssistance-r14", "lte-rrc.overheatingAssistance_r14_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_158, + { &hf_lte_rrc_nonCriticalExtension_180, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_54", HFILL }}, + "UEAssistanceInformation_v1530_IEs", HFILL }}, + { &hf_lte_rrc_sps_AssistanceInformation_v1530, + { "sps-AssistanceInformation-v1530", "lte-rrc.sps_AssistanceInformation_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_trafficPatternInfoListSL_v1530, + { "trafficPatternInfoListSL-v1530", "lte-rrc.trafficPatternInfoListSL_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "TrafficPatternInfoList_v1530", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_181, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_60", HFILL }}, { &hf_lte_rrc_dl_Preference_r14, { "dl-Preference-r14", "lte-rrc.dl_Preference_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dl_Preference_r14_vals), 0, @@ -94600,6 +114005,18 @@ void proto_register_lte_rrc(void) { { "messageSize-r14", "lte-rrc.messageSize_r14", FT_UINT8, BASE_DEC|BASE_EXT_STRING, <e_rrc_messageSize_r14_vals_ext, 0, NULL, HFILL }}, + { &hf_lte_rrc_TrafficPatternInfoList_v1530_item, + { "TrafficPatternInfo-v1530", "lte-rrc.TrafficPatternInfo_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_trafficDestination_r15, + { "trafficDestination-r15", "lte-rrc.trafficDestination_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "SL_DestinationIdentity_r12", HFILL }}, + { &hf_lte_rrc_reliabilityInfoSL_r15, + { "reliabilityInfoSL-r15", "lte-rrc.reliabilityInfoSL_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_Reliability_r15", HFILL }}, { &hf_lte_rrc_type1, { "type1", "lte-rrc.type1", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_T_type1_vals_ext, 0, @@ -94632,10 +114049,10 @@ void proto_register_lte_rrc(void) { { "reducedCCsUL", "lte-rrc.reducedCCsUL", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_31", HFILL }}, - { &hf_lte_rrc_criticalExtensions_45, + { &hf_lte_rrc_criticalExtensions_48, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_45_vals), 0, - "T_criticalExtensions_45", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_48_vals), 0, + "T_criticalExtensions_48", HFILL }}, { &hf_lte_rrc_c1_42, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_42_vals), 0, @@ -94644,19 +114061,19 @@ void proto_register_lte_rrc(void) { { "ueCapabilityEnquiry-r8", "lte-rrc.ueCapabilityEnquiry_r8_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityEnquiry_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_45, + { &hf_lte_rrc_criticalExtensionsFuture_47, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_45", HFILL }}, + "T_criticalExtensionsFuture_47", HFILL }}, { &hf_lte_rrc_ue_CapabilityRequest, { "ue-CapabilityRequest", "lte-rrc.ue_CapabilityRequest", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_159, + { &hf_lte_rrc_nonCriticalExtension_182, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityEnquiry_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_160, + { &hf_lte_rrc_nonCriticalExtension_183, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityEnquiry_v1180_IEs", HFILL }}, @@ -94668,7 +114085,7 @@ void proto_register_lte_rrc(void) { { "FreqBandIndicator-r11", "lte-rrc.FreqBandIndicator_r11", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_161, + { &hf_lte_rrc_nonCriticalExtension_184, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityEnquiry_v1310_IEs", HFILL }}, @@ -94692,7 +114109,7 @@ void proto_register_lte_rrc(void) { { "requestReducedIntNonContComb-r13", "lte-rrc.requestReducedIntNonContComb_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_requestReducedIntNonContComb_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_162, + { &hf_lte_rrc_nonCriticalExtension_185, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityEnquiry_v1430_IEs", HFILL }}, @@ -94700,7 +114117,7 @@ void proto_register_lte_rrc(void) { { "requestDiffFallbackCombList-r14", "lte-rrc.requestDiffFallbackCombList_r14", FT_UINT32, BASE_DEC, NULL, 0, "BandCombinationList_r14", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_163, + { &hf_lte_rrc_nonCriticalExtension_186, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityEnquiry_v1510_IEs", HFILL }}, @@ -94708,18 +114125,30 @@ void proto_register_lte_rrc(void) { { "requestedFreqBandsNR-MRDC-r15", "lte-rrc.requestedFreqBandsNR_MRDC_r15", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_164, + { &hf_lte_rrc_nonCriticalExtension_187, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_55", HFILL }}, + "UECapabilityEnquiry_v1530_IEs", HFILL }}, + { &hf_lte_rrc_requestSTTI_SPT_Capability_r15, + { "requestSTTI-SPT-Capability-r15", "lte-rrc.requestSTTI_SPT_Capability_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_requestSTTI_SPT_Capability_r15_vals), 0, + "T_requestSTTI_SPT_Capability_r15", HFILL }}, + { &hf_lte_rrc_eutra_nr_only_r15, + { "eutra-nr-only-r15", "lte-rrc.eutra_nr_only_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_eutra_nr_only_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_188, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_61", HFILL }}, { &hf_lte_rrc_UE_CapabilityRequest_item, { "RAT-Type", "lte-rrc.RAT_Type", FT_UINT32, BASE_DEC, VALS(lte_rrc_RAT_Type_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_criticalExtensions_46, + { &hf_lte_rrc_criticalExtensions_49, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_46_vals), 0, - "T_criticalExtensions_46", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_49_vals), 0, + "T_criticalExtensions_49", HFILL }}, { &hf_lte_rrc_c1_43, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_43_vals), 0, @@ -94728,19 +114157,19 @@ void proto_register_lte_rrc(void) { { "ueCapabilityInformation-r8", "lte-rrc.ueCapabilityInformation_r8_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityInformation_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_46, + { &hf_lte_rrc_criticalExtensionsFuture_48, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_46", HFILL }}, + "T_criticalExtensionsFuture_48", HFILL }}, { &hf_lte_rrc_ue_CapabilityRAT_ContainerList, { "ue-CapabilityRAT-ContainerList", "lte-rrc.ue_CapabilityRAT_ContainerList", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_165, + { &hf_lte_rrc_nonCriticalExtension_189, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityInformation_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_166, + { &hf_lte_rrc_nonCriticalExtension_190, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityInformation_v1250_IEs", HFILL }}, @@ -94748,14 +114177,14 @@ void proto_register_lte_rrc(void) { { "ue-RadioPagingInfo-r12", "lte-rrc.ue_RadioPagingInfo_r12_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_167, + { &hf_lte_rrc_nonCriticalExtension_191, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_56", HFILL }}, - { &hf_lte_rrc_criticalExtensions_47, + "T_nonCriticalExtension_62", HFILL }}, + { &hf_lte_rrc_criticalExtensions_50, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_47_vals), 0, - "T_criticalExtensions_47", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_50_vals), 0, + "T_criticalExtensions_50", HFILL }}, { &hf_lte_rrc_c1_44, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_44_vals), 0, @@ -94764,10 +114193,10 @@ void proto_register_lte_rrc(void) { { "ueInformationRequest-r9", "lte-rrc.ueInformationRequest_r9_element", FT_NONE, BASE_NONE, NULL, 0, "UEInformationRequest_r9_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_47, + { &hf_lte_rrc_criticalExtensionsFuture_49, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_47", HFILL }}, + "T_criticalExtensionsFuture_49", HFILL }}, { &hf_lte_rrc_rach_ReportReq_r9, { "rach-ReportReq-r9", "lte-rrc.rach_ReportReq_r9", FT_BOOLEAN, BASE_NONE, NULL, 0, @@ -94776,11 +114205,11 @@ void proto_register_lte_rrc(void) { { "rlf-ReportReq-r9", "lte-rrc.rlf_ReportReq_r9", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_168, + { &hf_lte_rrc_nonCriticalExtension_192, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UEInformationRequest_v930_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_169, + { &hf_lte_rrc_nonCriticalExtension_193, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UEInformationRequest_v1020_IEs", HFILL }}, @@ -94788,7 +114217,7 @@ void proto_register_lte_rrc(void) { { "logMeasReportReq-r10", "lte-rrc.logMeasReportReq_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasReportReq_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_170, + { &hf_lte_rrc_nonCriticalExtension_194, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UEInformationRequest_v1130_IEs", HFILL }}, @@ -94796,7 +114225,7 @@ void proto_register_lte_rrc(void) { { "connEstFailReportReq-r11", "lte-rrc.connEstFailReportReq_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_connEstFailReportReq_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_171, + { &hf_lte_rrc_nonCriticalExtension_195, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UEInformationRequest_v1250_IEs", HFILL }}, @@ -94804,14 +114233,26 @@ void proto_register_lte_rrc(void) { { "mobilityHistoryReportReq-r12", "lte-rrc.mobilityHistoryReportReq_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mobilityHistoryReportReq_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_172, + { &hf_lte_rrc_nonCriticalExtension_196, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_57", HFILL }}, - { &hf_lte_rrc_criticalExtensions_48, + "UEInformationRequest_v1530_IEs", HFILL }}, + { &hf_lte_rrc_idleModeMeasurementReq_r15, + { "idleModeMeasurementReq-r15", "lte-rrc.idleModeMeasurementReq_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_idleModeMeasurementReq_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_flightPathInfoReq_r15, + { "flightPathInfoReq-r15", "lte-rrc.flightPathInfoReq_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "FlightPathInfoReportConfig_r15", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_197, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_63", HFILL }}, + { &hf_lte_rrc_criticalExtensions_51, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_48_vals), 0, - "T_criticalExtensions_48", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_51_vals), 0, + "T_criticalExtensions_51", HFILL }}, { &hf_lte_rrc_c1_45, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_45_vals), 0, @@ -94820,10 +114261,10 @@ void proto_register_lte_rrc(void) { { "ueInformationResponse-r9", "lte-rrc.ueInformationResponse_r9_element", FT_NONE, BASE_NONE, NULL, 0, "UEInformationResponse_r9_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_48, + { &hf_lte_rrc_criticalExtensionsFuture_50, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_48", HFILL }}, + "T_criticalExtensionsFuture_50", HFILL }}, { &hf_lte_rrc_rach_Report_r9, { "rach-Report-r9", "lte-rrc.rach_Report_r9_element", FT_NONE, BASE_NONE, NULL, 0, @@ -94840,7 +114281,7 @@ void proto_register_lte_rrc(void) { { "rlf-Report-r9", "lte-rrc.rlf_Report_r9_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_173, + { &hf_lte_rrc_nonCriticalExtension_198, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UEInformationResponse_v930_IEs", HFILL }}, @@ -94848,15 +114289,15 @@ void proto_register_lte_rrc(void) { { "rlf-Report-v9e0", "lte-rrc.rlf_Report_v9e0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_174, + { &hf_lte_rrc_nonCriticalExtension_199, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_58", HFILL }}, + "T_nonCriticalExtension_64", HFILL }}, { &hf_lte_rrc_lateNonCriticalExtension_06, { "lateNonCriticalExtension", "lte-rrc.lateNonCriticalExtension", FT_BYTES, BASE_NONE, NULL, 0, "T_lateNonCriticalExtension_05", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_175, + { &hf_lte_rrc_nonCriticalExtension_200, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UEInformationResponse_v1020_IEs", HFILL }}, @@ -94864,7 +114305,7 @@ void proto_register_lte_rrc(void) { { "logMeasReport-r10", "lte-rrc.logMeasReport_r10_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_176, + { &hf_lte_rrc_nonCriticalExtension_201, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UEInformationResponse_v1130_IEs", HFILL }}, @@ -94872,7 +114313,7 @@ void proto_register_lte_rrc(void) { { "connEstFailReport-r11", "lte-rrc.connEstFailReport_r11_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_177, + { &hf_lte_rrc_nonCriticalExtension_202, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UEInformationResponse_v1250_IEs", HFILL }}, @@ -94880,10 +114321,22 @@ void proto_register_lte_rrc(void) { { "mobilityHistoryReport-r12", "lte-rrc.mobilityHistoryReport_r12", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_178, + { &hf_lte_rrc_nonCriticalExtension_203, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_59", HFILL }}, + "UEInformationResponse_v1530_IEs", HFILL }}, + { &hf_lte_rrc_measResultListIdle_r15, + { "measResultListIdle-r15", "lte-rrc.measResultListIdle_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_flightPathInfoReport_r15, + { "flightPathInfoReport-r15", "lte-rrc.flightPathInfoReport_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_204, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_65", HFILL }}, { &hf_lte_rrc_measResultLastServCell_r9, { "measResultLastServCell-r9", "lte-rrc.measResultLastServCell_r9_element", FT_NONE, BASE_NONE, NULL, 0, @@ -95028,6 +114481,14 @@ void proto_register_lte_rrc(void) { { "measResultLastServCell-v1360", "lte-rrc.measResultLastServCell_v1360", FT_INT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_RSRP_Range_v1360_vals_ext, 0, "RSRP_Range_v1360", HFILL }}, + { &hf_lte_rrc_logMeasResultListBT_r15, + { "logMeasResultListBT-r15", "lte-rrc.logMeasResultListBT_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_logMeasResultListWLAN_r15, + { "logMeasResultListWLAN-r15", "lte-rrc.logMeasResultListWLAN_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_measResultListEUTRA_v9e0, { "measResultListEUTRA-v9e0", "lte-rrc.measResultListEUTRA_v9e0", FT_UINT32, BASE_DEC, NULL, 0, @@ -95092,6 +114553,14 @@ void proto_register_lte_rrc(void) { { "logMeasAvailable-r10", "lte-rrc.logMeasAvailable_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailable_r10_03_vals), 0, "T_logMeasAvailable_r10_03", HFILL }}, + { &hf_lte_rrc_logMeasAvailableBT_r15_04, + { "logMeasAvailableBT-r15", "lte-rrc.logMeasAvailableBT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableBT_r15_04_vals), 0, + "T_logMeasAvailableBT_r15_04", HFILL }}, + { &hf_lte_rrc_logMeasAvailableWLAN_r15_04, + { "logMeasAvailableWLAN-r15", "lte-rrc.logMeasAvailableWLAN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logMeasAvailableWLAN_r15_04_vals), 0, + "T_logMeasAvailableWLAN_r15_04", HFILL }}, { &hf_lte_rrc_LogMeasInfoList_r10_item, { "LogMeasInfo-r10", "lte-rrc.LogMeasInfo_r10_element", FT_NONE, BASE_NONE, NULL, 0, @@ -95276,10 +114745,30 @@ void proto_register_lte_rrc(void) { { "measResultFailedCell-v1360", "lte-rrc.measResultFailedCell_v1360", FT_INT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_RSRP_Range_v1360_vals_ext, 0, "RSRP_Range_v1360", HFILL }}, - { &hf_lte_rrc_criticalExtensions_49, + { &hf_lte_rrc_flightPath_r15, + { "flightPath-r15", "lte-rrc.flightPath_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxWayPoint_r15_OF_WayPointLocation_r15", HFILL }}, + { &hf_lte_rrc_flightPath_r15_item, + { "WayPointLocation-r15", "lte-rrc.WayPointLocation_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_205, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_66", HFILL }}, + { &hf_lte_rrc_wayPointLocation_r15, + { "wayPointLocation-r15", "lte-rrc.wayPointLocation_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "LocationInfo_r10", HFILL }}, + { &hf_lte_rrc_timeStamp_r15, + { "timeStamp-r15", "lte-rrc.timeStamp_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "AbsoluteTimeInfo_r10", HFILL }}, + { &hf_lte_rrc_criticalExtensions_52, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_49_vals), 0, - "T_criticalExtensions_49", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_52_vals), 0, + "T_criticalExtensions_52", HFILL }}, { &hf_lte_rrc_c1_46, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_46_vals), 0, @@ -95288,10 +114777,10 @@ void proto_register_lte_rrc(void) { { "ulHandoverPreparationTransfer-r8", "lte-rrc.ulHandoverPreparationTransfer_r8_element", FT_NONE, BASE_NONE, NULL, 0, "ULHandoverPreparationTransfer_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_49, + { &hf_lte_rrc_criticalExtensionsFuture_51, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_49", HFILL }}, + "T_criticalExtensionsFuture_51", HFILL }}, { &hf_lte_rrc_meid, { "meid", "lte-rrc.meid", FT_BYTES, BASE_NONE, NULL, 0, @@ -95300,18 +114789,18 @@ void proto_register_lte_rrc(void) { { "dedicatedInfo", "lte-rrc.dedicatedInfo", FT_BYTES, BASE_NONE, NULL, 0, "DedicatedInfoCDMA2000", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_179, + { &hf_lte_rrc_nonCriticalExtension_206, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "ULHandoverPreparationTransfer_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_180, + { &hf_lte_rrc_nonCriticalExtension_207, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_60", HFILL }}, - { &hf_lte_rrc_criticalExtensions_50, + "T_nonCriticalExtension_67", HFILL }}, + { &hf_lte_rrc_criticalExtensions_53, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_50_vals), 0, - "T_criticalExtensions_50", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_53_vals), 0, + "T_criticalExtensions_53", HFILL }}, { &hf_lte_rrc_c1_47, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_47_vals), 0, @@ -95320,26 +114809,26 @@ void proto_register_lte_rrc(void) { { "ulInformationTransfer-r8", "lte-rrc.ulInformationTransfer_r8_element", FT_NONE, BASE_NONE, NULL, 0, "ULInformationTransfer_r8_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_50, + { &hf_lte_rrc_criticalExtensionsFuture_52, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_50", HFILL }}, + "T_criticalExtensionsFuture_52", HFILL }}, { &hf_lte_rrc_dedicatedInfoType_01, { "dedicatedInfoType", "lte-rrc.dedicatedInfoType", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dedicatedInfoType_01_vals), 0, "T_dedicatedInfoType_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_181, + { &hf_lte_rrc_nonCriticalExtension_208, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "ULInformationTransfer_v8a0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_182, + { &hf_lte_rrc_nonCriticalExtension_209, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_61", HFILL }}, - { &hf_lte_rrc_criticalExtensions_51, + "T_nonCriticalExtension_68", HFILL }}, + { &hf_lte_rrc_criticalExtensions_54, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_51_vals), 0, - "T_criticalExtensions_51", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_54_vals), 0, + "T_criticalExtensions_54", HFILL }}, { &hf_lte_rrc_c1_48, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_48_vals), 0, @@ -95348,22 +114837,22 @@ void proto_register_lte_rrc(void) { { "ulInformationTransferMRDC-r15", "lte-rrc.ulInformationTransferMRDC_r15_element", FT_NONE, BASE_NONE, NULL, 0, "ULInformationTransferMRDC_r15_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_51, + { &hf_lte_rrc_criticalExtensionsFuture_53, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_51", HFILL }}, + "T_criticalExtensionsFuture_53", HFILL }}, { &hf_lte_rrc_ul_DCCH_MessageNR_r15, { "ul-DCCH-MessageNR-r15", "lte-rrc.ul_DCCH_MessageNR_r15", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_183, + { &hf_lte_rrc_nonCriticalExtension_210, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_62", HFILL }}, - { &hf_lte_rrc_criticalExtensions_52, + "T_nonCriticalExtension_69", HFILL }}, + { &hf_lte_rrc_criticalExtensions_55, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_52_vals), 0, - "T_criticalExtensions_52", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_55_vals), 0, + "T_criticalExtensions_55", HFILL }}, { &hf_lte_rrc_c1_49, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_49_vals), 0, @@ -95372,15 +114861,15 @@ void proto_register_lte_rrc(void) { { "wlanConnectionStatusReport-r13", "lte-rrc.wlanConnectionStatusReport_r13_element", FT_NONE, BASE_NONE, NULL, 0, "WLANConnectionStatusReport_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_52, + { &hf_lte_rrc_criticalExtensionsFuture_54, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_52", HFILL }}, + "T_criticalExtensionsFuture_54", HFILL }}, { &hf_lte_rrc_wlan_Status_r13, { "wlan-Status-r13", "lte-rrc.wlan_Status_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_WLAN_Status_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_184, + { &hf_lte_rrc_nonCriticalExtension_211, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "WLANConnectionStatusReport_v1430_IEs", HFILL }}, @@ -95388,10 +114877,14 @@ void proto_register_lte_rrc(void) { { "wlan-Status-v1430", "lte-rrc.wlan_Status_v1430", FT_UINT32, BASE_DEC, VALS(lte_rrc_WLAN_Status_v1430_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_185, + { &hf_lte_rrc_nonCriticalExtension_212, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_63", HFILL }}, + "T_nonCriticalExtension_70", HFILL }}, + { &hf_lte_rrc_assistanceDataSIB_Element_r15, + { "assistanceDataSIB-Element-r15", "lte-rrc.assistanceDataSIB_Element_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, { &hf_lte_rrc_ac_BarringInfo, { "ac-BarringInfo", "lte-rrc.ac_BarringInfo_element", FT_NONE, BASE_NONE, NULL, 0, @@ -95516,6 +115009,22 @@ void proto_register_lte_rrc(void) { { "plmn-InfoList-r15", "lte-rrc.plmn_InfoList_r15", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_cp_EDT_r15, + { "cp-EDT-r15", "lte-rrc.cp_EDT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cp_EDT_r15_vals), 0, + "T_cp_EDT_r15", HFILL }}, + { &hf_lte_rrc_up_EDT_r15, + { "up-EDT-r15", "lte-rrc.up_EDT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_up_EDT_r15_vals), 0, + "T_up_EDT_r15", HFILL }}, + { &hf_lte_rrc_idleModeMeasurements_r15, + { "idleModeMeasurements-r15", "lte-rrc.idleModeMeasurements_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_idleModeMeasurements_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_reducedCP_LatencyEnabled_r15, + { "reducedCP-LatencyEnabled-r15", "lte-rrc.reducedCP_LatencyEnabled_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_reducedCP_LatencyEnabled_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_multiBandInfoList_01, { "multiBandInfoList", "lte-rrc.multiBandInfoList", FT_UINT32, BASE_DEC, NULL, 0, @@ -95524,7 +115033,7 @@ void proto_register_lte_rrc(void) { { "AdditionalSpectrumEmission", "lte-rrc.AdditionalSpectrumEmission", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_186, + { &hf_lte_rrc_nonCriticalExtension_213, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType2_v9e0_IEs", HFILL }}, @@ -95532,14 +115041,14 @@ void proto_register_lte_rrc(void) { { "ul-CarrierFreq-v9e0", "lte-rrc.ul_CarrierFreq_v9e0", FT_UINT32, BASE_DEC, NULL, 0, "ARFCN_ValueEUTRA_v9e0", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_187, + { &hf_lte_rrc_nonCriticalExtension_214, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType2_v9i0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_188, + { &hf_lte_rrc_nonCriticalExtension_215, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension", FT_BYTES, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_64", HFILL }}, + "T_nonCriticalExtension_71", HFILL }}, { &hf_lte_rrc_dummy, { "dummy", "lte-rrc.dummy_element", FT_NONE, BASE_NONE, NULL, 0, @@ -95560,10 +115069,10 @@ void proto_register_lte_rrc(void) { { "AdditionalSpectrumEmission-v10l0", "lte-rrc.AdditionalSpectrumEmission_v10l0", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_189, + { &hf_lte_rrc_nonCriticalExtension_216, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_65", HFILL }}, + "T_nonCriticalExtension_72", HFILL }}, { &hf_lte_rrc_ac_BarringFactor, { "ac-BarringFactor", "lte-rrc.ac_BarringFactor", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ac_BarringFactor_vals), 0, @@ -95828,6 +115337,14 @@ void proto_register_lte_rrc(void) { { "cellReselectionInfoCommon-v1460", "lte-rrc.cellReselectionInfoCommon_v1460_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_cellReselectionInfoHSDN_r15, + { "cellReselectionInfoHSDN-r15", "lte-rrc.cellReselectionInfoHSDN_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_crs_IntfMitigNeighCellsCE_r15, + { "crs-IntfMitigNeighCellsCE-r15", "lte-rrc.crs_IntfMitigNeighCellsCE_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_crs_IntfMitigNeighCellsCE_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_redistributionFactorServing_r13, { "redistributionFactorServing-r13", "lte-rrc.redistributionFactorServing_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -95844,18 +115361,22 @@ void proto_register_lte_rrc(void) { { "redistrOnPagingOnly-r13", "lte-rrc.redistrOnPagingOnly_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_redistrOnPagingOnly_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_190, + { &hf_lte_rrc_nonCriticalExtension_217, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType3_v10l0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_191, + { &hf_lte_rrc_nonCriticalExtension_218, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_66", HFILL }}, + "T_nonCriticalExtension_73", HFILL }}, { &hf_lte_rrc_s_SearchDeltaP_r14, { "s-SearchDeltaP-r14", "lte-rrc.s_SearchDeltaP_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_s_SearchDeltaP_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_cellEquivalentSize_r15, + { "cellEquivalentSize-r15", "lte-rrc.cellEquivalentSize_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_2_16", HFILL }}, { &hf_lte_rrc_intraFreqNeighCellList, { "intraFreqNeighCellList", "lte-rrc.intraFreqNeighCellList", FT_UINT32, BASE_DEC, NULL, 0, @@ -95868,10 +115389,18 @@ void proto_register_lte_rrc(void) { { "csg-PhysCellIdRange", "lte-rrc.csg_PhysCellIdRange_element", FT_NONE, BASE_NONE, NULL, 0, "PhysCellIdRange", HFILL }}, + { &hf_lte_rrc_intraFreqNeighHSDN_CellList_r15, + { "intraFreqNeighHSDN-CellList-r15", "lte-rrc.intraFreqNeighHSDN_CellList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_IntraFreqNeighCellList_item, { "IntraFreqNeighCellInfo", "lte-rrc.IntraFreqNeighCellInfo_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_IntraFreqNeighHSDN_CellList_r15_item, + { "PhysCellIdRange", "lte-rrc.PhysCellIdRange_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_q_OffsetCell, { "q-OffsetCell", "lte-rrc.q_OffsetCell", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_Q_OffsetRange_vals_ext, 0, @@ -95924,6 +115453,18 @@ void proto_register_lte_rrc(void) { { "scptm-FreqOffset-r14", "lte-rrc.scptm_FreqOffset_r14", FT_UINT32, BASE_CUSTOM, CF_FUNC(lte_rrc_scptm_FreqOffset_r14_fmt), 0, "INTEGER_1_8", HFILL }}, + { &hf_lte_rrc_interFreqCarrierFreqList_v1530, + { "interFreqCarrierFreqList-v1530", "lte-rrc.interFreqCarrierFreqList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_interFreqCarrierFreqListExt_v1530, + { "interFreqCarrierFreqListExt-v1530", "lte-rrc.interFreqCarrierFreqListExt_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_measIdleConfigSIB_r15, + { "measIdleConfigSIB-r15", "lte-rrc.measIdleConfigSIB_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_interFreqCarrierFreqList_v8h0, { "interFreqCarrierFreqList-v8h0", "lte-rrc.interFreqCarrierFreqList_v8h0", FT_UINT32, BASE_DEC, NULL, 0, @@ -95932,7 +115473,7 @@ void proto_register_lte_rrc(void) { { "InterFreqCarrierFreqInfo-v8h0", "lte-rrc.InterFreqCarrierFreqInfo_v8h0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_192, + { &hf_lte_rrc_nonCriticalExtension_219, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType5_v9e0_IEs", HFILL }}, @@ -95944,7 +115485,7 @@ void proto_register_lte_rrc(void) { { "InterFreqCarrierFreqInfo-v9e0", "lte-rrc.InterFreqCarrierFreqInfo_v9e0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_193, + { &hf_lte_rrc_nonCriticalExtension_220, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType5_v10j0_IEs", HFILL }}, @@ -95956,7 +115497,7 @@ void proto_register_lte_rrc(void) { { "InterFreqCarrierFreqInfo-v10j0", "lte-rrc.InterFreqCarrierFreqInfo_v10j0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_194, + { &hf_lte_rrc_nonCriticalExtension_221, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType5_v10l0_IEs", HFILL }}, @@ -95968,7 +115509,7 @@ void proto_register_lte_rrc(void) { { "InterFreqCarrierFreqInfo-v10l0", "lte-rrc.InterFreqCarrierFreqInfo_v10l0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_195, + { &hf_lte_rrc_nonCriticalExtension_222, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType5_v13a0_IEs", HFILL }}, @@ -95976,10 +115517,10 @@ void proto_register_lte_rrc(void) { { "interFreqCarrierFreqList-v13a0", "lte-rrc.interFreqCarrierFreqList_v13a0", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_196, + { &hf_lte_rrc_nonCriticalExtension_223, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_67", HFILL }}, + "T_nonCriticalExtension_74", HFILL }}, { &hf_lte_rrc_InterFreqCarrierFreqList_item, { "InterFreqCarrierFreqInfo", "lte-rrc.InterFreqCarrierFreqInfo_element", FT_NONE, BASE_NONE, NULL, 0, @@ -96000,6 +115541,10 @@ void proto_register_lte_rrc(void) { { "InterFreqCarrierFreqInfo-v1360", "lte-rrc.InterFreqCarrierFreqInfo_v1360_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_InterFreqCarrierFreqList_v1530_item, + { "InterFreqCarrierFreqInfo-v1530", "lte-rrc.InterFreqCarrierFreqInfo_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_InterFreqCarrierFreqListExt_r12_item, { "InterFreqCarrierFreqInfo-r12", "lte-rrc.InterFreqCarrierFreqInfo_r12_element", FT_NONE, BASE_NONE, NULL, 0, @@ -96020,6 +115565,10 @@ void proto_register_lte_rrc(void) { { "InterFreqCarrierFreqInfo-v1360", "lte-rrc.InterFreqCarrierFreqInfo_v1360_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_InterFreqCarrierFreqListExt_v1530_item, + { "InterFreqCarrierFreqInfo-v1530", "lte-rrc.InterFreqCarrierFreqInfo_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_dl_CarrierFreq, { "dl-CarrierFreq", "lte-rrc.dl_CarrierFreq", FT_UINT32, BASE_DEC, NULL, 0, @@ -96140,10 +115689,22 @@ void proto_register_lte_rrc(void) { { "redistributionInterFreqInfo-r13", "lte-rrc.redistributionInterFreqInfo_r13_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_hsdn_Indication_r15, + { "hsdn-Indication-r15", "lte-rrc.hsdn_Indication_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_interFreqNeighHSDN_CellList_r15, + { "interFreqNeighHSDN-CellList-r15", "lte-rrc.interFreqNeighHSDN_CellList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_InterFreqNeighCellList_item, { "InterFreqNeighCellInfo", "lte-rrc.InterFreqNeighCellInfo_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_InterFreqNeighHSDN_CellList_r15_item, + { "PhysCellIdRange", "lte-rrc.PhysCellIdRange_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_InterFreqBlackCellList_item, { "PhysCellIdRange", "lte-rrc.PhysCellIdRange_element", FT_NONE, BASE_NONE, NULL, 0, @@ -96216,10 +115777,10 @@ void proto_register_lte_rrc(void) { { "CarrierFreqInfoUTRA-FDD-v8h0", "lte-rrc.CarrierFreqInfoUTRA_FDD_v8h0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_197, + { &hf_lte_rrc_nonCriticalExtension_224, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_68", HFILL }}, + "T_nonCriticalExtension_75", HFILL }}, { &hf_lte_rrc_reducedMeasPerformance_r12_02, { "reducedMeasPerformance-r12", "lte-rrc.reducedMeasPerformance_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_reducedMeasPerformance_r12_02_vals), 0, @@ -96680,6 +116241,10 @@ void proto_register_lte_rrc(void) { { "dataCodingScheme-r9", "lte-rrc.dataCodingScheme_r9", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_warningAreaCoordinatesSegment_r15, + { "warningAreaCoordinatesSegment-r15", "lte-rrc.warningAreaCoordinatesSegment_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING", HFILL }}, { &hf_lte_rrc_mbsfn_AreaInfoList_r9, { "mbsfn-AreaInfoList-r9", "lte-rrc.mbsfn_AreaInfoList_r9", FT_UINT32, BASE_DEC, NULL, 0, @@ -96708,6 +116273,10 @@ void proto_register_lte_rrc(void) { { "EAB-ConfigPLMN-r11", "lte-rrc.EAB_ConfigPLMN_r11_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_eab_PerRSRP_r15, + { "eab-PerRSRP-r15", "lte-rrc.eab_PerRSRP_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_eab_PerRSRP_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_eab_Config_r11, { "eab-Config-r11", "lte-rrc.eab_Config_r11_element", FT_NONE, BASE_NONE, NULL, 0, @@ -97256,6 +116825,202 @@ void proto_register_lte_rrc(void) { { "cbr-CommonTxConfigList-r14", "lte-rrc.cbr_CommonTxConfigList_r14_element", FT_NONE, BASE_NONE, NULL, 0, "SL_CBR_CommonTxConfigList_r14", HFILL }}, + { &hf_lte_rrc_carrierFreqListNR_r15, + { "carrierFreqListNR-r15", "lte-rrc.carrierFreqListNR_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_t_ReselectionNR_r15, + { "t-ReselectionNR-r15", "lte-rrc.t_ReselectionNR_r15", + FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0, + "T_Reselection", HFILL }}, + { &hf_lte_rrc_t_ReselectionNR_SF_r15, + { "t-ReselectionNR-SF-r15", "lte-rrc.t_ReselectionNR_SF_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SpeedStateScaleFactors", HFILL }}, + { &hf_lte_rrc_CarrierFreqListNR_r15_item, + { "CarrierFreqNR-r15", "lte-rrc.CarrierFreqNR_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_multiBandInfoList_r15, + { "multiBandInfoList-r15", "lte-rrc.multiBandInfoList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "MultiFrequencyBandListNR_r15", HFILL }}, + { &hf_lte_rrc_multiBandInfoListSUL_r15, + { "multiBandInfoListSUL-r15", "lte-rrc.multiBandInfoListSUL_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "MultiFrequencyBandListNR_r15", HFILL }}, + { &hf_lte_rrc_measTimingConfig_r15, + { "measTimingConfig-r15", "lte-rrc.measTimingConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "MTC_SSB_NR_r15", HFILL }}, + { &hf_lte_rrc_subcarrierSpacingSSB_r15_01, + { "subcarrierSpacingSSB-r15", "lte-rrc.subcarrierSpacingSSB_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_subcarrierSpacingSSB_r15_01_vals), 0, + "T_subcarrierSpacingSSB_r15_01", HFILL }}, + { &hf_lte_rrc_ss_RSSI_Measurement_r15, + { "ss-RSSI-Measurement-r15", "lte-rrc.ss_RSSI_Measurement_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_threshX_High_r15, + { "threshX-High-r15", "lte-rrc.threshX_High_r15", + FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_ReselectionThreshold_vals_ext, 0, + "ReselectionThreshold", HFILL }}, + { &hf_lte_rrc_threshX_Low_r15, + { "threshX-Low-r15", "lte-rrc.threshX_Low_r15", + FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_ReselectionThreshold_vals_ext, 0, + "ReselectionThreshold", HFILL }}, + { &hf_lte_rrc_threshX_Q_r15, + { "threshX-Q-r15", "lte-rrc.threshX_Q_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_threshX_HighQ_r15, + { "threshX-HighQ-r15", "lte-rrc.threshX_HighQ_r15", + FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0, + "ReselectionThresholdQ_r9", HFILL }}, + { &hf_lte_rrc_threshX_LowQ_r15, + { "threshX-LowQ-r15", "lte-rrc.threshX_LowQ_r15", + FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0, + "ReselectionThresholdQ_r9", HFILL }}, + { &hf_lte_rrc_q_RxLevMin_r15, + { "q-RxLevMin-r15", "lte-rrc.q_RxLevMin_r15", + FT_INT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_q_RxLevMin_vals_ext, 0, + "INTEGER_M70_M22", HFILL }}, + { &hf_lte_rrc_q_RxLevMinSUL_r15, + { "q-RxLevMinSUL-r15", "lte-rrc.q_RxLevMinSUL_r15", + FT_INT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_q_RxLevMin_vals_ext, 0, + "INTEGER_M70_M22", HFILL }}, + { &hf_lte_rrc_p_MaxNR_r15, + { "p-MaxNR-r15", "lte-rrc.p_MaxNR_r15", + FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ns_PmaxListNR_r15, + { "ns-PmaxListNR-r15", "lte-rrc.ns_PmaxListNR_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_q_QualMin_r15, + { "q-QualMin-r15", "lte-rrc.q_QualMin_r15", + FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0, + "Q_QualMin_r9", HFILL }}, + { &hf_lte_rrc_deriveSSB_IndexFromCell_r15, + { "deriveSSB-IndexFromCell-r15", "lte-rrc.deriveSSB_IndexFromCell_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_maxRS_IndexCellQual_r15, + { "maxRS-IndexCellQual-r15", "lte-rrc.maxRS_IndexCellQual_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "MaxRS_IndexCellQualNR_r15", HFILL }}, + { &hf_lte_rrc_threshRS_Index_r15, + { "threshRS-Index-r15", "lte-rrc.threshRS_Index_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "ThresholdListNR_r15", HFILL }}, + { &hf_lte_rrc_uac_BarringForCommon_r15, + { "uac-BarringForCommon-r15", "lte-rrc.uac_BarringForCommon_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "UAC_BarringPerCatList_r15", HFILL }}, + { &hf_lte_rrc_uac_BarringPerPLMN_List_r15, + { "uac-BarringPerPLMN-List-r15", "lte-rrc.uac_BarringPerPLMN_List_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_uac_BarringInfoSetList_r15, + { "uac-BarringInfoSetList-r15", "lte-rrc.uac_BarringInfoSetList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_uac_AC1_SelectAssistInfo_r15, + { "uac-AC1-SelectAssistInfo-r15", "lte-rrc.uac_AC1_SelectAssistInfo_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_uac_AC1_SelectAssistInfo_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_plmnCommon_r15, + { "plmnCommon-r15", "lte-rrc.plmnCommon_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_UAC_AC1_SelectAssistInfo_r15_vals), 0, + "UAC_AC1_SelectAssistInfo_r15", HFILL }}, + { &hf_lte_rrc_individualPLMNList_r15, + { "individualPLMNList-r15", "lte-rrc.individualPLMNList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_2_maxPLMN_r11_OF_UAC_AC1_SelectAssistInfo_r15", HFILL }}, + { &hf_lte_rrc_individualPLMNList_r15_item, + { "UAC-AC1-SelectAssistInfo-r15", "lte-rrc.UAC_AC1_SelectAssistInfo_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_UAC_AC1_SelectAssistInfo_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_UAC_BarringPerPLMN_List_r15_item, + { "UAC-BarringPerPLMN-r15", "lte-rrc.UAC_BarringPerPLMN_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_plmn_IdentityIndex_r15, + { "plmn-IdentityIndex-r15", "lte-rrc.plmn_IdentityIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxPLMN_r11", HFILL }}, + { &hf_lte_rrc_uac_AC_BarringListType_r15, + { "uac-AC-BarringListType-r15", "lte-rrc.uac_AC_BarringListType_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_uac_AC_BarringListType_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_uac_ImplicitAC_BarringList_r15, + { "uac-ImplicitAC-BarringList-r15", "lte-rrc.uac_ImplicitAC_BarringList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_maxAccessCat_1_r15_OF_UAC_BarringInfoSetIndex_r15", HFILL }}, + { &hf_lte_rrc_uac_ImplicitAC_BarringList_r15_item, + { "UAC-BarringInfoSetIndex-r15", "lte-rrc.UAC_BarringInfoSetIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_uac_ExplicitAC_BarringList_r15, + { "uac-ExplicitAC-BarringList-r15", "lte-rrc.uac_ExplicitAC_BarringList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "UAC_BarringPerCatList_r15", HFILL }}, + { &hf_lte_rrc_UAC_BarringPerCatList_r15_item, + { "UAC-BarringPerCat-r15", "lte-rrc.UAC_BarringPerCat_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_accessCategory_r15, + { "accessCategory-r15", "lte-rrc.accessCategory_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxAccessCat_1_r15", HFILL }}, + { &hf_lte_rrc_uac_barringInfoSetIndex_r15, + { "uac-barringInfoSetIndex-r15", "lte-rrc.uac_barringInfoSetIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_UAC_BarringInfoSetList_r15_item, + { "UAC-BarringInfoSet-r15", "lte-rrc.UAC_BarringInfoSet_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_uac_BarringFactor_r15, + { "uac-BarringFactor-r15", "lte-rrc.uac_BarringFactor_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_uac_BarringFactor_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_uac_BarringTime_r15, + { "uac-BarringTime-r15", "lte-rrc.uac_BarringTime_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_uac_BarringTime_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_uac_BarringForAccessIdentity_r15, + { "uac-BarringForAccessIdentity-r15", "lte-rrc.uac_BarringForAccessIdentity_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_7", HFILL }}, + { &hf_lte_rrc_v2x_InterFreqInfoList_r15, + { "v2x-InterFreqInfoList-r15", "lte-rrc.v2x_InterFreqInfoList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_InterFreqInfoListV2X_r14", HFILL }}, + { &hf_lte_rrc_cbr_pssch_TxConfigList_r15, + { "cbr-pssch-TxConfigList-r15", "lte-rrc.cbr_pssch_TxConfigList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_CBR_PPPP_TxConfigList_r15", HFILL }}, + { &hf_lte_rrc_v2x_PacketDuplicationConfig_r15, + { "v2x-PacketDuplicationConfig-r15", "lte-rrc.v2x_PacketDuplicationConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SL_V2X_PacketDuplicationConfig_r15", HFILL }}, + { &hf_lte_rrc_syncFreqList_r15, + { "syncFreqList-r15", "lte-rrc.syncFreqList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_V2X_SyncFreqList_r15", HFILL }}, + { &hf_lte_rrc_slss_TxMultiFreq_r15, + { "slss-TxMultiFreq-r15", "lte-rrc.slss_TxMultiFreq_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_slss_TxMultiFreq_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_v2x_FreqSelectionConfigList_r15, + { "v2x-FreqSelectionConfigList-r15", "lte-rrc.v2x_FreqSelectionConfigList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_V2X_FreqSelectionConfigList_r15", HFILL }}, + { &hf_lte_rrc_threshS_RSSI_CBR_r14, + { "threshS-RSSI-CBR-r14", "lte-rrc.threshS_RSSI_CBR_r14", + FT_UINT32, BASE_CUSTOM, CF_FUNC(lte_rrc_threshS_RSSI_CBR_r14_fmt), 0, + "INTEGER_0_45", HFILL }}, { &hf_lte_rrc_antennaPortsCount, { "antennaPortsCount", "lte-rrc.antennaPortsCount", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_antennaPortsCount_vals), 0, @@ -97348,6 +117113,98 @@ void proto_register_lte_rrc(void) { { "ce-UE-TxAntennaSelection-config-r14", "lte-rrc.ce_UE_TxAntennaSelection_config_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_UE_TxAntennaSelection_config_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_setup_07, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_07", HFILL }}, + { &hf_lte_rrc_transmissionModeDL_MBSFN_r15, + { "transmissionModeDL-MBSFN-r15", "lte-rrc.transmissionModeDL_MBSFN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_transmissionModeDL_MBSFN_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_transmissionModeDL_nonMBSFN_r15, + { "transmissionModeDL-nonMBSFN-r15", "lte-rrc.transmissionModeDL_nonMBSFN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_transmissionModeDL_nonMBSFN_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_codebookSubsetRestriction_01, + { "codebookSubsetRestriction", "lte-rrc.codebookSubsetRestriction", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_codebookSubsetRestriction_01_vals), 0, + "T_codebookSubsetRestriction_01", HFILL }}, + { &hf_lte_rrc_n2TxAntenna_tm3_r15, + { "n2TxAntenna-tm3-r15", "lte-rrc.n2TxAntenna_tm3_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_2", HFILL }}, + { &hf_lte_rrc_n4TxAntenna_tm3_r15, + { "n4TxAntenna-tm3-r15", "lte-rrc.n4TxAntenna_tm3_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_4", HFILL }}, + { &hf_lte_rrc_n2TxAntenna_tm4_r15, + { "n2TxAntenna-tm4-r15", "lte-rrc.n2TxAntenna_tm4_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_6", HFILL }}, + { &hf_lte_rrc_n4TxAntenna_tm4_r15, + { "n4TxAntenna-tm4-r15", "lte-rrc.n4TxAntenna_tm4_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_64", HFILL }}, + { &hf_lte_rrc_n2TxAntenna_tm5_r15, + { "n2TxAntenna-tm5-r15", "lte-rrc.n2TxAntenna_tm5_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_4", HFILL }}, + { &hf_lte_rrc_n4TxAntenna_tm5_r15, + { "n4TxAntenna-tm5-r15", "lte-rrc.n4TxAntenna_tm5_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, + { &hf_lte_rrc_n2TxAntenna_tm6_r15, + { "n2TxAntenna-tm6-r15", "lte-rrc.n2TxAntenna_tm6_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_4", HFILL }}, + { &hf_lte_rrc_n4TxAntenna_tm6_r15, + { "n4TxAntenna-tm6-r15", "lte-rrc.n4TxAntenna_tm6_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_16", HFILL }}, + { &hf_lte_rrc_n2TxAntenna_tm8_r15, + { "n2TxAntenna-tm8-r15", "lte-rrc.n2TxAntenna_tm8_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_6", HFILL }}, + { &hf_lte_rrc_n4TxAntenna_tm8_r15, + { "n4TxAntenna-tm8-r15", "lte-rrc.n4TxAntenna_tm8_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_64", HFILL }}, + { &hf_lte_rrc_n2TxAntenna_tm9and10_r15, + { "n2TxAntenna-tm9and10-r15", "lte-rrc.n2TxAntenna_tm9and10_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_6", HFILL }}, + { &hf_lte_rrc_n4TxAntenna_tm9and10_r15, + { "n4TxAntenna-tm9and10-r15", "lte-rrc.n4TxAntenna_tm9and10_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_96", HFILL }}, + { &hf_lte_rrc_n8TxAntenna_tm9and10_r15, + { "n8TxAntenna-tm9and10-r15", "lte-rrc.n8TxAntenna_tm9and10_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_109", HFILL }}, + { &hf_lte_rrc_maxLayersMIMO_STTI_r15, + { "maxLayersMIMO-STTI-r15", "lte-rrc.maxLayersMIMO_STTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxLayersMIMO_STTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_slotSubslotPDSCH_TxDiv_2Layer_r15, + { "slotSubslotPDSCH-TxDiv-2Layer-r15", "lte-rrc.slotSubslotPDSCH_TxDiv_2Layer_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_slotSubslotPDSCH_TxDiv_4Layer_r15, + { "slotSubslotPDSCH-TxDiv-4Layer-r15", "lte-rrc.slotSubslotPDSCH_TxDiv_4Layer_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_setup_08, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_08_vals), 0, + "T_setup_08", HFILL }}, + { &hf_lte_rrc_ue_TxAntennaSelection_SRS_1T4R_Config_r15, + { "ue-TxAntennaSelection-SRS-1T4R-Config-r15", "lte-rrc.ue_TxAntennaSelection_SRS_1T4R_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ue_TxAntennaSelection_SRS_2T4R_NrOfPairs_r15, + { "ue-TxAntennaSelection-SRS-2T4R-NrOfPairs-r15", "lte-rrc.ue_TxAntennaSelection_SRS_2T4R_NrOfPairs_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_NrOfPairs_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_transmissionModeUL_r10, { "transmissionModeUL-r10", "lte-rrc.transmissionModeUL_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_transmissionModeUL_r10_vals), 0, @@ -97356,10 +117213,66 @@ void proto_register_lte_rrc(void) { { "fourAntennaPortActivated-r10", "lte-rrc.fourAntennaPortActivated_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_fourAntennaPortActivated_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_07, + { &hf_lte_rrc_transmissionModeUL_STTI_r15, + { "transmissionModeUL-STTI-r15", "lte-rrc.transmissionModeUL_STTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_transmissionModeUL_STTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_09, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_07", HFILL }}, + "T_setup_09", HFILL }}, + { &hf_lte_rrc_aul_CRNTI_r15, + { "aul-CRNTI-r15", "lte-rrc.aul_CRNTI_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "C_RNTI", HFILL }}, + { &hf_lte_rrc_aul_Subframes_r15, + { "aul-Subframes-r15", "lte-rrc.aul_Subframes_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_40", HFILL }}, + { &hf_lte_rrc_aul_HARQ_Processes_r15, + { "aul-HARQ-Processes-r15", "lte-rrc.aul_HARQ_Processes_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_16", HFILL }}, + { &hf_lte_rrc_transmissionModeUL_AUL_r15, + { "transmissionModeUL-AUL-r15", "lte-rrc.transmissionModeUL_AUL_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_transmissionModeUL_AUL_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_aul_StartingFullBW_InsideMCOT_r15, + { "aul-StartingFullBW-InsideMCOT-r15", "lte-rrc.aul_StartingFullBW_InsideMCOT_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_5", HFILL }}, + { &hf_lte_rrc_aul_StartingFullBW_OutsideMCOT_r15, + { "aul-StartingFullBW-OutsideMCOT-r15", "lte-rrc.aul_StartingFullBW_OutsideMCOT_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_7", HFILL }}, + { &hf_lte_rrc_aul_StartingPartialBW_InsideMCOT_r15, + { "aul-StartingPartialBW-InsideMCOT-r15", "lte-rrc.aul_StartingPartialBW_InsideMCOT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_aul_StartingPartialBW_InsideMCOT_r15_vals), 0, + "T_aul_StartingPartialBW_InsideMCOT_r15", HFILL }}, + { &hf_lte_rrc_aul_StartingPartialBW_OutsideMCOT_r15, + { "aul-StartingPartialBW-OutsideMCOT-r15", "lte-rrc.aul_StartingPartialBW_OutsideMCOT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_aul_StartingPartialBW_OutsideMCOT_r15_vals), 0, + "T_aul_StartingPartialBW_OutsideMCOT_r15", HFILL }}, + { &hf_lte_rrc_aul_RetransmissionTimer_r15, + { "aul-RetransmissionTimer-r15", "lte-rrc.aul_RetransmissionTimer_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_aul_RetransmissionTimer_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_endingSymbolAUL_r15, + { "endingSymbolAUL-r15", "lte-rrc.endingSymbolAUL_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_12_13", HFILL }}, + { &hf_lte_rrc_subframeOffsetCOT_Sharing_r15, + { "subframeOffsetCOT-Sharing-r15", "lte-rrc.subframeOffsetCOT_Sharing_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_2_4", HFILL }}, + { &hf_lte_rrc_contentionWindowSizeTimer_r15, + { "contentionWindowSizeTimer-r15", "lte-rrc.contentionWindowSizeTimer_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_contentionWindowSizeTimer_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_10, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_10", HFILL }}, { &hf_lte_rrc_cqi_ReportModeAperiodic_r10, { "cqi-ReportModeAperiodic-r10", "lte-rrc.cqi_ReportModeAperiodic_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_CQI_ReportModeAperiodic_vals), 0, @@ -97376,10 +117289,10 @@ void proto_register_lte_rrc(void) { { "trigger2-r10", "lte-rrc.trigger2_r10", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_8", HFILL }}, - { &hf_lte_rrc_setup_08, + { &hf_lte_rrc_setup_11, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_08", HFILL }}, + "T_setup_11", HFILL }}, { &hf_lte_rrc_aperiodicCSI_Trigger_v1250, { "aperiodicCSI-Trigger-v1250", "lte-rrc.aperiodicCSI_Trigger_v1250_element", FT_NONE, BASE_NONE, NULL, 0, @@ -97396,10 +117309,10 @@ void proto_register_lte_rrc(void) { { "trigger2-SubframeSetIndicator-r12", "lte-rrc.trigger2_SubframeSetIndicator_r12", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_8", HFILL }}, - { &hf_lte_rrc_setup_09, + { &hf_lte_rrc_setup_12, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_09", HFILL }}, + "T_setup_12", HFILL }}, { &hf_lte_rrc_aperiodicCSI_Trigger_v1310, { "aperiodicCSI-Trigger-v1310", "lte-rrc.aperiodicCSI_Trigger_v1310_element", FT_NONE, BASE_NONE, NULL, 0, @@ -97432,10 +117345,10 @@ void proto_register_lte_rrc(void) { { "aperiodicCSI-Trigger2-r13", "lte-rrc.aperiodicCSI_Trigger2_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_aperiodicCSI_Trigger2_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_10, + { &hf_lte_rrc_setup_13, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_10", HFILL }}, + "T_setup_13", HFILL }}, { &hf_lte_rrc_trigger1_SubframeSetIndicator_r13, { "trigger1-SubframeSetIndicator-r13", "lte-rrc.trigger1_SubframeSetIndicator_r13", FT_BYTES, BASE_NONE, NULL, 0, @@ -97664,10 +117577,10 @@ void proto_register_lte_rrc(void) { { "csi-SubframePatternConfig-r10", "lte-rrc.csi_SubframePatternConfig_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_SubframePatternConfig_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_11, + { &hf_lte_rrc_setup_14, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_11", HFILL }}, + "T_setup_14", HFILL }}, { &hf_lte_rrc_csi_MeasSubframeSet1_r10, { "csi-MeasSubframeSet1-r10", "lte-rrc.csi_MeasSubframeSet1_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_MeasSubframePattern_r10_vals), 0, @@ -97688,10 +117601,10 @@ void proto_register_lte_rrc(void) { { "csi-SubframePatternConfig-r12", "lte-rrc.csi_SubframePatternConfig_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_SubframePatternConfig_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_12, + { &hf_lte_rrc_setup_15, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_12", HFILL }}, + "T_setup_15", HFILL }}, { &hf_lte_rrc_csi_MeasSubframeSets_r12, { "csi-MeasSubframeSets-r12", "lte-rrc.csi_MeasSubframeSets_r12", FT_BYTES, BASE_NONE, NULL, 0, @@ -97728,6 +117641,42 @@ void proto_register_lte_rrc(void) { { "cqi-ReportAperiodicHybrid-r14", "lte-rrc.cqi_ReportAperiodicHybrid_r14_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_altCQI_Table_1024QAM_r15, + { "altCQI-Table-1024QAM-r15", "lte-rrc.altCQI_Table_1024QAM_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_altCQI_Table_1024QAM_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_16, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_16", HFILL }}, + { &hf_lte_rrc_cqi_ReportConfig_r10, + { "cqi-ReportConfig-r10", "lte-rrc.cqi_ReportConfig_r10_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cqi_ReportConfig_v1130, + { "cqi-ReportConfig-v1130", "lte-rrc.cqi_ReportConfig_v1130_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cqi_ReportConfigPCell_v1250, + { "cqi-ReportConfigPCell-v1250", "lte-rrc.cqi_ReportConfigPCell_v1250_element", + FT_NONE, BASE_NONE, NULL, 0, + "CQI_ReportConfig_v1250", HFILL }}, + { &hf_lte_rrc_cqi_ReportConfig_v1310, + { "cqi-ReportConfig-v1310", "lte-rrc.cqi_ReportConfig_v1310_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cqi_ReportConfig_v1320, + { "cqi-ReportConfig-v1320", "lte-rrc.cqi_ReportConfig_v1320_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cqi_ReportConfig_v1430, + { "cqi-ReportConfig-v1430", "lte-rrc.cqi_ReportConfig_v1430_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_altCQI_Table_1024QAM_r15_01, + { "altCQI-Table-1024QAM-r15", "lte-rrc.altCQI_Table_1024QAM_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_altCQI_Table_1024QAM_r15_01_vals), 0, + "T_altCQI_Table_1024QAM_r15_01", HFILL }}, { &hf_lte_rrc_nomPDSCH_RS_EPRE_Offset_r10, { "nomPDSCH-RS-EPRE-Offset-r10", "lte-rrc.nomPDSCH_RS_EPRE_Offset_r10", FT_INT32, BASE_DEC, VALS(lte_rrc_nomPDSCH_RS_EPRE_Offset_vals), 0, @@ -97740,10 +117689,18 @@ void proto_register_lte_rrc(void) { { "pmi-RI-Report-r10", "lte-rrc.pmi_RI_Report_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pmi_RI_Report_r10_vals), 0, "T_pmi_RI_Report_r10", HFILL }}, - { &hf_lte_rrc_setup_13, + { &hf_lte_rrc_cqi_ReportPeriodicSCell_r15, + { "cqi-ReportPeriodicSCell-r15", "lte-rrc.cqi_ReportPeriodicSCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_CQI_ReportPeriodicSCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_altCQI_Table_1024QAM_r15_02, + { "altCQI-Table-1024QAM-r15", "lte-rrc.altCQI_Table_1024QAM_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_altCQI_Table_1024QAM_r15_02_vals), 0, + "T_altCQI_Table_1024QAM_r15_02", HFILL }}, + { &hf_lte_rrc_setup_17, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_13", HFILL }}, + "T_setup_17", HFILL }}, { &hf_lte_rrc_cqi_PUCCH_ResourceIndex, { "cqi-PUCCH-ResourceIndex", "lte-rrc.cqi_PUCCH_ResourceIndex", FT_UINT32, BASE_DEC, NULL, 0, @@ -97776,10 +117733,10 @@ void proto_register_lte_rrc(void) { { "simultaneousAckNackAndCQI", "lte-rrc.simultaneousAckNackAndCQI", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, - { &hf_lte_rrc_setup_14, + { &hf_lte_rrc_setup_18, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_14", HFILL }}, + "T_setup_18", HFILL }}, { &hf_lte_rrc_cqi_PUCCH_ResourceIndex_r10, { "cqi-PUCCH-ResourceIndex-r10", "lte-rrc.cqi_PUCCH_ResourceIndex_r10", FT_UINT32, BASE_DEC, NULL, 0, @@ -97816,10 +117773,10 @@ void proto_register_lte_rrc(void) { { "csi-ConfigIndex-r10", "lte-rrc.csi_ConfigIndex_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_ConfigIndex_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_15, + { &hf_lte_rrc_setup_19, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_15", HFILL }}, + "T_setup_19", HFILL }}, { &hf_lte_rrc_cqi_pmi_ConfigIndex2_r10, { "cqi-pmi-ConfigIndex2-r10", "lte-rrc.cqi_pmi_ConfigIndex2_r10", FT_UINT32, BASE_DEC, NULL, 0, @@ -97852,6 +117809,58 @@ void proto_register_lte_rrc(void) { { "periodicityFactorWB-r13", "lte-rrc.periodicityFactorWB_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_periodicityFactorWB_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_setup_20, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_20", HFILL }}, + { &hf_lte_rrc_cqi_pmi_ConfigIndexDormant_r15, + { "cqi-pmi-ConfigIndexDormant-r15", "lte-rrc.cqi_pmi_ConfigIndexDormant_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_lte_rrc_ri_ConfigIndexDormant_r15, + { "ri-ConfigIndexDormant-r15", "lte-rrc.ri_ConfigIndexDormant_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_lte_rrc_csi_SubframePatternDormant_r15, + { "csi-SubframePatternDormant-r15", "lte-rrc.csi_SubframePatternDormant_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_SubframePatternDormant_r15_vals), 0, + "T_csi_SubframePatternDormant_r15", HFILL }}, + { &hf_lte_rrc_setup_21, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_21", HFILL }}, + { &hf_lte_rrc_csi_MeasSubframeSet1_r15, + { "csi-MeasSubframeSet1-r15", "lte-rrc.csi_MeasSubframeSet1_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_MeasSubframePattern_r10_vals), 0, + "MeasSubframePattern_r10", HFILL }}, + { &hf_lte_rrc_csi_MeasSubframeSet2_r15, + { "csi-MeasSubframeSet2-r15", "lte-rrc.csi_MeasSubframeSet2_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_MeasSubframePattern_r10_vals), 0, + "MeasSubframePattern_r10", HFILL }}, + { &hf_lte_rrc_cqi_FormatIndicatorDormant_r15, + { "cqi-FormatIndicatorDormant-r15", "lte-rrc.cqi_FormatIndicatorDormant_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cqi_FormatIndicatorDormant_r15_vals), 0, + "T_cqi_FormatIndicatorDormant_r15", HFILL }}, + { &hf_lte_rrc_widebandCQI_r15, + { "widebandCQI-r15", "lte-rrc.widebandCQI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_csi_ReportMode_r15, + { "csi-ReportMode-r15", "lte-rrc.csi_ReportMode_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_ReportMode_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_subbandCQI_r15, + { "subbandCQI-r15", "lte-rrc.subbandCQI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_k_r15, + { "k-r15", "lte-rrc.k_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_4", HFILL }}, + { &hf_lte_rrc_periodicityFactor_r15, + { "periodicityFactor-r15", "lte-rrc.periodicityFactor_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_periodicityFactor_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_CQI_ReportPeriodicProcExtToAddModList_r11_item, { "CQI-ReportPeriodicProcExt-r11", "lte-rrc.CQI_ReportPeriodicProcExt_r11_element", FT_NONE, BASE_NONE, NULL, 0, @@ -97896,10 +117905,10 @@ void proto_register_lte_rrc(void) { { "csi-ConfigIndex-r11", "lte-rrc.csi_ConfigIndex_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_ConfigIndex_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_16, + { &hf_lte_rrc_setup_22, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_16", HFILL }}, + "T_setup_22", HFILL }}, { &hf_lte_rrc_cqi_pmi_ConfigIndex2_r11, { "cqi-pmi-ConfigIndex2-r11", "lte-rrc.cqi_pmi_ConfigIndex2_r11", FT_UINT32, BASE_DEC, NULL, 0, @@ -97912,10 +117921,42 @@ void proto_register_lte_rrc(void) { { "periodicityFactorWB-r13", "lte-rrc.periodicityFactorWB_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_periodicityFactorWB_r13_01_vals), 0, "T_periodicityFactorWB_r13_01", HFILL }}, - { &hf_lte_rrc_setup_17, + { &hf_lte_rrc_setup_23, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_17", HFILL }}, + "T_setup_23", HFILL }}, + { &hf_lte_rrc_cqi_pmi_ConfigIndexShort_r15, + { "cqi-pmi-ConfigIndexShort-r15", "lte-rrc.cqi_pmi_ConfigIndexShort_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_lte_rrc_ri_ConfigIndexShort_r15, + { "ri-ConfigIndexShort-r15", "lte-rrc.ri_ConfigIndexShort_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_lte_rrc_cqi_FormatIndicatorShort_r15, + { "cqi-FormatIndicatorShort-r15", "lte-rrc.cqi_FormatIndicatorShort_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cqi_FormatIndicatorShort_r15_vals), 0, + "T_cqi_FormatIndicatorShort_r15", HFILL }}, + { &hf_lte_rrc_widebandCQI_Short_r15, + { "widebandCQI-Short-r15", "lte-rrc.widebandCQI_Short_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_widebandCQI_Short_r15", HFILL }}, + { &hf_lte_rrc_csi_ReportModeShort_r15, + { "csi-ReportModeShort-r15", "lte-rrc.csi_ReportModeShort_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_ReportModeShort_r15_vals), 0, + "T_csi_ReportModeShort_r15", HFILL }}, + { &hf_lte_rrc_subbandCQI_Short_r15, + { "subbandCQI-Short-r15", "lte-rrc.subbandCQI_Short_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_subbandCQI_Short_r15", HFILL }}, + { &hf_lte_rrc_periodicityFactor_r15_01, + { "periodicityFactor-r15", "lte-rrc.periodicityFactor_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_periodicityFactor_r15_01_vals), 0, + "T_periodicityFactor_r15_01", HFILL }}, + { &hf_lte_rrc_setup_24, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_24", HFILL }}, { &hf_lte_rrc_cri_ConfigIndex_r13, { "cri-ConfigIndex-r13", "lte-rrc.cri_ConfigIndex_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -98048,7 +118089,7 @@ void proto_register_lte_rrc(void) { { "csi-IM-ConfigIdList-r12", "lte-rrc.csi_IM_ConfigIdList_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_IM_ConfigIdList_r12_vals), 0, "T_csi_IM_ConfigIdList_r12", HFILL }}, - { &hf_lte_rrc_setup_18, + { &hf_lte_rrc_setup_25, { "setup", "lte-rrc.setup", FT_UINT32, BASE_DEC, NULL, 0, "SEQUENCE_SIZE_1_2_OF_CSI_IM_ConfigId_r12", HFILL }}, @@ -98060,7 +118101,7 @@ void proto_register_lte_rrc(void) { { "cqi-ReportAperiodicProc2-r12", "lte-rrc.cqi_ReportAperiodicProc2_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cqi_ReportAperiodicProc2_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_19, + { &hf_lte_rrc_setup_26, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, "CQI_ReportAperiodicProc_r11", HFILL }}, @@ -98068,7 +118109,7 @@ void proto_register_lte_rrc(void) { { "cqi-ReportAperiodicProc-v1310", "lte-rrc.cqi_ReportAperiodicProc_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cqi_ReportAperiodicProc_v1310_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_20, + { &hf_lte_rrc_setup_27, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, "CQI_ReportAperiodicProc_v1310", HFILL }}, @@ -98080,8 +118121,8 @@ void proto_register_lte_rrc(void) { { "eMIMO-Type-r13", "lte-rrc.eMIMO_Type_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_CSI_RS_ConfigEMIMO_r13_vals), 0, "CSI_RS_ConfigEMIMO_r13", HFILL }}, - { &hf_lte_rrc_eMIMO_Type_v1430, - { "eMIMO-Type-v1430", "lte-rrc.eMIMO_Type_v1430", + { &hf_lte_rrc_dummy_03, + { "dummy", "lte-rrc.dummy", FT_UINT32, BASE_DEC, VALS(lte_rrc_CSI_RS_ConfigEMIMO_v1430_vals), 0, "CSI_RS_ConfigEMIMO_v1430", HFILL }}, { &hf_lte_rrc_eMIMO_Hybrid_r14, @@ -98092,14 +118133,26 @@ void proto_register_lte_rrc(void) { { "advancedCodebookEnabled-r14", "lte-rrc.advancedCodebookEnabled_r14", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, + { &hf_lte_rrc_eMIMO_Type_v1480, + { "eMIMO-Type-v1480", "lte-rrc.eMIMO_Type_v1480", + FT_UINT32, BASE_DEC, VALS(lte_rrc_CSI_RS_ConfigEMIMO_v1480_vals), 0, + "CSI_RS_ConfigEMIMO_v1480", HFILL }}, + { &hf_lte_rrc_feCOMP_CSI_Enabled_v1530, + { "feCOMP-CSI-Enabled-v1530", "lte-rrc.feCOMP_CSI_Enabled_v1530", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_eMIMO_Type_v1530, + { "eMIMO-Type-v1530", "lte-rrc.eMIMO_Type_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_CSI_RS_ConfigEMIMO_v1530_vals), 0, + "CSI_RS_ConfigEMIMO_v1530", HFILL }}, { &hf_lte_rrc_csi_RS_r10, { "csi-RS-r10", "lte-rrc.csi_RS_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_RS_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_21, + { &hf_lte_rrc_setup_28, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_18", HFILL }}, + "T_setup_25", HFILL }}, { &hf_lte_rrc_antennaPortsCount_r10, { "antennaPortsCount-r10", "lte-rrc.antennaPortsCount_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_antennaPortsCount_r10_vals), 0, @@ -98128,10 +118181,10 @@ void proto_register_lte_rrc(void) { { "ds-ZeroTxPowerCSI-RS-r12", "lte-rrc.ds_ZeroTxPowerCSI_RS_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ds_ZeroTxPowerCSI_RS_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_22, + { &hf_lte_rrc_setup_29, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_19", HFILL }}, + "T_setup_26", HFILL }}, { &hf_lte_rrc_zeroTxPowerCSI_RS_List_r12, { "zeroTxPowerCSI-RS-List-r12", "lte-rrc.zeroTxPowerCSI_RS_List_r12", FT_UINT32, BASE_DEC, NULL, 0, @@ -98140,7 +118193,27 @@ void proto_register_lte_rrc(void) { { "ZeroTxPowerCSI-RS-r12", "lte-rrc.ZeroTxPowerCSI_RS_r12_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_23, + { &hf_lte_rrc_setup_30, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_27", HFILL }}, + { &hf_lte_rrc_csi_RS_Config_r10, + { "csi-RS-Config-r10", "lte-rrc.csi_RS_Config_r10_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_csi_RS_Config_v1250, + { "csi-RS-Config-v1250", "lte-rrc.csi_RS_Config_v1250_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_csi_RS_Config_v1310, + { "csi-RS-Config-v1310", "lte-rrc.csi_RS_Config_v1310_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_csi_RS_Config_v1430, + { "csi-RS-Config-v1430", "lte-rrc.csi_RS_Config_v1430_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_31, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, "ZeroTxPowerCSI_RS_r12", HFILL }}, @@ -98264,10 +118337,10 @@ void proto_register_lte_rrc(void) { { "activatedResources-r14", "lte-rrc.activatedResources_r14", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_4", HFILL }}, - { &hf_lte_rrc_setup_24, + { &hf_lte_rrc_setup_32, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_20_vals), 0, - "T_setup_20", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_28_vals), 0, + "T_setup_28", HFILL }}, { &hf_lte_rrc_nonPrecoded_r13, { "nonPrecoded-r13", "lte-rrc.nonPrecoded_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -98276,10 +118349,10 @@ void proto_register_lte_rrc(void) { { "beamformed-r13", "lte-rrc.beamformed_r13_element", FT_NONE, BASE_NONE, NULL, 0, "CSI_RS_ConfigBeamformed_r13", HFILL }}, - { &hf_lte_rrc_setup_25, + { &hf_lte_rrc_setup_33, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_21_vals), 0, - "T_setup_21", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_29_vals), 0, + "T_setup_29", HFILL }}, { &hf_lte_rrc_nonPrecoded_v1430, { "nonPrecoded-v1430", "lte-rrc.nonPrecoded_v1430_element", FT_NONE, BASE_NONE, NULL, 0, @@ -98288,14 +118361,34 @@ void proto_register_lte_rrc(void) { { "beamformed-v1430", "lte-rrc.beamformed_v1430_element", FT_NONE, BASE_NONE, NULL, 0, "CSI_RS_ConfigBeamformed_v1430", HFILL }}, - { &hf_lte_rrc_setup_26, + { &hf_lte_rrc_setup_34, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_30_vals), 0, + "T_setup_30", HFILL }}, + { &hf_lte_rrc_nonPrecoded_v1480, + { "nonPrecoded-v1480", "lte-rrc.nonPrecoded_v1480_element", + FT_NONE, BASE_NONE, NULL, 0, + "CSI_RS_ConfigNonPrecoded_v1480", HFILL }}, + { &hf_lte_rrc_beamformed_v1480, + { "beamformed-v1480", "lte-rrc.beamformed_v1480_element", + FT_NONE, BASE_NONE, NULL, 0, + "CSI_RS_ConfigBeamformed_v1430", HFILL }}, + { &hf_lte_rrc_setup_35, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_31_vals), 0, + "T_setup_31", HFILL }}, + { &hf_lte_rrc_nonPrecoded_v1530, + { "nonPrecoded-v1530", "lte-rrc.nonPrecoded_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "CSI_RS_ConfigNonPrecoded_v1530", HFILL }}, + { &hf_lte_rrc_setup_36, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, "CSI_RS_ConfigBeamformed_r14", HFILL }}, - { &hf_lte_rrc_setup_27, + { &hf_lte_rrc_setup_37, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_22", HFILL }}, + "T_setup_32", HFILL }}, { &hf_lte_rrc_periodicityOffsetIndex_r14, { "periodicityOffsetIndex-r14", "lte-rrc.periodicityOffsetIndex_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -98344,14 +118437,34 @@ void proto_register_lte_rrc(void) { { "codebookConfigN1-v1430", "lte-rrc.codebookConfigN1_v1430", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_codebookConfigN1_v1430_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_codebookConfigN2_r1430, - { "codebookConfigN2-r1430", "lte-rrc.codebookConfigN2_r1430", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_codebookConfigN2_r1430_vals), 0, + { &hf_lte_rrc_codebookConfigN2_v1430, + { "codebookConfigN2-v1430", "lte-rrc.codebookConfigN2_v1430", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_codebookConfigN2_v1430_vals), 0, NULL, HFILL }}, { &hf_lte_rrc_nzp_ResourceConfigTM9_Original_v1430, { "nzp-ResourceConfigTM9-Original-v1430", "lte-rrc.nzp_ResourceConfigTM9_Original_v1430_element", FT_NONE, BASE_NONE, NULL, 0, "CSI_RS_Config_NZP_v1430", HFILL }}, + { &hf_lte_rrc_csi_RS_ConfigNZP_EMIMO_v1480, + { "csi-RS-ConfigNZP-EMIMO-v1480", "lte-rrc.csi_RS_ConfigNZP_EMIMO_v1480_element", + FT_NONE, BASE_NONE, NULL, 0, + "CSI_RS_ConfigNZP_EMIMO_v1430", HFILL }}, + { &hf_lte_rrc_codebookConfigN1_v1480, + { "codebookConfigN1-v1480", "lte-rrc.codebookConfigN1_v1480", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_codebookConfigN1_v1480_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_codebookConfigN2_r1480, + { "codebookConfigN2-r1480", "lte-rrc.codebookConfigN2_r1480", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_codebookConfigN2_r1480_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nzp_ResourceConfigTM9_Original_v1480, + { "nzp-ResourceConfigTM9-Original-v1480", "lte-rrc.nzp_ResourceConfigTM9_Original_v1480_element", + FT_NONE, BASE_NONE, NULL, 0, + "CSI_RS_Config_NZP_v1430", HFILL }}, + { &hf_lte_rrc_p_C_AndCBSRList_r15, + { "p-C-AndCBSRList-r15", "lte-rrc.p_C_AndCBSRList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "P_C_AndCBSR_Pair_r15", HFILL }}, { &hf_lte_rrc_antennaPortsCount_r11, { "antennaPortsCount-r11", "lte-rrc.antennaPortsCount_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_antennaPortsCount_r11_vals), 0, @@ -98376,10 +118489,10 @@ void proto_register_lte_rrc(void) { { "mbsfn-SubframeConfigList-r11", "lte-rrc.mbsfn_SubframeConfigList_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mbsfn_SubframeConfigList_r11_vals), 0, "T_mbsfn_SubframeConfigList_r11", HFILL }}, - { &hf_lte_rrc_setup_28, + { &hf_lte_rrc_setup_38, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_23", HFILL }}, + "T_setup_33", HFILL }}, { &hf_lte_rrc_subframeConfigList, { "subframeConfigList", "lte-rrc.subframeConfigList", FT_UINT32, BASE_DEC, NULL, 0, @@ -98392,18 +118505,18 @@ void proto_register_lte_rrc(void) { { "mbsfn-SubframeConfigList-v1430", "lte-rrc.mbsfn_SubframeConfigList_v1430", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mbsfn_SubframeConfigList_v1430_vals), 0, "T_mbsfn_SubframeConfigList_v1430", HFILL }}, - { &hf_lte_rrc_setup_29, + { &hf_lte_rrc_setup_39, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_24", HFILL }}, + "T_setup_34", HFILL }}, { &hf_lte_rrc_subframeConfigList_v1430, { "subframeConfigList-v1430", "lte-rrc.subframeConfigList_v1430", FT_UINT32, BASE_DEC, NULL, 0, "MBSFN_SubframeConfigList_v1430", HFILL }}, - { &hf_lte_rrc_setup_30, + { &hf_lte_rrc_setup_40, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_25", HFILL }}, + "T_setup_35", HFILL }}, { &hf_lte_rrc_nzp_resourceConfigList_r13, { "nzp-resourceConfigList-r13", "lte-rrc.nzp_resourceConfigList_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -98440,7 +118553,7 @@ void proto_register_lte_rrc(void) { { "resourceConfigList-r11", "lte-rrc.resourceConfigList_r11", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_16", HFILL }}, - { &hf_lte_rrc_setup_31, + { &hf_lte_rrc_setup_41, { "setup", "lte-rrc.setup", FT_UINT32, BASE_DEC, NULL, 0, "SEQUENCE_SIZE_1_maxCSI_RS_ZP_r11_OF_CSI_RS_ConfigZP_r11", HFILL }}, @@ -98448,10 +118561,10 @@ void proto_register_lte_rrc(void) { { "CSI-RS-ConfigZP-r11", "lte-rrc.CSI_RS_ConfigZP_r11_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_32, + { &hf_lte_rrc_setup_42, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_26", HFILL }}, + "T_setup_36", HFILL }}, { &hf_lte_rrc_scramblingIdentity2_r11, { "scramblingIdentity2-r11", "lte-rrc.scramblingIdentity2_r11", FT_UINT32, BASE_DEC, NULL, 0, @@ -98464,18 +118577,18 @@ void proto_register_lte_rrc(void) { { "config-r11", "lte-rrc.config_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_config_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_33, + { &hf_lte_rrc_setup_43, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_27", HFILL }}, + "T_setup_37", HFILL }}, { &hf_lte_rrc_subframePatternConfig_r11, { "subframePatternConfig-r11", "lte-rrc.subframePatternConfig_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_subframePatternConfig_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_34, + { &hf_lte_rrc_setup_44, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_28", HFILL }}, + "T_setup_38", HFILL }}, { &hf_lte_rrc_subframePattern_r11, { "subframePattern-r11", "lte-rrc.subframePattern_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_MeasSubframePattern_r10_vals), 0, @@ -98536,7 +118649,7 @@ void proto_register_lte_rrc(void) { { "csi-RS-ConfigZPId2-r12", "lte-rrc.csi_RS_ConfigZPId2_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_RS_ConfigZPId2_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_35, + { &hf_lte_rrc_setup_45, { "setup", "lte-rrc.setup", FT_UINT32, BASE_DEC, NULL, 0, "CSI_RS_ConfigZPId_r11", HFILL }}, @@ -98544,18 +118657,18 @@ void proto_register_lte_rrc(void) { { "numberPRB-Pairs-v1310", "lte-rrc.numberPRB_Pairs_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_numberPRB_Pairs_v1310_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_36, + { &hf_lte_rrc_setup_46, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_29_vals), 0, - "T_setup_29", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_39_vals), 0, + "T_setup_39", HFILL }}, { &hf_lte_rrc_mpdcch_config_r13, { "mpdcch-config-r13", "lte-rrc.mpdcch_config_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mpdcch_config_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_37, + { &hf_lte_rrc_setup_47, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_30", HFILL }}, + "T_setup_40", HFILL }}, { &hf_lte_rrc_csi_NumRepetitionCE_r13, { "csi-NumRepetitionCE-r13", "lte-rrc.csi_NumRepetitionCE_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_csi_NumRepetitionCE_r13_vals), 0, @@ -98584,10 +118697,10 @@ void proto_register_lte_rrc(void) { { "mpdcch-Narrowband-r13", "lte-rrc.mpdcch_Narrowband_r13", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_1_maxAvailNarrowBands_r13", HFILL }}, - { &hf_lte_rrc_setup_38, + { &hf_lte_rrc_setup_48, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_31", HFILL }}, + "T_setup_41", HFILL }}, { &hf_lte_rrc_eimta_RNTI_r12, { "eimta-RNTI-r12", "lte-rrc.eimta_RNTI_r12", FT_BYTES, BASE_NONE, NULL, 0, @@ -98600,10 +118713,10 @@ void proto_register_lte_rrc(void) { { "eimta-CommandSubframeSet-r12", "lte-rrc.eimta_CommandSubframeSet_r12", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_10", HFILL }}, - { &hf_lte_rrc_setup_39, + { &hf_lte_rrc_setup_49, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_32", HFILL }}, + "T_setup_42", HFILL }}, { &hf_lte_rrc_eimta_UL_DL_ConfigIndex_r12, { "eimta-UL-DL-ConfigIndex-r12", "lte-rrc.eimta_UL_DL_ConfigIndex_r12", FT_UINT32, BASE_DEC, NULL, 0, @@ -98616,10 +118729,10 @@ void proto_register_lte_rrc(void) { { "mbsfn-SubframeConfigList-v1250", "lte-rrc.mbsfn_SubframeConfigList_v1250", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mbsfn_SubframeConfigList_v1250_vals), 0, "T_mbsfn_SubframeConfigList_v1250", HFILL }}, - { &hf_lte_rrc_setup_40, + { &hf_lte_rrc_setup_50, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_33", HFILL }}, + "T_setup_43", HFILL }}, { &hf_lte_rrc_subframeConfigList_r12, { "subframeConfigList-r12", "lte-rrc.subframeConfigList_r12", FT_UINT32, BASE_DEC, NULL, 0, @@ -98660,10 +118773,46 @@ void proto_register_lte_rrc(void) { { "bitRateQueryProhibitTimer-r14", "lte-rrc.bitRateQueryProhibitTimer_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_bitRateQueryProhibitTimer_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_41, + { &hf_lte_rrc_allowedTTI_Lengths_r15, + { "allowedTTI-Lengths-r15", "lte-rrc.allowedTTI_Lengths_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_allowedTTI_Lengths_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_51, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_34", HFILL }}, + "T_setup_44", HFILL }}, + { &hf_lte_rrc_shortTTI_r15, + { "shortTTI-r15", "lte-rrc.shortTTI_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_subframeTTI_r15, + { "subframeTTI-r15", "lte-rrc.subframeTTI_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_logicalChannelSR_Restriction_r15, + { "logicalChannelSR-Restriction-r15", "lte-rrc.logicalChannelSR_Restriction_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logicalChannelSR_Restriction_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_52, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_45_vals), 0, + "T_setup_45", HFILL }}, + { &hf_lte_rrc_channellAccessPriority_r15, + { "channellAccessPriority-r15", "lte-rrc.channellAccessPriority_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_channellAccessPriority_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_53, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_4", HFILL }}, + { &hf_lte_rrc_lch_CellRestriction_r15, + { "lch-CellRestriction-r15", "lte-rrc.lch_CellRestriction_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_maxServCell_r13", HFILL }}, + { &hf_lte_rrc_setup_54, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_46", HFILL }}, { &hf_lte_rrc_lwa_Config_r13, { "lwa-Config-r13", "lte-rrc.lwa_Config_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -98680,10 +118829,10 @@ void proto_register_lte_rrc(void) { { "wt-MAC-Address-r14", "lte-rrc.wt_MAC_Address_r14", FT_ETHER, BASE_NONE, NULL, 0, "OCTET_STRING_SIZE_6", HFILL }}, - { &hf_lte_rrc_setup_42, + { &hf_lte_rrc_setup_55, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_35", HFILL }}, + "T_setup_47", HFILL }}, { &hf_lte_rrc_lwip_Config_r13, { "lwip-Config-r13", "lte-rrc.lwip_Config_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -98728,10 +118877,10 @@ void proto_register_lte_rrc(void) { { "phr-Config", "lte-rrc.phr_Config", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_phr_Config_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_43, + { &hf_lte_rrc_setup_56, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_36", HFILL }}, + "T_setup_48", HFILL }}, { &hf_lte_rrc_periodicPHR_Timer, { "periodicPHR-Timer", "lte-rrc.periodicPHR_Timer", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_periodicPHR_Timer_vals), 0, @@ -98784,10 +118933,10 @@ void proto_register_lte_rrc(void) { { "dualConnectivityPHR", "lte-rrc.dualConnectivityPHR", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dualConnectivityPHR_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_44, + { &hf_lte_rrc_setup_57, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_37", HFILL }}, + "T_setup_49", HFILL }}, { &hf_lte_rrc_phr_ModeOtherCG_r12, { "phr-ModeOtherCG-r12", "lte-rrc.phr_ModeOtherCG_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_phr_ModeOtherCG_r12_vals), 0, @@ -98796,10 +118945,10 @@ void proto_register_lte_rrc(void) { { "logicalChannelSR-Config-r12", "lte-rrc.logicalChannelSR_Config_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logicalChannelSR_Config_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_45, + { &hf_lte_rrc_setup_58, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_38", HFILL }}, + "T_setup_50", HFILL }}, { &hf_lte_rrc_logicalChannelSR_ProhibitTimer_r12, { "logicalChannelSR-ProhibitTimer-r12", "lte-rrc.logicalChannelSR_ProhibitTimer_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logicalChannelSR_ProhibitTimer_r12_vals), 0, @@ -98816,10 +118965,10 @@ void proto_register_lte_rrc(void) { { "eDRX-Config-CycleStartOffset-r13", "lte-rrc.eDRX_Config_CycleStartOffset_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_eDRX_Config_CycleStartOffset_r13_vals), 0, "T_eDRX_Config_CycleStartOffset_r13", HFILL }}, - { &hf_lte_rrc_setup_46, + { &hf_lte_rrc_setup_59, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_39_vals), 0, - "T_setup_39", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_51_vals), 0, + "T_setup_51", HFILL }}, { &hf_lte_rrc_sf5120, { "sf5120", "lte-rrc.sf5120", FT_UINT32, BASE_DEC, NULL, 0, @@ -98832,7 +118981,7 @@ void proto_register_lte_rrc(void) { { "drx-Config-r13", "lte-rrc.drx_Config_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_drx_Config_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_47, + { &hf_lte_rrc_setup_60, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, "DRX_Config_r13", HFILL }}, @@ -98840,10 +118989,10 @@ void proto_register_lte_rrc(void) { { "skipUplinkTx-r14", "lte-rrc.skipUplinkTx_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_skipUplinkTx_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_48, + { &hf_lte_rrc_setup_61, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_40", HFILL }}, + "T_setup_52", HFILL }}, { &hf_lte_rrc_skipUplinkTxSPS_r14, { "skipUplinkTxSPS-r14", "lte-rrc.skipUplinkTxSPS_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_skipUplinkTxSPS_r14_vals), 0, @@ -98856,10 +119005,10 @@ void proto_register_lte_rrc(void) { { "dataInactivityTimerConfig-r14", "lte-rrc.dataInactivityTimerConfig_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dataInactivityTimerConfig_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_49, + { &hf_lte_rrc_setup_62, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_41", HFILL }}, + "T_setup_53", HFILL }}, { &hf_lte_rrc_dataInactivityTimer_r14, { "dataInactivityTimer-r14", "lte-rrc.dataInactivityTimer_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_DataInactivityTimer_r14_vals), 0, @@ -98868,6 +119017,50 @@ void proto_register_lte_rrc(void) { { "rai-Activation-r14", "lte-rrc.rai_Activation_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rai_Activation_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_shortTTI_AndSPT_r15, + { "shortTTI-AndSPT-r15", "lte-rrc.shortTTI_AndSPT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_shortTTI_AndSPT_r15_vals), 0, + "T_shortTTI_AndSPT_r15", HFILL }}, + { &hf_lte_rrc_setup_63, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_54", HFILL }}, + { &hf_lte_rrc_drx_Config_r15, + { "drx-Config-r15", "lte-rrc.drx_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_periodicBSR_Timer_r15, + { "periodicBSR-Timer-r15", "lte-rrc.periodicBSR_Timer_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_periodicBSR_Timer_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_proc_Timeline_r15, + { "proc-Timeline-r15", "lte-rrc.proc_Timeline_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_proc_Timeline_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ssr_ProhibitTimer_r15, + { "ssr-ProhibitTimer-r15", "lte-rrc.ssr_ProhibitTimer_r15", + FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_sr_periods, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lte_rrc_mpdcch_UL_HARQ_ACK_FeedbackConfig_r15, + { "mpdcch-UL-HARQ-ACK-FeedbackConfig-r15", "lte-rrc.mpdcch_UL_HARQ_ACK_FeedbackConfig_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_dormantStateTimers_r15, + { "dormantStateTimers-r15", "lte-rrc.dormantStateTimers_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dormantStateTimers_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_64, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_55", HFILL }}, + { &hf_lte_rrc_sCellHibernationTimer_r15, + { "sCellHibernationTimer-r15", "lte-rrc.sCellHibernationTimer_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sCellHibernationTimer_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dormantSCellDeactivationTimer_r15, + { "dormantSCellDeactivationTimer-r15", "lte-rrc.dormantSCellDeactivationTimer_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dormantSCellDeactivationTimer_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_stag_Id_r11, { "stag-Id-r11", "lte-rrc.stag_Id_r11", FT_UINT32, BASE_DEC, NULL, 0, @@ -98876,10 +119069,10 @@ void proto_register_lte_rrc(void) { { "release", "lte-rrc.release_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_50, + { &hf_lte_rrc_setup_65, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_42", HFILL }}, + "T_setup_56", HFILL }}, { &hf_lte_rrc_onDurationTimer, { "onDurationTimer", "lte-rrc.onDurationTimer", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_onDurationTimer_vals), 0, @@ -99012,6 +119205,14 @@ void proto_register_lte_rrc(void) { { "drx-ULRetransmissionTimer-r13", "lte-rrc.drx_ULRetransmissionTimer_r13", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_T_drx_ULRetransmissionTimer_r13_vals_ext, 0, NULL, HFILL }}, + { &hf_lte_rrc_drx_RetransmissionTimerShortTTI_r15, + { "drx-RetransmissionTimerShortTTI-r15", "lte-rrc.drx_RetransmissionTimerShortTTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_drx_RetransmissionTimerShortTTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_drx_UL_RetransmissionTimerShortTTI_r15, + { "drx-UL-RetransmissionTimerShortTTI-r15", "lte-rrc.drx_UL_RetransmissionTimerShortTTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_drx_UL_RetransmissionTimerShortTTI_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_STAG_ToReleaseList_r11_item, { "STAG-Id-r11", "lte-rrc.STAG_Id_r11", FT_UINT32, BASE_DEC, NULL, 0, @@ -99068,6 +119269,14 @@ void proto_register_lte_rrc(void) { { "codebookSubsetRestriction-r13", "lte-rrc.codebookSubsetRestriction_r13", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING", HFILL }}, + { &hf_lte_rrc_p_C_r15, + { "p-C-r15", "lte-rrc.p_C_r15", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M8_15", HFILL }}, + { &hf_lte_rrc_codebookSubsetRestriction4_r15, + { "codebookSubsetRestriction4-r15", "lte-rrc.codebookSubsetRestriction4_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING", HFILL }}, { &hf_lte_rrc_P_C_AndCBSR_Pair_r13a_item, { "P-C-AndCBSR-r11", "lte-rrc.P_C_AndCBSR_r11_element", FT_NONE, BASE_NONE, NULL, 0, @@ -99076,6 +119285,10 @@ void proto_register_lte_rrc(void) { { "P-C-AndCBSR-r13", "lte-rrc.P_C_AndCBSR_r13_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_P_C_AndCBSR_Pair_r15_item, + { "P-C-AndCBSR-r15", "lte-rrc.P_C_AndCBSR_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_skipMonitoringDCI_format0_1A_r13, { "skipMonitoringDCI-format0-1A-r13", "lte-rrc.skipMonitoringDCI_format0_1A_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_skipMonitoringDCI_format0_1A_r13_vals), 0, @@ -99112,10 +119325,10 @@ void proto_register_lte_rrc(void) { { "pdcch-CandidateReductions-Format4B-r14", "lte-rrc.pdcch_CandidateReductions_Format4B_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14_vals), 0, "PDCCH_CandidateReductionsLAA_UL_r14", HFILL }}, - { &hf_lte_rrc_setup_51, + { &hf_lte_rrc_setup_66, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_43", HFILL }}, + "T_setup_57", HFILL }}, { &hf_lte_rrc_pdcch_candidateReductionAL1_r13, { "pdcch-candidateReductionAL1-r13", "lte-rrc.pdcch_candidateReductionAL1_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_PDCCH_CandidateReductionValue_r13_vals), 0, @@ -99136,10 +119349,10 @@ void proto_register_lte_rrc(void) { { "pdcch-candidateReductionAL5-r13", "lte-rrc.pdcch_candidateReductionAL5_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_PDCCH_CandidateReductionValue_r13_vals), 0, "PDCCH_CandidateReductionValue_r13", HFILL }}, - { &hf_lte_rrc_setup_52, + { &hf_lte_rrc_setup_67, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_44", HFILL }}, + "T_setup_58", HFILL }}, { &hf_lte_rrc_pdcch_candidateReductionAL1_r14, { "pdcch-candidateReductionAL1-r14", "lte-rrc.pdcch_candidateReductionAL1_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_PDCCH_CandidateReductionValue_r13_vals), 0, @@ -99256,10 +119469,10 @@ void proto_register_lte_rrc(void) { { "ul-DataSplitThreshold-r13", "lte-rrc.ul_DataSplitThreshold_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ul_DataSplitThreshold_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_53, + { &hf_lte_rrc_setup_68, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_45_vals), 0, - "T_setup_45", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_59_vals), 0, + "T_setup_59", HFILL }}, { &hf_lte_rrc_pdcp_SN_Size_v1310, { "pdcp-SN-Size-v1310", "lte-rrc.pdcp_SN_Size_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdcp_SN_Size_v1310_vals), 0, @@ -99268,10 +119481,10 @@ void proto_register_lte_rrc(void) { { "statusFeedback-r13", "lte-rrc.statusFeedback_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_statusFeedback_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_54, + { &hf_lte_rrc_setup_69, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_46", HFILL }}, + "T_setup_60", HFILL }}, { &hf_lte_rrc_statusPDU_TypeForPolling_r13, { "statusPDU-TypeForPolling-r13", "lte-rrc.statusPDU_TypeForPolling_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_statusPDU_TypeForPolling_r13_vals), 0, @@ -99292,10 +119505,10 @@ void proto_register_lte_rrc(void) { { "ul-LWA-Config-r14", "lte-rrc.ul_LWA_Config_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ul_LWA_Config_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_55, + { &hf_lte_rrc_setup_70, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_47", HFILL }}, + "T_setup_61", HFILL }}, { &hf_lte_rrc_ul_LWA_DRB_ViaWLAN_r14, { "ul-LWA-DRB-ViaWLAN-r14", "lte-rrc.ul_LWA_DRB_ViaWLAN_r14", FT_BOOLEAN, BASE_NONE, NULL, 0, @@ -99328,6 +119541,30 @@ void proto_register_lte_rrc(void) { { "profile0x0006-r14", "lte-rrc.profile0x0006_r14", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, + { &hf_lte_rrc_uplinkDataCompression_r15, + { "uplinkDataCompression-r15", "lte-rrc.uplinkDataCompression_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_bufferSize_r15, + { "bufferSize-r15", "lte-rrc.bufferSize_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_bufferSize_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dictionary_r15, + { "dictionary-r15", "lte-rrc.dictionary_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dictionary_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pdcp_DuplicationConfig_r15, + { "pdcp-DuplicationConfig-r15", "lte-rrc.pdcp_DuplicationConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdcp_DuplicationConfig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_71, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_62", HFILL }}, + { &hf_lte_rrc_pdcp_Duplication_r15, + { "pdcp-Duplication-r15", "lte-rrc.pdcp_Duplication_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdcp_Duplication_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_referenceSignalPower, { "referenceSignalPower", "lte-rrc.referenceSignalPower", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0, @@ -99392,6 +119629,30 @@ void proto_register_lte_rrc(void) { { "tbsIndexAlt2-r14", "lte-rrc.tbsIndexAlt2_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tbsIndexAlt2_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_qcl_Operation_v1530, + { "qcl-Operation-v1530", "lte-rrc.qcl_Operation_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_qcl_Operation_v1530_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_tbs_IndexAlt3_r15, + { "tbs-IndexAlt3-r15", "lte-rrc.tbs_IndexAlt3_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tbs_IndexAlt3_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_CQI_AlternativeTableConfig_r15, + { "ce-CQI-AlternativeTableConfig-r15", "lte-rrc.ce_CQI_AlternativeTableConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_CQI_AlternativeTableConfig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_PDSCH_64QAM_Config_r15, + { "ce-PDSCH-64QAM-Config-r15", "lte-rrc.ce_PDSCH_64QAM_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_PDSCH_64QAM_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_PDSCH_FlexibleStartPRB_AllocConfig_r15, + { "ce-PDSCH-FlexibleStartPRB-AllocConfig-r15", "lte-rrc.ce_PDSCH_FlexibleStartPRB_AllocConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_PDSCH_FlexibleStartPRB_AllocConfig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_altMCS_TableScalingConfig_r15, + { "altMCS-TableScalingConfig-r15", "lte-rrc.altMCS_TableScalingConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_altMCS_TableScalingConfig_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_tbsIndexAlt2_r14_01, { "tbsIndexAlt2-r14", "lte-rrc.tbsIndexAlt2_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tbsIndexAlt2_r14_01_vals), 0, @@ -99424,10 +119685,10 @@ void proto_register_lte_rrc(void) { { "mbsfn-SubframeConfigList-r11", "lte-rrc.mbsfn_SubframeConfigList_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mbsfn_SubframeConfigList_r11_01_vals), 0, "T_mbsfn_SubframeConfigList_r11_01", HFILL }}, - { &hf_lte_rrc_setup_56, + { &hf_lte_rrc_setup_72, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_48", HFILL }}, + "T_setup_63", HFILL }}, { &hf_lte_rrc_pdsch_Start_r11, { "pdsch-Start-r11", "lte-rrc.pdsch_Start_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdsch_Start_r11_vals), 0, @@ -99440,10 +119701,46 @@ void proto_register_lte_rrc(void) { { "mbsfn-SubframeConfigList-v1430", "lte-rrc.mbsfn_SubframeConfigList_v1430", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mbsfn_SubframeConfigList_v1430_01_vals), 0, "T_mbsfn_SubframeConfigList_v1430_01", HFILL }}, - { &hf_lte_rrc_setup_57, + { &hf_lte_rrc_setup_73, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_49", HFILL }}, + "T_setup_64", HFILL }}, + { &hf_lte_rrc_codewordOneConfig_v1530, + { "codewordOneConfig-v1530", "lte-rrc.codewordOneConfig_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_codewordOneConfig_v1530_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_74, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_65", HFILL }}, + { &hf_lte_rrc_crs_PortsCount_v1530, + { "crs-PortsCount-v1530", "lte-rrc.crs_PortsCount_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_crs_PortsCount_v1530_vals), 0, + "T_crs_PortsCount_v1530", HFILL }}, + { &hf_lte_rrc_crs_FreqShift_v1530, + { "crs-FreqShift-v1530", "lte-rrc.crs_FreqShift_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_5", HFILL }}, + { &hf_lte_rrc_mbsfn_SubframeConfigList_v1530, + { "mbsfn-SubframeConfigList-v1530", "lte-rrc.mbsfn_SubframeConfigList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "MBSFN_SubframeConfigList", HFILL }}, + { &hf_lte_rrc_mbsfn_SubframeConfigListExt_v1530, + { "mbsfn-SubframeConfigListExt-v1530", "lte-rrc.mbsfn_SubframeConfigListExt_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "MBSFN_SubframeConfigList_v1430", HFILL }}, + { &hf_lte_rrc_pdsch_Start_v1530, + { "pdsch-Start-v1530", "lte-rrc.pdsch_Start_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdsch_Start_v1530_vals), 0, + "T_pdsch_Start_v1530", HFILL }}, + { &hf_lte_rrc_csi_RS_ConfigZPId_v1530, + { "csi-RS-ConfigZPId-v1530", "lte-rrc.csi_RS_ConfigZPId_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "CSI_RS_ConfigZPId_r11", HFILL }}, + { &hf_lte_rrc_qcl_CSI_RS_ConfigNZPId_v1530, + { "qcl-CSI-RS-ConfigNZPId-v1530", "lte-rrc.qcl_CSI_RS_ConfigNZPId_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "CSI_RS_ConfigNZPId_r11", HFILL }}, { &hf_lte_rrc_PerCC_GapIndicationList_r14_item, { "PerCC-GapIndication-r14", "lte-rrc.PerCC_GapIndication_r14_element", FT_NONE, BASE_NONE, NULL, 0, @@ -99528,14 +119825,6 @@ void proto_register_lte_rrc(void) { { "antennaInfoUL-r10", "lte-rrc.antennaInfoUL_r10_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_cqi_ReportConfig_r10, - { "cqi-ReportConfig-r10", "lte-rrc.cqi_ReportConfig_r10_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, - { &hf_lte_rrc_csi_RS_Config_r10, - { "csi-RS-Config-r10", "lte-rrc.csi_RS_Config_r10_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_lte_rrc_pucch_ConfigDedicated_v1020, { "pucch-ConfigDedicated-v1020", "lte-rrc.pucch_ConfigDedicated_v1020_element", FT_NONE, BASE_NONE, NULL, 0, @@ -99564,10 +119853,10 @@ void proto_register_lte_rrc(void) { { "additionalSpectrumEmissionCA-r10", "lte-rrc.additionalSpectrumEmissionCA_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_additionalSpectrumEmissionCA_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_58, + { &hf_lte_rrc_setup_75, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_50", HFILL }}, + "T_setup_66", HFILL }}, { &hf_lte_rrc_additionalSpectrumEmissionPCell_r10, { "additionalSpectrumEmissionPCell-r10", "lte-rrc.additionalSpectrumEmissionPCell_r10", FT_UINT32, BASE_DEC, NULL, 0, @@ -99596,10 +119885,6 @@ void proto_register_lte_rrc(void) { { "pdsch-ConfigDedicated-v1130", "lte-rrc.pdsch_ConfigDedicated_v1130_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_cqi_ReportConfig_v1130, - { "cqi-ReportConfig-v1130", "lte-rrc.cqi_ReportConfig_v1130_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_lte_rrc_pucch_ConfigDedicated_v1130, { "pucch-ConfigDedicated-v1130", "lte-rrc.pucch_ConfigDedicated_v1130_element", FT_NONE, BASE_NONE, NULL, 0, @@ -99628,10 +119913,6 @@ void proto_register_lte_rrc(void) { { "pucch-ConfigDedicated-v1250", "lte-rrc.pucch_ConfigDedicated_v1250_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_cqi_ReportConfigPCell_v1250, - { "cqi-ReportConfigPCell-v1250", "lte-rrc.cqi_ReportConfigPCell_v1250_element", - FT_NONE, BASE_NONE, NULL, 0, - "CQI_ReportConfig_v1250", HFILL }}, { &hf_lte_rrc_uplinkPowerControlDedicated_v1250, { "uplinkPowerControlDedicated-v1250", "lte-rrc.uplinkPowerControlDedicated_v1250_element", FT_NONE, BASE_NONE, NULL, 0, @@ -99640,10 +119921,6 @@ void proto_register_lte_rrc(void) { { "pusch-ConfigDedicated-v1250", "lte-rrc.pusch_ConfigDedicated_v1250_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_csi_RS_Config_v1250, - { "csi-RS-Config-v1250", "lte-rrc.csi_RS_Config_v1250_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_lte_rrc_pdsch_ConfigDedicated_v1280, { "pdsch-ConfigDedicated-v1280", "lte-rrc.pdsch_ConfigDedicated_v1280_element", FT_NONE, BASE_NONE, NULL, 0, @@ -99664,10 +119941,6 @@ void proto_register_lte_rrc(void) { { "pdcch-CandidateReductions-r13", "lte-rrc.pdcch_CandidateReductions_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_PDCCH_CandidateReductions_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_cqi_ReportConfig_v1310, - { "cqi-ReportConfig-v1310", "lte-rrc.cqi_ReportConfig_v1310_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_lte_rrc_soundingRS_UL_ConfigDedicated_v1310, { "soundingRS-UL-ConfigDedicated-v1310", "lte-rrc.soundingRS_UL_ConfigDedicated_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_SoundingRS_UL_ConfigDedicated_v1310_vals), 0, @@ -99684,18 +119957,14 @@ void proto_register_lte_rrc(void) { { "soundingRS-UL-ConfigDedicatedAperiodicUpPTsExt-r13", "lte-rrc.soundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_csi_RS_Config_v1310, - { "csi-RS-Config-v1310", "lte-rrc.csi_RS_Config_v1310_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_lte_rrc_ce_Mode_r13, { "ce-Mode-r13", "lte-rrc.ce_Mode_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_Mode_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_59, + { &hf_lte_rrc_setup_76, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_51_vals), 0, - "T_setup_51", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_67_vals), 0, + "T_setup_67", HFILL }}, { &hf_lte_rrc_csi_RS_ConfigNZPToAddModListExt_r13, { "csi-RS-ConfigNZPToAddModListExt-r13", "lte-rrc.csi_RS_ConfigNZPToAddModListExt_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -99704,15 +119973,11 @@ void proto_register_lte_rrc(void) { { "csi-RS-ConfigNZPToReleaseListExt-r13", "lte-rrc.csi_RS_ConfigNZPToReleaseListExt_r13", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_cqi_ReportConfig_v1320, - { "cqi-ReportConfig-v1320", "lte-rrc.cqi_ReportConfig_v1320_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_lte_rrc_typeA_SRS_TPC_PDCCH_Group_r14, { "typeA-SRS-TPC-PDCCH-Group-r14", "lte-rrc.typeA_SRS_TPC_PDCCH_Group_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_typeA_SRS_TPC_PDCCH_Group_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_60, + { &hf_lte_rrc_setup_77, { "setup", "lte-rrc.setup", FT_UINT32, BASE_DEC, NULL, 0, "SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config_r14", HFILL }}, @@ -99724,10 +119989,10 @@ void proto_register_lte_rrc(void) { { "must-Config-r14", "lte-rrc.must_Config_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_must_Config_r14_vals), 0, "T_must_Config_r14", HFILL }}, - { &hf_lte_rrc_setup_61, + { &hf_lte_rrc_setup_78, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_52", HFILL }}, + "T_setup_68", HFILL }}, { &hf_lte_rrc_k_max_r14, { "k-max-r14", "lte-rrc.k_max_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_k_max_r14_vals), 0, @@ -99792,22 +120057,110 @@ void proto_register_lte_rrc(void) { { "SoundingRS-UL-ConfigDedicatedAperiodicUpPTsExt-r13", "lte-rrc.SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_csi_RS_Config_v1430, - { "csi-RS-Config-v1430", "lte-rrc.csi_RS_Config_v1430_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_lte_rrc_csi_RS_ConfigZP_ApList_r14, { "csi-RS-ConfigZP-ApList-r14", "lte-rrc.csi_RS_ConfigZP_ApList_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_CSI_RS_ConfigZP_ApList_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_cqi_ReportConfig_v1430, - { "cqi-ReportConfig-v1430", "lte-rrc.cqi_ReportConfig_v1430_element", - FT_NONE, BASE_NONE, NULL, 0, - NULL, HFILL }}, { &hf_lte_rrc_semiOpenLoop_r14, { "semiOpenLoop-r14", "lte-rrc.semiOpenLoop_r14", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, + { &hf_lte_rrc_csi_RS_Config_v1480, + { "csi-RS-Config-v1480", "lte-rrc.csi_RS_Config_v1480_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_physicalConfigDedicatedSTTI_r15, + { "physicalConfigDedicatedSTTI-r15", "lte-rrc.physicalConfigDedicatedSTTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_PhysicalConfigDedicatedSTTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pdsch_ConfigDedicated_v1530, + { "pdsch-ConfigDedicated-v1530", "lte-rrc.pdsch_ConfigDedicated_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_ConfigDedicated_v1530, + { "pusch-ConfigDedicated-v1530", "lte-rrc.pusch_ConfigDedicated_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cqi_ReportConfig_v1530, + { "cqi-ReportConfig-v1530", "lte-rrc.cqi_ReportConfig_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_antennaInfo_v1530, + { "antennaInfo-v1530", "lte-rrc.antennaInfo_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_AntennaInfoDedicated_v1530_vals), 0, + "AntennaInfoDedicated_v1530", HFILL }}, + { &hf_lte_rrc_csi_RS_Config_v1530, + { "csi-RS-Config-v1530", "lte-rrc.csi_RS_Config_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_uplinkPowerControlDedicated_v1530, + { "uplinkPowerControlDedicated-v1530", "lte-rrc.uplinkPowerControlDedicated_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_semiStaticCFI_Config_r15, + { "semiStaticCFI-Config-r15", "lte-rrc.semiStaticCFI_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_semiStaticCFI_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_79, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_69_vals), 0, + "T_setup_69", HFILL }}, + { &hf_lte_rrc_cfi_Config_r15, + { "cfi-Config-r15", "lte-rrc.cfi_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cfi_PatternConfig_r15, + { "cfi-PatternConfig-r15", "lte-rrc.cfi_PatternConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_blindPDSCH_Repetition_Config_r15, + { "blindPDSCH-Repetition-Config-r15", "lte-rrc.blindPDSCH_Repetition_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_blindPDSCH_Repetition_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_80, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_70", HFILL }}, + { &hf_lte_rrc_blindSubframePDSCH_Repetitions_r15, + { "blindSubframePDSCH-Repetitions-r15", "lte-rrc.blindSubframePDSCH_Repetitions_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_blindSlotSubslotPDSCH_Repetitions_r15, + { "blindSlotSubslotPDSCH-Repetitions-r15", "lte-rrc.blindSlotSubslotPDSCH_Repetitions_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_maxNumber_SubframePDSCH_Repetitions_r15, + { "maxNumber-SubframePDSCH-Repetitions-r15", "lte-rrc.maxNumber_SubframePDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxNumber_SubframePDSCH_Repetitions_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_maxNumber_SlotSubslotPDSCH_Repetitions_r15, + { "maxNumber-SlotSubslotPDSCH-Repetitions-r15", "lte-rrc.maxNumber_SlotSubslotPDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxNumber_SlotSubslotPDSCH_Repetitions_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_rv_SubframePDSCH_Repetitions_r15, + { "rv-SubframePDSCH-Repetitions-r15", "lte-rrc.rv_SubframePDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rv_SubframePDSCH_Repetitions_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_rv_SlotsublotPDSCH_Repetitions_r15, + { "rv-SlotsublotPDSCH-Repetitions-r15", "lte-rrc.rv_SlotsublotPDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rv_SlotsublotPDSCH_Repetitions_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_numberOfProcesses_SubframePDSCH_Repetitions_r15, + { "numberOfProcesses-SubframePDSCH-Repetitions-r15", "lte-rrc.numberOfProcesses_SubframePDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_16", HFILL }}, + { &hf_lte_rrc_numberOfProcesses_SlotSubslotPDSCH_Repetitions_r15, + { "numberOfProcesses-SlotSubslotPDSCH-Repetitions-r15", "lte-rrc.numberOfProcesses_SlotSubslotPDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_16", HFILL }}, + { &hf_lte_rrc_mcs_restrictionSubframePDSCH_Repetitions_r15, + { "mcs-restrictionSubframePDSCH-Repetitions-r15", "lte-rrc.mcs_restrictionSubframePDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mcs_restrictionSubframePDSCH_Repetitions_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15, + { "mcs-restrictionSlotSubslotPDSCH-Repetitions-r15", "lte-rrc.mcs_restrictionSlotSubslotPDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_pucch_ConfigDedicated_v1370, { "pucch-ConfigDedicated-v1370", "lte-rrc.pucch_ConfigDedicated_v1370_element", FT_NONE, BASE_NONE, NULL, 0, @@ -99872,10 +120225,10 @@ void proto_register_lte_rrc(void) { { "pucch-SCell", "lte-rrc.pucch_SCell", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pucch_SCell_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_62, + { &hf_lte_rrc_setup_81, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_53", HFILL }}, + "T_setup_71", HFILL }}, { &hf_lte_rrc_schedulingRequestConfig_r13, { "schedulingRequestConfig-r13", "lte-rrc.schedulingRequestConfig_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_SchedulingRequestConfigSCell_r13_vals), 0, @@ -99932,10 +120285,10 @@ void proto_register_lte_rrc(void) { { "must-Config-r14", "lte-rrc.must_Config_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_must_Config_r14_01_vals), 0, "T_must_Config_r14_01", HFILL }}, - { &hf_lte_rrc_setup_63, + { &hf_lte_rrc_setup_82, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_54", HFILL }}, + "T_setup_72", HFILL }}, { &hf_lte_rrc_k_max_r14_01, { "k-max-r14", "lte-rrc.k_max_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_k_max_r14_01_vals), 0, @@ -99952,14 +120305,106 @@ void proto_register_lte_rrc(void) { { "pdsch-ConfigDedicatedSCell-v1430", "lte-rrc.pdsch_ConfigDedicatedSCell_v1430_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_cqi_ReportConfigSCell_r15, + { "cqi-ReportConfigSCell-r15", "lte-rrc.cqi_ReportConfigSCell_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cqi_ShortConfigSCell_r15, + { "cqi-ShortConfigSCell-r15", "lte-rrc.cqi_ShortConfigSCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_CQI_ShortConfigSCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_uplinkPowerControlDedicatedSCell_v1530, + { "uplinkPowerControlDedicatedSCell-v1530", "lte-rrc.uplinkPowerControlDedicatedSCell_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "UplinkPowerControlDedicated_v1530", HFILL }}, + { &hf_lte_rrc_laa_SCellConfiguration_v1530, + { "laa-SCellConfiguration-v1530", "lte-rrc.laa_SCellConfiguration_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_ConfigDedicated_v1530_01, + { "pusch-ConfigDedicated-v1530", "lte-rrc.pusch_ConfigDedicated_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "PUSCH_ConfigDedicatedScell_v1530", HFILL }}, + { &hf_lte_rrc_semiStaticCFI_Config_r15_01, + { "semiStaticCFI-Config-r15", "lte-rrc.semiStaticCFI_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_semiStaticCFI_Config_r15_01_vals), 0, + "T_semiStaticCFI_Config_r15_01", HFILL }}, + { &hf_lte_rrc_setup_83, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_73_vals), 0, + "T_setup_73", HFILL }}, + { &hf_lte_rrc_blindPDSCH_Repetition_Config_r15_01, + { "blindPDSCH-Repetition-Config-r15", "lte-rrc.blindPDSCH_Repetition_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_blindPDSCH_Repetition_Config_r15_01_vals), 0, + "T_blindPDSCH_Repetition_Config_r15_01", HFILL }}, + { &hf_lte_rrc_setup_84, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_74", HFILL }}, + { &hf_lte_rrc_maxNumber_SubframePDSCH_Repetitions_r15_01, + { "maxNumber-SubframePDSCH-Repetitions-r15", "lte-rrc.maxNumber_SubframePDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxNumber_SubframePDSCH_Repetitions_r15_01_vals), 0, + "T_maxNumber_SubframePDSCH_Repetitions_r15_01", HFILL }}, + { &hf_lte_rrc_maxNumber_SlotSubslotPDSCH_Repetitions_r15_01, + { "maxNumber-SlotSubslotPDSCH-Repetitions-r15", "lte-rrc.maxNumber_SlotSubslotPDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxNumber_SlotSubslotPDSCH_Repetitions_r15_01_vals), 0, + "T_maxNumber_SlotSubslotPDSCH_Repetitions_r15_01", HFILL }}, + { &hf_lte_rrc_rv_SubframePDSCH_Repetitions_r15_01, + { "rv-SubframePDSCH-Repetitions-r15", "lte-rrc.rv_SubframePDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rv_SubframePDSCH_Repetitions_r15_01_vals), 0, + "T_rv_SubframePDSCH_Repetitions_r15_01", HFILL }}, + { &hf_lte_rrc_rv_SlotsublotPDSCH_Repetitions_r15_01, + { "rv-SlotsublotPDSCH-Repetitions-r15", "lte-rrc.rv_SlotsublotPDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rv_SlotsublotPDSCH_Repetitions_r15_01_vals), 0, + "T_rv_SlotsublotPDSCH_Repetitions_r15_01", HFILL }}, + { &hf_lte_rrc_mcs_restrictionSubframePDSCH_Repetitions_r15_01, + { "mcs-restrictionSubframePDSCH-Repetitions-r15", "lte-rrc.mcs_restrictionSubframePDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mcs_restrictionSubframePDSCH_Repetitions_r15_01_vals), 0, + "T_mcs_restrictionSubframePDSCH_Repetitions_r15_01", HFILL }}, + { &hf_lte_rrc_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_01, + { "mcs-restrictionSlotSubslotPDSCH-Repetitions-r15", "lte-rrc.mcs_restrictionSlotSubslotPDSCH_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_01_vals), 0, + "T_mcs_restrictionSlotSubslotPDSCH_Repetitions_r15_01", HFILL }}, { &hf_lte_rrc_pucch_SCell_v1370, { "pucch-SCell-v1370", "lte-rrc.pucch_SCell_v1370", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pucch_SCell_v1370_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_64, + { &hf_lte_rrc_setup_85, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_55", HFILL }}, + "T_setup_75", HFILL }}, + { &hf_lte_rrc_cfi_SubframeNonMBSFN_r15, + { "cfi-SubframeNonMBSFN-r15", "lte-rrc.cfi_SubframeNonMBSFN_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_4", HFILL }}, + { &hf_lte_rrc_cfi_SlotSubslotNonMBSFN_r15, + { "cfi-SlotSubslotNonMBSFN-r15", "lte-rrc.cfi_SlotSubslotNonMBSFN_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_3", HFILL }}, + { &hf_lte_rrc_cfi_SubframeMBSFN_r15, + { "cfi-SubframeMBSFN-r15", "lte-rrc.cfi_SubframeMBSFN_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_2", HFILL }}, + { &hf_lte_rrc_cfi_SlotSubslotMBSFN_r15, + { "cfi-SlotSubslotMBSFN-r15", "lte-rrc.cfi_SlotSubslotMBSFN_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_2", HFILL }}, + { &hf_lte_rrc_cfi_PatternSubframe_r15, + { "cfi-PatternSubframe-r15", "lte-rrc.cfi_PatternSubframe_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cfi_PatternSubframe_r15_item, + { "cfi-PatternSubframe-r15 item", "lte-rrc.cfi_PatternSubframe_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_4", HFILL }}, + { &hf_lte_rrc_cfi_PatternSlotSubslot_r15, + { "cfi-PatternSlotSubslot-r15", "lte-rrc.cfi_PatternSlotSubslot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "T_cfi_PatternSlotSubslot_r15", HFILL }}, + { &hf_lte_rrc_cfi_PatternSlotSubslot_r15_item, + { "cfi-PatternSlotSubslot-r15 item", "lte-rrc.cfi_PatternSlotSubslot_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_3", HFILL }}, { &hf_lte_rrc_subframeStartPosition_r13, { "subframeStartPosition-r13", "lte-rrc.subframeStartPosition_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_subframeStartPosition_r13_vals), 0, @@ -99972,10 +120417,10 @@ void proto_register_lte_rrc(void) { { "crossCarrierSchedulingConfig-UL-r14", "lte-rrc.crossCarrierSchedulingConfig_UL_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_crossCarrierSchedulingConfig_UL_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_65, + { &hf_lte_rrc_setup_86, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_56", HFILL }}, + "T_setup_76", HFILL }}, { &hf_lte_rrc_crossCarrierSchedulingConfigLAA_UL_r14, { "crossCarrierSchedulingConfigLAA-UL-r14", "lte-rrc.crossCarrierSchedulingConfigLAA_UL_r14_element", FT_NONE, BASE_NONE, NULL, 0, @@ -99996,6 +120441,26 @@ void proto_register_lte_rrc(void) { { "soundingRS-UL-ConfigDedicatedAperiodic-v1430", "lte-rrc.soundingRS_UL_ConfigDedicatedAperiodic_v1430", FT_UINT32, BASE_DEC, VALS(lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_aul_Config_r15, + { "aul-Config-r15", "lte-rrc.aul_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_AUL_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_ModeConfigLAA_r15, + { "pusch-ModeConfigLAA-r15", "lte-rrc.pusch_ModeConfigLAA_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_laa_PUSCH_Mode1, + { "laa-PUSCH-Mode1", "lte-rrc.laa_PUSCH_Mode1", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_laa_PUSCH_Mode2, + { "laa-PUSCH-Mode2", "lte-rrc.laa_PUSCH_Mode2", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_laa_PUSCH_Mode3, + { "laa-PUSCH-Mode3", "lte-rrc.laa_PUSCH_Mode3", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, { &hf_lte_rrc_maxEnergyDetectionThreshold_r14, { "maxEnergyDetectionThreshold-r14", "lte-rrc.maxEnergyDetectionThreshold_r14", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0, @@ -100012,6 +120477,10 @@ void proto_register_lte_rrc(void) { { "CSI-RS-ConfigNZP-r11", "lte-rrc.CSI_RS_ConfigNZP_r11_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_CSI_RS_ConfigNZPToAddModList_r15_item, + { "CSI-RS-ConfigNZP-r11", "lte-rrc.CSI_RS_ConfigNZP_r11_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r11_item, { "CSI-RS-ConfigNZPId-r11", "lte-rrc.CSI_RS_ConfigNZPId_r11", FT_UINT32, BASE_DEC, NULL, 0, @@ -100020,6 +120489,10 @@ void proto_register_lte_rrc(void) { { "CSI-RS-ConfigNZPId-v1310", "lte-rrc.CSI_RS_ConfigNZPId_v1310", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r15_item, + { "CSI-RS-ConfigNZPId-r13", "lte-rrc.CSI_RS_ConfigNZPId_r13", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_CSI_RS_ConfigZPToAddModList_r11_item, { "CSI-RS-ConfigZP-r11", "lte-rrc.CSI_RS_ConfigZP_r11_element", FT_NONE, BASE_NONE, NULL, 0, @@ -100028,6 +120501,90 @@ void proto_register_lte_rrc(void) { { "CSI-RS-ConfigZPId-r11", "lte-rrc.CSI_RS_ConfigZPId_r11", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_setup_87, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_77", HFILL }}, + { &hf_lte_rrc_antennaInfoDedicatedSTTI_r15, + { "antennaInfoDedicatedSTTI-r15", "lte-rrc.antennaInfoDedicatedSTTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_AntennaInfoDedicatedSTTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_antennaInfoUL_STTI_r15, + { "antennaInfoUL-STTI-r15", "lte-rrc.antennaInfoUL_STTI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_pucch_ConfigDedicated_v1530, + { "pucch-ConfigDedicated-v1530", "lte-rrc.pucch_ConfigDedicated_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_schedulingRequestConfig_v1530, + { "schedulingRequestConfig-v1530", "lte-rrc.schedulingRequestConfig_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SchedulingRequestConfig_v1530_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_uplinkPowerControlDedicatedSTTI_r15, + { "uplinkPowerControlDedicatedSTTI-r15", "lte-rrc.uplinkPowerControlDedicatedSTTI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cqi_ReportConfig_r15, + { "cqi-ReportConfig-r15", "lte-rrc.cqi_ReportConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_CQI_ReportConfig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_csi_RS_Config_r15, + { "csi-RS-Config-r15", "lte-rrc.csi_RS_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_CSI_RS_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_csi_RS_ConfigNZPToReleaseList_r15, + { "csi-RS-ConfigNZPToReleaseList-r15", "lte-rrc.csi_RS_ConfigNZPToReleaseList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_csi_RS_ConfigNZPToAddModList_r15, + { "csi-RS-ConfigNZPToAddModList-r15", "lte-rrc.csi_RS_ConfigNZPToAddModList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_csi_RS_ConfigZPToReleaseList_r15, + { "csi-RS-ConfigZPToReleaseList-r15", "lte-rrc.csi_RS_ConfigZPToReleaseList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "CSI_RS_ConfigZPToReleaseList_r11", HFILL }}, + { &hf_lte_rrc_csi_RS_ConfigZP_ApList_r15, + { "csi-RS-ConfigZP-ApList-r15", "lte-rrc.csi_RS_ConfigZP_ApList_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_CSI_RS_ConfigZP_ApList_r14_vals), 0, + "CSI_RS_ConfigZP_ApList_r14", HFILL }}, + { &hf_lte_rrc_eimta_MainConfigServCell_r15, + { "eimta-MainConfigServCell-r15", "lte-rrc.eimta_MainConfigServCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_EIMTA_MainConfigServCell_r12_vals), 0, + "EIMTA_MainConfigServCell_r12", HFILL }}, + { &hf_lte_rrc_semiOpenLoopSTTI_r15, + { "semiOpenLoopSTTI-r15", "lte-rrc.semiOpenLoopSTTI_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_slotOrSubslotPDSCH_Config_r15, + { "slotOrSubslotPDSCH-Config-r15", "lte-rrc.slotOrSubslotPDSCH_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SlotOrSubslotPDSCH_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_slotOrSubslotPUSCH_Config_r15, + { "slotOrSubslotPUSCH-Config-r15", "lte-rrc.slotOrSubslotPUSCH_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SlotOrSubslotPUSCH_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_spdcch_Config_r15, + { "spdcch-Config-r15", "lte-rrc.spdcch_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SPDCCH_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_spucch_Config_r15, + { "spucch-Config-r15", "lte-rrc.spucch_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SPUCCH_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_srs_DCI7_TriggeringConfig_r15, + { "srs-DCI7-TriggeringConfig-r15", "lte-rrc.srs_DCI7_TriggeringConfig_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_shortProcessingTime_r15, + { "shortProcessingTime-r15", "lte-rrc.shortProcessingTime_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_shortTTI_r15_01, + { "shortTTI-r15", "lte-rrc.shortTTI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_srs_CC_SetIndexList_r14, { "srs-CC-SetIndexList-r14", "lte-rrc.srs_CC_SetIndexList_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -100044,6 +120601,14 @@ void proto_register_lte_rrc(void) { { "soundingRS-UL-ConfigDedicatedAperiodicUpPTsExt-r14", "lte-rrc.soundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13_vals), 0, "SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13", HFILL }}, + { &hf_lte_rrc_dl_STTI_Length_r15, + { "dl-STTI-Length-r15", "lte-rrc.dl_STTI_Length_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_ShortTTI_Length_r15_vals), 0, + "ShortTTI_Length_r15", HFILL }}, + { &hf_lte_rrc_ul_STTI_Length_r15, + { "ul-STTI-Length-r15", "lte-rrc.ul_STTI_Length_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_ShortTTI_Length_r15_vals), 0, + "ShortTTI_Length_r15", HFILL }}, { &hf_lte_rrc_rootSequenceIndex, { "rootSequenceIndex", "lte-rrc.rootSequenceIndex", FT_UINT32, BASE_DEC, NULL, 0, @@ -100076,6 +120641,14 @@ void proto_register_lte_rrc(void) { { "prach-ParametersListCE-r13", "lte-rrc.prach_ParametersListCE_r13", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_edt_PRACH_ParametersListCE_r15, + { "edt-PRACH-ParametersListCE-r15", "lte-rrc.edt_PRACH_ParametersListCE_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxCE_Level_r13_OF_EDT_PRACH_ParametersCE_r15", HFILL }}, + { &hf_lte_rrc_edt_PRACH_ParametersListCE_r15_item, + { "EDT-PRACH-ParametersCE-r15", "lte-rrc.EDT_PRACH_ParametersCE_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_mpdcch_startSF_CSS_RA_r13_01, { "mpdcch-startSF-CSS-RA-r13", "lte-rrc.mpdcch_startSF_CSS_RA_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01_vals), 0, @@ -100168,6 +120741,30 @@ void proto_register_lte_rrc(void) { { "prach-HoppingConfig-r13", "lte-rrc.prach_HoppingConfig_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_prach_HoppingConfig_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_edt_PRACH_ParametersCE_r15, + { "edt-PRACH-ParametersCE-r15", "lte-rrc.edt_PRACH_ParametersCE_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_edt_PRACH_ParametersCE_r15", HFILL }}, + { &hf_lte_rrc_prach_ConfigIndex_r15, + { "prach-ConfigIndex-r15", "lte-rrc.prach_ConfigIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_lte_rrc_prach_FreqOffset_r15, + { "prach-FreqOffset-r15", "lte-rrc.prach_FreqOffset_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_94", HFILL }}, + { &hf_lte_rrc_prach_StartingSubframe_r15, + { "prach-StartingSubframe-r15", "lte-rrc.prach_StartingSubframe_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_prach_StartingSubframe_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r15, + { "mpdcch-NarrowbandsToMonitor-r15", "lte-rrc.mpdcch_NarrowbandsToMonitor_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_mpdcch_NarrowbandsToMonitor_r15_item, + { "mpdcch-NarrowbandsToMonitor-r15 item", "lte-rrc.mpdcch_NarrowbandsToMonitor_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxAvailNarrowBands_r13", HFILL }}, { &hf_lte_rrc_RSRP_ThresholdsPrachInfoList_r13_item, { "RSRP-Range", "lte-rrc.RSRP_Range", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_RSRP_Range_vals_ext, 0, @@ -100216,10 +120813,10 @@ void proto_register_lte_rrc(void) { { "ackNackRepetition", "lte-rrc.ackNackRepetition", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ackNackRepetition_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_66, + { &hf_lte_rrc_setup_88, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_57", HFILL }}, + "T_setup_78", HFILL }}, { &hf_lte_rrc_repetitionFactor, { "repetitionFactor", "lte-rrc.repetitionFactor", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_repetitionFactor_vals), 0, @@ -100248,10 +120845,10 @@ void proto_register_lte_rrc(void) { { "n1PUCCH-AN-CS-r10", "lte-rrc.n1PUCCH_AN_CS_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_n1PUCCH_AN_CS_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_67, + { &hf_lte_rrc_setup_89, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_58", HFILL }}, + "T_setup_79", HFILL }}, { &hf_lte_rrc_n1PUCCH_AN_CS_List_r10, { "n1PUCCH-AN-CS-List-r10", "lte-rrc.n1PUCCH_AN_CS_List_r10", FT_UINT32, BASE_DEC, NULL, 0, @@ -100276,10 +120873,10 @@ void proto_register_lte_rrc(void) { { "n1PUCCH-AN-CS-v1130", "lte-rrc.n1PUCCH_AN_CS_v1130", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_n1PUCCH_AN_CS_v1130_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_68, + { &hf_lte_rrc_setup_90, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_59", HFILL }}, + "T_setup_80", HFILL }}, { &hf_lte_rrc_n1PUCCH_AN_CS_ListP1_r11, { "n1PUCCH-AN-CS-ListP1-r11", "lte-rrc.n1PUCCH_AN_CS_ListP1_r11", FT_UINT32, BASE_DEC, NULL, 0, @@ -100292,10 +120889,10 @@ void proto_register_lte_rrc(void) { { "nPUCCH-Param-r11", "lte-rrc.nPUCCH_Param_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nPUCCH_Param_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_69, + { &hf_lte_rrc_setup_91, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_60", HFILL }}, + "T_setup_81", HFILL }}, { &hf_lte_rrc_nPUCCH_Identity_r11, { "nPUCCH-Identity-r11", "lte-rrc.nPUCCH_Identity_r11", FT_UINT32, BASE_DEC, NULL, 0, @@ -100308,10 +120905,10 @@ void proto_register_lte_rrc(void) { { "nkaPUCCH-Param-r12", "lte-rrc.nkaPUCCH_Param_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nkaPUCCH_Param_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_70, + { &hf_lte_rrc_setup_92, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_61", HFILL }}, + "T_setup_82", HFILL }}, { &hf_lte_rrc_nkaPUCCH_AN_r12, { "nkaPUCCH-AN-r12", "lte-rrc.nkaPUCCH_AN_r12", FT_UINT32, BASE_DEC, NULL, 0, @@ -100320,10 +120917,10 @@ void proto_register_lte_rrc(void) { { "ackNackRepetition-r13", "lte-rrc.ackNackRepetition_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ackNackRepetition_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_71, + { &hf_lte_rrc_setup_93, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_62", HFILL }}, + "T_setup_83", HFILL }}, { &hf_lte_rrc_repetitionFactor_r13, { "repetitionFactor-r13", "lte-rrc.repetitionFactor_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_repetitionFactor_r13_vals), 0, @@ -100356,10 +120953,10 @@ void proto_register_lte_rrc(void) { { "twoAntennaPortActivatedPUCCH-Format3-r13", "lte-rrc.twoAntennaPortActivatedPUCCH_Format3_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_twoAntennaPortActivatedPUCCH_Format3_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_72, + { &hf_lte_rrc_setup_94, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_63", HFILL }}, + "T_setup_84", HFILL }}, { &hf_lte_rrc_n3PUCCH_AN_ListP1_r13, { "n3PUCCH-AN-ListP1-r13", "lte-rrc.n3PUCCH_AN_ListP1_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -100376,10 +120973,10 @@ void proto_register_lte_rrc(void) { { "n1PUCCH-AN-CS-r13", "lte-rrc.n1PUCCH_AN_CS_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_n1PUCCH_AN_CS_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_73, + { &hf_lte_rrc_setup_95, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_64", HFILL }}, + "T_setup_85", HFILL }}, { &hf_lte_rrc_n1PUCCH_AN_CS_List_r13, { "n1PUCCH-AN-CS-List-r13", "lte-rrc.n1PUCCH_AN_CS_List_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -100448,10 +121045,10 @@ void proto_register_lte_rrc(void) { { "nPUCCH-Param-r13", "lte-rrc.nPUCCH_Param_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nPUCCH_Param_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_74, + { &hf_lte_rrc_setup_96, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_65", HFILL }}, + "T_setup_86", HFILL }}, { &hf_lte_rrc_nPUCCH_Identity_r13, { "nPUCCH-Identity-r13", "lte-rrc.nPUCCH_Identity_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -100464,10 +121061,10 @@ void proto_register_lte_rrc(void) { { "nkaPUCCH-Param-r13", "lte-rrc.nkaPUCCH_Param_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nkaPUCCH_Param_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_75, + { &hf_lte_rrc_setup_97, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_66", HFILL }}, + "T_setup_87", HFILL }}, { &hf_lte_rrc_nkaPUCCH_AN_r13, { "nkaPUCCH-AN-r13", "lte-rrc.nkaPUCCH_AN_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -100496,10 +121093,10 @@ void proto_register_lte_rrc(void) { { "pucch-NumRepetitionCE-r13", "lte-rrc.pucch_NumRepetitionCE_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pucch_NumRepetitionCE_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_76, + { &hf_lte_rrc_setup_98, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_67_vals), 0, - "T_setup_67", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_88_vals), 0, + "T_setup_88", HFILL }}, { &hf_lte_rrc_modeA, { "modeA", "lte-rrc.modeA_element", FT_NONE, BASE_NONE, NULL, 0, @@ -100528,7 +121125,7 @@ void proto_register_lte_rrc(void) { { "pucch-Format-v1370", "lte-rrc.pucch_Format_v1370", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pucch_Format_v1370_vals), 0, "T_pucch_Format_v1370", HFILL }}, - { &hf_lte_rrc_setup_77, + { &hf_lte_rrc_setup_99, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, "PUCCH_Format3_Conf_r13", HFILL }}, @@ -100540,10 +121137,10 @@ void proto_register_lte_rrc(void) { { "twoAntennaPortActivatedPUCCH-Format3-r13", "lte-rrc.twoAntennaPortActivatedPUCCH_Format3_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_twoAntennaPortActivatedPUCCH_Format3_r13_01_vals), 0, "T_twoAntennaPortActivatedPUCCH_Format3_r13_01", HFILL }}, - { &hf_lte_rrc_setup_78, + { &hf_lte_rrc_setup_100, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_68", HFILL }}, + "T_setup_89", HFILL }}, { &hf_lte_rrc_n3PUCCH_AN_ListP1_r13_01, { "n3PUCCH-AN-ListP1-r13", "lte-rrc.n3PUCCH_AN_ListP1_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -100552,6 +121149,14 @@ void proto_register_lte_rrc(void) { { "pucch-NumRepetitionCE-format1-r14", "lte-rrc.pucch_NumRepetitionCE_format1_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pucch_NumRepetitionCE_format1_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_n1PUCCH_AN_SPT_r15, + { "n1PUCCH-AN-SPT-r15", "lte-rrc.n1PUCCH_AN_SPT_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_2047", HFILL }}, + { &hf_lte_rrc_codebooksizeDeterminationSTTI_r15, + { "codebooksizeDeterminationSTTI-r15", "lte-rrc.codebooksizeDeterminationSTTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_codebooksizeDeterminationSTTI_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_startingPRB_format4_r13, { "startingPRB-format4-r13", "lte-rrc.startingPRB_format4_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -100656,10 +121261,10 @@ void proto_register_lte_rrc(void) { { "pusch-DMRS-r11", "lte-rrc.pusch_DMRS_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_DMRS_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_79, + { &hf_lte_rrc_setup_101, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_69", HFILL }}, + "T_setup_90", HFILL }}, { &hf_lte_rrc_nPUSCH_Identity_r11, { "nPUSCH-Identity-r11", "lte-rrc.nPUSCH_Identity_r11", FT_UINT32, BASE_DEC, NULL, 0, @@ -100672,10 +121277,10 @@ void proto_register_lte_rrc(void) { { "uciOnPUSCH", "lte-rrc.uciOnPUSCH", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_uciOnPUSCH_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_80, + { &hf_lte_rrc_setup_102, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_70", HFILL }}, + "T_setup_91", HFILL }}, { &hf_lte_rrc_betaOffset_ACK_Index_SubframeSet2_r12, { "betaOffset-ACK-Index-SubframeSet2-r12", "lte-rrc.betaOffset_ACK_Index_SubframeSet2_r12", FT_UINT32, BASE_DEC, NULL, 0, @@ -100752,10 +121357,10 @@ void proto_register_lte_rrc(void) { { "pusch-DMRS-r11", "lte-rrc.pusch_DMRS_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_DMRS_r11_01_vals), 0, "T_pusch_DMRS_r11_01", HFILL }}, - { &hf_lte_rrc_setup_81, + { &hf_lte_rrc_setup_103, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_71", HFILL }}, + "T_setup_92", HFILL }}, { &hf_lte_rrc_nPUSCH_Identity_r13, { "nPUSCH-Identity-r13", "lte-rrc.nPUSCH_Identity_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -100768,10 +121373,10 @@ void proto_register_lte_rrc(void) { { "uciOnPUSCH", "lte-rrc.uciOnPUSCH", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_uciOnPUSCH_01_vals), 0, "T_uciOnPUSCH_01", HFILL }}, - { &hf_lte_rrc_setup_82, + { &hf_lte_rrc_setup_104, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_72", HFILL }}, + "T_setup_93", HFILL }}, { &hf_lte_rrc_betaOffset_ACK_Index_SubframeSet2_r13, { "betaOffset-ACK-Index-SubframeSet2-r13", "lte-rrc.betaOffset_ACK_Index_SubframeSet2_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -100832,6 +121437,38 @@ void proto_register_lte_rrc(void) { { "enable256QAM-r14", "lte-rrc.enable256QAM_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_Enable256QAM_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15, + { "ce-PUSCH-FlexibleStartPRB-AllocConfig-r15", "lte-rrc.ce_PUSCH_FlexibleStartPRB_AllocConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_105, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_94", HFILL }}, + { &hf_lte_rrc_offsetCE_ModeB_r15, + { "offsetCE-ModeB-r15", "lte-rrc.offsetCE_ModeB_r15", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M1_3", HFILL }}, + { &hf_lte_rrc_ce_PUSCH_SubPRB_Config_r15, + { "ce-PUSCH-SubPRB-Config-r15", "lte-rrc.ce_PUSCH_SubPRB_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_PUSCH_SubPRB_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_106, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_95", HFILL }}, + { &hf_lte_rrc_locationCE_ModeB_r15, + { "locationCE-ModeB-r15", "lte-rrc.locationCE_ModeB_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_5", HFILL }}, + { &hf_lte_rrc_sixToneCyclicShift_r15, + { "sixToneCyclicShift-r15", "lte-rrc.sixToneCyclicShift_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3", HFILL }}, + { &hf_lte_rrc_threeToneCyclicShift_r15, + { "threeToneCyclicShift-r15", "lte-rrc.threeToneCyclicShift_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_2", HFILL }}, { &hf_lte_rrc_groupHoppingDisabled_r10_01, { "groupHoppingDisabled-r10", "lte-rrc.groupHoppingDisabled_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_groupHoppingDisabled_r10_01_vals), 0, @@ -100840,10 +121477,22 @@ void proto_register_lte_rrc(void) { { "dmrs-WithOCC-Activated-r10", "lte-rrc.dmrs_WithOCC_Activated_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dmrs_WithOCC_Activated_r10_01_vals), 0, "T_dmrs_WithOCC_Activated_r10_01", HFILL }}, - { &hf_lte_rrc_setup_83, + { &hf_lte_rrc_uci_OnPUSCH_r15, + { "uci-OnPUSCH-r15", "lte-rrc.uci_OnPUSCH_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_uci_OnPUSCH_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_107, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_73", HFILL }}, + "T_setup_96", HFILL }}, + { &hf_lte_rrc_betaOffsetAUL_r15, + { "betaOffsetAUL-r15", "lte-rrc.betaOffsetAUL_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_setup_108, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_97", HFILL }}, { &hf_lte_rrc_symPUSCH_UpPTS_r14, { "symPUSCH-UpPTS-r14", "lte-rrc.symPUSCH_UpPTS_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_symPUSCH_UpPTS_r14_vals), 0, @@ -100852,10 +121501,10 @@ void proto_register_lte_rrc(void) { { "dmrs-LessUpPTS-Config-r14", "lte-rrc.dmrs_LessUpPTS_Config_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dmrs_LessUpPTS_Config_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_84, + { &hf_lte_rrc_setup_109, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_74_vals), 0, - "T_setup_74", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_98_vals), 0, + "T_setup_98", HFILL }}, { &hf_lte_rrc_tpc_SubframeSet_Configured_r14, { "tpc-SubframeSet-Configured-r14", "lte-rrc.tpc_SubframeSet_Configured_r14_element", FT_NONE, BASE_NONE, NULL, 0, @@ -100888,10 +121537,10 @@ void proto_register_lte_rrc(void) { { "dci-Format4-r14", "lte-rrc.dci_Format4_r14", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, - { &hf_lte_rrc_setup_85, + { &hf_lte_rrc_setup_110, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_75", HFILL }}, + "T_setup_99", HFILL }}, { &hf_lte_rrc_pusch_HoppingOffsetPUSCH_Enh_r14, { "pusch-HoppingOffsetPUSCH-Enh-r14", "lte-rrc.pusch_HoppingOffsetPUSCH_Enh_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -100980,6 +121629,10 @@ void proto_register_lte_rrc(void) { { "rach-CE-LevelInfoList-r13", "lte-rrc.rach_CE_LevelInfoList_r13", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_edt_SmallTBS_Subset_r15, + { "edt-SmallTBS-Subset-r15", "lte-rrc.edt_SmallTBS_Subset_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_edt_SmallTBS_Subset_r15_vals), 0, + "T_edt_SmallTBS_Subset_r15", HFILL }}, { &hf_lte_rrc_txFailParams_r12, { "txFailParams-r12", "lte-rrc.txFailParams_r12_element", FT_NONE, BASE_NONE, NULL, 0, @@ -101036,6 +121689,26 @@ void proto_register_lte_rrc(void) { { "rar-HoppingConfig-r13", "lte-rrc.rar_HoppingConfig_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rar_HoppingConfig_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_edt_Parameters_r15, + { "edt-Parameters-r15", "lte-rrc.edt_Parameters_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_edt_Parameters_r15", HFILL }}, + { &hf_lte_rrc_edt_LastPreamble_r15, + { "edt-LastPreamble-r15", "lte-rrc.edt_LastPreamble_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_63", HFILL }}, + { &hf_lte_rrc_edt_SmallTBS_Enabled_r15, + { "edt-SmallTBS-Enabled-r15", "lte-rrc.edt_SmallTBS_Enabled_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_edt_TBS_r15, + { "edt-TBS-r15", "lte-rrc.edt_TBS_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_edt_TBS_r15_vals), 0, + "T_edt_TBS_r15", HFILL }}, + { &hf_lte_rrc_mac_ContentionResolutionTimer_r15, + { "mac-ContentionResolutionTimer-r15", "lte-rrc.mac_ContentionResolutionTimer_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mac_ContentionResolutionTimer_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_powerRampingStep, { "powerRampingStep", "lte-rrc.powerRampingStep", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_powerRampingStep_vals), 0, @@ -101144,6 +121817,22 @@ void proto_register_lte_rrc(void) { { "pucch-ConfigCommon-v1430", "lte-rrc.pucch_ConfigCommon_v1430_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_prach_Config_v1530, + { "prach-Config-v1530", "lte-rrc.prach_Config_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "PRACH_ConfigSIB_v1530", HFILL }}, + { &hf_lte_rrc_ce_RSS_Config_r15, + { "ce-RSS-Config-r15", "lte-rrc.ce_RSS_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RSS_Config_r15", HFILL }}, + { &hf_lte_rrc_wus_Config_r15, + { "wus-Config-r15", "lte-rrc.wus_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_highSpeedConfig_v1530, + { "highSpeedConfig-v1530", "lte-rrc.highSpeedConfig_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_prach_Config_01, { "prach-Config", "lte-rrc.prach_Config_element", FT_NONE, BASE_NONE, NULL, 0, @@ -101156,6 +121845,10 @@ void proto_register_lte_rrc(void) { { "uplinkPowerControlCommon-v1310", "lte-rrc.uplinkPowerControlCommon_v1310_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_uplinkPowerControlCommon_v1530, + { "uplinkPowerControlCommon-v1530", "lte-rrc.uplinkPowerControlCommon_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_basicFields_r12, { "basicFields-r12", "lte-rrc.basicFields_r12_element", FT_NONE, BASE_NONE, NULL, 0, @@ -101176,6 +121869,10 @@ void proto_register_lte_rrc(void) { { "uplinkPowerControlCommonPSCell-v1310", "lte-rrc.uplinkPowerControlCommonPSCell_v1310_element", FT_NONE, BASE_NONE, NULL, 0, "UplinkPowerControlCommon_v1310", HFILL }}, + { &hf_lte_rrc_uplinkPowerControlCommonPSCell_v1530, + { "uplinkPowerControlCommonPSCell-v1530", "lte-rrc.uplinkPowerControlCommonPSCell_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "UplinkPowerControlCommon_v1530", HFILL }}, { &hf_lte_rrc_basicFields_v12f0, { "basicFields-v12f0", "lte-rrc.basicFields_v12f0_element", FT_NONE, BASE_NONE, NULL, 0, @@ -101332,6 +122029,10 @@ void proto_register_lte_rrc(void) { { "soundingRS-FlexibleTiming-r14", "lte-rrc.soundingRS_FlexibleTiming_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_soundingRS_FlexibleTiming_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_uplinkPowerControlCommonSCell_v1530, + { "uplinkPowerControlCommonSCell-v1530", "lte-rrc.uplinkPowerControlCommonSCell_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "UplinkPowerControlCommon_v1530", HFILL }}, { &hf_lte_rrc_ul_Configuration_v10l0, { "ul-Configuration-v10l0", "lte-rrc.ul_Configuration_v10l0_element", FT_NONE, BASE_NONE, NULL, 0, @@ -101360,7 +122061,7 @@ void proto_register_lte_rrc(void) { { "modificationPeriodCoeff-v1310", "lte-rrc.modificationPeriodCoeff_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_modificationPeriodCoeff_v1310_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_dummy_03, + { &hf_lte_rrc_dummy_04, { "dummy", "lte-rrc.dummy", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dummy_02_vals), 0, "T_dummy_02", HFILL }}, @@ -101444,6 +122145,10 @@ void proto_register_lte_rrc(void) { { "highSpeedEnhancedDemodulationFlag-r14", "lte-rrc.highSpeedEnhancedDemodulationFlag_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_highSpeedMeasGapCE_ModeA_r15, + { "highSpeedMeasGapCE-ModeA-r15", "lte-rrc.highSpeedMeasGapCE_ModeA_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_highSpeedMeasGapCE_ModeA_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_highSpeedEnhancedDemodulationFlag_r14_01, { "highSpeedEnhancedDemodulationFlag-r14", "lte-rrc.highSpeedEnhancedDemodulationFlag_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_highSpeedEnhancedDemodulationFlag_r14_01_vals), 0, @@ -101504,6 +122209,46 @@ void proto_register_lte_rrc(void) { { "sps-Config-v1430", "lte-rrc.sps_Config_v1430_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_srb_ToAddModExtList_r15, + { "srb-ToAddModExtList-r15", "lte-rrc.srb_ToAddModExtList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_srb_ToReleaseExtList_r15, + { "srb-ToReleaseExtList-r15", "lte-rrc.srb_ToReleaseExtList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_4", HFILL }}, + { &hf_lte_rrc_sps_Config_v1530, + { "sps-Config-v1530", "lte-rrc.sps_Config_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_crs_IntfMitigConfig_r15_01, + { "crs-IntfMitigConfig-r15", "lte-rrc.crs_IntfMitigConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_crs_IntfMitigConfig_r15_01_vals), 0, + "T_crs_IntfMitigConfig_r15_01", HFILL }}, + { &hf_lte_rrc_setup_111, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_100_vals), 0, + "T_setup_100", HFILL }}, + { &hf_lte_rrc_crs_IntfMitigNumPRBs_r15_01, + { "crs-IntfMitigNumPRBs-r15", "lte-rrc.crs_IntfMitigNumPRBs_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_crs_IntfMitigNumPRBs_r15_01_vals), 0, + "T_crs_IntfMitigNumPRBs_r15_01", HFILL }}, + { &hf_lte_rrc_neighCellsCRS_Info_r15, + { "neighCellsCRS-Info-r15", "lte-rrc.neighCellsCRS_Info_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_NeighCellsCRS_Info_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_drb_ToAddModList_r15, + { "drb-ToAddModList-r15", "lte-rrc.drb_ToAddModList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_drb_ToReleaseList_r15, + { "drb-ToReleaseList-r15", "lte-rrc.drb_ToReleaseList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_srb_ToReleaseListDupl_r15, + { "srb-ToReleaseListDupl-r15", "lte-rrc.srb_ToReleaseListDupl_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_physicalConfigDedicated_v1370, { "physicalConfigDedicated-v1370", "lte-rrc.physicalConfigDedicated_v1370_element", FT_NONE, BASE_NONE, NULL, 0, @@ -101520,6 +122265,10 @@ void proto_register_lte_rrc(void) { { "neighCellsCRS-InfoPSCell-r13", "lte-rrc.neighCellsCRS_InfoPSCell_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_NeighCellsCRS_Info_r13_vals), 0, "NeighCellsCRS_Info_r13", HFILL }}, + { &hf_lte_rrc_crs_IntfMitigEnabled_r15, + { "crs-IntfMitigEnabled-r15", "lte-rrc.crs_IntfMitigEnabled_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, { &hf_lte_rrc_physicalConfigDedicatedPSCell_v1370, { "physicalConfigDedicatedPSCell-v1370", "lte-rrc.physicalConfigDedicatedPSCell_v1370_element", FT_NONE, BASE_NONE, NULL, 0, @@ -101536,6 +122285,10 @@ void proto_register_lte_rrc(void) { { "rlf-TimersAndConstantsSCG-r12", "lte-rrc.rlf_TimersAndConstantsSCG_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_RLF_TimersAndConstantsSCG_r12_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_drb_ToAddModListSCG_r15_01, + { "drb-ToAddModListSCG-r15", "lte-rrc.drb_ToAddModListSCG_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_physicalConfigDedicatedSCell_r10, { "physicalConfigDedicatedSCell-r10", "lte-rrc.physicalConfigDedicatedSCell_r10_element", FT_NONE, BASE_NONE, NULL, 0, @@ -101556,6 +122309,10 @@ void proto_register_lte_rrc(void) { { "SRB-ToAddMod", "lte-rrc.SRB_ToAddMod_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_SRB_ToAddModExtList_r15_item, + { "SRB-ToAddMod", "lte-rrc.SRB_ToAddMod_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_srb_Identity, { "srb-Identity", "lte-rrc.srb_Identity", FT_UINT32, BASE_DEC, NULL, 0, @@ -101580,14 +122337,38 @@ void proto_register_lte_rrc(void) { { "pdcp-verChange-r15", "lte-rrc.pdcp_verChange_r15", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdcp_verChange_r15_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_rlc_Config_v1530, + { "rlc-Config-v1530", "lte-rrc.rlc_Config_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_RLC_Config_v1530_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_rlc_BearerConfigDupl_r15, + { "rlc-BearerConfigDupl-r15", "lte-rrc.rlc_BearerConfigDupl_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_RLC_BearerConfig_r15_vals), 0, + "RLC_BearerConfig_r15", HFILL }}, + { &hf_lte_rrc_srb_Identity_v1530, + { "srb-Identity-v1530", "lte-rrc.srb_Identity_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_4", HFILL }}, + { &hf_lte_rrc_SRB_ToReleaseListDupl_r15_item, + { "SRB-ToReleaseListDupl-r15 item", "lte-rrc.SRB_ToReleaseListDupl_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_2", HFILL }}, { &hf_lte_rrc_DRB_ToAddModList_item, { "DRB-ToAddMod", "lte-rrc.DRB_ToAddMod_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_DRB_ToAddModList_r15_item, + { "DRB-ToAddMod", "lte-rrc.DRB_ToAddMod_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_DRB_ToAddModListSCG_r12_item, { "DRB-ToAddModSCG-r12", "lte-rrc.DRB_ToAddModSCG_r12_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_DRB_ToAddModListSCG_r15_item, + { "DRB-ToAddModSCG-r12", "lte-rrc.DRB_ToAddModSCG_r12_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_eps_BearerIdentity, { "eps-BearerIdentity", "lte-rrc.eps_BearerIdentity", FT_UINT32, BASE_DEC, NULL, 0, @@ -101648,6 +122429,10 @@ void proto_register_lte_rrc(void) { { "rlc-Config-v1510", "lte-rrc.rlc_Config_v1510_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_logicalChannelIdentity_r15_01, + { "logicalChannelIdentity-r15", "lte-rrc.logicalChannelIdentity_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_32_38", HFILL }}, { &hf_lte_rrc_drb_Type_r12_01, { "drb-Type-r12", "lte-rrc.drb_Type_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_drb_Type_r12_01_vals), 0, @@ -101676,15 +122461,23 @@ void proto_register_lte_rrc(void) { { "logicalChannelConfigSCG-r12", "lte-rrc.logicalChannelConfigSCG_r12_element", FT_NONE, BASE_NONE, NULL, 0, "LogicalChannelConfig", HFILL }}, + { &hf_lte_rrc_logicalChannelIdentitySCG_r15, + { "logicalChannelIdentitySCG-r15", "lte-rrc.logicalChannelIdentitySCG_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_32_38", HFILL }}, { &hf_lte_rrc_DRB_ToReleaseList_item, { "DRB-Identity", "lte-rrc.DRB_Identity", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_86, + { &hf_lte_rrc_DRB_ToReleaseList_r15_item, + { "DRB-Identity", "lte-rrc.DRB_Identity", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_112, { "setup", "lte-rrc.setup", FT_UINT32, BASE_DEC, VALS(lte_rrc_MeasSubframePattern_r10_vals), 0, "MeasSubframePattern_r10", HFILL }}, - { &hf_lte_rrc_setup_87, + { &hf_lte_rrc_setup_113, { "setup", "lte-rrc.setup", FT_UINT32, BASE_DEC, NULL, 0, "CRS_AssistanceInfoList_r11", HFILL }}, @@ -101704,7 +122497,7 @@ void proto_register_lte_rrc(void) { { "mbsfn-SubframeConfigList-r11", "lte-rrc.mbsfn_SubframeConfigList_r11", FT_UINT32, BASE_DEC, NULL, 0, "MBSFN_SubframeConfigList", HFILL }}, - { &hf_lte_rrc_setup_88, + { &hf_lte_rrc_setup_114, { "setup", "lte-rrc.setup", FT_UINT32, BASE_DEC, NULL, 0, "CRS_AssistanceInfoList_r13", HFILL }}, @@ -101720,10 +122513,26 @@ void proto_register_lte_rrc(void) { { "mbsfn-SubframeConfigList-r13", "lte-rrc.mbsfn_SubframeConfigList_r13", FT_UINT32, BASE_DEC, NULL, 0, "MBSFN_SubframeConfigList", HFILL }}, - { &hf_lte_rrc_setup_89, + { &hf_lte_rrc_setup_115, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, NULL, 0, + "CRS_AssistanceInfoList_r15", HFILL }}, + { &hf_lte_rrc_CRS_AssistanceInfoList_r15_item, + { "CRS-AssistanceInfo-r15", "lte-rrc.CRS_AssistanceInfo_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_physCellId_r15, + { "physCellId-r15", "lte-rrc.physCellId_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "PhysCellId", HFILL }}, + { &hf_lte_rrc_crs_IntfMitigEnabled_15_01, + { "crs-IntfMitigEnabled-15", "lte-rrc.crs_IntfMitigEnabled_15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_crs_IntfMitigEnabled_15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_116, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_76", HFILL }}, + "T_setup_101", HFILL }}, { &hf_lte_rrc_neighCellsToReleaseList_r12, { "neighCellsToReleaseList-r12", "lte-rrc.neighCellsToReleaseList_r12", FT_UINT32, BASE_DEC, NULL, 0, @@ -101772,10 +122581,26 @@ void proto_register_lte_rrc(void) { { "resAllocGranularity-r12", "lte-rrc.resAllocGranularity_r12", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_1_4", HFILL }}, - { &hf_lte_rrc_setup_90, + { &hf_lte_rrc_setup_117, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_77", HFILL }}, + "T_setup_102", HFILL }}, + { &hf_lte_rrc_rlc_Config_r15, + { "rlc-Config-r15", "lte-rrc.rlc_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_logicalChannelIdentityConfig_r15, + { "logicalChannelIdentityConfig-r15", "lte-rrc.logicalChannelIdentityConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logicalChannelIdentityConfig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_logicalChannelConfig_r15, + { "logicalChannelConfig-r15", "lte-rrc.logicalChannelConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "LogicalChannelConfig", HFILL }}, + { &hf_lte_rrc_setup_118, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_103", HFILL }}, { &hf_lte_rrc_rclwi_Config_r13, { "rclwi-Config-r13", "lte-rrc.rclwi_Config_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -101848,10 +122673,10 @@ void proto_register_lte_rrc(void) { { "pollPDU-v1310", "lte-rrc.pollPDU_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_PollPDU_v1310_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_91, + { &hf_lte_rrc_setup_119, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_78", HFILL }}, + "T_setup_104", HFILL }}, { &hf_lte_rrc_pollByte_r14, { "pollByte-r14", "lte-rrc.pollByte_r14", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_PollByte_r14_vals_ext, 0, @@ -101860,6 +122685,58 @@ void proto_register_lte_rrc(void) { { "reestablishRLC-r15", "lte-rrc.reestablishRLC_r15", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_reestablishRLC_r15_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_setup_120, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_105", HFILL }}, + { &hf_lte_rrc_rlc_OutOfOrderDelivery_r15, + { "rlc-OutOfOrderDelivery-r15", "lte-rrc.rlc_OutOfOrderDelivery_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rlc_OutOfOrderDelivery_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_mode_r15, + { "mode-r15", "lte-rrc.mode_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mode_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_am_r15, + { "am-r15", "lte-rrc.am_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ul_AM_RLC_r15, + { "ul-AM-RLC-r15", "lte-rrc.ul_AM_RLC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_dl_AM_RLC_r15, + { "dl-AM-RLC-r15", "lte-rrc.dl_AM_RLC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_um_Bi_Directional_r15, + { "um-Bi-Directional-r15", "lte-rrc.um_Bi_Directional_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ul_UM_RLC_r15, + { "ul-UM-RLC-r15", "lte-rrc.ul_UM_RLC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "UL_UM_RLC", HFILL }}, + { &hf_lte_rrc_dl_UM_RLC_r15, + { "dl-UM-RLC-r15", "lte-rrc.dl_UM_RLC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_um_Uni_Directional_UL_r15, + { "um-Uni-Directional-UL-r15", "lte-rrc.um_Uni_Directional_UL_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_um_Uni_Directional_DL_r15, + { "um-Uni-Directional-DL-r15", "lte-rrc.um_Uni_Directional_DL_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_reestablishRLC_r15_01, + { "reestablishRLC-r15", "lte-rrc.reestablishRLC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_reestablishRLC_r15_01_vals), 0, + "T_reestablishRLC_r15_01", HFILL }}, + { &hf_lte_rrc_rlc_OutOfOrderDelivery_r15_01, + { "rlc-OutOfOrderDelivery-r15", "lte-rrc.rlc_OutOfOrderDelivery_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rlc_OutOfOrderDelivery_r15_01_vals), 0, + "T_rlc_OutOfOrderDelivery_r15_01", HFILL }}, { &hf_lte_rrc_t_PollRetransmit, { "t-PollRetransmit", "lte-rrc.t_PollRetransmit", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_T_PollRetransmit_vals_ext, 0, @@ -101876,6 +122753,26 @@ void proto_register_lte_rrc(void) { { "maxRetxThreshold", "lte-rrc.maxRetxThreshold", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxRetxThreshold_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_t_PollRetransmit_r15, + { "t-PollRetransmit-r15", "lte-rrc.t_PollRetransmit_r15", + FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_T_PollRetransmit_vals_ext, 0, + "T_PollRetransmit", HFILL }}, + { &hf_lte_rrc_pollPDU_r15, + { "pollPDU-r15", "lte-rrc.pollPDU_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_PollPDU_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pollByte_r15, + { "pollByte-r15", "lte-rrc.pollByte_r15", + FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_PollByte_r14_vals_ext, 0, + "PollByte_r14", HFILL }}, + { &hf_lte_rrc_maxRetxThreshold_r15, + { "maxRetxThreshold-r15", "lte-rrc.maxRetxThreshold_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxRetxThreshold_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_extended_RLC_LI_Field_r15, + { "extended-RLC-LI-Field-r15", "lte-rrc.extended_RLC_LI_Field_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, { &hf_lte_rrc_t_Reordering, { "t-Reordering", "lte-rrc.t_Reordering", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_T_Reordering_vals_ext, 0, @@ -101884,14 +122781,26 @@ void proto_register_lte_rrc(void) { { "t-StatusProhibit", "lte-rrc.t_StatusProhibit", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_T_StatusProhibit_vals_ext, 0, NULL, HFILL }}, + { &hf_lte_rrc_t_Reordering_r15, + { "t-Reordering-r15", "lte-rrc.t_Reordering_r15", + FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_T_Reordering_vals_ext, 0, + "T_Reordering", HFILL }}, + { &hf_lte_rrc_t_StatusProhibit_r15, + { "t-StatusProhibit-r15", "lte-rrc.t_StatusProhibit_r15", + FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_T_StatusProhibit_vals_ext, 0, + "T_StatusProhibit", HFILL }}, { &hf_lte_rrc_sn_FieldLength, { "sn-FieldLength", "lte-rrc.sn_FieldLength", FT_UINT32, BASE_DEC, VALS(lte_rrc_SN_FieldLength_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_92, + { &hf_lte_rrc_sn_FieldLength_r15, + { "sn-FieldLength-r15", "lte-rrc.sn_FieldLength_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SN_FieldLength_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_121, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_79", HFILL }}, + "T_setup_106", HFILL }}, { &hf_lte_rrc_t301_r9, { "t301-r9", "lte-rrc.t301_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t301_r9_vals), 0, @@ -101912,10 +122821,10 @@ void proto_register_lte_rrc(void) { { "n311-r9", "lte-rrc.n311_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_n311_r9_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_93, + { &hf_lte_rrc_setup_122, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_80", HFILL }}, + "T_setup_107", HFILL }}, { &hf_lte_rrc_t301_v1310, { "t301-v1310", "lte-rrc.t301_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t301_v1310_vals), 0, @@ -101924,10 +122833,10 @@ void proto_register_lte_rrc(void) { { "t310-v1330", "lte-rrc.t310_v1330", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t310_v1330_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_94, + { &hf_lte_rrc_setup_123, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_81", HFILL }}, + "T_setup_108", HFILL }}, { &hf_lte_rrc_t313_r12, { "t313-r12", "lte-rrc.t313_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t313_r12_vals), 0, @@ -102072,10 +122981,30 @@ void proto_register_lte_rrc(void) { { "fdd", "lte-rrc.fdd_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_95, + { &hf_lte_rrc_duration_r15, + { "duration-r15", "lte-rrc.duration_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_duration_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_freqLocation_r15, + { "freqLocation-r15", "lte-rrc.freqLocation_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_98", HFILL }}, + { &hf_lte_rrc_periodicity_r15, + { "periodicity-r15", "lte-rrc.periodicity_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_periodicity_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_powerBoost_r15, + { "powerBoost-r15", "lte-rrc.powerBoost_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_powerBoost_r15_vals), 0, + "T_powerBoost_r15", HFILL }}, + { &hf_lte_rrc_timeOffset_r15, + { "timeOffset-r15", "lte-rrc.timeOffset_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_setup_124, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_82", HFILL }}, + "T_setup_109", HFILL }}, { &hf_lte_rrc_sr_PUCCH_ResourceIndex, { "sr-PUCCH-ResourceIndex", "lte-rrc.sr_PUCCH_ResourceIndex", FT_UINT32, BASE_DEC, NULL, 0, @@ -102092,10 +123021,10 @@ void proto_register_lte_rrc(void) { { "sr-PUCCH-ResourceIndexP1-r10", "lte-rrc.sr_PUCCH_ResourceIndexP1_r10", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_2047", HFILL }}, - { &hf_lte_rrc_setup_96, + { &hf_lte_rrc_setup_125, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_83", HFILL }}, + "T_setup_110", HFILL }}, { &hf_lte_rrc_sr_PUCCH_ResourceIndex_r13, { "sr-PUCCH-ResourceIndex-r13", "lte-rrc.sr_PUCCH_ResourceIndex_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -102112,10 +123041,130 @@ void proto_register_lte_rrc(void) { { "dsr-TransMax-r13", "lte-rrc.dsr_TransMax_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dsr_TransMax_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_97, + { &hf_lte_rrc_setup_126, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_84", HFILL }}, + "T_setup_111", HFILL }}, + { &hf_lte_rrc_sr_SlotSPUCCH_IndexFH_r15, + { "sr-SlotSPUCCH-IndexFH-r15", "lte-rrc.sr_SlotSPUCCH_IndexFH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1319", HFILL }}, + { &hf_lte_rrc_sr_SlotSPUCCH_IndexNoFH_r15, + { "sr-SlotSPUCCH-IndexNoFH-r15", "lte-rrc.sr_SlotSPUCCH_IndexNoFH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3959", HFILL }}, + { &hf_lte_rrc_sr_SubslotSPUCCH_ResourceList_r15, + { "sr-SubslotSPUCCH-ResourceList-r15", "lte-rrc.sr_SubslotSPUCCH_ResourceList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sr_ConfigIndexSlot_r15, + { "sr-ConfigIndexSlot-r15", "lte-rrc.sr_ConfigIndexSlot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_36", HFILL }}, + { &hf_lte_rrc_sr_ConfigIndexSubslot_r15, + { "sr-ConfigIndexSubslot-r15", "lte-rrc.sr_ConfigIndexSubslot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_122", HFILL }}, + { &hf_lte_rrc_dssr_TransMax_r15, + { "dssr-TransMax-r15", "lte-rrc.dssr_TransMax_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dssr_TransMax_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_SR_SubslotSPUCCH_ResourceList_r15_item, + { "SR-SubslotSPUCCH-ResourceList-r15 item", "lte-rrc.SR_SubslotSPUCCH_ResourceList_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1319", HFILL }}, + { &hf_lte_rrc_setup_127, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_112", HFILL }}, + { &hf_lte_rrc_altCQI_TableSTTI_r15, + { "altCQI-TableSTTI-r15", "lte-rrc.altCQI_TableSTTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_altCQI_TableSTTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_altCQI_Table1024QAM_STTI_r15, + { "altCQI-Table1024QAM-STTI-r15", "lte-rrc.altCQI_Table1024QAM_STTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_altCQI_Table1024QAM_STTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_resourceAllocation_r15, + { "resourceAllocation-r15", "lte-rrc.resourceAllocation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_resourceAllocation_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_tbsIndexAlt_STTI_r15, + { "tbsIndexAlt-STTI-r15", "lte-rrc.tbsIndexAlt_STTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tbsIndexAlt_STTI_r15_vals), 0, + "T_tbsIndexAlt_STTI_r15", HFILL }}, + { &hf_lte_rrc_tbsIndexAlt2_STTI_r15, + { "tbsIndexAlt2-STTI-r15", "lte-rrc.tbsIndexAlt2_STTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tbsIndexAlt2_STTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_tbsIndexAlt3_STTI_r15, + { "tbsIndexAlt3-STTI-r15", "lte-rrc.tbsIndexAlt3_STTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tbsIndexAlt3_STTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_128, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_113", HFILL }}, + { &hf_lte_rrc_betaOffsetSlot_ACK_Index_r15, + { "betaOffsetSlot-ACK-Index-r15", "lte-rrc.betaOffsetSlot_ACK_Index_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_betaOffset2Slot_ACK_Index_r15, + { "betaOffset2Slot-ACK-Index-r15", "lte-rrc.betaOffset2Slot_ACK_Index_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_betaOffsetSubslot_ACK_Index_r15, + { "betaOffsetSubslot-ACK-Index-r15", "lte-rrc.betaOffsetSubslot_ACK_Index_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "T_betaOffsetSubslot_ACK_Index_r15", HFILL }}, + { &hf_lte_rrc_betaOffsetSubslot_ACK_Index_r15_item, + { "betaOffsetSubslot-ACK-Index-r15 item", "lte-rrc.betaOffsetSubslot_ACK_Index_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_betaOffset2Subslot_ACK_Index_r15, + { "betaOffset2Subslot-ACK-Index-r15", "lte-rrc.betaOffset2Subslot_ACK_Index_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "T_betaOffset2Subslot_ACK_Index_r15", HFILL }}, + { &hf_lte_rrc_betaOffset2Subslot_ACK_Index_r15_item, + { "betaOffset2Subslot-ACK-Index-r15 item", "lte-rrc.betaOffset2Subslot_ACK_Index_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_betaOffsetSlot_RI_Index_r15, + { "betaOffsetSlot-RI-Index-r15", "lte-rrc.betaOffsetSlot_RI_Index_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_betaOffsetSubslot_RI_Index_r15, + { "betaOffsetSubslot-RI-Index-r15", "lte-rrc.betaOffsetSubslot_RI_Index_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "T_betaOffsetSubslot_RI_Index_r15", HFILL }}, + { &hf_lte_rrc_betaOffsetSubslot_RI_Index_r15_item, + { "betaOffsetSubslot-RI-Index-r15 item", "lte-rrc.betaOffsetSubslot_RI_Index_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_betaOffsetSlot_CQI_Index_r15, + { "betaOffsetSlot-CQI-Index-r15", "lte-rrc.betaOffsetSlot_CQI_Index_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_betaOffsetSubslot_CQI_Index_r15, + { "betaOffsetSubslot-CQI-Index-r15", "lte-rrc.betaOffsetSubslot_CQI_Index_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_enable256QAM_SlotOrSubslot_r15, + { "enable256QAM-SlotOrSubslot-r15", "lte-rrc.enable256QAM_SlotOrSubslot_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_Enable256QAM_r14_vals), 0, + "Enable256QAM_r14", HFILL }}, + { &hf_lte_rrc_resourceAllocationOffset_r15, + { "resourceAllocationOffset-r15", "lte-rrc.resourceAllocationOffset_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_2", HFILL }}, + { &hf_lte_rrc_ul_DMRS_IFDMA_SlotOrSubslot_r15, + { "ul-DMRS-IFDMA-SlotOrSubslot-r15", "lte-rrc.ul_DMRS_IFDMA_SlotOrSubslot_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_setup_129, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_114", HFILL }}, { &hf_lte_rrc_srs_BandwidthConfig, { "srs-BandwidthConfig", "lte-rrc.srs_BandwidthConfig", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_srs_BandwidthConfig_vals), 0, @@ -102132,10 +123181,10 @@ void proto_register_lte_rrc(void) { { "srs-MaxUpPts", "lte-rrc.srs_MaxUpPts", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_srs_MaxUpPts_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_98, + { &hf_lte_rrc_setup_130, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_85", HFILL }}, + "T_setup_115", HFILL }}, { &hf_lte_rrc_srs_Bandwidth, { "srs-Bandwidth", "lte-rrc.srs_Bandwidth", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_srs_Bandwidth_vals), 0, @@ -102168,10 +123217,10 @@ void proto_register_lte_rrc(void) { { "srs-AntennaPort-r10", "lte-rrc.srs_AntennaPort_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_SRS_AntennaPort_vals), 0, "SRS_AntennaPort", HFILL }}, - { &hf_lte_rrc_setup_99, + { &hf_lte_rrc_setup_131, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_86", HFILL }}, + "T_setup_116", HFILL }}, { &hf_lte_rrc_transmissionComb_v1310, { "transmissionComb-v1310", "lte-rrc.transmissionComb_v1310", FT_UINT32, BASE_DEC, NULL, 0, @@ -102184,10 +123233,10 @@ void proto_register_lte_rrc(void) { { "transmissionCombNum-r13", "lte-rrc.transmissionCombNum_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_transmissionCombNum_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_100, + { &hf_lte_rrc_setup_132, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_87", HFILL }}, + "T_setup_117", HFILL }}, { &hf_lte_rrc_srs_UpPtsAdd_r13, { "srs-UpPtsAdd-r13", "lte-rrc.srs_UpPtsAdd_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_srs_UpPtsAdd_r13_vals), 0, @@ -102228,10 +123277,10 @@ void proto_register_lte_rrc(void) { { "transmissionCombNum-r13", "lte-rrc.transmissionCombNum_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_transmissionCombNum_r13_01_vals), 0, "T_transmissionCombNum_r13_01", HFILL }}, - { &hf_lte_rrc_setup_101, + { &hf_lte_rrc_setup_133, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_88", HFILL }}, + "T_setup_118", HFILL }}, { &hf_lte_rrc_srs_ConfigIndexAp_r10, { "srs-ConfigIndexAp-r10", "lte-rrc.srs_ConfigIndexAp_r10", FT_UINT32, BASE_DEC, NULL, 0, @@ -102248,10 +123297,10 @@ void proto_register_lte_rrc(void) { { "srs-ActivateAp-r10", "lte-rrc.srs_ActivateAp_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_srs_ActivateAp_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_102, + { &hf_lte_rrc_setup_134, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_89", HFILL }}, + "T_setup_119", HFILL }}, { &hf_lte_rrc_srs_ConfigApDCI_Format0_r10, { "srs-ConfigApDCI-Format0-r10", "lte-rrc.srs_ConfigApDCI_Format0_r10_element", FT_NONE, BASE_NONE, NULL, 0, @@ -102260,10 +123309,10 @@ void proto_register_lte_rrc(void) { { "srs-ConfigApDCI-Format1a2b2c-r10", "lte-rrc.srs_ConfigApDCI_Format1a2b2c_r10_element", FT_NONE, BASE_NONE, NULL, 0, "SRS_ConfigAp_r10", HFILL }}, - { &hf_lte_rrc_setup_103, + { &hf_lte_rrc_setup_135, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_90", HFILL }}, + "T_setup_120", HFILL }}, { &hf_lte_rrc_srs_ConfigApDCI_Format4_v1310, { "srs-ConfigApDCI-Format4-v1310", "lte-rrc.srs_ConfigApDCI_Format4_v1310", FT_UINT32, BASE_DEC, NULL, 0, @@ -102276,10 +123325,10 @@ void proto_register_lte_rrc(void) { { "srs-ActivateAp-v1310", "lte-rrc.srs_ActivateAp_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_srs_ActivateAp_v1310_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_104, + { &hf_lte_rrc_setup_136, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_91", HFILL }}, + "T_setup_121", HFILL }}, { &hf_lte_rrc_srs_ConfigApDCI_Format0_v1310, { "srs-ConfigApDCI-Format0-v1310", "lte-rrc.srs_ConfigApDCI_Format0_v1310_element", FT_NONE, BASE_NONE, NULL, 0, @@ -102288,10 +123337,10 @@ void proto_register_lte_rrc(void) { { "srs-ConfigApDCI-Format1a2b2c-v1310", "lte-rrc.srs_ConfigApDCI_Format1a2b2c_v1310_element", FT_NONE, BASE_NONE, NULL, 0, "SRS_ConfigAp_v1310", HFILL }}, - { &hf_lte_rrc_setup_105, + { &hf_lte_rrc_setup_137, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_92", HFILL }}, + "T_setup_122", HFILL }}, { &hf_lte_rrc_srs_UpPtsAdd_r13_01, { "srs-UpPtsAdd-r13", "lte-rrc.srs_UpPtsAdd_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_srs_UpPtsAdd_r13_01_vals), 0, @@ -102312,10 +123361,10 @@ void proto_register_lte_rrc(void) { { "srs-ActivateAp-r13", "lte-rrc.srs_ActivateAp_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_srs_ActivateAp_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_106, + { &hf_lte_rrc_setup_138, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_93", HFILL }}, + "T_setup_123", HFILL }}, { &hf_lte_rrc_srs_ConfigApDCI_Format0_r13, { "srs-ConfigApDCI-Format0-r13", "lte-rrc.srs_ConfigApDCI_Format0_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -102324,10 +123373,10 @@ void proto_register_lte_rrc(void) { { "srs-ConfigApDCI-Format1a2b2c-r13", "lte-rrc.srs_ConfigApDCI_Format1a2b2c_r13_element", FT_NONE, BASE_NONE, NULL, 0, "SRS_ConfigAp_r13", HFILL }}, - { &hf_lte_rrc_setup_107, + { &hf_lte_rrc_setup_139, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_94", HFILL }}, + "T_setup_124", HFILL }}, { &hf_lte_rrc_srs_SubframeIndication_r14, { "srs-SubframeIndication-r14", "lte-rrc.srs_SubframeIndication_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -102388,6 +123437,98 @@ void proto_register_lte_rrc(void) { { "transmissionCombNum-r13", "lte-rrc.transmissionCombNum_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_transmissionCombNum_r13_03_vals), 0, "T_transmissionCombNum_r13_03", HFILL }}, + { &hf_lte_rrc_setup_140, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_125", HFILL }}, + { &hf_lte_rrc_spdcch_L1_ReuseIndication_r15, + { "spdcch-L1-ReuseIndication-r15", "lte-rrc.spdcch_L1_ReuseIndication_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_spdcch_L1_ReuseIndication_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_spdcch_SetConfig_r15, + { "spdcch-SetConfig-r15", "lte-rrc.spdcch_SetConfig_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SPDCCH_Set_r15", HFILL }}, + { &hf_lte_rrc_SPDCCH_Set_r15_item, + { "SPDCCH-Elements-r15", "lte-rrc.SPDCCH_Elements_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SPDCCH_Elements_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_141, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_126", HFILL }}, + { &hf_lte_rrc_spdcch_SetConfigId_r15, + { "spdcch-SetConfigId-r15", "lte-rrc.spdcch_SetConfigId_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3", HFILL }}, + { &hf_lte_rrc_spdcch_SetReferenceSig_r15, + { "spdcch-SetReferenceSig-r15", "lte-rrc.spdcch_SetReferenceSig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_spdcch_SetReferenceSig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_transmissionType_r15, + { "transmissionType-r15", "lte-rrc.transmissionType_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_transmissionType_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_spdcch_NoOfSymbols_r15, + { "spdcch-NoOfSymbols-r15", "lte-rrc.spdcch_NoOfSymbols_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_2", HFILL }}, + { &hf_lte_rrc_dmrs_ScramblingSequenceInt_r15, + { "dmrs-ScramblingSequenceInt-r15", "lte-rrc.dmrs_ScramblingSequenceInt_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_503", HFILL }}, + { &hf_lte_rrc_dci7_CandidatesPerAL_PDCCH_r15, + { "dci7-CandidatesPerAL-PDCCH-r15", "lte-rrc.dci7_CandidatesPerAL_PDCCH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_4_OF_DCI7_Candidates_r15", HFILL }}, + { &hf_lte_rrc_dci7_CandidatesPerAL_PDCCH_r15_item, + { "DCI7-Candidates-r15", "lte-rrc.DCI7_Candidates_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_dci7_CandidateSetsPerAL_SPDCCH_r15, + { "dci7-CandidateSetsPerAL-SPDCCH-r15", "lte-rrc.dci7_CandidateSetsPerAL_SPDCCH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_2_OF_DCI7_CandidatesPerAL_SPDCCH_r15", HFILL }}, + { &hf_lte_rrc_dci7_CandidateSetsPerAL_SPDCCH_r15_item, + { "DCI7-CandidatesPerAL-SPDCCH-r15", "lte-rrc.DCI7_CandidatesPerAL_SPDCCH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_resourceBlockAssignment_r15, + { "resourceBlockAssignment-r15", "lte-rrc.resourceBlockAssignment_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_resourceBlockAssignment_r15", HFILL }}, + { &hf_lte_rrc_numberRB_InFreq_domain_r15, + { "numberRB-InFreq-domain-r15", "lte-rrc.numberRB_InFreq_domain_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_2_100", HFILL }}, + { &hf_lte_rrc_resourceBlockAssignment_r15_01, + { "resourceBlockAssignment-r15", "lte-rrc.resourceBlockAssignment_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_98", HFILL }}, + { &hf_lte_rrc_subslotApplicability_r15, + { "subslotApplicability-r15", "lte-rrc.subslotApplicability_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_5", HFILL }}, + { &hf_lte_rrc_al_StartingPointSPDCCH_r15, + { "al-StartingPointSPDCCH-r15", "lte-rrc.al_StartingPointSPDCCH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_al_StartingPointSPDCCH_r15_item, + { "al-StartingPointSPDCCH-r15 item", "lte-rrc.al_StartingPointSPDCCH_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_49", HFILL }}, + { &hf_lte_rrc_subframeType_r15, + { "subframeType-r15", "lte-rrc.subframeType_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_subframeType_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_rateMatchingMode_r15, + { "rateMatchingMode-r15", "lte-rrc.rateMatchingMode_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rateMatchingMode_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_DCI7_CandidatesPerAL_SPDCCH_r15_item, + { "DCI7-Candidates-r15", "lte-rrc.DCI7_Candidates_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_semiPersistSchedC_RNTI, { "semiPersistSchedC-RNTI", "lte-rrc.semiPersistSchedC_RNTI", FT_BYTES, BASE_NONE, NULL, 0, @@ -102440,10 +123581,46 @@ void proto_register_lte_rrc(void) { { "SPS-ConfigIndex-r14", "lte-rrc.SPS_ConfigIndex_r14", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_108, + { &hf_lte_rrc_semiPersistSchedC_RNTI_r15, + { "semiPersistSchedC-RNTI-r15", "lte-rrc.semiPersistSchedC_RNTI_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "C_RNTI", HFILL }}, + { &hf_lte_rrc_sps_ConfigUL_STTI_ToAddModList_r15, + { "sps-ConfigUL-STTI-ToAddModList-r15", "lte-rrc.sps_ConfigUL_STTI_ToAddModList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sps_ConfigUL_STTI_ToReleaseList_r15, + { "sps-ConfigUL-STTI-ToReleaseList-r15", "lte-rrc.sps_ConfigUL_STTI_ToReleaseList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sps_ConfigUL_ToAddModList_r15, + { "sps-ConfigUL-ToAddModList-r15", "lte-rrc.sps_ConfigUL_ToAddModList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sps_ConfigUL_ToReleaseList_r15, + { "sps-ConfigUL-ToReleaseList-r15", "lte-rrc.sps_ConfigUL_ToReleaseList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_SPS_ConfigUL_STTI_ToAddModList_r15_item, + { "SPS-ConfigUL-STTI-r15", "lte-rrc.SPS_ConfigUL_STTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SPS_ConfigUL_STTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_SPS_ConfigUL_STTI_ToReleaseList_r15_item, + { "SPS-ConfigIndex-r15", "lte-rrc.SPS_ConfigIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_SPS_ConfigUL_ToAddModList_r15_item, + { "SPS-ConfigUL", "lte-rrc.SPS_ConfigUL", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SPS_ConfigUL_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_SPS_ConfigUL_ToReleaseList_r15_item, + { "SPS-ConfigIndex-r15", "lte-rrc.SPS_ConfigIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_142, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_95", HFILL }}, + "T_setup_127", HFILL }}, { &hf_lte_rrc_semiPersistSchedIntervalDL, { "semiPersistSchedIntervalDL", "lte-rrc.semiPersistSchedIntervalDL", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_semiPersistSchedIntervalDL_vals), 0, @@ -102460,18 +123637,18 @@ void proto_register_lte_rrc(void) { { "twoAntennaPortActivated-r10", "lte-rrc.twoAntennaPortActivated_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_twoAntennaPortActivated_r10_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_109, + { &hf_lte_rrc_setup_143, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_96", HFILL }}, + "T_setup_128", HFILL }}, { &hf_lte_rrc_n1PUCCH_AN_PersistentListP1_r10, { "n1PUCCH-AN-PersistentListP1-r10", "lte-rrc.n1PUCCH_AN_PersistentListP1_r10", FT_UINT32, BASE_DEC, NULL, 0, "N1PUCCH_AN_PersistentList", HFILL }}, - { &hf_lte_rrc_setup_110, + { &hf_lte_rrc_setup_144, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_97", HFILL }}, + "T_setup_129", HFILL }}, { &hf_lte_rrc_semiPersistSchedIntervalUL, { "semiPersistSchedIntervalUL", "lte-rrc.semiPersistSchedIntervalUL", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_semiPersistSchedIntervalUL_vals), 0, @@ -102500,10 +123677,10 @@ void proto_register_lte_rrc(void) { { "p0-PersistentSubframeSet2-r12", "lte-rrc.p0_PersistentSubframeSet2_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_p0_PersistentSubframeSet2_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_111, + { &hf_lte_rrc_setup_145, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_98", HFILL }}, + "T_setup_130", HFILL }}, { &hf_lte_rrc_p0_NominalPUSCH_PersistentSubframeSet2_r12, { "p0-NominalPUSCH-PersistentSubframeSet2-r12", "lte-rrc.p0_NominalPUSCH_PersistentSubframeSet2_r12", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0, @@ -102528,6 +123705,30 @@ void proto_register_lte_rrc(void) { { "semiPersistSchedIntervalUL-v1430", "lte-rrc.semiPersistSchedIntervalUL_v1430", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_semiPersistSchedIntervalUL_v1430_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_cyclicShiftSPS_r15, + { "cyclicShiftSPS-r15", "lte-rrc.cyclicShiftSPS_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cyclicShiftSPS_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_harq_ProcID_Offset_r15, + { "harq-ProcID-Offset-r15", "lte-rrc.harq_ProcID_Offset_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lte_rrc_rv_SPS_UL_Repetitions_r15, + { "rv-SPS-UL-Repetitions-r15", "lte-rrc.rv_SPS_UL_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rv_SPS_UL_Repetitions_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_tpc_PDCCH_ConfigPUSCH_SPS_r15, + { "tpc-PDCCH-ConfigPUSCH-SPS-r15", "lte-rrc.tpc_PDCCH_ConfigPUSCH_SPS_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_TPC_PDCCH_Config_vals), 0, + "TPC_PDCCH_Config", HFILL }}, + { &hf_lte_rrc_totalNumberPUSCH_SPS_UL_Repetitions_r15, + { "totalNumberPUSCH-SPS-UL-Repetitions-r15", "lte-rrc.totalNumberPUSCH_SPS_UL_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_totalNumberPUSCH_SPS_UL_Repetitions_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sps_ConfigIndex_r15, + { "sps-ConfigIndex-r15", "lte-rrc.sps_ConfigIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_semiPersistSchedIntervalSL_r14, { "semiPersistSchedIntervalSL-r14", "lte-rrc.semiPersistSchedIntervalSL_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_semiPersistSchedIntervalSL_r14_vals), 0, @@ -102536,10 +123737,178 @@ void proto_register_lte_rrc(void) { { "N1PUCCH-AN-PersistentList item", "lte-rrc.N1PUCCH_AN_PersistentList_item", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_2047", HFILL }}, - { &hf_lte_rrc_setup_112, + { &hf_lte_rrc_setup_146, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_99", HFILL }}, + "T_setup_131", HFILL }}, + { &hf_lte_rrc_semiPersistSchedIntervalUL_STTI_r15, + { "semiPersistSchedIntervalUL-STTI-r15", "lte-rrc.semiPersistSchedIntervalUL_STTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_semiPersistSchedIntervalUL_STTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_implicitReleaseAfter_01, + { "implicitReleaseAfter", "lte-rrc.implicitReleaseAfter", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_implicitReleaseAfter_01_vals), 0, + "T_implicitReleaseAfter_01", HFILL }}, + { &hf_lte_rrc_p0_Persistent_r15, + { "p0-Persistent-r15", "lte-rrc.p0_Persistent_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_p0_Persistent_r15", HFILL }}, + { &hf_lte_rrc_p0_NominalSPUSCH_Persistent_r15, + { "p0-NominalSPUSCH-Persistent-r15", "lte-rrc.p0_NominalSPUSCH_Persistent_r15", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M126_24", HFILL }}, + { &hf_lte_rrc_p0_UE_SPUSCH_Persistent_r15, + { "p0-UE-SPUSCH-Persistent-r15", "lte-rrc.p0_UE_SPUSCH_Persistent_r15", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M8_7", HFILL }}, + { &hf_lte_rrc_twoIntervalsConfig_r15, + { "twoIntervalsConfig-r15", "lte-rrc.twoIntervalsConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_twoIntervalsConfig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_p0_PersistentSubframeSet2_r15, + { "p0-PersistentSubframeSet2-r15", "lte-rrc.p0_PersistentSubframeSet2_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_p0_PersistentSubframeSet2_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_147, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_132", HFILL }}, + { &hf_lte_rrc_p0_NominalSPUSCH_PersistentSubframeSet2_r15, + { "p0-NominalSPUSCH-PersistentSubframeSet2-r15", "lte-rrc.p0_NominalSPUSCH_PersistentSubframeSet2_r15", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M126_24", HFILL }}, + { &hf_lte_rrc_p0_UE_SPUSCH_PersistentSubframeSet2_r15, + { "p0-UE-SPUSCH-PersistentSubframeSet2-r15", "lte-rrc.p0_UE_SPUSCH_PersistentSubframeSet2_r15", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M8_7", HFILL }}, + { &hf_lte_rrc_numberOfConfUL_SPS_Processes_STTI_r15, + { "numberOfConfUL-SPS-Processes-STTI-r15", "lte-rrc.numberOfConfUL_SPS_Processes_STTI_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_12", HFILL }}, + { &hf_lte_rrc_sTTI_StartTimeUL_r15, + { "sTTI-StartTimeUL-r15", "lte-rrc.sTTI_StartTimeUL_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_5", HFILL }}, + { &hf_lte_rrc_cyclicShiftSPS_sTTI_r15, + { "cyclicShiftSPS-sTTI-r15", "lte-rrc.cyclicShiftSPS_sTTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cyclicShiftSPS_sTTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ifdma_Config_SPS_r15, + { "ifdma-Config-SPS-r15", "lte-rrc.ifdma_Config_SPS_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_harq_ProcID_offset_r15, + { "harq-ProcID-offset-r15", "lte-rrc.harq_ProcID_offset_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_rv_SPS_STTI_UL_Repetitions_r15, + { "rv-SPS-STTI-UL-Repetitions-r15", "lte-rrc.rv_SPS_STTI_UL_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rv_SPS_STTI_UL_Repetitions_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_tbs_scalingFactorSubslotSPS_UL_Repetitions_r15, + { "tbs-scalingFactorSubslotSPS-UL-Repetitions-r15", "lte-rrc.tbs_scalingFactorSubslotSPS_UL_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tbs_scalingFactorSubslotSPS_UL_Repetitions_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_totalNumberPUSCH_SPS_STTI_UL_Repetitions_r15, + { "totalNumberPUSCH-SPS-STTI-UL-Repetitions-r15", "lte-rrc.totalNumberPUSCH_SPS_STTI_UL_Repetitions_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_totalNumberPUSCH_SPS_STTI_UL_Repetitions_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_148, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_133", HFILL }}, + { &hf_lte_rrc_spucch_Set_r15, + { "spucch-Set-r15", "lte-rrc.spucch_Set_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_twoAntennaPortActivatedSPUCCH_Format1a1b_r15, + { "twoAntennaPortActivatedSPUCCH-Format1a1b-r15", "lte-rrc.twoAntennaPortActivatedSPUCCH_Format1a1b_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_twoAntennaPortActivatedSPUCCH_Format1a1b_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_twoAntennaPortActivatedSPUCCH_Format3_r15, + { "twoAntennaPortActivatedSPUCCH-Format3-r15", "lte-rrc.twoAntennaPortActivatedSPUCCH_Format3_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_n3SPUCCH_AN_List_r15, + { "n3SPUCCH-AN-List-r15", "lte-rrc.n3SPUCCH_AN_List_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "T_n3SPUCCH_AN_List_r15", HFILL }}, + { &hf_lte_rrc_n3SPUCCH_AN_List_r15_item, + { "n3SPUCCH-AN-List-r15 item", "lte-rrc.n3SPUCCH_AN_List_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_549", HFILL }}, + { &hf_lte_rrc_SPUCCH_Set_r15_item, + { "SPUCCH-Elements-r15", "lte-rrc.SPUCCH_Elements_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SPUCCH_Elements_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_149, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_134", HFILL }}, + { &hf_lte_rrc_n1SubslotSPUCCH_AN_List_r15, + { "n1SubslotSPUCCH-AN-List-r15", "lte-rrc.n1SubslotSPUCCH_AN_List_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "T_n1SubslotSPUCCH_AN_List_r15", HFILL }}, + { &hf_lte_rrc_n1SubslotSPUCCH_AN_List_r15_item, + { "n1SubslotSPUCCH-AN-List-r15 item", "lte-rrc.n1SubslotSPUCCH_AN_List_r15_item", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1319", HFILL }}, + { &hf_lte_rrc_n1SlotSPUCCH_FH_AN_List_r15, + { "n1SlotSPUCCH-FH-AN-List-r15", "lte-rrc.n1SlotSPUCCH_FH_AN_List_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1319", HFILL }}, + { &hf_lte_rrc_n1SlotSPUCCH_NoFH_AN_List_r15, + { "n1SlotSPUCCH-NoFH-AN-List-r15", "lte-rrc.n1SlotSPUCCH_NoFH_AN_List_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3959", HFILL }}, + { &hf_lte_rrc_n3SPUCCH_AN_List_r15_01, + { "n3SPUCCH-AN-List-r15", "lte-rrc.n3SPUCCH_AN_List_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_549", HFILL }}, + { &hf_lte_rrc_n4SPUCCHSlot_Resource_r15, + { "n4SPUCCHSlot-Resource-r15", "lte-rrc.n4SPUCCHSlot_Resource_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15", HFILL }}, + { &hf_lte_rrc_n4SPUCCHSlot_Resource_r15_item, + { "N4SPUCCH-Resource-r15", "lte-rrc.N4SPUCCH_Resource_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_n4SPUCCHSubslot_Resource_r15, + { "n4SPUCCHSubslot-Resource-r15", "lte-rrc.n4SPUCCHSubslot_Resource_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15", HFILL }}, + { &hf_lte_rrc_n4SPUCCHSubslot_Resource_r15_item, + { "N4SPUCCH-Resource-r15", "lte-rrc.N4SPUCCH_Resource_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_n4maxCoderateSlotPUCCH_r15, + { "n4maxCoderateSlotPUCCH-r15", "lte-rrc.n4maxCoderateSlotPUCCH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lte_rrc_n4maxCoderateSubslotPUCCH_r15, + { "n4maxCoderateSubslotPUCCH-r15", "lte-rrc.n4maxCoderateSubslotPUCCH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lte_rrc_n4maxCoderateMultiResourceSlotPUCCH_r15, + { "n4maxCoderateMultiResourceSlotPUCCH-r15", "lte-rrc.n4maxCoderateMultiResourceSlotPUCCH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lte_rrc_n4maxCoderateMultiResourceSubslotPUCCH_r15, + { "n4maxCoderateMultiResourceSubslotPUCCH-r15", "lte-rrc.n4maxCoderateMultiResourceSubslotPUCCH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lte_rrc_n4startingPRB_r15, + { "n4startingPRB-r15", "lte-rrc.n4startingPRB_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_109", HFILL }}, + { &hf_lte_rrc_n4numberOfPRB_r15, + { "n4numberOfPRB-r15", "lte-rrc.n4numberOfPRB_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lte_rrc_setup_150, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_135", HFILL }}, { &hf_lte_rrc_srs_TPC_RNTI_r14, { "srs-TPC-RNTI-r14", "lte-rrc.srs_TPC_RNTI_r14", FT_BYTES, BASE_NONE, NULL, 0, @@ -102592,10 +123961,42 @@ void proto_register_lte_rrc(void) { { "subframeAssignmentSL-r12", "lte-rrc.subframeAssignmentSL_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_subframeAssignmentSL_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_113, + { &hf_lte_rrc_time_r15, + { "time-r15", "lte-rrc.time_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "ReferenceTime_r15", HFILL }}, + { &hf_lte_rrc_uncertainty_r15, + { "uncertainty-r15", "lte-rrc.uncertainty_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_12", HFILL }}, + { &hf_lte_rrc_timeInfoType_r15, + { "timeInfoType-r15", "lte-rrc.timeInfoType_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_timeInfoType_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_referenceSFN_r15, + { "referenceSFN-r15", "lte-rrc.referenceSFN_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_1023", HFILL }}, + { &hf_lte_rrc_refDays_r15, + { "refDays-r15", "lte-rrc.refDays_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_72999", HFILL }}, + { &hf_lte_rrc_refSeconds_r15, + { "refSeconds-r15", "lte-rrc.refSeconds_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_86399", HFILL }}, + { &hf_lte_rrc_refMilliSeconds_r15, + { "refMilliSeconds-r15", "lte-rrc.refMilliSeconds_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_999", HFILL }}, + { &hf_lte_rrc_refQuarterMicroSeconds_r15, + { "refQuarterMicroSeconds-r15", "lte-rrc.refQuarterMicroSeconds_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3999", HFILL }}, + { &hf_lte_rrc_setup_151, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_100", HFILL }}, + "T_setup_136", HFILL }}, { &hf_lte_rrc_tpc_RNTI, { "tpc-RNTI", "lte-rrc.tpc_RNTI", FT_BYTES, BASE_NONE, NULL, 0, @@ -102604,10 +124005,10 @@ void proto_register_lte_rrc(void) { { "tpc-Index", "lte-rrc.tpc_Index", FT_UINT32, BASE_DEC, VALS(lte_rrc_TPC_Index_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_114, + { &hf_lte_rrc_setup_152, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_101", HFILL }}, + "T_setup_137", HFILL }}, { &hf_lte_rrc_tpc_Index_PUCCH_SCell_r13, { "tpc-Index-PUCCH-SCell-r13", "lte-rrc.tpc_Index_PUCCH_SCell_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_TPC_Index_vals), 0, @@ -102680,6 +124081,10 @@ void proto_register_lte_rrc(void) { { "deltaF-PUCCH-Format5-13", "lte-rrc.deltaF_PUCCH_Format5_13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_PUCCH_Format5_13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_deltaFList_SPUCCH_r15, + { "deltaFList-SPUCCH-r15", "lte-rrc.deltaFList_SPUCCH_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_DeltaFList_SPUCCH_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_deltaF_PUCCH_Format3_r12, { "deltaF-PUCCH-Format3-r12", "lte-rrc.deltaF_PUCCH_Format3_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_PUCCH_Format3_r12_vals), 0, @@ -102784,10 +124189,10 @@ void proto_register_lte_rrc(void) { { "set2PowerControlParameter", "lte-rrc.set2PowerControlParameter", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_set2PowerControlParameter_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_115, + { &hf_lte_rrc_setup_153, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_102", HFILL }}, + "T_setup_138", HFILL }}, { &hf_lte_rrc_tpc_SubframeSet_r12, { "tpc-SubframeSet-r12", "lte-rrc.tpc_SubframeSet_r12", FT_BYTES, BASE_NONE, NULL, 0, @@ -102804,6 +124209,26 @@ void proto_register_lte_rrc(void) { { "p0-UE-PUSCH-SubframeSet2-r12", "lte-rrc.p0_UE_PUSCH_SubframeSet2_r12", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0, "INTEGER_M8_7", HFILL }}, + { &hf_lte_rrc_alpha_UE_r15, + { "alpha-UE-r15", "lte-rrc.alpha_UE_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_Alpha_r12_vals), 0, + "Alpha_r12", HFILL }}, + { &hf_lte_rrc_p0_UE_PUSCH_r15, + { "p0-UE-PUSCH-r15", "lte-rrc.p0_UE_PUSCH_r15", + FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0, + "INTEGER_M16_15", HFILL }}, + { &hf_lte_rrc_accumulationEnabledSTTI_r15, + { "accumulationEnabledSTTI-r15", "lte-rrc.accumulationEnabledSTTI_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_deltaTxD_OffsetListSPUCCH_r15, + { "deltaTxD-OffsetListSPUCCH-r15", "lte-rrc.deltaTxD_OffsetListSPUCCH_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_uplinkPower_CSIPayload, + { "uplinkPower-CSIPayload", "lte-rrc.uplinkPower_CSIPayload", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, { &hf_lte_rrc_p0_UE_PeriodicSRS_r14, { "p0-UE-PeriodicSRS-r14", "lte-rrc.p0_UE_PeriodicSRS_r14", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0, @@ -102860,6 +124285,50 @@ void proto_register_lte_rrc(void) { { "deltaF-PUCCH-Format2b", "lte-rrc.deltaF_PUCCH_Format2b", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_PUCCH_Format2b_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_setup_154, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_139", HFILL }}, + { &hf_lte_rrc_deltaF_slotSPUCCH_Format1_r15, + { "deltaF-slotSPUCCH-Format1-r15", "lte-rrc.deltaF_slotSPUCCH_Format1_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_slotSPUCCH_Format1_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaF_slotSPUCCH_Format1a_r15, + { "deltaF-slotSPUCCH-Format1a-r15", "lte-rrc.deltaF_slotSPUCCH_Format1a_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_slotSPUCCH_Format1a_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaF_slotSPUCCH_Format1b_r15, + { "deltaF-slotSPUCCH-Format1b-r15", "lte-rrc.deltaF_slotSPUCCH_Format1b_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_slotSPUCCH_Format1b_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaF_slotSPUCCH_Format3_r15, + { "deltaF-slotSPUCCH-Format3-r15", "lte-rrc.deltaF_slotSPUCCH_Format3_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_slotSPUCCH_Format3_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaF_slotSPUCCH_RM_Format4_r15, + { "deltaF-slotSPUCCH-RM-Format4-r15", "lte-rrc.deltaF_slotSPUCCH_RM_Format4_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_slotSPUCCH_RM_Format4_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaF_slotSPUCCH_TBCC_Format4_r15, + { "deltaF-slotSPUCCH-TBCC-Format4-r15", "lte-rrc.deltaF_slotSPUCCH_TBCC_Format4_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_slotSPUCCH_TBCC_Format4_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaF_subslotSPUCCH_Format1and1a_r15, + { "deltaF-subslotSPUCCH-Format1and1a-r15", "lte-rrc.deltaF_subslotSPUCCH_Format1and1a_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_subslotSPUCCH_Format1and1a_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaF_subslotSPUCCH_Format1b_r15, + { "deltaF-subslotSPUCCH-Format1b-r15", "lte-rrc.deltaF_subslotSPUCCH_Format1b_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_subslotSPUCCH_Format1b_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaF_subslotSPUCCH_RM_Format4_r15, + { "deltaF-subslotSPUCCH-RM-Format4-r15", "lte-rrc.deltaF_subslotSPUCCH_RM_Format4_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_subslotSPUCCH_RM_Format4_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaF_subslotSPUCCH_TBCC_Format4_r15, + { "deltaF-subslotSPUCCH-TBCC-Format4-r15", "lte-rrc.deltaF_subslotSPUCCH_TBCC_Format4_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaF_subslotSPUCCH_TBCC_Format4_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_deltaTxD_OffsetPUCCH_Format1_r10, { "deltaTxD-OffsetPUCCH-Format1-r10", "lte-rrc.deltaTxD_OffsetPUCCH_Format1_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaTxD_OffsetPUCCH_Format1_r10_vals), 0, @@ -102880,6 +124349,22 @@ void proto_register_lte_rrc(void) { { "deltaTxD-OffsetPUCCH-Format1bCS-r11", "lte-rrc.deltaTxD_OffsetPUCCH_Format1bCS_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaTxD_OffsetPUCCH_Format1bCS_r11_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format1_r15, + { "deltaTxD-OffsetSPUCCH-Format1-r15", "lte-rrc.deltaTxD_OffsetSPUCCH_Format1_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format1a_r15, + { "deltaTxD-OffsetSPUCCH-Format1a-r15", "lte-rrc.deltaTxD_OffsetSPUCCH_Format1a_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1a_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format1b_r15, + { "deltaTxD-OffsetSPUCCH-Format1b-r15", "lte-rrc.deltaTxD_OffsetSPUCCH_Format1b_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaTxD_OffsetSPUCCH_Format1b_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_deltaTxD_OffsetSPUCCH_Format3_r15, + { "deltaTxD-OffsetSPUCCH-Format3-r15", "lte-rrc.deltaTxD_OffsetSPUCCH_Format3_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_deltaTxD_OffsetSPUCCH_Format3_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_WLAN_Id_List_r13_item, { "WLAN-Identifiers-r12", "lte-rrc.WLAN_Identifiers_r12_element", FT_NONE, BASE_NONE, NULL, 0, @@ -102904,6 +124389,30 @@ void proto_register_lte_rrc(void) { { "wlan-SuspendConfig-r14", "lte-rrc.wlan_SuspendConfig_r14_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_maxDurationFactor_r15, + { "maxDurationFactor-r15", "lte-rrc.maxDurationFactor_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxDurationFactor_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_numPOs_r15, + { "numPOs-r15", "lte-rrc.numPOs_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_numPOs_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_freqLocation_r15_01, + { "freqLocation-r15", "lte-rrc.freqLocation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_freqLocation_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_timeOffsetDRX_r15, + { "timeOffsetDRX-r15", "lte-rrc.timeOffsetDRX_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_timeOffsetDRX_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_timeOffset_eDRX_Short_r15, + { "timeOffset-eDRX-Short-r15", "lte-rrc.timeOffset_eDRX_Short_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_timeOffset_eDRX_Short_r15_vals), 0, + "T_timeOffset_eDRX_Short_r15", HFILL }}, + { &hf_lte_rrc_timeOffset_eDRX_Long_r15, + { "timeOffset-eDRX-Long-r15", "lte-rrc.timeOffset_eDRX_Long_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_timeOffset_eDRX_Long_r15_vals), 0, + "T_timeOffset_eDRX_Long_r15", HFILL }}, { &hf_lte_rrc_cipheringAlgorithm, { "cipheringAlgorithm", "lte-rrc.cipheringAlgorithm", FT_UINT32, BASE_DEC, VALS(lte_rrc_CipheringAlgorithm_r12_vals), 0, @@ -102964,6 +124473,10 @@ void proto_register_lte_rrc(void) { { "q-QualMinRSRQ-CE-r13", "lte-rrc.q_QualMinRSRQ_CE_r13", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0, "Q_QualMin_r9", HFILL }}, + { &hf_lte_rrc_powerClass14dBm_Offset_r15, + { "powerClass14dBm-Offset-r15", "lte-rrc.powerClass14dBm_Offset_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_powerClass14dBm_Offset_r15_vals), 0, + "T_powerClass14dBm_Offset_r15", HFILL }}, { &hf_lte_rrc_q_RxLevMinCE1_r13, { "q-RxLevMinCE1-r13", "lte-rrc.q_RxLevMinCE1_r13", FT_INT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_q_RxLevMin_vals_ext, 0, @@ -103256,6 +124769,10 @@ void proto_register_lte_rrc(void) { { "FreqBandIndicator-r11", "lte-rrc.FreqBandIndicator_r11", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_MultiFrequencyBandListNR_r15_item, + { "FreqBandIndicatorNR-r15", "lte-rrc.FreqBandIndicatorNR_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_NS_PmaxList_r10_item, { "NS-PmaxValue-r10", "lte-rrc.NS_PmaxValue_r10_element", FT_NONE, BASE_NONE, NULL, 0, @@ -103268,6 +124785,18 @@ void proto_register_lte_rrc(void) { { "additionalPmax-r10", "lte-rrc.additionalPmax_r10", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0, "P_Max", HFILL }}, + { &hf_lte_rrc_NS_PmaxListNR_r15_item, + { "NS-PmaxValueNR-r15", "lte-rrc.NS_PmaxValueNR_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_additionalPmaxNR_r15, + { "additionalPmaxNR-r15", "lte-rrc.additionalPmaxNR_r15", + FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0, + "P_MaxNR_r15", HFILL }}, + { &hf_lte_rrc_additionalSpectrumEmissionNR_r15, + { "additionalSpectrumEmissionNR-r15", "lte-rrc.additionalSpectrumEmissionNR_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_start_01, { "start", "lte-rrc.start", FT_UINT32, BASE_DEC, NULL, 0, @@ -103372,6 +124901,14 @@ void proto_register_lte_rrc(void) { { "nr-SINR-r15", "lte-rrc.nr_SINR_r15", FT_UINT32, BASE_DEC, NULL, 0, "RS_SINR_RangeNR_r15", HFILL }}, + { &hf_lte_rrc_setup_155, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, NULL, 0, + "BT_NameList_r15", HFILL }}, + { &hf_lte_rrc_BT_NameList_r15_item, + { "BT-Name-r15", "lte-rrc.BT_Name_r15", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_locationCoordinates_r10, { "locationCoordinates-r10", "lte-rrc.locationCoordinates_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_locationCoordinates_r10_vals), 0, @@ -103412,6 +124949,46 @@ void proto_register_lte_rrc(void) { { "gnss-TOD-msec-r10", "lte-rrc.gnss_TOD_msec_r10", FT_UINT24, BASE_DEC|BASE_UNIT_STRING, &units_milliseconds, 0, NULL, HFILL }}, + { &hf_lte_rrc_verticalVelocityInfo_r15, + { "verticalVelocityInfo-r15", "lte-rrc.verticalVelocityInfo_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_verticalVelocityInfo_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_verticalVelocity_r15, + { "verticalVelocity-r15", "lte-rrc.verticalVelocity_r15", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_verticalVelocityAndUncertainty_r15, + { "verticalVelocityAndUncertainty-r15", "lte-rrc.verticalVelocityAndUncertainty_r15", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_LogMeasResultListBT_r15_item, + { "LogMeasResultBT-r15", "lte-rrc.LogMeasResultBT_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_bt_Addr_r15, + { "bt-Addr-r15", "lte-rrc.bt_Addr_r15", + FT_ETHER, BASE_NONE, NULL, 0, + "T_bt_Addr_r15", HFILL }}, + { &hf_lte_rrc_rssi_BT_r15, + { "rssi-BT-r15", "lte-rrc.rssi_BT_r15", + FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0, + "INTEGER_M128_127", HFILL }}, + { &hf_lte_rrc_LogMeasResultListWLAN_r15_item, + { "LogMeasResultWLAN-r15", "lte-rrc.LogMeasResultWLAN_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_wlan_Identifiers_r15, + { "wlan-Identifiers-r15", "lte-rrc.wlan_Identifiers_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "WLAN_Identifiers_r12", HFILL }}, + { &hf_lte_rrc_rssiWLAN_r15, + { "rssiWLAN-r15", "lte-rrc.rssiWLAN_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "WLAN_RSSI_Range_r13", HFILL }}, + { &hf_lte_rrc_rtt_WLAN_r15, + { "rtt-WLAN-r15", "lte-rrc.rtt_WLAN_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "WLAN_RTT_r15", HFILL }}, { &hf_lte_rrc_measObjectToRemoveList, { "measObjectToRemoveList", "lte-rrc.measObjectToRemoveList", FT_UINT32, BASE_DEC, NULL, 0, @@ -103452,10 +125029,10 @@ void proto_register_lte_rrc(void) { { "speedStatePars", "lte-rrc.speedStatePars", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_speedStatePars_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_116, + { &hf_lte_rrc_setup_156, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_103", HFILL }}, + "T_setup_140", HFILL }}, { &hf_lte_rrc_timeToTrigger_SF, { "timeToTrigger-SF", "lte-rrc.timeToTrigger_SF_element", FT_NONE, BASE_NONE, NULL, 0, @@ -103472,7 +125049,7 @@ void proto_register_lte_rrc(void) { { "measScaleFactor-r12", "lte-rrc.measScaleFactor_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_measScaleFactor_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_117, + { &hf_lte_rrc_setup_157, { "setup", "lte-rrc.setup", FT_UINT32, BASE_DEC, VALS(lte_rrc_MeasScaleFactor_r12_vals), 0, "MeasScaleFactor_r12", HFILL }}, @@ -103520,6 +125097,18 @@ void proto_register_lte_rrc(void) { { "mgta-r15", "lte-rrc.mgta_r15", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, + { &hf_lte_rrc_measGapConfigDensePRS_r15, + { "measGapConfigDensePRS-r15", "lte-rrc.measGapConfigDensePRS_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_MeasGapConfigDensePRS_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_heightThreshRef_r15, + { "heightThreshRef-r15", "lte-rrc.heightThreshRef_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_heightThreshRef_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_158, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, { &hf_lte_rrc_MeasIdToRemoveList_item, { "MeasId", "lte-rrc.MeasId", FT_UINT32, BASE_DEC, NULL, 0, @@ -103540,10 +125129,10 @@ void proto_register_lte_rrc(void) { { "ReportConfigId", "lte-rrc.ReportConfigId", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_118, + { &hf_lte_rrc_setup_159, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_104", HFILL }}, + "T_setup_141", HFILL }}, { &hf_lte_rrc_dmtc_PeriodOffset_r12, { "dmtc-PeriodOffset-r12", "lte-rrc.dmtc_PeriodOffset_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dmtc_PeriodOffset_r12_vals), 0, @@ -103608,10 +125197,10 @@ void proto_register_lte_rrc(void) { { "csi-RS-IndividualOffset-r12", "lte-rrc.csi_RS_IndividualOffset_r12", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_Q_OffsetRange_vals_ext, 0, "Q_OffsetRange", HFILL }}, - { &hf_lte_rrc_setup_119, + { &hf_lte_rrc_setup_160, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_105", HFILL }}, + "T_setup_142", HFILL }}, { &hf_lte_rrc_gapOffset, { "gapOffset", "lte-rrc.gapOffset", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_gapOffset_vals), 0, @@ -103696,10 +125285,18 @@ void proto_register_lte_rrc(void) { { "gp11-r15", "lte-rrc.gp11_r15", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_159", HFILL }}, - { &hf_lte_rrc_setup_120, + { &hf_lte_rrc_setup_161, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_106", HFILL }}, + "T_setup_143", HFILL }}, + { &hf_lte_rrc_gapOffsetDensePRS_r15, + { "gapOffsetDensePRS-r15", "lte-rrc.gapOffsetDensePRS_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_gapOffsetDensePRS_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_162, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_144", HFILL }}, { &hf_lte_rrc_measGapConfigToRemoveList_r14, { "measGapConfigToRemoveList-r14", "lte-rrc.measGapConfigToRemoveList_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -103720,14 +125317,62 @@ void proto_register_lte_rrc(void) { { "measGapConfigCC-r14", "lte-rrc.measGapConfigCC_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_MeasGapConfig_vals), 0, "MeasGapConfig", HFILL }}, - { &hf_lte_rrc_setup_121, + { &hf_lte_rrc_setup_163, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_107", HFILL }}, + "T_setup_145", HFILL }}, { &hf_lte_rrc_measGapSharingScheme_r14, { "measGapSharingScheme-r14", "lte-rrc.measGapSharingScheme_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_measGapSharingScheme_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_measIdleCarrierListEUTRA_r15, + { "measIdleCarrierListEUTRA-r15", "lte-rrc.measIdleCarrierListEUTRA_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "EUTRA_CarrierList_r15", HFILL }}, + { &hf_lte_rrc_measIdleDuration_r15, + { "measIdleDuration-r15", "lte-rrc.measIdleDuration_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_measIdleDuration_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_EUTRA_CarrierList_r15_item, + { "MeasIdleCarrierEUTRA-r15", "lte-rrc.MeasIdleCarrierEUTRA_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_carrierFreq_r15_01, + { "carrierFreq-r15", "lte-rrc.carrierFreq_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "ARFCN_ValueEUTRA_r9", HFILL }}, + { &hf_lte_rrc_allowedMeasBandwidth_r15, + { "allowedMeasBandwidth-r15", "lte-rrc.allowedMeasBandwidth_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_AllowedMeasBandwidth_vals), 0, + "AllowedMeasBandwidth", HFILL }}, + { &hf_lte_rrc_validityArea_r15, + { "validityArea-r15", "lte-rrc.validityArea_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "CellList_r15", HFILL }}, + { &hf_lte_rrc_measCellList_r15, + { "measCellList-r15", "lte-rrc.measCellList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "CellList_r15", HFILL }}, + { &hf_lte_rrc_reportQuantities, + { "reportQuantities", "lte-rrc.reportQuantities", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_reportQuantities_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_qualityThreshold_r15, + { "qualityThreshold-r15", "lte-rrc.qualityThreshold_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_idleRSRP_Threshold_r15, + { "idleRSRP-Threshold-r15", "lte-rrc.idleRSRP_Threshold_r15", + FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_RSRP_Range_vals_ext, 0, + "RSRP_Range", HFILL }}, + { &hf_lte_rrc_idleRSRQ_Threshold_r15, + { "idleRSRQ-Threshold-r15", "lte-rrc.idleRSRQ_Threshold_r15", + FT_INT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_RSRQ_Range_vals_ext, 0, + "RSRQ_Range_r13", HFILL }}, + { &hf_lte_rrc_CellList_r15_item, + { "PhysCellIdRange", "lte-rrc.PhysCellIdRange_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_MeasIdToAddModList_item, { "MeasIdToAddMod", "lte-rrc.MeasIdToAddMod_element", FT_NONE, BASE_NONE, NULL, 0, @@ -103848,10 +125493,10 @@ void proto_register_lte_rrc(void) { { "t312-r12", "lte-rrc.t312_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t312_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_122, + { &hf_lte_rrc_setup_164, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_108_vals), 0, - "T_setup_108", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_146_vals), 0, + "T_setup_146", HFILL }}, { &hf_lte_rrc_reducedMeasPerformance_r12_05, { "reducedMeasPerformance-r12", "lte-rrc.reducedMeasPerformance_r12", FT_BOOLEAN, BASE_NONE, NULL, 0, @@ -103888,6 +125533,10 @@ void proto_register_lte_rrc(void) { { "fembms-MixedCarrier-r14", "lte-rrc.fembms_MixedCarrier_r14", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, + { &hf_lte_rrc_measSensing_Config_r15, + { "measSensing-Config-r15", "lte-rrc.measSensing_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_CellsToAddModList_item, { "CellsToAddMod", "lte-rrc.CellsToAddMod_element", FT_NONE, BASE_NONE, NULL, 0, @@ -103904,10 +125553,10 @@ void proto_register_lte_rrc(void) { { "physCellIdRange", "lte-rrc.physCellIdRange_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_123, + { &hf_lte_rrc_setup_165, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_109", HFILL }}, + "T_setup_147", HFILL }}, { &hf_lte_rrc_measSubframePatternNeigh_r10, { "measSubframePatternNeigh-r10", "lte-rrc.measSubframePatternNeigh_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_MeasSubframePattern_r10_vals), 0, @@ -103944,10 +125593,10 @@ void proto_register_lte_rrc(void) { { "physCellIdRange-r13", "lte-rrc.physCellIdRange_r13_element", FT_NONE, BASE_NONE, NULL, 0, "PhysCellIdRange", HFILL }}, - { &hf_lte_rrc_setup_124, + { &hf_lte_rrc_setup_166, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_110", HFILL }}, + "T_setup_148", HFILL }}, { &hf_lte_rrc_rmtc_Period_r13, { "rmtc-Period-r13", "lte-rrc.rmtc_Period_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rmtc_Period_r13_vals), 0, @@ -103972,14 +125621,6 @@ void proto_register_lte_rrc(void) { { "rs-ConfigSSB-r15", "lte-rrc.rs_ConfigSSB_r15_element", FT_NONE, BASE_NONE, NULL, 0, "RS_ConfigSSB_NR_r15", HFILL }}, - { &hf_lte_rrc_threshRS_Index_r15, - { "threshRS-Index-r15", "lte-rrc.threshRS_Index_r15_element", - FT_NONE, BASE_NONE, NULL, 0, - "ThresholdListNR_r15", HFILL }}, - { &hf_lte_rrc_maxRS_IndexCellQual_r15, - { "maxRS-IndexCellQual-r15", "lte-rrc.maxRS_IndexCellQual_r15", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_1_maxRS_IndexCellQual_r15", HFILL }}, { &hf_lte_rrc_offsetFreq_r15, { "offsetFreq-r15", "lte-rrc.offsetFreq_r15", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0, @@ -104004,14 +125645,22 @@ void proto_register_lte_rrc(void) { { "PhysCellIdNR-r15", "lte-rrc.PhysCellIdNR_r15", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_measTimingConfig_r15, - { "measTimingConfig-r15", "lte-rrc.measTimingConfig_r15_element", - FT_NONE, BASE_NONE, NULL, 0, - "MTC_SSB_NR_r15", HFILL }}, - { &hf_lte_rrc_subcarrierSpacingSSB_r15, - { "subcarrierSpacingSSB-r15", "lte-rrc.subcarrierSpacingSSB_r15", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_subcarrierSpacingSSB_r15_vals), 0, + { &hf_lte_rrc_cellForWhichToReportCGI_r15, + { "cellForWhichToReportCGI-r15", "lte-rrc.cellForWhichToReportCGI_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "PhysCellIdNR_r15", HFILL }}, + { &hf_lte_rrc_bandNR_r15, + { "bandNR-r15", "lte-rrc.bandNR_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_bandNR_r15_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_setup_167, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, NULL, 0, + "FreqBandIndicatorNR_r15", HFILL }}, + { &hf_lte_rrc_subcarrierSpacingSSB_r15_02, + { "subcarrierSpacingSSB-r15", "lte-rrc.subcarrierSpacingSSB_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_subcarrierSpacingSSB_r15_02_vals), 0, + "T_subcarrierSpacingSSB_r15_02", HFILL }}, { &hf_lte_rrc_CellsToAddModListNR_r15_item, { "CellsToAddModNR-r15", "lte-rrc.CellsToAddModNR_r15_element", FT_NONE, BASE_NONE, NULL, 0, @@ -104020,42 +125669,10 @@ void proto_register_lte_rrc(void) { { "cellIndex-r15", "lte-rrc.cellIndex_r15", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_1_maxCellMeas", HFILL }}, - { &hf_lte_rrc_physCellId_r15, + { &hf_lte_rrc_physCellId_r15_01, { "physCellId-r15", "lte-rrc.physCellId_r15", FT_UINT32, BASE_DEC, NULL, 0, "PhysCellIdNR_r15", HFILL }}, - { &hf_lte_rrc_periodicityAndOffset_r15, - { "periodicityAndOffset-r15", "lte-rrc.periodicityAndOffset_r15", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_periodicityAndOffset_r15_vals), 0, - "T_periodicityAndOffset_r15", HFILL }}, - { &hf_lte_rrc_sf5_r15, - { "sf5-r15", "lte-rrc.sf5_r15", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_4", HFILL }}, - { &hf_lte_rrc_sf10_r15, - { "sf10-r15", "lte-rrc.sf10_r15", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_9", HFILL }}, - { &hf_lte_rrc_sf20_r15, - { "sf20-r15", "lte-rrc.sf20_r15", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_19", HFILL }}, - { &hf_lte_rrc_sf40_r15, - { "sf40-r15", "lte-rrc.sf40_r15", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_39", HFILL }}, - { &hf_lte_rrc_sf80_r15, - { "sf80-r15", "lte-rrc.sf80_r15", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_79", HFILL }}, - { &hf_lte_rrc_sf160_r15, - { "sf160-r15", "lte-rrc.sf160_r15", - FT_UINT32, BASE_DEC, NULL, 0, - "INTEGER_0_159", HFILL }}, - { &hf_lte_rrc_ssb_Duration_r15, - { "ssb-Duration-r15", "lte-rrc.ssb_Duration_r15", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ssb_Duration_r15_vals), 0, - NULL, HFILL }}, { &hf_lte_rrc_MeasObjectToAddModList_item, { "MeasObjectToAddMod", "lte-rrc.MeasObjectToAddMod_element", FT_NONE, BASE_NONE, NULL, 0, @@ -104288,6 +125905,14 @@ void proto_register_lte_rrc(void) { { "measResultCellListSFTD-r15", "lte-rrc.measResultCellListSFTD_r15", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_measResultSensing_r15, + { "measResultSensing-r15", "lte-rrc.measResultSensing_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_heightUE_r15, + { "heightUE-r15", "lte-rrc.heightUE_r15", + FT_INT32, BASE_DEC, NULL, 0, + "INTEGER_M400_8880", HFILL }}, { &hf_lte_rrc_MeasResultListEUTRA_item, { "MeasResultEUTRA", "lte-rrc.MeasResultEUTRA_element", FT_NONE, BASE_NONE, NULL, 0, @@ -104340,6 +125965,46 @@ void proto_register_lte_rrc(void) { { "measResult-v1360", "lte-rrc.measResult_v1360", FT_INT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_RSRP_Range_v1360_vals_ext, 0, "RSRP_Range_v1360", HFILL }}, + { &hf_lte_rrc_cgi_Info_5GC_r15, + { "cgi-Info-5GC-r15", "lte-rrc.cgi_Info_5GC_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15", HFILL }}, + { &hf_lte_rrc_cgi_Info_5GC_r15_item, + { "CellAccessRelatedInfo-5GC-r15", "lte-rrc.CellAccessRelatedInfo_5GC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_MeasResultListIdle_r15_item, + { "MeasResultIdle-r15", "lte-rrc.MeasResultIdle_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_measResultServingCell_r15, + { "measResultServingCell-r15", "lte-rrc.measResultServingCell_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_rsrpResult_r15, + { "rsrpResult-r15", "lte-rrc.rsrpResult_r15", + FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_RSRP_Range_vals_ext, 0, + "RSRP_Range", HFILL }}, + { &hf_lte_rrc_rsrqResult_r15, + { "rsrqResult-r15", "lte-rrc.rsrqResult_r15", + FT_INT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_RSRQ_Range_vals_ext, 0, + "RSRQ_Range_r13", HFILL }}, + { &hf_lte_rrc_measResultNeighCells_r15, + { "measResultNeighCells-r15", "lte-rrc.measResultNeighCells_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_measResultNeighCells_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_measResultIdleListEUTRA_r15, + { "measResultIdleListEUTRA-r15", "lte-rrc.measResultIdleListEUTRA_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_MeasResultIdleListEUTRA_r15_item, + { "MeasResultIdleEUTRA-r15", "lte-rrc.MeasResultIdleEUTRA_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_measResult_r15, + { "measResult-r15", "lte-rrc.measResult_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_measResult_r15", HFILL }}, { &hf_lte_rrc_MeasResultServFreqListNR_r15_item, { "MeasResultServFreqNR-r15", "lte-rrc.MeasResultServFreqNR_r15_element", FT_NONE, BASE_NONE, NULL, 0, @@ -104368,11 +126033,15 @@ void proto_register_lte_rrc(void) { { "measResultRS-IndexList-r15", "lte-rrc.measResultRS_IndexList_r15", FT_UINT32, BASE_DEC, NULL, 0, "MeasResultSSB_IndexList_r15", HFILL }}, - { &hf_lte_rrc_rsrpResult_r15, + { &hf_lte_rrc_cgi_Info_r15, + { "cgi-Info-r15", "lte-rrc.cgi_Info_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "CGI_InfoNR_r15", HFILL }}, + { &hf_lte_rrc_rsrpResult_r15_01, { "rsrpResult-r15", "lte-rrc.rsrpResult_r15", FT_UINT32, BASE_DEC, NULL, 0, "RSRP_RangeNR_r15", HFILL }}, - { &hf_lte_rrc_rsrqResult_r15, + { &hf_lte_rrc_rsrqResult_r15_01, { "rsrqResult-r15", "lte-rrc.rsrqResult_r15", FT_UINT32, BASE_DEC, NULL, 0, "RSRQ_RangeNR_r15", HFILL }}, @@ -104644,6 +126313,22 @@ void proto_register_lte_rrc(void) { { "cbr-PSCCH-r14", "lte-rrc.cbr_PSCCH_r14", FT_UINT32, BASE_CUSTOM, CF_FUNC(lte_rrc_SL_CBR_r14_fmt), 0, "SL_CBR_r14", HFILL }}, + { &hf_lte_rrc_sl_SubframeRef_r15, + { "sl-SubframeRef-r15", "lte-rrc.sl_SubframeRef_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_10239", HFILL }}, + { &hf_lte_rrc_sensingResult_r15, + { "sensingResult-r15", "lte-rrc.sensingResult_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_0_400_OF_SensingResult_r15", HFILL }}, + { &hf_lte_rrc_sensingResult_r15_item, + { "SensingResult-r15", "lte-rrc.SensingResult_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_resourceIndex_r15, + { "resourceIndex-r15", "lte-rrc.resourceIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_2000", HFILL }}, { &hf_lte_rrc_ue_RxTxTimeDiffResult_r9, { "ue-RxTxTimeDiffResult-r9", "lte-rrc.ue_RxTxTimeDiffResult_r9", FT_UINT32, BASE_CUSTOM, CF_FUNC(lte_rrc_ue_RxTxTimeDiffResult_fmt), 0, @@ -104684,6 +126369,46 @@ void proto_register_lte_rrc(void) { { "excessDelay-r13", "lte-rrc.excessDelay_r13", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_excessDelay_r13_vals_ext, 0, "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_plmn_IdentityInfoList_r15, + { "plmn-IdentityInfoList-r15", "lte-rrc.plmn_IdentityInfoList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "PLMN_IdentityInfoListNR_r15", HFILL }}, + { &hf_lte_rrc_frequencyBandList_15, + { "frequencyBandList-15", "lte-rrc.frequencyBandList_15", + FT_UINT32, BASE_DEC, NULL, 0, + "MultiFrequencyBandListNR_r15", HFILL }}, + { &hf_lte_rrc_noSIB1_r15, + { "noSIB1-r15", "lte-rrc.noSIB1_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ssb_SubcarrierOffset_r15, + { "ssb-SubcarrierOffset-r15", "lte-rrc.ssb_SubcarrierOffset_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_pdcch_ConfigSIB1_r15, + { "pdcch-ConfigSIB1-r15", "lte-rrc.pdcch_ConfigSIB1_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, + { &hf_lte_rrc_PLMN_IdentityListNR_r15_item, + { "PLMN-Identity", "lte-rrc.PLMN_Identity_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_PLMN_IdentityInfoListNR_r15_item, + { "PLMN-IdentityInfoNR-r15", "lte-rrc.PLMN_IdentityInfoNR_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_plmn_IdentityList_r15_01, + { "plmn-IdentityList-r15", "lte-rrc.plmn_IdentityList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "PLMN_IdentityListNR_r15", HFILL }}, + { &hf_lte_rrc_trackingAreaCode_r15, + { "trackingAreaCode-r15", "lte-rrc.trackingAreaCode_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "TrackingAreaCodeNR_r15", HFILL }}, + { &hf_lte_rrc_cellIdentity_r15_01, + { "cellIdentity-r15", "lte-rrc.cellIdentity_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "CellIdentityNR_r15", HFILL }}, { &hf_lte_rrc_MeasResultCellListSFTD_r15_item, { "MeasResultCellSFTD-r15", "lte-rrc.MeasResultCellSFTD_r15_element", FT_NONE, BASE_NONE, NULL, 0, @@ -104708,6 +126433,54 @@ void proto_register_lte_rrc(void) { { "subframeBoundaryOffsetResult-r13", "lte-rrc.subframeBoundaryOffsetResult_r13", FT_UINT32, BASE_CUSTOM, CF_FUNC(lte_rrc_subframeBoundaryOffsetResult_r13_fmt), 0, "INTEGER_0_127", HFILL }}, + { &hf_lte_rrc_sensingSubchannelNumber_r15, + { "sensingSubchannelNumber-r15", "lte-rrc.sensingSubchannelNumber_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_20", HFILL }}, + { &hf_lte_rrc_sensingPeriodicity_r15, + { "sensingPeriodicity-r15", "lte-rrc.sensingPeriodicity_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sensingPeriodicity_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sensingReselectionCounter_r15, + { "sensingReselectionCounter-r15", "lte-rrc.sensingReselectionCounter_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_5_75", HFILL }}, + { &hf_lte_rrc_sensingPriority_r15, + { "sensingPriority-r15", "lte-rrc.sensingPriority_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_8", HFILL }}, + { &hf_lte_rrc_periodicityAndOffset_r15, + { "periodicityAndOffset-r15", "lte-rrc.periodicityAndOffset_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_periodicityAndOffset_r15_vals), 0, + "T_periodicityAndOffset_r15", HFILL }}, + { &hf_lte_rrc_sf5_r15, + { "sf5-r15", "lte-rrc.sf5_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_4", HFILL }}, + { &hf_lte_rrc_sf10_r15, + { "sf10-r15", "lte-rrc.sf10_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_9", HFILL }}, + { &hf_lte_rrc_sf20_r15, + { "sf20-r15", "lte-rrc.sf20_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_19", HFILL }}, + { &hf_lte_rrc_sf40_r15, + { "sf40-r15", "lte-rrc.sf40_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_39", HFILL }}, + { &hf_lte_rrc_sf80_r15, + { "sf80-r15", "lte-rrc.sf80_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_79", HFILL }}, + { &hf_lte_rrc_sf160_r15, + { "sf160-r15", "lte-rrc.sf160_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_159", HFILL }}, + { &hf_lte_rrc_ssb_Duration_r15, + { "ssb-Duration-r15", "lte-rrc.ssb_Duration_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ssb_Duration_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_quantityConfigEUTRA, { "quantityConfigEUTRA", "lte-rrc.quantityConfigEUTRA_element", FT_NONE, BASE_NONE, NULL, 0, @@ -104924,6 +126697,30 @@ void proto_register_lte_rrc(void) { { "v2-Threshold-r14", "lte-rrc.v2_Threshold_r14", FT_UINT32, BASE_CUSTOM, CF_FUNC(lte_rrc_SL_CBR_r14_fmt), 0, "SL_CBR_r14", HFILL }}, + { &hf_lte_rrc_eventH1_r15, + { "eventH1-r15", "lte-rrc.eventH1_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_h1_ThresholdOffset_r15, + { "h1-ThresholdOffset-r15", "lte-rrc.h1_ThresholdOffset_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_300", HFILL }}, + { &hf_lte_rrc_h1_Hysteresis_15, + { "h1-Hysteresis-15", "lte-rrc.h1_Hysteresis_15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_16", HFILL }}, + { &hf_lte_rrc_eventH2_r15, + { "eventH2-r15", "lte-rrc.eventH2_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_h2_ThresholdOffset_r15, + { "h2-ThresholdOffset-r15", "lte-rrc.h2_ThresholdOffset_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_300", HFILL }}, + { &hf_lte_rrc_h2_Hysteresis_15, + { "h2-Hysteresis-15", "lte-rrc.h2_Hysteresis_15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_16", HFILL }}, { &hf_lte_rrc_hysteresis, { "hysteresis", "lte-rrc.hysteresis", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_Hysteresis_vals_ext, 0, @@ -104980,7 +126777,7 @@ void proto_register_lte_rrc(void) { { "alternativeTimeToTrigger-r12", "lte-rrc.alternativeTimeToTrigger_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_alternativeTimeToTrigger_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_125, + { &hf_lte_rrc_setup_168, { "setup", "lte-rrc.setup", FT_UINT32, BASE_DEC, VALS(lte_rrc_TimeToTrigger_vals), 0, "TimeToTrigger", HFILL }}, @@ -105020,10 +126817,10 @@ void proto_register_lte_rrc(void) { { "rs-sinr-Config-r13", "lte-rrc.rs_sinr_Config_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rs_sinr_Config_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_126, + { &hf_lte_rrc_setup_169, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_111", HFILL }}, + "T_setup_149", HFILL }}, { &hf_lte_rrc_triggerQuantity_v1310, { "triggerQuantity-v1310", "lte-rrc.triggerQuantity_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_triggerQuantity_v1310_vals), 0, @@ -105068,7 +126865,27 @@ void proto_register_lte_rrc(void) { { "maxReportRS-Index-r15", "lte-rrc.maxReportRS_Index_r15", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_maxRS_IndexReport_r15", HFILL }}, - { &hf_lte_rrc_setup_127, + { &hf_lte_rrc_includeBT_Meas_r15, + { "includeBT-Meas-r15", "lte-rrc.includeBT_Meas_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_BT_NameListConfig_r15_vals), 0, + "BT_NameListConfig_r15", HFILL }}, + { &hf_lte_rrc_includeWLAN_Meas_r15, + { "includeWLAN-Meas-r15", "lte-rrc.includeWLAN_Meas_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_WLAN_NameListConfig_r15_vals), 0, + "WLAN_NameListConfig_r15", HFILL }}, + { &hf_lte_rrc_purpose_r15, + { "purpose-r15", "lte-rrc.purpose_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_purpose_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_numberOfTriggeringCells_r15, + { "numberOfTriggeringCells-r15", "lte-rrc.numberOfTriggeringCells_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_2_maxCellReport", HFILL }}, + { &hf_lte_rrc_a4_a5_ReportOnLeave_r15, + { "a4-a5-ReportOnLeave-r15", "lte-rrc.a4_a5_ReportOnLeave_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_setup_170, { "setup", "lte-rrc.setup", FT_INT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_RSRQ_Range_vals_ext, 0, "RSRQ_Range_v1250", HFILL }}, @@ -105316,10 +127133,18 @@ void proto_register_lte_rrc(void) { { "wideBand-r12", "lte-rrc.wideBand_r12", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, - { &hf_lte_rrc_setup_128, + { &hf_lte_rrc_measurementSlots_r15, + { "measurementSlots-r15", "lte-rrc.measurementSlots_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_1_80", HFILL }}, + { &hf_lte_rrc_endSymbol_r15, + { "endSymbol-r15", "lte-rrc.endSymbol_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3", HFILL }}, + { &hf_lte_rrc_setup_171, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_112", HFILL }}, + "T_setup_150", HFILL }}, { &hf_lte_rrc_delayThreshold_r13, { "delayThreshold-r13", "lte-rrc.delayThreshold_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_delayThreshold_r13_vals), 0, @@ -105340,6 +127165,26 @@ void proto_register_lte_rrc(void) { { "WLAN-Channel-r13", "lte-rrc.WLAN_Channel_r13", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_setup_172, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, NULL, 0, + "WLAN_NameList_r15", HFILL }}, + { &hf_lte_rrc_WLAN_NameList_r15_item, + { "WLAN-Name-r15", "lte-rrc.WLAN_Name_r15", + FT_BYTES, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_rttValue_r15, + { "rttValue-r15", "lte-rrc.rttValue_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_16777215", HFILL }}, + { &hf_lte_rrc_rttUnits_r15, + { "rttUnits-r15", "lte-rrc.rttUnits_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rttUnits_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_rttAccuracy_r15, + { "rttAccuracy-r15", "lte-rrc.rttAccuracy_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_255", HFILL }}, { &hf_lte_rrc_wlan_SuspendResumeAllowed_r14, { "wlan-SuspendResumeAllowed-r14", "lte-rrc.wlan_SuspendResumeAllowed_r14", FT_BOOLEAN, BASE_NONE, NULL, 0, @@ -105396,6 +127241,18 @@ void proto_register_lte_rrc(void) { { "ca-BandwidthClassUL-r14", "lte-rrc.ca_BandwidthClassUL_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_CA_BandwidthClass_r10_vals), 0, "CA_BandwidthClass_r10", HFILL }}, + { &hf_lte_rrc_maxWayPointNumber_r15, + { "maxWayPointNumber-r15", "lte-rrc.maxWayPointNumber_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxWayPoint_r15", HFILL }}, + { &hf_lte_rrc_includeTimeStamp_r15, + { "includeTimeStamp-r15", "lte-rrc.includeTimeStamp_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_includeTimeStamp_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_gnss_id_r15_01, + { "gnss-id-r15", "lte-rrc.gnss_id_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_gnss_id_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_subframePatternFDD_r10, { "subframePatternFDD-r10", "lte-rrc.subframePatternFDD_r10", FT_BYTES, BASE_NONE, NULL, 0, @@ -105444,10 +127301,10 @@ void proto_register_lte_rrc(void) { { "delayBudgetReportingConfig-r14", "lte-rrc.delayBudgetReportingConfig_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_delayBudgetReportingConfig_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_129, + { &hf_lte_rrc_setup_173, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_113", HFILL }}, + "T_setup_151", HFILL }}, { &hf_lte_rrc_delayBudgetReportingProhibitTimer_r14, { "delayBudgetReportingProhibitTimer-r14", "lte-rrc.delayBudgetReportingProhibitTimer_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_delayBudgetReportingProhibitTimer_r14_vals), 0, @@ -105456,10 +127313,10 @@ void proto_register_lte_rrc(void) { { "rlm-ReportConfig-r14", "lte-rrc.rlm_ReportConfig_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rlm_ReportConfig_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_130, + { &hf_lte_rrc_setup_174, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_114", HFILL }}, + "T_setup_152", HFILL }}, { &hf_lte_rrc_rlmReportTimer_r14, { "rlmReportTimer-r14", "lte-rrc.rlmReportTimer_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rlmReportTimer_r14_vals), 0, @@ -105472,14 +127329,42 @@ void proto_register_lte_rrc(void) { { "overheatingAssistanceConfig-r14", "lte-rrc.overheatingAssistanceConfig_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_overheatingAssistanceConfig_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_131, + { &hf_lte_rrc_setup_175, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_115", HFILL }}, + "T_setup_153", HFILL }}, { &hf_lte_rrc_overheatingIndicationProhibitTimer_r14, { "overheatingIndicationProhibitTimer-r14", "lte-rrc.overheatingIndicationProhibitTimer_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_overheatingIndicationProhibitTimer_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_measConfigAppLayer_r15, + { "measConfigAppLayer-r15", "lte-rrc.measConfigAppLayer_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_measConfigAppLayer_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_176, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_154", HFILL }}, + { &hf_lte_rrc_measConfigAppLayerContainer_r15, + { "measConfigAppLayerContainer-r15", "lte-rrc.measConfigAppLayerContainer_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "OCTET_STRING_SIZE_1_1000", HFILL }}, + { &hf_lte_rrc_serviceType_01, + { "serviceType", "lte-rrc.serviceType", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_serviceType_01_vals), 0, + "T_serviceType_01", HFILL }}, + { &hf_lte_rrc_ailc_BitConfig_r15, + { "ailc-BitConfig-r15", "lte-rrc.ailc_BitConfig_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_bt_NameListConfig_r15, + { "bt-NameListConfig-r15", "lte-rrc.bt_NameListConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_BT_NameListConfig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_wlan_NameListConfig_r15, + { "wlan-NameListConfig-r15", "lte-rrc.wlan_NameListConfig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_WLAN_NameListConfig_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_idc_Indication_r11_01, { "idc-Indication-r11", "lte-rrc.idc_Indication_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_idc_Indication_r11_01_vals), 0, @@ -105504,14 +127389,22 @@ void proto_register_lte_rrc(void) { { "idc-HardwareSharingIndication-r13", "lte-rrc.idc_HardwareSharingIndication_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_idc_HardwareSharingIndication_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_idc_Indication_MRDC_r15, + { "idc-Indication-MRDC-r15", "lte-rrc.idc_Indication_MRDC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_idc_Indication_MRDC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_177, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, NULL, 0, + "CandidateServingFreqListNR_r15", HFILL }}, { &hf_lte_rrc_obtainLocation_r11, { "obtainLocation-r11", "lte-rrc.obtainLocation_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_obtainLocation_r11_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_132, + { &hf_lte_rrc_setup_178, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_116", HFILL }}, + "T_setup_155", HFILL }}, { &hf_lte_rrc_powerPrefIndicationTimer_r11, { "powerPrefIndicationTimer-r11", "lte-rrc.powerPrefIndicationTimer_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_powerPrefIndicationTimer_r11_vals), 0, @@ -105524,6 +127417,22 @@ void proto_register_lte_rrc(void) { { "proximityIndicationUTRA-r9", "lte-rrc.proximityIndicationUTRA_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_proximityIndicationUTRA_r9_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_CandidateServingFreqListNR_r15_item, + { "ARFCN-ValueNR-r15", "lte-rrc.ARFCN_ValueNR_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sbas_id_r15_01, + { "sbas-id-r15", "lte-rrc.sbas_id_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sbas_id_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sst, + { "sst", "lte-rrc.sst", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_8", HFILL }}, + { &hf_lte_rrc_sst_SD, + { "sst-SD", "lte-rrc.sst_SD", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_32", HFILL }}, { &hf_lte_rrc_m_TMSI, { "m-TMSI", "lte-rrc.m_TMSI", FT_BYTES, BASE_NONE, NULL, 0, @@ -105608,7 +127517,7 @@ void proto_register_lte_rrc(void) { { "cdma2000-1xRTT", "lte-rrc.cdma2000_1xRTT_element", FT_NONE, BASE_NONE, NULL, 0, "IRAT_ParametersCDMA2000_1XRTT", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_198, + { &hf_lte_rrc_nonCriticalExtension_225, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v920_IEs", HFILL }}, @@ -105624,7 +127533,7 @@ void proto_register_lte_rrc(void) { { "tdd-Add-UE-EUTRA-Capabilities-r9", "lte-rrc.tdd_Add_UE_EUTRA_Capabilities_r9_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_CapabilityAddXDD_Mode_r9", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_199, + { &hf_lte_rrc_nonCriticalExtension_226, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v9c0_IEs", HFILL }}, @@ -105632,7 +127541,7 @@ void proto_register_lte_rrc(void) { { "interRAT-ParametersUTRA-v9c0", "lte-rrc.interRAT_ParametersUTRA_v9c0_element", FT_NONE, BASE_NONE, NULL, 0, "IRAT_ParametersUTRA_v9c0", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_200, + { &hf_lte_rrc_nonCriticalExtension_227, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v9d0_IEs", HFILL }}, @@ -105640,7 +127549,7 @@ void proto_register_lte_rrc(void) { { "phyLayerParameters-v9d0", "lte-rrc.phyLayerParameters_v9d0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_201, + { &hf_lte_rrc_nonCriticalExtension_228, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v9e0_IEs", HFILL }}, @@ -105648,7 +127557,7 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-v9e0", "lte-rrc.rf_Parameters_v9e0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_202, + { &hf_lte_rrc_nonCriticalExtension_229, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v9h0_IEs", HFILL }}, @@ -105656,7 +127565,7 @@ void proto_register_lte_rrc(void) { { "interRAT-ParametersUTRA-v9h0", "lte-rrc.interRAT_ParametersUTRA_v9h0_element", FT_NONE, BASE_NONE, NULL, 0, "IRAT_ParametersUTRA_v9h0", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_203, + { &hf_lte_rrc_nonCriticalExtension_230, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v10c0_IEs", HFILL }}, @@ -105664,7 +127573,7 @@ void proto_register_lte_rrc(void) { { "otdoa-PositioningCapabilities-r10", "lte-rrc.otdoa_PositioningCapabilities_r10_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_204, + { &hf_lte_rrc_nonCriticalExtension_231, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v10f0_IEs", HFILL }}, @@ -105672,7 +127581,7 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-v10f0", "lte-rrc.rf_Parameters_v10f0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_205, + { &hf_lte_rrc_nonCriticalExtension_232, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v10i0_IEs", HFILL }}, @@ -105684,7 +127593,7 @@ void proto_register_lte_rrc(void) { { "lateNonCriticalExtension", "lte-rrc.lateNonCriticalExtension", FT_BYTES, BASE_NONE, NULL, 0, "T_lateNonCriticalExtension_10", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_206, + { &hf_lte_rrc_nonCriticalExtension_233, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v11d0_IEs", HFILL }}, @@ -105692,10 +127601,10 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-v10j0", "lte-rrc.rf_Parameters_v10j0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_207, + { &hf_lte_rrc_nonCriticalExtension_234, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_69", HFILL }}, + "T_nonCriticalExtension_76", HFILL }}, { &hf_lte_rrc_rf_Parameters_v11d0, { "rf-Parameters-v11d0", "lte-rrc.rf_Parameters_v11d0_element", FT_NONE, BASE_NONE, NULL, 0, @@ -105704,11 +127613,11 @@ void proto_register_lte_rrc(void) { { "otherParameters-v11d0", "lte-rrc.otherParameters_v11d0_element", FT_NONE, BASE_NONE, NULL, 0, "Other_Parameters_v11d0", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_208, + { &hf_lte_rrc_nonCriticalExtension_235, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v11x0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_209, + { &hf_lte_rrc_nonCriticalExtension_236, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v12b0_IEs", HFILL }}, @@ -105716,11 +127625,11 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-v12b0", "lte-rrc.rf_Parameters_v12b0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_210, + { &hf_lte_rrc_nonCriticalExtension_237, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v12x0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_211, + { &hf_lte_rrc_nonCriticalExtension_238, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1370_IEs", HFILL }}, @@ -105736,7 +127645,7 @@ void proto_register_lte_rrc(void) { { "tdd-Add-UE-EUTRA-Capabilities-v1370", "lte-rrc.tdd_Add_UE_EUTRA_Capabilities_v1370_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_CapabilityAddXDD_Mode_v1370", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_212, + { &hf_lte_rrc_nonCriticalExtension_239, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1380_IEs", HFILL }}, @@ -105756,7 +127665,7 @@ void proto_register_lte_rrc(void) { { "tdd-Add-UE-EUTRA-Capabilities-v1380", "lte-rrc.tdd_Add_UE_EUTRA_Capabilities_v1380_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_CapabilityAddXDD_Mode_v1380", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_213, + { &hf_lte_rrc_nonCriticalExtension_240, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1390_IEs", HFILL }}, @@ -105764,11 +127673,11 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-v1390", "lte-rrc.rf_Parameters_v1390_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_214, + { &hf_lte_rrc_nonCriticalExtension_241, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v13x0_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_215, + { &hf_lte_rrc_nonCriticalExtension_242, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1470_IEs", HFILL }}, @@ -105784,10 +127693,10 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-v1470", "lte-rrc.rf_Parameters_v1470_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_216, + { &hf_lte_rrc_nonCriticalExtension_243, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_70", HFILL }}, + "T_nonCriticalExtension_77", HFILL }}, { &hf_lte_rrc_phyLayerParameters_v920, { "phyLayerParameters-v920", "lte-rrc.phyLayerParameters_v920_element", FT_NONE, BASE_NONE, NULL, 0, @@ -105820,7 +127729,7 @@ void proto_register_lte_rrc(void) { { "son-Parameters-r9", "lte-rrc.son_Parameters_r9_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_217, + { &hf_lte_rrc_nonCriticalExtension_244, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v940_IEs", HFILL }}, @@ -105828,7 +127737,7 @@ void proto_register_lte_rrc(void) { { "lateNonCriticalExtension", "lte-rrc.lateNonCriticalExtension", FT_BYTES, BASE_NONE, NULL, 0, "T_lateNonCriticalExtension_11", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_218, + { &hf_lte_rrc_nonCriticalExtension_245, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1020_IEs", HFILL }}, @@ -105864,7 +127773,7 @@ void proto_register_lte_rrc(void) { { "interRAT-ParametersUTRA-TDD-v1020", "lte-rrc.interRAT_ParametersUTRA_TDD_v1020_element", FT_NONE, BASE_NONE, NULL, 0, "IRAT_ParametersUTRA_TDD_v1020", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_219, + { &hf_lte_rrc_nonCriticalExtension_246, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1060_IEs", HFILL }}, @@ -105880,7 +127789,7 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-v1060", "lte-rrc.rf_Parameters_v1060_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_220, + { &hf_lte_rrc_nonCriticalExtension_247, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1090_IEs", HFILL }}, @@ -105888,7 +127797,7 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-v1090", "lte-rrc.rf_Parameters_v1090_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_221, + { &hf_lte_rrc_nonCriticalExtension_248, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1130_IEs", HFILL }}, @@ -105924,7 +127833,7 @@ void proto_register_lte_rrc(void) { { "tdd-Add-UE-EUTRA-Capabilities-v1130", "lte-rrc.tdd_Add_UE_EUTRA_Capabilities_v1130_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_CapabilityAddXDD_Mode_v1130", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_222, + { &hf_lte_rrc_nonCriticalExtension_249, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1170_IEs", HFILL }}, @@ -105936,7 +127845,7 @@ void proto_register_lte_rrc(void) { { "ue-Category-v1170", "lte-rrc.ue_Category_v1170", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_9_10", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_223, + { &hf_lte_rrc_nonCriticalExtension_250, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1180_IEs", HFILL }}, @@ -105956,7 +127865,7 @@ void proto_register_lte_rrc(void) { { "tdd-Add-UE-EUTRA-Capabilities-v1180", "lte-rrc.tdd_Add_UE_EUTRA_Capabilities_v1180_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_CapabilityAddXDD_Mode_v1180", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_224, + { &hf_lte_rrc_nonCriticalExtension_251, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v11a0_IEs", HFILL }}, @@ -105968,7 +127877,7 @@ void proto_register_lte_rrc(void) { { "measParameters-v11a0", "lte-rrc.measParameters_v11a0_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_225, + { &hf_lte_rrc_nonCriticalExtension_252, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1250_IEs", HFILL }}, @@ -106028,7 +127937,7 @@ void proto_register_lte_rrc(void) { { "sl-Parameters-r12", "lte-rrc.sl_Parameters_r12_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_226, + { &hf_lte_rrc_nonCriticalExtension_253, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1260_IEs", HFILL }}, @@ -106036,7 +127945,7 @@ void proto_register_lte_rrc(void) { { "ue-CategoryDL-v1260", "lte-rrc.ue_CategoryDL_v1260", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_15_16", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_227, + { &hf_lte_rrc_nonCriticalExtension_254, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1270_IEs", HFILL }}, @@ -106044,7 +127953,7 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-v1270", "lte-rrc.rf_Parameters_v1270_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_228, + { &hf_lte_rrc_nonCriticalExtension_255, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1280_IEs", HFILL }}, @@ -106052,7 +127961,7 @@ void proto_register_lte_rrc(void) { { "phyLayerParameters-v1280", "lte-rrc.phyLayerParameters_v1280_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_229, + { &hf_lte_rrc_nonCriticalExtension_256, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1310_IEs", HFILL }}, @@ -106132,7 +128041,7 @@ void proto_register_lte_rrc(void) { { "tdd-Add-UE-EUTRA-Capabilities-v1310", "lte-rrc.tdd_Add_UE_EUTRA_Capabilities_v1310_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_CapabilityAddXDD_Mode_v1310", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_230, + { &hf_lte_rrc_nonCriticalExtension_257, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1320_IEs", HFILL }}, @@ -106156,7 +128065,7 @@ void proto_register_lte_rrc(void) { { "tdd-Add-UE-EUTRA-Capabilities-v1320", "lte-rrc.tdd_Add_UE_EUTRA_Capabilities_v1320_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_CapabilityAddXDD_Mode_v1320", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_231, + { &hf_lte_rrc_nonCriticalExtension_258, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1330_IEs", HFILL }}, @@ -106172,7 +128081,7 @@ void proto_register_lte_rrc(void) { { "ue-CE-NeedULGaps-r13", "lte-rrc.ue_CE_NeedULGaps_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ue_CE_NeedULGaps_r13_01_vals), 0, "T_ue_CE_NeedULGaps_r13_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_232, + { &hf_lte_rrc_nonCriticalExtension_259, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1340_IEs", HFILL }}, @@ -106180,7 +128089,7 @@ void proto_register_lte_rrc(void) { { "ue-CategoryUL-v1340", "lte-rrc.ue_CategoryUL_v1340", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_15", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_233, + { &hf_lte_rrc_nonCriticalExtension_260, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1350_IEs", HFILL }}, @@ -106196,7 +128105,7 @@ void proto_register_lte_rrc(void) { { "ce-Parameters-v1350", "lte-rrc.ce_Parameters_v1350_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_234, + { &hf_lte_rrc_nonCriticalExtension_261, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1360_IEs", HFILL }}, @@ -106204,7 +128113,7 @@ void proto_register_lte_rrc(void) { { "other-Parameters-v1360", "lte-rrc.other_Parameters_v1360_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_235, + { &hf_lte_rrc_nonCriticalExtension_262, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1430_IEs", HFILL }}, @@ -106296,7 +128205,7 @@ void proto_register_lte_rrc(void) { { "highSpeedEnhParameters-r14", "lte-rrc.highSpeedEnhParameters_r14_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_236, + { &hf_lte_rrc_nonCriticalExtension_263, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1440_IEs", HFILL }}, @@ -106308,7 +128217,7 @@ void proto_register_lte_rrc(void) { { "mac-Parameters-v1440", "lte-rrc.mac_Parameters_v1440_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_237, + { &hf_lte_rrc_nonCriticalExtension_264, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1450_IEs", HFILL }}, @@ -106328,7 +128237,7 @@ void proto_register_lte_rrc(void) { { "ue-CategoryDL-v1450", "lte-rrc.ue_CategoryDL_v1450", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_20", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_238, + { &hf_lte_rrc_nonCriticalExtension_265, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1460_IEs", HFILL }}, @@ -106340,7 +128249,7 @@ void proto_register_lte_rrc(void) { { "otherParameters-v1460", "lte-rrc.otherParameters_v1460_element", FT_NONE, BASE_NONE, NULL, 0, "Other_Parameters_v1460", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_239, + { &hf_lte_rrc_nonCriticalExtension_266, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1510_IEs", HFILL }}, @@ -106364,7 +128273,7 @@ void proto_register_lte_rrc(void) { { "tdd-Add-UE-EUTRA-Capabilities-v1510", "lte-rrc.tdd_Add_UE_EUTRA_Capabilities_v1510_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_CapabilityAddXDD_Mode_v1510", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_240, + { &hf_lte_rrc_nonCriticalExtension_267, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_EUTRA_Capability_v1520_IEs", HFILL }}, @@ -106372,10 +128281,82 @@ void proto_register_lte_rrc(void) { { "measParameters-v1520", "lte-rrc.measParameters_v1520_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_241, + { &hf_lte_rrc_nonCriticalExtension_268, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_71", HFILL }}, + "UE_EUTRA_Capability_v1530_IEs", HFILL }}, + { &hf_lte_rrc_measParameters_v1530, + { "measParameters-v1530", "lte-rrc.measParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_otherParameters_v1530, + { "otherParameters-v1530", "lte-rrc.otherParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "Other_Parameters_v1530", HFILL }}, + { &hf_lte_rrc_neighCellSI_AcquisitionParameters_v1530, + { "neighCellSI-AcquisitionParameters-v1530", "lte-rrc.neighCellSI_AcquisitionParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_mac_Parameters_v1530, + { "mac-Parameters-v1530", "lte-rrc.mac_Parameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_phyLayerParameters_v1530, + { "phyLayerParameters-v1530", "lte-rrc.phyLayerParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_rf_Parameters_v1530, + { "rf-Parameters-v1530", "lte-rrc.rf_Parameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_pdcp_Parameters_v1530, + { "pdcp-Parameters-v1530", "lte-rrc.pdcp_Parameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ue_CategoryDL_v1530, + { "ue-CategoryDL-v1530", "lte-rrc.ue_CategoryDL_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_22_26", HFILL }}, + { &hf_lte_rrc_ue_BasedNetwPerfMeasParameters_v1530, + { "ue-BasedNetwPerfMeasParameters-v1530", "lte-rrc.ue_BasedNetwPerfMeasParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_rlc_Parameters_v1530, + { "rlc-Parameters-v1530", "lte-rrc.rlc_Parameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sl_Parameters_v1530, + { "sl-Parameters-v1530", "lte-rrc.sl_Parameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_extendedNumberOfDRBs_r15, + { "extendedNumberOfDRBs-r15", "lte-rrc.extendedNumberOfDRBs_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_extendedNumberOfDRBs_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_reducedCP_Latency_r15, + { "reducedCP-Latency-r15", "lte-rrc.reducedCP_Latency_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_reducedCP_Latency_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_laa_Parameters_v1530, + { "laa-Parameters-v1530", "lte-rrc.laa_Parameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ue_CategoryUL_v1530, + { "ue-CategoryUL-v1530", "lte-rrc.ue_CategoryUL_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_22_26", HFILL }}, + { &hf_lte_rrc_fdd_Add_UE_EUTRA_Capabilities_v1530, + { "fdd-Add-UE-EUTRA-Capabilities-v1530", "lte-rrc.fdd_Add_UE_EUTRA_Capabilities_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "UE_EUTRA_CapabilityAddXDD_Mode_v1530", HFILL }}, + { &hf_lte_rrc_tdd_Add_UE_EUTRA_Capabilities_v1530, + { "tdd-Add-UE-EUTRA-Capabilities-v1530", "lte-rrc.tdd_Add_UE_EUTRA_Capabilities_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "UE_EUTRA_CapabilityAddXDD_Mode_v1530", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_269, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_78", HFILL }}, { &hf_lte_rrc_phyLayerParameters_r9, { "phyLayerParameters-r9", "lte-rrc.phyLayerParameters_r9_element", FT_NONE, BASE_NONE, NULL, 0, @@ -106416,6 +128397,10 @@ void proto_register_lte_rrc(void) { { "interRAT-ParametersUTRA-TDD-v1060", "lte-rrc.interRAT_ParametersUTRA_TDD_v1060_element", FT_NONE, BASE_NONE, NULL, 0, "IRAT_ParametersUTRA_TDD_v1020", HFILL }}, + { &hf_lte_rrc_reducedCP_Latency_r15_01, + { "reducedCP-Latency-r15", "lte-rrc.reducedCP_Latency_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_reducedCP_Latency_r15_01_vals), 0, + "T_reducedCP_Latency_r15_01", HFILL }}, { &hf_lte_rrc_featureSetsDL_r15, { "featureSetsDL-r15", "lte-rrc.featureSetsDL_r15", FT_UINT32, BASE_DEC, NULL, 0, @@ -106516,6 +128501,42 @@ void proto_register_lte_rrc(void) { { "rai-Support-r14", "lte-rrc.rai_Support_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rai_Support_r14_vals), 0, "T_rai_Support_r14", HFILL }}, + { &hf_lte_rrc_min_Proc_TimelineSubslot_r15, + { "min-Proc-TimelineSubslot-r15", "lte-rrc.min_Proc_TimelineSubslot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_3_OF_ProcessingTimelineSet_r15", HFILL }}, + { &hf_lte_rrc_min_Proc_TimelineSubslot_r15_item, + { "ProcessingTimelineSet-r15", "lte-rrc.ProcessingTimelineSet_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_ProcessingTimelineSet_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_skipSubframeProcessing_r15, + { "skipSubframeProcessing-r15", "lte-rrc.skipSubframeProcessing_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_earlyData_UP_r15, + { "earlyData-UP-r15", "lte-rrc.earlyData_UP_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_earlyData_UP_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dormantSCellState_r15, + { "dormantSCellState-r15", "lte-rrc.dormantSCellState_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dormantSCellState_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_directSCellActivation_r15, + { "directSCellActivation-r15", "lte-rrc.directSCellActivation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_directSCellActivation_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_directSCellHibernation_r15, + { "directSCellHibernation-r15", "lte-rrc.directSCellHibernation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_directSCellHibernation_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_extendedLCID_Duplication_r15, + { "extendedLCID-Duplication-r15", "lte-rrc.extendedLCID_Duplication_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_extendedLCID_Duplication_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sps_ServingCell_r15, + { "sps-ServingCell-r15", "lte-rrc.sps_ServingCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sps_ServingCell_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_extended_RLC_LI_Field_r12, { "extended-RLC-LI-Field-r12", "lte-rrc.extended_RLC_LI_Field_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_extended_RLC_LI_Field_r12_vals), 0, @@ -106528,6 +128549,18 @@ void proto_register_lte_rrc(void) { { "extendedPollByte-r14", "lte-rrc.extendedPollByte_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_extendedPollByte_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_flexibleUM_AM_Combinations_r15, + { "flexibleUM-AM-Combinations-r15", "lte-rrc.flexibleUM_AM_Combinations_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_flexibleUM_AM_Combinations_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_rlc_AM_Ooo_Delivery_r15, + { "rlc-AM-Ooo-Delivery-r15", "lte-rrc.rlc_AM_Ooo_Delivery_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rlc_AM_Ooo_Delivery_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_rlc_UM_Ooo_Delivery_r15, + { "rlc-UM-Ooo-Delivery-r15", "lte-rrc.rlc_UM_Ooo_Delivery_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rlc_UM_Ooo_Delivery_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_supportedROHC_Profiles, { "supportedROHC-Profiles", "lte-rrc.supportedROHC_Profiles_element", FT_NONE, BASE_NONE, NULL, 0, @@ -106556,6 +128589,30 @@ void proto_register_lte_rrc(void) { { "maxNumberROHC-ContextSessions-r14", "lte-rrc.maxNumberROHC_ContextSessions_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxNumberROHC_ContextSessions_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_supportedUDC_r15, + { "supportedUDC-r15", "lte-rrc.supportedUDC_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_pdcp_Duplication_r15_01, + { "pdcp-Duplication-r15", "lte-rrc.pdcp_Duplication_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdcp_Duplication_r15_01_vals), 0, + "T_pdcp_Duplication_r15_01", HFILL }}, + { &hf_lte_rrc_supportedStandardDic_r15, + { "supportedStandardDic-r15", "lte-rrc.supportedStandardDic_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_supportedStandardDic_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_supportedOperatorDic_r15, + { "supportedOperatorDic-r15", "lte-rrc.supportedOperatorDic_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_versionOfDictionary_r15, + { "versionOfDictionary-r15", "lte-rrc.versionOfDictionary_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_associatedPLMN_ID_r15, + { "associatedPLMN-ID-r15", "lte-rrc.associatedPLMN_ID_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "PLMN_Identity", HFILL }}, { &hf_lte_rrc_ue_TxAntennaSelectionSupported, { "ue-TxAntennaSelectionSupported", "lte-rrc.ue_TxAntennaSelectionSupported", FT_BOOLEAN, BASE_NONE, NULL, 0, @@ -106852,6 +128909,290 @@ void proto_register_lte_rrc(void) { { "srs-UpPTS-6sym-r14", "lte-rrc.srs_UpPTS_6sym_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_srs_UpPTS_6sym_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_stti_SPT_Capabilities_r15, + { "stti-SPT-Capabilities-r15", "lte-rrc.stti_SPT_Capabilities_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_stti_SPT_Capabilities_r15", HFILL }}, + { &hf_lte_rrc_aperiodicCsi_ReportingSTTI_r15, + { "aperiodicCsi-ReportingSTTI-r15", "lte-rrc.aperiodicCsi_ReportingSTTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_aperiodicCsi_ReportingSTTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dmrs_BasedSPDCCH_MBSFN_r15, + { "dmrs-BasedSPDCCH-MBSFN-r15", "lte-rrc.dmrs_BasedSPDCCH_MBSFN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dmrs_BasedSPDCCH_MBSFN_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dmrs_BasedSPDCCH_nonMBSFN_r15, + { "dmrs-BasedSPDCCH-nonMBSFN-r15", "lte-rrc.dmrs_BasedSPDCCH_nonMBSFN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dmrs_BasedSPDCCH_nonMBSFN_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dmrs_PositionPattern_r15, + { "dmrs-PositionPattern-r15", "lte-rrc.dmrs_PositionPattern_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dmrs_PositionPattern_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dmrs_SharingSubslotPDSCH_r15, + { "dmrs-SharingSubslotPDSCH-r15", "lte-rrc.dmrs_SharingSubslotPDSCH_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dmrs_SharingSubslotPDSCH_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dmrs_RepetitionSubslotPDSCH_r15, + { "dmrs-RepetitionSubslotPDSCH-r15", "lte-rrc.dmrs_RepetitionSubslotPDSCH_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dmrs_RepetitionSubslotPDSCH_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_epdcch_SPT_differentCells_r15, + { "epdcch-SPT-differentCells-r15", "lte-rrc.epdcch_SPT_differentCells_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_epdcch_SPT_differentCells_r15_vals), 0, + "T_epdcch_SPT_differentCells_r15", HFILL }}, + { &hf_lte_rrc_epdcch_STTI_differentCells_r15, + { "epdcch-STTI-differentCells-r15", "lte-rrc.epdcch_STTI_differentCells_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_epdcch_STTI_differentCells_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_maxLayersSlotOrSubslotPUSCH_r15, + { "maxLayersSlotOrSubslotPUSCH-r15", "lte-rrc.maxLayersSlotOrSubslotPUSCH_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxLayersSlotOrSubslotPUSCH_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_SPT_r15, + { "maxNumberUpdatedCSI-Proc-SPT-r15", "lte-rrc.maxNumberUpdatedCSI_Proc_SPT_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_5_32", HFILL }}, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb77_r15, + { "maxNumberUpdatedCSI-Proc-STTI-Comb77-r15", "lte-rrc.maxNumberUpdatedCSI_Proc_STTI_Comb77_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_32", HFILL }}, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb27_r15, + { "maxNumberUpdatedCSI-Proc-STTI-Comb27-r15", "lte-rrc.maxNumberUpdatedCSI_Proc_STTI_Comb27_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_32", HFILL }}, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb22_Set1_r15, + { "maxNumberUpdatedCSI-Proc-STTI-Comb22-Set1-r15", "lte-rrc.maxNumberUpdatedCSI_Proc_STTI_Comb22_Set1_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_32", HFILL }}, + { &hf_lte_rrc_maxNumberUpdatedCSI_Proc_STTI_Comb22_Set2_r15, + { "maxNumberUpdatedCSI-Proc-STTI-Comb22-Set2-r15", "lte-rrc.maxNumberUpdatedCSI_Proc_STTI_Comb22_Set2_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_32", HFILL }}, + { &hf_lte_rrc_mimo_UE_ParametersSTTI_r15, + { "mimo-UE-ParametersSTTI-r15", "lte-rrc.mimo_UE_ParametersSTTI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "MIMO_UE_Parameters_r13", HFILL }}, + { &hf_lte_rrc_mimo_UE_ParametersSTTI_v1530, + { "mimo-UE-ParametersSTTI-v1530", "lte-rrc.mimo_UE_ParametersSTTI_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "MIMO_UE_Parameters_v1430", HFILL }}, + { &hf_lte_rrc_numberOfBlindDecodesUSS_r15, + { "numberOfBlindDecodesUSS-r15", "lte-rrc.numberOfBlindDecodesUSS_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_4_32", HFILL }}, + { &hf_lte_rrc_pdsch_SlotSubslotPDSCH_Decoding_r15, + { "pdsch-SlotSubslotPDSCH-Decoding-r15", "lte-rrc.pdsch_SlotSubslotPDSCH_Decoding_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdsch_SlotSubslotPDSCH_Decoding_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_powerUCI_SlotPUSCH, + { "powerUCI-SlotPUSCH", "lte-rrc.powerUCI_SlotPUSCH", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_powerUCI_SlotPUSCH_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_powerUCI_SubslotPUSCH, + { "powerUCI-SubslotPUSCH", "lte-rrc.powerUCI_SubslotPUSCH", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_powerUCI_SubslotPUSCH_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_slotPDSCH_TxDiv_TM9and10, + { "slotPDSCH-TxDiv-TM9and10", "lte-rrc.slotPDSCH_TxDiv_TM9and10", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_slotPDSCH_TxDiv_TM9and10_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_subslotPDSCH_TxDiv_TM9and10, + { "subslotPDSCH-TxDiv-TM9and10", "lte-rrc.subslotPDSCH_TxDiv_TM9and10", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_subslotPDSCH_TxDiv_TM9and10_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_spdcch_differentRS_types_r15, + { "spdcch-differentRS-types-r15", "lte-rrc.spdcch_differentRS_types_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_spdcch_differentRS_types_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_srs_DCI7_TriggeringFS2_r15, + { "srs-DCI7-TriggeringFS2-r15", "lte-rrc.srs_DCI7_TriggeringFS2_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_srs_DCI7_TriggeringFS2_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sps_cyclicShift_r15, + { "sps-cyclicShift-r15", "lte-rrc.sps_cyclicShift_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sps_cyclicShift_r15_vals), 0, + "T_sps_cyclicShift_r15", HFILL }}, + { &hf_lte_rrc_spdcch_Reuse_r15, + { "spdcch-Reuse-r15", "lte-rrc.spdcch_Reuse_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_spdcch_Reuse_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sps_STTI_r15, + { "sps-STTI-r15", "lte-rrc.sps_STTI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sps_STTI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_tm8_slotPDSCH_r15, + { "tm8-slotPDSCH-r15", "lte-rrc.tm8_slotPDSCH_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tm8_slotPDSCH_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_tm9_slotSubslot_r15, + { "tm9-slotSubslot-r15", "lte-rrc.tm9_slotSubslot_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tm9_slotSubslot_r15_vals), 0, + "T_tm9_slotSubslot_r15", HFILL }}, + { &hf_lte_rrc_tm9_slotSubslotMBSFN_r15, + { "tm9-slotSubslotMBSFN-r15", "lte-rrc.tm9_slotSubslotMBSFN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tm9_slotSubslotMBSFN_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_tm10_slotSubslot_r15, + { "tm10-slotSubslot-r15", "lte-rrc.tm10_slotSubslot_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tm10_slotSubslot_r15_vals), 0, + "T_tm10_slotSubslot_r15", HFILL }}, + { &hf_lte_rrc_tm10_slotSubslotMBSFN_r15, + { "tm10-slotSubslotMBSFN-r15", "lte-rrc.tm10_slotSubslotMBSFN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tm10_slotSubslotMBSFN_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_txDiv_SPUCCH_r15, + { "txDiv-SPUCCH-r15", "lte-rrc.txDiv_SPUCCH_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_txDiv_SPUCCH_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ul_AsyncHarqSharingDiff_TTI_Lengths_r15, + { "ul-AsyncHarqSharingDiff-TTI-Lengths-r15", "lte-rrc.ul_AsyncHarqSharingDiff_TTI_Lengths_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ul_AsyncHarqSharingDiff_TTI_Lengths_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_Capabilities_r15, + { "ce-Capabilities-r15", "lte-rrc.ce_Capabilities_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_CRS_IntfMitig_r15, + { "ce-CRS-IntfMitig-r15", "lte-rrc.ce_CRS_IntfMitig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_CRS_IntfMitig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_CQI_AlternativeTable_r15, + { "ce-CQI-AlternativeTable-r15", "lte-rrc.ce_CQI_AlternativeTable_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_CQI_AlternativeTable_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_PDSCH_FlexibleStartPRB_CE_ModeA_r15, + { "ce-PDSCH-FlexibleStartPRB-CE-ModeA-r15", "lte-rrc.ce_PDSCH_FlexibleStartPRB_CE_ModeA_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_PDSCH_FlexibleStartPRB_CE_ModeA_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_PDSCH_FlexibleStartPRB_CE_ModeB_r15, + { "ce-PDSCH-FlexibleStartPRB-CE-ModeB-r15", "lte-rrc.ce_PDSCH_FlexibleStartPRB_CE_ModeB_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_PDSCH_FlexibleStartPRB_CE_ModeB_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_PDSCH_64QAM_r15, + { "ce-PDSCH-64QAM-r15", "lte-rrc.ce_PDSCH_64QAM_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_PDSCH_64QAM_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_PUSCH_FlexibleStartPRB_CE_ModeA_r15, + { "ce-PUSCH-FlexibleStartPRB-CE-ModeA-r15", "lte-rrc.ce_PUSCH_FlexibleStartPRB_CE_ModeA_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_PUSCH_FlexibleStartPRB_CE_ModeA_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_PUSCH_FlexibleStartPRB_CE_ModeB_r15, + { "ce-PUSCH-FlexibleStartPRB-CE-ModeB-r15", "lte-rrc.ce_PUSCH_FlexibleStartPRB_CE_ModeB_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_PUSCH_FlexibleStartPRB_CE_ModeB_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_PUSCH_SubPRB_Allocation_r15, + { "ce-PUSCH-SubPRB-Allocation-r15", "lte-rrc.ce_PUSCH_SubPRB_Allocation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_PUSCH_SubPRB_Allocation_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ce_UL_HARQ_ACK_Feedback_r15, + { "ce-UL-HARQ-ACK-Feedback-r15", "lte-rrc.ce_UL_HARQ_ACK_Feedback_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_UL_HARQ_ACK_Feedback_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_shortCQI_ForSCellActivation_r15, + { "shortCQI-ForSCellActivation-r15", "lte-rrc.shortCQI_ForSCellActivation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_shortCQI_ForSCellActivation_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_mimo_CBSR_AdvancedCSI_r15, + { "mimo-CBSR-AdvancedCSI-r15", "lte-rrc.mimo_CBSR_AdvancedCSI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mimo_CBSR_AdvancedCSI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_crs_IntfMitig_r15, + { "crs-IntfMitig-r15", "lte-rrc.crs_IntfMitig_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_crs_IntfMitig_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ul_PowerControlEnhancements_r15, + { "ul-PowerControlEnhancements-r15", "lte-rrc.ul_PowerControlEnhancements_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ul_PowerControlEnhancements_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_urllc_Capabilities_r15, + { "urllc-Capabilities-r15", "lte-rrc.urllc_Capabilities_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_pdsch_RepSubframe_r15, + { "pdsch-RepSubframe-r15", "lte-rrc.pdsch_RepSubframe_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdsch_RepSubframe_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pdsch_RepSlot_r15, + { "pdsch-RepSlot-r15", "lte-rrc.pdsch_RepSlot_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdsch_RepSlot_r15_vals), 0, + "T_pdsch_RepSlot_r15", HFILL }}, + { &hf_lte_rrc_pdsch_RepSubslot_r15, + { "pdsch-RepSubslot-r15", "lte-rrc.pdsch_RepSubslot_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pdsch_RepSubslot_r15_vals), 0, + "T_pdsch_RepSubslot_r15", HFILL }}, + { &hf_lte_rrc_pusch_SPS_MultiConfigSubframe_r15, + { "pusch-SPS-MultiConfigSubframe-r15", "lte-rrc.pusch_SPS_MultiConfigSubframe_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_6", HFILL }}, + { &hf_lte_rrc_pusch_SPS_MaxConfigSubframe_r15, + { "pusch-SPS-MaxConfigSubframe-r15", "lte-rrc.pusch_SPS_MaxConfigSubframe_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_pusch_SPS_MultiConfigSlot_r15, + { "pusch-SPS-MultiConfigSlot-r15", "lte-rrc.pusch_SPS_MultiConfigSlot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_6", HFILL }}, + { &hf_lte_rrc_pusch_SPS_MaxConfigSlot_r15, + { "pusch-SPS-MaxConfigSlot-r15", "lte-rrc.pusch_SPS_MaxConfigSlot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_pusch_SPS_MultiConfigSubslot_r15, + { "pusch-SPS-MultiConfigSubslot-r15", "lte-rrc.pusch_SPS_MultiConfigSubslot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_6", HFILL }}, + { &hf_lte_rrc_pusch_SPS_MaxConfigSubslot_r15, + { "pusch-SPS-MaxConfigSubslot-r15", "lte-rrc.pusch_SPS_MaxConfigSubslot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_pusch_SPS_SlotRepPCell_r15, + { "pusch-SPS-SlotRepPCell-r15", "lte-rrc.pusch_SPS_SlotRepPCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_SPS_SlotRepPCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_SPS_SlotRepPSCell_r15, + { "pusch-SPS-SlotRepPSCell-r15", "lte-rrc.pusch_SPS_SlotRepPSCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_SPS_SlotRepPSCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_SPS_SlotRepSCell_r15, + { "pusch-SPS-SlotRepSCell-r15", "lte-rrc.pusch_SPS_SlotRepSCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_SPS_SlotRepSCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_SPS_SubframeRepPCell_r15, + { "pusch-SPS-SubframeRepPCell-r15", "lte-rrc.pusch_SPS_SubframeRepPCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_SPS_SubframeRepPCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_SPS_SubframeRepPSCell_r15, + { "pusch-SPS-SubframeRepPSCell-r15", "lte-rrc.pusch_SPS_SubframeRepPSCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_SPS_SubframeRepPSCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_SPS_SubframeRepSCell_r15, + { "pusch-SPS-SubframeRepSCell-r15", "lte-rrc.pusch_SPS_SubframeRepSCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_SPS_SubframeRepSCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_SPS_SubslotRepPCell_r15, + { "pusch-SPS-SubslotRepPCell-r15", "lte-rrc.pusch_SPS_SubslotRepPCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_SPS_SubslotRepPCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_SPS_SubslotRepPSCell_r15, + { "pusch-SPS-SubslotRepPSCell-r15", "lte-rrc.pusch_SPS_SubslotRepPSCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_SPS_SubslotRepPSCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_pusch_SPS_SubslotRepSCell_r15, + { "pusch-SPS-SubslotRepSCell-r15", "lte-rrc.pusch_SPS_SubslotRepSCell_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pusch_SPS_SubslotRepSCell_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_semiStaticCFI_r15, + { "semiStaticCFI-r15", "lte-rrc.semiStaticCFI_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_semiStaticCFI_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_semiStaticCFI_Pattern_r15, + { "semiStaticCFI-Pattern-r15", "lte-rrc.semiStaticCFI_Pattern_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_semiStaticCFI_Pattern_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_altMCS_Table_r15, + { "altMCS-Table-r15", "lte-rrc.altMCS_Table_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_altMCS_Table_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_parametersTM9_r13, { "parametersTM9-r13", "lte-rrc.parametersTM9_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -107284,6 +129625,146 @@ void proto_register_lte_rrc(void) { { "supportedBandCombinationReduced-v1470", "lte-rrc.supportedBandCombinationReduced_v1470", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_sTTI_SPT_Supported_r15, + { "sTTI-SPT-Supported-r15", "lte-rrc.sTTI_SPT_Supported_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sTTI_SPT_Supported_r15_vals), 0, + "T_sTTI_SPT_Supported_r15", HFILL }}, + { &hf_lte_rrc_supportedBandCombination_v1530, + { "supportedBandCombination-v1530", "lte-rrc.supportedBandCombination_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_supportedBandCombinationAdd_v1530, + { "supportedBandCombinationAdd-v1530", "lte-rrc.supportedBandCombinationAdd_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_supportedBandCombinationReduced_v1530, + { "supportedBandCombinationReduced-v1530", "lte-rrc.supportedBandCombinationReduced_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_powerClass_14dBm_r15, + { "powerClass-14dBm-r15", "lte-rrc.powerClass_14dBm_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_powerClass_14dBm_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_skipProcessingDL_Slot_r15, + { "skipProcessingDL-Slot-r15", "lte-rrc.skipProcessingDL_Slot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3", HFILL }}, + { &hf_lte_rrc_skipProcessingDL_SubSlot_r15, + { "skipProcessingDL-SubSlot-r15", "lte-rrc.skipProcessingDL_SubSlot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3", HFILL }}, + { &hf_lte_rrc_skipProcessingUL_Slot_r15, + { "skipProcessingUL-Slot-r15", "lte-rrc.skipProcessingUL_Slot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3", HFILL }}, + { &hf_lte_rrc_skipProcessingUL_SubSlot_r15, + { "skipProcessingUL-SubSlot-r15", "lte-rrc.skipProcessingUL_SubSlot_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_3", HFILL }}, + { &hf_lte_rrc_frameStructureType_SPT_r15, + { "frameStructureType-SPT-r15", "lte-rrc.frameStructureType_SPT_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_3", HFILL }}, + { &hf_lte_rrc_maxNumberCCs_SPT_r15, + { "maxNumberCCs-SPT-r15", "lte-rrc.maxNumberCCs_SPT_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_32", HFILL }}, + { &hf_lte_rrc_dl_1024QAM_Slot_r15, + { "dl-1024QAM-Slot-r15", "lte-rrc.dl_1024QAM_Slot_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dl_1024QAM_Slot_r15_vals), 0, + "T_dl_1024QAM_Slot_r15", HFILL }}, + { &hf_lte_rrc_dl_1024QAM_SubslotTA_1_r15, + { "dl-1024QAM-SubslotTA-1-r15", "lte-rrc.dl_1024QAM_SubslotTA_1_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dl_1024QAM_SubslotTA_1_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dl_1024QAM_SubslotTA_2_r15, + { "dl-1024QAM-SubslotTA-2-r15", "lte-rrc.dl_1024QAM_SubslotTA_2_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dl_1024QAM_SubslotTA_2_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_simultaneousTx_differentTx_duration_r15, + { "simultaneousTx-differentTx-duration-r15", "lte-rrc.simultaneousTx_differentTx_duration_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_simultaneousTx_differentTx_duration_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sTTI_CA_MIMO_ParametersDL_r15, + { "sTTI-CA-MIMO-ParametersDL-r15", "lte-rrc.sTTI_CA_MIMO_ParametersDL_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "CA_MIMO_ParametersDL_r15", HFILL }}, + { &hf_lte_rrc_sTTI_CA_MIMO_ParametersUL_r15, + { "sTTI-CA-MIMO-ParametersUL-r15", "lte-rrc.sTTI_CA_MIMO_ParametersUL_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "CA_MIMO_ParametersUL_r15", HFILL }}, + { &hf_lte_rrc_sTTI_FD_MIMO_Coexistence, + { "sTTI-FD-MIMO-Coexistence", "lte-rrc.sTTI_FD_MIMO_Coexistence", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sTTI_FD_MIMO_Coexistence_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sTTI_MIMO_CA_ParametersPerBoBCs_r15, + { "sTTI-MIMO-CA-ParametersPerBoBCs-r15", "lte-rrc.sTTI_MIMO_CA_ParametersPerBoBCs_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "MIMO_CA_ParametersPerBoBC_r13", HFILL }}, + { &hf_lte_rrc_sTTI_MIMO_CA_ParametersPerBoBCs_v1530, + { "sTTI-MIMO-CA-ParametersPerBoBCs-v1530", "lte-rrc.sTTI_MIMO_CA_ParametersPerBoBCs_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "MIMO_CA_ParametersPerBoBC_v1430", HFILL }}, + { &hf_lte_rrc_sTTI_SupportedCombinations_r15, + { "sTTI-SupportedCombinations-r15", "lte-rrc.sTTI_SupportedCombinations_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_sTTI_SupportedCSI_Proc_r15, + { "sTTI-SupportedCSI-Proc-r15", "lte-rrc.sTTI_SupportedCSI_Proc_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sTTI_SupportedCSI_Proc_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ul_256QAM_Slot_r15, + { "ul-256QAM-Slot-r15", "lte-rrc.ul_256QAM_Slot_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ul_256QAM_Slot_r15_vals), 0, + "T_ul_256QAM_Slot_r15", HFILL }}, + { &hf_lte_rrc_ul_256QAM_Subslot_r15, + { "ul-256QAM-Subslot-r15", "lte-rrc.ul_256QAM_Subslot_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ul_256QAM_Subslot_r15_vals), 0, + "T_ul_256QAM_Subslot_r15", HFILL }}, + { &hf_lte_rrc_combination_22_r15, + { "combination-22-r15", "lte-rrc.combination_22_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "DL_UL_CCs_r15", HFILL }}, + { &hf_lte_rrc_combination_77_r15, + { "combination-77-r15", "lte-rrc.combination_77_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "DL_UL_CCs_r15", HFILL }}, + { &hf_lte_rrc_combination_27_r15, + { "combination-27-r15", "lte-rrc.combination_27_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "DL_UL_CCs_r15", HFILL }}, + { &hf_lte_rrc_combination_22_27_r15, + { "combination-22-27-r15", "lte-rrc.combination_22_27_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15", HFILL }}, + { &hf_lte_rrc_combination_22_27_r15_item, + { "DL-UL-CCs-r15", "lte-rrc.DL_UL_CCs_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_combination_77_22_r15, + { "combination-77-22-r15", "lte-rrc.combination_77_22_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15", HFILL }}, + { &hf_lte_rrc_combination_77_22_r15_item, + { "DL-UL-CCs-r15", "lte-rrc.DL_UL_CCs_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_combination_77_27_r15, + { "combination-77-27-r15", "lte-rrc.combination_77_27_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15", HFILL }}, + { &hf_lte_rrc_combination_77_27_r15_item, + { "DL-UL-CCs-r15", "lte-rrc.DL_UL_CCs_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_maxNumberDL_CCs_r15, + { "maxNumberDL-CCs-r15", "lte-rrc.maxNumberDL_CCs_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_32", HFILL }}, + { &hf_lte_rrc_maxNumberUL_CCs_r15, + { "maxNumberUL-CCs-r15", "lte-rrc.maxNumberUL_CCs_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_32", HFILL }}, { &hf_lte_rrc_SupportedBandCombination_r10_item, { "BandCombinationParameters-r10", "lte-rrc.BandCombinationParameters_r10", FT_UINT32, BASE_DEC, NULL, 0, @@ -107336,6 +129817,10 @@ void proto_register_lte_rrc(void) { { "BandCombinationParameters-v1470", "lte-rrc.BandCombinationParameters_v1470_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_SupportedBandCombination_v1530_item, + { "BandCombinationParameters-v1530", "lte-rrc.BandCombinationParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_SupportedBandCombinationAdd_r11_item, { "BandCombinationParameters-r11", "lte-rrc.BandCombinationParameters_r11_element", FT_NONE, BASE_NONE, NULL, 0, @@ -107376,6 +129861,10 @@ void proto_register_lte_rrc(void) { { "BandCombinationParameters-v1470", "lte-rrc.BandCombinationParameters_v1470_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_SupportedBandCombinationAdd_v1530_item, + { "BandCombinationParameters-v1530", "lte-rrc.BandCombinationParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_SupportedBandCombinationReduced_r13_item, { "BandCombinationParameters-r13", "lte-rrc.BandCombinationParameters_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -107404,6 +129893,10 @@ void proto_register_lte_rrc(void) { { "BandCombinationParameters-v1470", "lte-rrc.BandCombinationParameters_v1470_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_SupportedBandCombinationReduced_v1530_item, + { "BandCombinationParameters-v1530", "lte-rrc.BandCombinationParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_BandCombinationParameters_r10_item, { "BandParameters-r10", "lte-rrc.BandParameters_r10_element", FT_NONE, BASE_NONE, NULL, 0, @@ -107624,6 +130117,18 @@ void proto_register_lte_rrc(void) { { "srs-MaxSimultaneousCCs-r14", "lte-rrc.srs_MaxSimultaneousCCs_r14", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_1_31", HFILL }}, + { &hf_lte_rrc_bandParameterList_v1530, + { "bandParameterList-v1530", "lte-rrc.bandParameterList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1530", HFILL }}, + { &hf_lte_rrc_bandParameterList_v1530_item, + { "BandParameters-v1530", "lte-rrc.BandParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_spt_Parameters_r15, + { "spt-Parameters-r15", "lte-rrc.spt_Parameters_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_bandEUTRA_r10, { "bandEUTRA-r10", "lte-rrc.bandEUTRA_r10", FT_UINT32, BASE_DEC, NULL, 0, @@ -107736,6 +130241,34 @@ void proto_register_lte_rrc(void) { { "bandParametersDL-v1470", "lte-rrc.bandParametersDL_v1470_element", FT_NONE, BASE_NONE, NULL, 0, "MIMO_CA_ParametersPerBoBC_v1470", HFILL }}, + { &hf_lte_rrc_ue_TxAntennaSelection_SRS_1T4R_r15, + { "ue-TxAntennaSelection-SRS-1T4R-r15", "lte-rrc.ue_TxAntennaSelection_SRS_1T4R_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ue_TxAntennaSelection_SRS_1T4R_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ue_TxAntennaSelection_SRS_2T4R_2Pairs_r15, + { "ue-TxAntennaSelection-SRS-2T4R-2Pairs-r15", "lte-rrc.ue_TxAntennaSelection_SRS_2T4R_2Pairs_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_2Pairs_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ue_TxAntennaSelection_SRS_2T4R_3Pairs_r15, + { "ue-TxAntennaSelection-SRS-2T4R-3Pairs-r15", "lte-rrc.ue_TxAntennaSelection_SRS_2T4R_3Pairs_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ue_TxAntennaSelection_SRS_2T4R_3Pairs_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_dl_1024QAM_r15, + { "dl-1024QAM-r15", "lte-rrc.dl_1024QAM_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dl_1024QAM_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_qcl_TypeC_Operation_r15, + { "qcl-TypeC-Operation-r15", "lte-rrc.qcl_TypeC_Operation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_qcl_TypeC_Operation_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_qcl_CRI_BasedCSI_Reporting_r15, + { "qcl-CRI-BasedCSI-Reporting-r15", "lte-rrc.qcl_CRI_BasedCSI_Reporting_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_qcl_CRI_BasedCSI_Reporting_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_stti_SPT_BandParameters_r15, + { "stti-SPT-BandParameters-r15", "lte-rrc.stti_SPT_BandParameters_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_v2x_FreqBandEUTRA_r14, { "v2x-FreqBandEUTRA-r14", "lte-rrc.v2x_FreqBandEUTRA_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -107748,6 +130281,10 @@ void proto_register_lte_rrc(void) { { "bandParametersRxSL-r14", "lte-rrc.bandParametersRxSL_r14_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_v2x_EnhancedHighReception_r15, + { "v2x-EnhancedHighReception-r15", "lte-rrc.v2x_EnhancedHighReception_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_v2x_EnhancedHighReception_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_v2x_BandwidthClassTxSL_r14, { "v2x-BandwidthClassTxSL-r14", "lte-rrc.v2x_BandwidthClassTxSL_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -107872,6 +130409,18 @@ void proto_register_lte_rrc(void) { { "IntraBandContiguousCC-Info-r12", "lte-rrc.IntraBandContiguousCC_Info_r12_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_fourLayerTM3_TM4_r15_01, + { "fourLayerTM3-TM4-r15", "lte-rrc.fourLayerTM3_TM4_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_fourLayerTM3_TM4_r15_01_vals), 0, + "T_fourLayerTM3_TM4_r15_01", HFILL }}, + { &hf_lte_rrc_intraBandContiguousCC_InfoList_r15, + { "intraBandContiguousCC-InfoList-r15", "lte-rrc.intraBandContiguousCC_InfoList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12", HFILL }}, + { &hf_lte_rrc_intraBandContiguousCC_InfoList_r15_item, + { "IntraBandContiguousCC-Info-r12", "lte-rrc.IntraBandContiguousCC_Info_r12_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_fourLayerTM3_TM4_perCC_r12, { "fourLayerTM3-TM4-perCC-r12", "lte-rrc.fourLayerTM3_TM4_perCC_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_fourLayerTM3_TM4_perCC_r12_vals), 0, @@ -108060,6 +130609,30 @@ void proto_register_lte_rrc(void) { { "measGapPatterns-v1520", "lte-rrc.measGapPatterns_v1520", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_qoe_MeasReport_r15, + { "qoe-MeasReport-r15", "lte-rrc.qoe_MeasReport_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_qoe_MeasReport_r15_vals), 0, + "T_qoe_MeasReport_r15", HFILL }}, + { &hf_lte_rrc_qoe_MTSI_MeasReport_r15, + { "qoe-MTSI-MeasReport-r15", "lte-rrc.qoe_MTSI_MeasReport_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_qoe_MTSI_MeasReport_r15_vals), 0, + "T_qoe_MTSI_MeasReport_r15", HFILL }}, + { &hf_lte_rrc_ca_IdleModeMeasurements_r15, + { "ca-IdleModeMeasurements-r15", "lte-rrc.ca_IdleModeMeasurements_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ca_IdleModeMeasurements_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ca_IdleModeValidityArea_r15, + { "ca-IdleModeValidityArea-r15", "lte-rrc.ca_IdleModeValidityArea_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ca_IdleModeValidityArea_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_heightMeas_r15, + { "heightMeas-r15", "lte-rrc.heightMeas_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_heightMeas_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_multipleCellsMeasExtension_r15, + { "multipleCellsMeasExtension-r15", "lte-rrc.multipleCellsMeasExtension_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_multipleCellsMeasExtension_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_BandListEUTRA_item, { "BandInfoEUTRA", "lte-rrc.BandInfoEUTRA_element", FT_NONE, BASE_NONE, NULL, 0, @@ -108176,7 +130749,7 @@ void proto_register_lte_rrc(void) { { "SupportedBandNR-r15", "lte-rrc.SupportedBandNR_r15_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_bandNR_r15, + { &hf_lte_rrc_bandNR_r15_01, { "bandNR-r15", "lte-rrc.bandNR_r15", FT_UINT32, BASE_DEC, NULL, 0, "FreqBandIndicatorNR_r15", HFILL }}, @@ -108348,6 +130921,14 @@ void proto_register_lte_rrc(void) { { "utran-SI-AcquisitionForHO-r9", "lte-rrc.utran_SI_AcquisitionForHO_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_utran_SI_AcquisitionForHO_r9_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_reportCGI_NR_EN_DC_r15, + { "reportCGI-NR-EN-DC-r15", "lte-rrc.reportCGI_NR_EN_DC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_reportCGI_NR_EN_DC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_reportCGI_NR_NoEN_DC_r15, + { "reportCGI-NR-NoEN-DC-r15", "lte-rrc.reportCGI_NR_NoEN_DC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_reportCGI_NR_NoEN_DC_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_rach_Report_r9_01, { "rach-Report-r9", "lte-rrc.rach_Report_r9", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rach_Report_r9_01_vals), 0, @@ -108368,6 +130949,22 @@ void proto_register_lte_rrc(void) { { "locationReport-r14", "lte-rrc.locationReport_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_locationReport_r14_vals), 0, "T_locationReport_r14", HFILL }}, + { &hf_lte_rrc_loggedMeasBT_r15, + { "loggedMeasBT-r15", "lte-rrc.loggedMeasBT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_loggedMeasBT_r15_vals), 0, + "T_loggedMeasBT_r15", HFILL }}, + { &hf_lte_rrc_loggedMeasWLAN_r15, + { "loggedMeasWLAN-r15", "lte-rrc.loggedMeasWLAN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_loggedMeasWLAN_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_immMeasBT_r15, + { "immMeasBT-r15", "lte-rrc.immMeasBT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_immMeasBT_r15_vals), 0, + "T_immMeasBT_r15", HFILL }}, + { &hf_lte_rrc_immMeasWLAN_r15, + { "immMeasWLAN-r15", "lte-rrc.immMeasWLAN_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_immMeasWLAN_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_otdoa_UE_Assisted_r10, { "otdoa-UE-Assisted-r10", "lte-rrc.otdoa_UE_Assisted_r10", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_otdoa_UE_Assisted_r10_vals), 0, @@ -108412,6 +131009,18 @@ void proto_register_lte_rrc(void) { { "nonCSG-SI-Reporting-r14", "lte-rrc.nonCSG_SI_Reporting_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nonCSG_SI_Reporting_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_assistInfoBitForLC_r15, + { "assistInfoBitForLC-r15", "lte-rrc.assistInfoBitForLC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_assistInfoBitForLC_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_timeReferenceProvision_r15, + { "timeReferenceProvision-r15", "lte-rrc.timeReferenceProvision_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_timeReferenceProvision_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_flightPathPlan_r15, + { "flightPathPlan-r15", "lte-rrc.flightPathPlan_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_flightPathPlan_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_mbms_SCell_r11, { "mbms-SCell-r11", "lte-rrc.mbms_SCell_r11", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mbms_SCell_r11_vals), 0, @@ -108580,6 +131189,22 @@ void proto_register_lte_rrc(void) { { "outOfSequenceGrantHandling-r14", "lte-rrc.outOfSequenceGrantHandling_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_outOfSequenceGrantHandling_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_aul_r15, + { "aul-r15", "lte-rrc.aul_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_aul_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_laa_PUSCH_Mode1_r15, + { "laa-PUSCH-Mode1-r15", "lte-rrc.laa_PUSCH_Mode1_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_laa_PUSCH_Mode1_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_laa_PUSCH_Mode2_r15, + { "laa-PUSCH-Mode2-r15", "lte-rrc.laa_PUSCH_Mode2_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_laa_PUSCH_Mode2_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_laa_PUSCH_Mode3_r15, + { "laa-PUSCH-Mode3-r15", "lte-rrc.laa_PUSCH_Mode3_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_laa_PUSCH_Mode3_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_wlan_IW_RAN_Rules_r12, { "wlan-IW-RAN-Rules-r12", "lte-rrc.wlan_IW_RAN_Rules_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_wlan_IW_RAN_Rules_r12_vals), 0, @@ -108736,14 +131361,50 @@ void proto_register_lte_rrc(void) { { "v2x-SupportedBandCombinationList-r14", "lte-rrc.v2x_SupportedBandCombinationList_r14", FT_UINT32, BASE_DEC, NULL, 0, "V2X_SupportedBandCombination_r14", HFILL }}, + { &hf_lte_rrc_slss_SupportedTxFreq_r15, + { "slss-SupportedTxFreq-r15", "lte-rrc.slss_SupportedTxFreq_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_slss_SupportedTxFreq_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sl_64QAM_Tx_r15, + { "sl-64QAM-Tx-r15", "lte-rrc.sl_64QAM_Tx_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sl_64QAM_Tx_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sl_TxDiversity_r15, + { "sl-TxDiversity-r15", "lte-rrc.sl_TxDiversity_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sl_TxDiversity_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ue_CategorySL_r15, + { "ue-CategorySL-r15", "lte-rrc.ue_CategorySL_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_v2x_SupportedBandCombinationList_v1530, + { "v2x-SupportedBandCombinationList-v1530", "lte-rrc.v2x_SupportedBandCombinationList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "V2X_SupportedBandCombination_v1530", HFILL }}, + { &hf_lte_rrc_ue_CategorySL_C_TX_r15, + { "ue-CategorySL-C-TX-r15", "lte-rrc.ue_CategorySL_C_TX_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_5", HFILL }}, + { &hf_lte_rrc_ue_CategorySL_C_RX_r15, + { "ue-CategorySL-C-RX-r15", "lte-rrc.ue_CategorySL_C_RX_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_4", HFILL }}, { &hf_lte_rrc_V2X_SupportedBandCombination_r14_item, { "V2X-BandCombinationParameters-r14", "lte-rrc.V2X_BandCombinationParameters_r14", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_V2X_SupportedBandCombination_v1530_item, + { "V2X-BandCombinationParameters-v1530", "lte-rrc.V2X_BandCombinationParameters_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_V2X_BandCombinationParameters_r14_item, { "V2X-BandParameters-r14", "lte-rrc.V2X_BandParameters_r14_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_V2X_BandCombinationParameters_v1530_item, + { "V2X-BandParameters-v1530", "lte-rrc.V2X_BandParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_SupportedBandInfoList_r12_item, { "SupportedBandInfo-r12", "lte-rrc.SupportedBandInfo_r12_element", FT_NONE, BASE_NONE, NULL, 0, @@ -108812,6 +131473,22 @@ void proto_register_lte_rrc(void) { { "ce-ModeB-r13", "lte-rrc.ce_ModeB_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_ModeB_r13_02_vals), 0, "T_ce_ModeB_r13_02", HFILL }}, + { &hf_lte_rrc_wakeUpSignal_r15, + { "wakeUpSignal-r15", "lte-rrc.wakeUpSignal_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_wakeUpSignal_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_wakeUpSignal_TDD_r15, + { "wakeUpSignal-TDD-r15", "lte-rrc.wakeUpSignal_TDD_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_wakeUpSignal_TDD_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_wakeUpSignalMinGap_eDRX_r15, + { "wakeUpSignalMinGap-eDRX-r15", "lte-rrc.wakeUpSignalMinGap_eDRX_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_wakeUpSignalMinGap_eDRX_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_wakeUpSignalMinGap_eDRX_TDD_r15, + { "wakeUpSignalMinGap-eDRX-TDD-r15", "lte-rrc.wakeUpSignalMinGap_eDRX_TDD_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_wakeUpSignalMinGap_eDRX_TDD_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_t300, { "t300", "lte-rrc.t300", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t300_vals), 0, @@ -108848,6 +131525,10 @@ void proto_register_lte_rrc(void) { { "t310-v1330", "lte-rrc.t310_v1330", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t310_v1330_01_vals), 0, "T_t310_v1330_01", HFILL }}, + { &hf_lte_rrc_t300_r15, + { "t300-r15", "lte-rrc.t300_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t300_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_VisitedCellInfoList_r12_item, { "VisitedCellInfo-r12", "lte-rrc.VisitedCellInfo_r12_element", FT_NONE, BASE_NONE, NULL, 0, @@ -109376,14 +132057,58 @@ void proto_register_lte_rrc(void) { { "Tx-ConfigIndex-r14", "lte-rrc.Tx_ConfigIndex_r14", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_SL_CBR_PPPP_TxConfigList_v1530_item, + { "SL-PPPP-TxConfigIndex-v1530", "lte-rrc.SL_PPPP_TxConfigIndex_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_mcs_PSSCH_RangeList_r15, + { "mcs-PSSCH-RangeList-r15", "lte-rrc.mcs_PSSCH_RangeList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_MCS_PSSCH_Range_r15", HFILL }}, + { &hf_lte_rrc_mcs_PSSCH_RangeList_r15_item, + { "MCS-PSSCH-Range-r15", "lte-rrc.MCS_PSSCH_Range_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_minMCS_PSSCH_r15, + { "minMCS-PSSCH-r15", "lte-rrc.minMCS_PSSCH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_maxMCS_PSSCH_r15, + { "maxMCS-PSSCH-r15", "lte-rrc.maxMCS_PSSCH_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_SL_CBR_PPPP_TxConfigList_r15_item, + { "SL-PPPP-TxConfigIndex-r15", "lte-rrc.SL_PPPP_TxConfigIndex_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_priorityThreshold_r15, + { "priorityThreshold-r15", "lte-rrc.priorityThreshold_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_Priority_r13", HFILL }}, + { &hf_lte_rrc_defaultTxConfigIndex_r15, + { "defaultTxConfigIndex-r15", "lte-rrc.defaultTxConfigIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_maxCBR_Level_1_r14", HFILL }}, + { &hf_lte_rrc_cbr_ConfigIndex_r15, + { "cbr-ConfigIndex-r15", "lte-rrc.cbr_ConfigIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_maxSL_V2X_CBRConfig_1_r14", HFILL }}, + { &hf_lte_rrc_tx_ConfigIndexList_r15, + { "tx-ConfigIndexList-r15", "lte-rrc.tx_ConfigIndexList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14", HFILL }}, + { &hf_lte_rrc_tx_ConfigIndexList_r15_item, + { "Tx-ConfigIndex-r14", "lte-rrc.Tx_ConfigIndex_r14", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_commTxResources_r12, { "commTxResources-r12", "lte-rrc.commTxResources_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_commTxResources_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_133, + { &hf_lte_rrc_setup_179, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_117_vals), 0, - "T_setup_117", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_156_vals), 0, + "T_setup_156", HFILL }}, { &hf_lte_rrc_scheduled_r12, { "scheduled-r12", "lte-rrc.scheduled_r12_element", FT_NONE, BASE_NONE, NULL, 0, @@ -109424,10 +132149,10 @@ void proto_register_lte_rrc(void) { { "commTxResources-v1310", "lte-rrc.commTxResources_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_commTxResources_v1310_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_134, + { &hf_lte_rrc_setup_180, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_118_vals), 0, - "T_setup_118", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_157_vals), 0, + "T_setup_157", HFILL }}, { &hf_lte_rrc_scheduled_v1310, { "scheduled-v1310", "lte-rrc.scheduled_v1310_element", FT_NONE, BASE_NONE, NULL, 0, @@ -109624,10 +132349,6 @@ void proto_register_lte_rrc(void) { { "zoneID-r14", "lte-rrc.zoneID_r14", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_0_7", HFILL }}, - { &hf_lte_rrc_threshS_RSSI_CBR_r14, - { "threshS-RSSI-CBR-r14", "lte-rrc.threshS_RSSI_CBR_r14", - FT_UINT32, BASE_CUSTOM, CF_FUNC(lte_rrc_threshS_RSSI_CBR_r14_fmt), 0, - "INTEGER_0_45", HFILL }}, { &hf_lte_rrc_poolReportId_r14, { "poolReportId-r14", "lte-rrc.poolReportId_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -109648,6 +132369,26 @@ void proto_register_lte_rrc(void) { { "restrictResourceReservationPeriod-r14", "lte-rrc.restrictResourceReservationPeriod_r14", FT_UINT32, BASE_DEC, NULL, 0, "SL_RestrictResourceReservationPeriodList_r14", HFILL }}, + { &hf_lte_rrc_sl_MinT2ValueList_r15, + { "sl-MinT2ValueList-r15", "lte-rrc.sl_MinT2ValueList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_cbr_pssch_TxConfigList_v1530, + { "cbr-pssch-TxConfigList-v1530", "lte-rrc.cbr_pssch_TxConfigList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_CBR_PPPP_TxConfigList_v1530", HFILL }}, + { &hf_lte_rrc_SL_MinT2ValueList_r15_item, + { "SL-MinT2Value-r15", "lte-rrc.SL_MinT2Value_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_priorityList_r15, + { "priorityList-r15", "lte-rrc.priorityList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_PriorityList_r13", HFILL }}, + { &hf_lte_rrc_minT2Value_r15, + { "minT2Value-r15", "lte-rrc.minT2Value_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_10_20", HFILL }}, { &hf_lte_rrc_pssch_TxConfigList_r14, { "pssch-TxConfigList-r14", "lte-rrc.pssch_TxConfigList_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -109680,10 +132421,10 @@ void proto_register_lte_rrc(void) { { "discTxResources-r12", "lte-rrc.discTxResources_r12", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_discTxResources_r12_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_135, + { &hf_lte_rrc_setup_181, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_119_vals), 0, - "T_setup_119", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_158_vals), 0, + "T_setup_158", HFILL }}, { &hf_lte_rrc_scheduled_r12_01, { "scheduled-r12", "lte-rrc.scheduled_r12_element", FT_NONE, BASE_NONE, NULL, 0, @@ -109716,10 +132457,10 @@ void proto_register_lte_rrc(void) { { "discTF-IndexList-v1260", "lte-rrc.discTF_IndexList_v1260", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_discTF_IndexList_v1260_vals), 0, "T_discTF_IndexList_v1260", HFILL }}, - { &hf_lte_rrc_setup_136, + { &hf_lte_rrc_setup_182, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_120", HFILL }}, + "T_setup_159", HFILL }}, { &hf_lte_rrc_discTF_IndexList_r12b, { "discTF-IndexList-r12b", "lte-rrc.discTF_IndexList_r12b", FT_UINT32, BASE_DEC, NULL, 0, @@ -109728,10 +132469,10 @@ void proto_register_lte_rrc(void) { { "discTxResourcesPS-r13", "lte-rrc.discTxResourcesPS_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_discTxResourcesPS_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_137, + { &hf_lte_rrc_setup_183, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_121_vals), 0, - "T_setup_121", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_160_vals), 0, + "T_setup_160", HFILL }}, { &hf_lte_rrc_scheduled_r13, { "scheduled-r13", "lte-rrc.scheduled_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -109748,10 +132489,10 @@ void proto_register_lte_rrc(void) { { "discTxInterFreqInfo-r13", "lte-rrc.discTxInterFreqInfo_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_discTxInterFreqInfo_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_138, + { &hf_lte_rrc_setup_184, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_122", HFILL }}, + "T_setup_161", HFILL }}, { &hf_lte_rrc_discTxCarrierFreq_r13, { "discTxCarrierFreq-r13", "lte-rrc.discTxCarrierFreq_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -109772,7 +132513,7 @@ void proto_register_lte_rrc(void) { { "discRxGapConfig-r13", "lte-rrc.discRxGapConfig_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_discRxGapConfig_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_139, + { &hf_lte_rrc_setup_185, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, "SL_GapConfig_r13", HFILL }}, @@ -109784,7 +132525,7 @@ void proto_register_lte_rrc(void) { { "discSysInfoToReportConfig-r13", "lte-rrc.discSysInfoToReportConfig_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_discSysInfoToReportConfig_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_140, + { &hf_lte_rrc_setup_186, { "setup", "lte-rrc.setup", FT_UINT32, BASE_DEC, NULL, 0, "SL_DiscSysInfoToReportFreqList_r13", HFILL }}, @@ -109816,10 +132557,10 @@ void proto_register_lte_rrc(void) { { "discTxResourcesPS-r13", "lte-rrc.discTxResourcesPS_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_SL_DiscTxResource_r13_vals), 0, "SL_DiscTxResource_r13", HFILL }}, - { &hf_lte_rrc_setup_141, + { &hf_lte_rrc_setup_187, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_123_vals), 0, - "T_setup_123", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_162_vals), 0, + "T_setup_162", HFILL }}, { &hf_lte_rrc_ue_Selected_r13_01, { "ue-Selected-r13", "lte-rrc.ue_Selected_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -109948,18 +132689,18 @@ void proto_register_lte_rrc(void) { { "discPeriod-v1310", "lte-rrc.discPeriod_v1310", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_discPeriod_v1310_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_142, + { &hf_lte_rrc_setup_188, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_124_vals), 0, - "T_setup_124", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_163_vals), 0, + "T_setup_163", HFILL }}, { &hf_lte_rrc_rxParamsAddNeighFreq_r13, { "rxParamsAddNeighFreq-r13", "lte-rrc.rxParamsAddNeighFreq_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rxParamsAddNeighFreq_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_143, + { &hf_lte_rrc_setup_189, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_125", HFILL }}, + "T_setup_164", HFILL }}, { &hf_lte_rrc_physCellId_r13_01, { "physCellId-r13", "lte-rrc.physCellId_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -109968,10 +132709,10 @@ void proto_register_lte_rrc(void) { { "txParamsAddNeighFreq-r13", "lte-rrc.txParamsAddNeighFreq_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_txParamsAddNeighFreq_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_144, + { &hf_lte_rrc_setup_190, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_126", HFILL }}, + "T_setup_165", HFILL }}, { &hf_lte_rrc_tdd_Config_r13, { "tdd-Config-r13", "lte-rrc.tdd_Config_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -109992,10 +132733,10 @@ void proto_register_lte_rrc(void) { { "txParamsAddNeighFreq-v1370", "lte-rrc.txParamsAddNeighFreq_v1370", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_txParamsAddNeighFreq_v1370_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_145, + { &hf_lte_rrc_setup_191, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_127", HFILL }}, + "T_setup_166", HFILL }}, { &hf_lte_rrc_freqInfo_v1370, { "freqInfo-v1370", "lte-rrc.freqInfo_v1370_element", FT_NONE, BASE_NONE, NULL, 0, @@ -110232,6 +132973,14 @@ void proto_register_lte_rrc(void) { { "parametersBelowThres-r14", "lte-rrc.parametersBelowThres_r14_element", FT_NONE, BASE_NONE, NULL, 0, "SL_PSSCH_TxParameters_r14", HFILL }}, + { &hf_lte_rrc_parametersAboveThres_v1530, + { "parametersAboveThres-v1530", "lte-rrc.parametersAboveThres_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "SL_PSSCH_TxParameters_v1530", HFILL }}, + { &hf_lte_rrc_parametersBelowThres_v1530, + { "parametersBelowThres-v1530", "lte-rrc.parametersBelowThres_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "SL_PSSCH_TxParameters_v1530", HFILL }}, { &hf_lte_rrc_minMCS_PSSCH_r14, { "minMCS-PSSCH-r14", "lte-rrc.minMCS_PSSCH_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -110256,6 +133005,10 @@ void proto_register_lte_rrc(void) { { "maxTxPower-r14", "lte-rrc.maxTxPower_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_SL_TxPower_r14_vals), 0, "SL_TxPower_r14", HFILL }}, + { &hf_lte_rrc_SL_ReliabilityList_r15_item, + { "SL-Reliability-r15", "lte-rrc.SL_Reliability_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_SL_RestrictResourceReservationPeriodList_r14_item, { "SL-RestrictResourceReservationPeriod-r14", "lte-rrc.SL_RestrictResourceReservationPeriod_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_SL_RestrictResourceReservationPeriod_r14_vals), 0, @@ -110336,6 +133089,10 @@ void proto_register_lte_rrc(void) { { "syncOffsetIndicator3-r14", "lte-rrc.syncOffsetIndicator3_r14", FT_UINT32, BASE_DEC, NULL, 0, "SL_OffsetIndicatorSync_r14", HFILL }}, + { &hf_lte_rrc_slss_TxDisabled_r15, + { "slss-TxDisabled-r15", "lte-rrc.slss_TxDisabled_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_slss_TxDisabled_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_SL_SyncConfigListNFreq_r13_item, { "SL-SyncConfigNFreq-r13", "lte-rrc.SL_SyncConfigNFreq_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -110392,6 +133149,10 @@ void proto_register_lte_rrc(void) { { "gnss-Sync-r14", "lte-rrc.gnss_Sync_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_gnss_Sync_r14_02_vals), 0, "T_gnss_Sync_r14_02", HFILL }}, + { &hf_lte_rrc_slss_TxDisabled_r15_01, + { "slss-TxDisabled-r15", "lte-rrc.slss_TxDisabled_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_slss_TxDisabled_r15_01_vals), 0, + "T_slss_TxDisabled_r15_01", HFILL }}, { &hf_lte_rrc_prb_Num_r12, { "prb-Num-r12", "lte-rrc.prb_Num_r12", FT_UINT32, BASE_DEC, NULL, 0, @@ -110504,10 +133265,10 @@ void proto_register_lte_rrc(void) { { "commTxResources-r14", "lte-rrc.commTxResources_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_commTxResources_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_146, + { &hf_lte_rrc_setup_192, { "setup", "lte-rrc.setup", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_128_vals), 0, - "T_setup_128", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_167_vals), 0, + "T_setup_167", HFILL }}, { &hf_lte_rrc_scheduled_r14, { "scheduled-r14", "lte-rrc.scheduled_r14_element", FT_NONE, BASE_NONE, NULL, 0, @@ -110552,6 +133313,38 @@ void proto_register_lte_rrc(void) { { "cbr-DedicatedTxConfigList-r14", "lte-rrc.cbr_DedicatedTxConfigList_r14_element", FT_NONE, BASE_NONE, NULL, 0, "SL_CBR_CommonTxConfigList_r14", HFILL }}, + { &hf_lte_rrc_commTxResources_v1530, + { "commTxResources-v1530", "lte-rrc.commTxResources_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_commTxResources_v1530_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_193, + { "setup", "lte-rrc.setup", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_setup_168_vals), 0, + "T_setup_168", HFILL }}, + { &hf_lte_rrc_scheduled_v1530, + { "scheduled-v1530", "lte-rrc.scheduled_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_logicalChGroupInfoList_v1530, + { "logicalChGroupInfoList-v1530", "lte-rrc.logicalChGroupInfoList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_mcs_r15, + { "mcs-r15", "lte-rrc.mcs_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_ue_Selected_v1530, + { "ue-Selected-v1530", "lte-rrc.ue_Selected_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_slss_TxMultiFreq_r15_01, + { "slss-TxMultiFreq-r15", "lte-rrc.slss_TxMultiFreq_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_slss_TxMultiFreq_r15_01_vals), 0, + "T_slss_TxMultiFreq_r15_01", HFILL }}, + { &hf_lte_rrc_LogicalChGroupInfoList_v1530_item, + { "SL-ReliabilityList-r15", "lte-rrc.SL_ReliabilityList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_SL_TxPoolToAddModListV2X_r14_item, { "SL-TxPoolToAddMod-r14", "lte-rrc.SL_TxPoolToAddMod_r14_element", FT_NONE, BASE_NONE, NULL, 0, @@ -110568,6 +133361,58 @@ void proto_register_lte_rrc(void) { { "SL-V2X-TxPoolIdentity-r14", "lte-rrc.SL_V2X_TxPoolIdentity_r14", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_SL_V2X_FreqSelectionConfigList_r15_item, + { "SL-V2X-FreqSelectionConfig-r15", "lte-rrc.SL_V2X_FreqSelectionConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_threshCBR_FreqReselection_r15, + { "threshCBR-FreqReselection-r15", "lte-rrc.threshCBR_FreqReselection_r15", + FT_UINT32, BASE_CUSTOM, CF_FUNC(lte_rrc_SL_CBR_r14_fmt), 0, + "SL_CBR_r14", HFILL }}, + { &hf_lte_rrc_threshCBR_FreqKeeping_r15, + { "threshCBR-FreqKeeping-r15", "lte-rrc.threshCBR_FreqKeeping_r15", + FT_UINT32, BASE_CUSTOM, CF_FUNC(lte_rrc_SL_CBR_r14_fmt), 0, + "SL_CBR_r14", HFILL }}, + { &hf_lte_rrc_threshSL_Reliability_r15, + { "threshSL-Reliability-r15", "lte-rrc.threshSL_Reliability_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_Reliability_r15", HFILL }}, + { &hf_lte_rrc_allowedCarrierFreqConfig_r15, + { "allowedCarrierFreqConfig-r15", "lte-rrc.allowedCarrierFreqConfig_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_PPPR_Dest_CarrierFreqList_r15", HFILL }}, + { &hf_lte_rrc_SL_PPPR_Dest_CarrierFreqList_r15_item, + { "SL-PPPR-Dest-CarrierFreq", "lte-rrc.SL_PPPR_Dest_CarrierFreq_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_destinationInfoList_r15, + { "destinationInfoList-r15", "lte-rrc.destinationInfoList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "SL_DestinationInfoList_r12", HFILL }}, + { &hf_lte_rrc_allowedCarrierFreqList_r15, + { "allowedCarrierFreqList-r15", "lte-rrc.allowedCarrierFreqList_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SL_AllowedCarrierFreqList_r15", HFILL }}, + { &hf_lte_rrc_allowedCarrierFreqSet1, + { "allowedCarrierFreqSet1", "lte-rrc.allowedCarrierFreqSet1", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9", HFILL }}, + { &hf_lte_rrc_allowedCarrierFreqSet1_item, + { "ARFCN-ValueEUTRA-r9", "lte-rrc.ARFCN_ValueEUTRA_r9", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_allowedCarrierFreqSet2, + { "allowedCarrierFreqSet2", "lte-rrc.allowedCarrierFreqSet2", + FT_UINT32, BASE_DEC, NULL, 0, + "SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9", HFILL }}, + { &hf_lte_rrc_allowedCarrierFreqSet2_item, + { "ARFCN-ValueEUTRA-r9", "lte-rrc.ARFCN_ValueEUTRA_r9", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_SL_V2X_SyncFreqList_r15_item, + { "ARFCN-ValueEUTRA-r9", "lte-rrc.ARFCN_ValueEUTRA_r9", + FT_UINT32, BASE_DEC, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_zoneLength_r14, { "zoneLength-r14", "lte-rrc.zoneLength_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_zoneLength_r14_vals), 0, @@ -110640,10 +133485,10 @@ void proto_register_lte_rrc(void) { { "reserved-r14", "lte-rrc.reserved_r14", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_27", HFILL }}, - { &hf_lte_rrc_criticalExtensions_53, + { &hf_lte_rrc_criticalExtensions_56, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_53_vals), 0, - "T_criticalExtensions_53", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_56_vals), 0, + "T_criticalExtensions_56", HFILL }}, { &hf_lte_rrc_c1_50, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_50_vals), 0, @@ -110652,10 +133497,10 @@ void proto_register_lte_rrc(void) { { "handoverPreparationInformation-r13", "lte-rrc.handoverPreparationInformation_r13_element", FT_NONE, BASE_NONE, NULL, 0, "HandoverPreparationInformation_NB_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_53, + { &hf_lte_rrc_criticalExtensionsFuture_55, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_53", HFILL }}, + "T_criticalExtensionsFuture_55", HFILL }}, { &hf_lte_rrc_ue_RadioAccessCapabilityInfo_r13, { "ue-RadioAccessCapabilityInfo-r13", "lte-rrc.ue_RadioAccessCapabilityInfo_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -110672,11 +133517,11 @@ void proto_register_lte_rrc(void) { { "as-Context-r13", "lte-rrc.as_Context_r13_element", FT_NONE, BASE_NONE, NULL, 0, "AS_Context_NB", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_242, + { &hf_lte_rrc_nonCriticalExtension_270, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "HandoverPreparationInformation_NB_v1380_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_243, + { &hf_lte_rrc_nonCriticalExtension_271, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "HandoverPreparationInformation_NB_Ext_r14_IEs", HFILL }}, @@ -110684,14 +133529,14 @@ void proto_register_lte_rrc(void) { { "ue-RadioAccessCapabilityInfoExt-r14", "lte-rrc.ue_RadioAccessCapabilityInfoExt_r14", FT_BYTES, BASE_NONE, NULL, 0, "T_ue_RadioAccessCapabilityInfoExt_r14", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_244, + { &hf_lte_rrc_nonCriticalExtension_272, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_72", HFILL }}, - { &hf_lte_rrc_criticalExtensions_54, + "T_nonCriticalExtension_79", HFILL }}, + { &hf_lte_rrc_criticalExtensions_57, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_54_vals), 0, - "T_criticalExtensions_54", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_57_vals), 0, + "T_criticalExtensions_57", HFILL }}, { &hf_lte_rrc_c1_51, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_51_vals), 0, @@ -110700,22 +133545,22 @@ void proto_register_lte_rrc(void) { { "uePagingCoverageInformation-r13", "lte-rrc.uePagingCoverageInformation_r13_element", FT_NONE, BASE_NONE, NULL, 0, "UEPagingCoverageInformation_NB_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_54, + { &hf_lte_rrc_criticalExtensionsFuture_56, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_54", HFILL }}, + "T_criticalExtensionsFuture_56", HFILL }}, { &hf_lte_rrc_npdcch_NumRepetitionPaging_r13, { "npdcch-NumRepetitionPaging-r13", "lte-rrc.npdcch_NumRepetitionPaging_r13", FT_UINT32, BASE_DEC, NULL, 0, "INTEGER_1_2048", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_245, + { &hf_lte_rrc_nonCriticalExtension_273, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_73", HFILL }}, - { &hf_lte_rrc_criticalExtensions_55, + "T_nonCriticalExtension_80", HFILL }}, + { &hf_lte_rrc_criticalExtensions_58, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_55_vals), 0, - "T_criticalExtensions_55", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_58_vals), 0, + "T_criticalExtensions_58", HFILL }}, { &hf_lte_rrc_c1_52, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_52_vals), 0, @@ -110724,19 +133569,19 @@ void proto_register_lte_rrc(void) { { "ueRadioAccessCapabilityInformation-r13", "lte-rrc.ueRadioAccessCapabilityInformation_r13_element", FT_NONE, BASE_NONE, NULL, 0, "UERadioAccessCapabilityInformation_NB_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_55, + { &hf_lte_rrc_criticalExtensionsFuture_57, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_55", HFILL }}, + "T_criticalExtensionsFuture_57", HFILL }}, { &hf_lte_rrc_ue_RadioAccessCapabilityInfo_r13_01, { "ue-RadioAccessCapabilityInfo-r13", "lte-rrc.ue_RadioAccessCapabilityInfo_r13", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_246, + { &hf_lte_rrc_nonCriticalExtension_274, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UERadioAccessCapabilityInformation_NB_v1380_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_247, + { &hf_lte_rrc_nonCriticalExtension_275, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UERadioAccessCapabilityInformation_NB_r14_IEs", HFILL }}, @@ -110744,14 +133589,14 @@ void proto_register_lte_rrc(void) { { "ue-RadioAccessCapabilityInfo-r14", "lte-rrc.ue_RadioAccessCapabilityInfo_r14", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_248, + { &hf_lte_rrc_nonCriticalExtension_276, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_74", HFILL }}, - { &hf_lte_rrc_criticalExtensions_56, + "T_nonCriticalExtension_81", HFILL }}, + { &hf_lte_rrc_criticalExtensions_59, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_56_vals), 0, - "T_criticalExtensions_56", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_59_vals), 0, + "T_criticalExtensions_59", HFILL }}, { &hf_lte_rrc_c1_53, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_53_vals), 0, @@ -110760,18 +133605,18 @@ void proto_register_lte_rrc(void) { { "ueRadioPagingInformation-r13", "lte-rrc.ueRadioPagingInformation_r13_element", FT_NONE, BASE_NONE, NULL, 0, "UERadioPagingInformation_NB_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_56, + { &hf_lte_rrc_criticalExtensionsFuture_58, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_56", HFILL }}, + "T_criticalExtensionsFuture_58", HFILL }}, { &hf_lte_rrc_ue_RadioPagingInfo_r13, { "ue-RadioPagingInfo-r13", "lte-rrc.ue_RadioPagingInfo_r13", FT_BYTES, BASE_NONE, NULL, 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_249, + { &hf_lte_rrc_nonCriticalExtension_277, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_75", HFILL }}, + "T_nonCriticalExtension_82", HFILL }}, { &hf_lte_rrc_sourceRadioResourceConfig_r13, { "sourceRadioResourceConfig-r13", "lte-rrc.sourceRadioResourceConfig_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -110813,6 +133658,10 @@ void proto_register_lte_rrc(void) { FT_NONE, BASE_NONE, NULL, 0, "BCCH_BCH_MessageType_NB", HFILL }}, { &hf_lte_rrc_message_15, + { "message", "lte-rrc.message_element", + FT_NONE, BASE_NONE, NULL, 0, + "BCCH_BCH_MessageType_TDD_NB_r15", HFILL }}, + { &hf_lte_rrc_message_16, { "message", "lte-rrc.message", FT_UINT32, BASE_DEC, VALS(lte_rrc_BCCH_DL_SCH_MessageType_NB_vals), 0, "BCCH_DL_SCH_MessageType_NB", HFILL }}, @@ -110832,7 +133681,7 @@ void proto_register_lte_rrc(void) { { "messageClassExtension", "lte-rrc.messageClassExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_messageClassExtension_10", HFILL }}, - { &hf_lte_rrc_message_16, + { &hf_lte_rrc_message_17, { "message", "lte-rrc.message", FT_UINT32, BASE_DEC, VALS(lte_rrc_PCCH_MessageType_NB_vals), 0, "PCCH_MessageType_NB", HFILL }}, @@ -110848,7 +133697,7 @@ void proto_register_lte_rrc(void) { { "messageClassExtension", "lte-rrc.messageClassExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_messageClassExtension_11", HFILL }}, - { &hf_lte_rrc_message_17, + { &hf_lte_rrc_message_18, { "message", "lte-rrc.message", FT_UINT32, BASE_DEC, VALS(lte_rrc_DL_CCCH_MessageType_NB_vals), 0, "DL_CCCH_MessageType_NB", HFILL }}, @@ -110872,11 +133721,15 @@ void proto_register_lte_rrc(void) { { "rrcConnectionSetup-r13", "lte-rrc.rrcConnectionSetup_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetup_NB", HFILL }}, + { &hf_lte_rrc_rrcEarlyDataComplete_r15_02, + { "rrcEarlyDataComplete-r15", "lte-rrc.rrcEarlyDataComplete_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RRCEarlyDataComplete_NB_r15", HFILL }}, { &hf_lte_rrc_messageClassExtension_12, { "messageClassExtension", "lte-rrc.messageClassExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_messageClassExtension_12", HFILL }}, - { &hf_lte_rrc_message_18, + { &hf_lte_rrc_message_19, { "message", "lte-rrc.message", FT_UINT32, BASE_DEC, VALS(lte_rrc_DL_DCCH_MessageType_NB_vals), 0, "DL_DCCH_MessageType_NB", HFILL }}, @@ -110912,7 +133765,7 @@ void proto_register_lte_rrc(void) { { "messageClassExtension", "lte-rrc.messageClassExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_messageClassExtension_13", HFILL }}, - { &hf_lte_rrc_message_19, + { &hf_lte_rrc_message_20, { "message", "lte-rrc.message", FT_UINT32, BASE_DEC, VALS(lte_rrc_UL_CCCH_MessageType_NB_vals), 0, "UL_CCCH_MessageType_NB", HFILL }}, @@ -110932,11 +133785,15 @@ void proto_register_lte_rrc(void) { { "rrcConnectionResumeRequest-r13", "lte-rrc.rrcConnectionResumeRequest_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionResumeRequest_NB", HFILL }}, + { &hf_lte_rrc_rrcEarlyDataRequest_r15_02, + { "rrcEarlyDataRequest-r15", "lte-rrc.rrcEarlyDataRequest_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RRCEarlyDataRequest_NB_r15", HFILL }}, { &hf_lte_rrc_messageClassExtension_14, { "messageClassExtension", "lte-rrc.messageClassExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_messageClassExtension_14", HFILL }}, - { &hf_lte_rrc_message_20, + { &hf_lte_rrc_message_21, { "message", "lte-rrc.message", FT_UINT32, BASE_DEC, VALS(lte_rrc_SC_MCCH_MessageType_NB_vals), 0, "SC_MCCH_MessageType_NB", HFILL }}, @@ -110952,7 +133809,7 @@ void proto_register_lte_rrc(void) { { "messageClassExtension", "lte-rrc.messageClassExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_messageClassExtension_15", HFILL }}, - { &hf_lte_rrc_message_21, + { &hf_lte_rrc_message_22, { "message", "lte-rrc.message", FT_UINT32, BASE_DEC, VALS(lte_rrc_UL_DCCH_MessageType_NB_vals), 0, "UL_DCCH_MessageType_NB", HFILL }}, @@ -111000,10 +133857,10 @@ void proto_register_lte_rrc(void) { { "messageClassExtension", "lte-rrc.messageClassExtension_element", FT_NONE, BASE_NONE, NULL, 0, "T_messageClassExtension_16", HFILL }}, - { &hf_lte_rrc_criticalExtensions_57, + { &hf_lte_rrc_criticalExtensions_60, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_57_vals), 0, - "T_criticalExtensions_57", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_60_vals), 0, + "T_criticalExtensions_60", HFILL }}, { &hf_lte_rrc_c1_61, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_61_vals), 0, @@ -111012,14 +133869,14 @@ void proto_register_lte_rrc(void) { { "dlInformationTransfer-r13", "lte-rrc.dlInformationTransfer_r13_element", FT_NONE, BASE_NONE, NULL, 0, "DLInformationTransfer_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_57, + { &hf_lte_rrc_criticalExtensionsFuture_59, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_57", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_250, + "T_criticalExtensionsFuture_59", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_278, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_76", HFILL }}, + "T_nonCriticalExtension_83", HFILL }}, { &hf_lte_rrc_systemFrameNumber_MSB_r13, { "systemFrameNumber-MSB-r13", "lte-rrc.systemFrameNumber_MSB_r13", FT_BYTES, BASE_NONE, NULL, 0, @@ -111060,10 +133917,14 @@ void proto_register_lte_rrc(void) { { "standalone-r13", "lte-rrc.standalone_r13_element", FT_NONE, BASE_NONE, NULL, 0, "Standalone_NB_r13", HFILL }}, + { &hf_lte_rrc_additionalTransmissionSIB1_r15, + { "additionalTransmissionSIB1-r15", "lte-rrc.additionalTransmissionSIB1_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, { &hf_lte_rrc_spare_05, { "spare", "lte-rrc.spare", FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_11", HFILL }}, + "BIT_STRING_SIZE_10", HFILL }}, { &hf_lte_rrc_rasterOffset_r13, { "rasterOffset-r13", "lte-rrc.rasterOffset_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_ChannelRasterOffset_NB_r13_vals), 0, @@ -111080,6 +133941,114 @@ void proto_register_lte_rrc(void) { { "eutra-NumCRS-Ports-r13", "lte-rrc.eutra_NumCRS_Ports_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_eutra_NumCRS_Ports_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_spare_07, + { "spare", "lte-rrc.spare", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_5", HFILL }}, + { &hf_lte_rrc_systemFrameNumber_MSB_r15, + { "systemFrameNumber-MSB-r15", "lte-rrc.systemFrameNumber_MSB_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_4", HFILL }}, + { &hf_lte_rrc_hyperSFN_LSB_r15, + { "hyperSFN-LSB-r15", "lte-rrc.hyperSFN_LSB_r15", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_2", HFILL }}, + { &hf_lte_rrc_schedulingInfoSIB1_r15, + { "schedulingInfoSIB1-r15", "lte-rrc.schedulingInfoSIB1_r15", + FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_schedulingInfoSIB1_NB_r13_vals_ext, 0, + "INTEGER_0_15", HFILL }}, + { &hf_lte_rrc_systemInfoValueTag_r15, + { "systemInfoValueTag-r15", "lte-rrc.systemInfoValueTag_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_ab_Enabled_r15, + { "ab-Enabled-r15", "lte-rrc.ab_Enabled_r15", + FT_BOOLEAN, BASE_NONE, NULL, 0, + "BOOLEAN", HFILL }}, + { &hf_lte_rrc_operationModeInfo_r15, + { "operationModeInfo-r15", "lte-rrc.operationModeInfo_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_operationModeInfo_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_inband_SamePCI_r15, + { "inband-SamePCI-r15", "lte-rrc.inband_SamePCI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "Inband_SamePCI_TDD_NB_r15", HFILL }}, + { &hf_lte_rrc_inband_DifferentPCI_r15, + { "inband-DifferentPCI-r15", "lte-rrc.inband_DifferentPCI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "Inband_DifferentPCI_TDD_NB_r15", HFILL }}, + { &hf_lte_rrc_guardband_r15, + { "guardband-r15", "lte-rrc.guardband_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "GuardbandTDD_NB_r15", HFILL }}, + { &hf_lte_rrc_standalone_r15, + { "standalone-r15", "lte-rrc.standalone_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "StandaloneTDD_NB_r15", HFILL }}, + { &hf_lte_rrc_sib1_CarrierInfo_r15, + { "sib1-CarrierInfo-r15", "lte-rrc.sib1_CarrierInfo_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sib1_CarrierInfo_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_spare_08, + { "spare", "lte-rrc.spare", + FT_BYTES, BASE_NONE, NULL, 0, + "BIT_STRING_SIZE_9", HFILL }}, + { &hf_lte_rrc_rasterOffset_r15, + { "rasterOffset-r15", "lte-rrc.rasterOffset_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_ChannelRasterOffset_NB_r13_vals), 0, + "ChannelRasterOffset_NB_r13", HFILL }}, + { &hf_lte_rrc_sib_GuardbandInfo_r15, + { "sib-GuardbandInfo-r15", "lte-rrc.sib_GuardbandInfo_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sib_GuardbandInfo_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sib_GuardbandAnchor_r15, + { "sib-GuardbandAnchor-r15", "lte-rrc.sib_GuardbandAnchor_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SIB_GuardbandAnchorTDD_NB_r15", HFILL }}, + { &hf_lte_rrc_sib_GuardbandGuardband_r15, + { "sib-GuardbandGuardband-r15", "lte-rrc.sib_GuardbandGuardband_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SIB_GuardbandGuardbandTDD_NB_r15", HFILL }}, + { &hf_lte_rrc_sib_GuardbandInbandSamePCI_r15, + { "sib-GuardbandInbandSamePCI-r15", "lte-rrc.sib_GuardbandInbandSamePCI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SIB_GuardbandInbandSamePCI_TDD_NB_r15", HFILL }}, + { &hf_lte_rrc_sib_GuardbandinbandDiffPCI_r15, + { "sib-GuardbandinbandDiffPCI-r15", "lte-rrc.sib_GuardbandinbandDiffPCI_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SIB_GuardbandInbandDiffPCI_TDD_NB_r15", HFILL }}, + { &hf_lte_rrc_eutra_Bandwitdh_r15, + { "eutra-Bandwitdh-r15", "lte-rrc.eutra_Bandwitdh_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_eutra_Bandwitdh_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_eutra_CRS_SequenceInfo_r15, + { "eutra-CRS-SequenceInfo-r15", "lte-rrc.eutra_CRS_SequenceInfo_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_31", HFILL }}, + { &hf_lte_rrc_sib_InbandLocation_r15, + { "sib-InbandLocation-r15", "lte-rrc.sib_InbandLocation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sib_InbandLocation_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_eutra_NumCRS_Ports_r15, + { "eutra-NumCRS-Ports-r15", "lte-rrc.eutra_NumCRS_Ports_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_eutra_NumCRS_Ports_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sib_InbandLocation_r15_01, + { "sib-InbandLocation-r15", "lte-rrc.sib_InbandLocation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sib_InbandLocation_r15_01_vals), 0, + "T_sib_InbandLocation_r15_01", HFILL }}, + { &hf_lte_rrc_sib_StandaloneLocation_r15, + { "sib-StandaloneLocation-r15", "lte-rrc.sib_StandaloneLocation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sib_StandaloneLocation_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sib_GuardbandGuardbandLocation_r15, + { "sib-GuardbandGuardbandLocation-r15", "lte-rrc.sib_GuardbandGuardbandLocation_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sib_GuardbandGuardbandLocation_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sib_EUTRA_NumCRS_Ports_r15, + { "sib-EUTRA-NumCRS-Ports-r15", "lte-rrc.sib_EUTRA_NumCRS_Ports_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sib_EUTRA_NumCRS_Ports_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_pagingRecordList_r13, { "pagingRecordList-r13", "lte-rrc.pagingRecordList_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -111092,10 +134061,10 @@ void proto_register_lte_rrc(void) { { "systemInfoModification-eDRX-r13", "lte-rrc.systemInfoModification_eDRX_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_systemInfoModification_eDRX_r13_01_vals), 0, "T_systemInfoModification_eDRX_r13_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_251, + { &hf_lte_rrc_nonCriticalExtension_279, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_77", HFILL }}, + "T_nonCriticalExtension_84", HFILL }}, { &hf_lte_rrc_PagingRecordList_NB_r13_item, { "PagingRecord-NB-r13", "lte-rrc.PagingRecord_NB_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -111104,10 +134073,10 @@ void proto_register_lte_rrc(void) { { "ue-Identity-r13", "lte-rrc.ue_Identity_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_PagingUE_Identity_vals), 0, "PagingUE_Identity", HFILL }}, - { &hf_lte_rrc_criticalExtensions_58, + { &hf_lte_rrc_criticalExtensions_61, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_58_vals), 0, - "T_criticalExtensions_58", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_61_vals), 0, + "T_criticalExtensions_61", HFILL }}, { &hf_lte_rrc_c1_62, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_62_vals), 0, @@ -111116,10 +134085,10 @@ void proto_register_lte_rrc(void) { { "rrcConnectionReconfiguration-r13", "lte-rrc.rrcConnectionReconfiguration_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfiguration_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_58, + { &hf_lte_rrc_criticalExtensionsFuture_60, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_58", HFILL }}, + "T_criticalExtensionsFuture_60", HFILL }}, { &hf_lte_rrc_dedicatedInfoNASList_r13, { "dedicatedInfoNASList-r13", "lte-rrc.dedicatedInfoNASList_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -111136,30 +134105,30 @@ void proto_register_lte_rrc(void) { { "fullConfig-r13", "lte-rrc.fullConfig_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_fullConfig_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_252, + { &hf_lte_rrc_nonCriticalExtension_280, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_78", HFILL }}, - { &hf_lte_rrc_criticalExtensions_59, + "T_nonCriticalExtension_85", HFILL }}, + { &hf_lte_rrc_criticalExtensions_62, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_59_vals), 0, - "T_criticalExtensions_59", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_62_vals), 0, + "T_criticalExtensions_62", HFILL }}, { &hf_lte_rrc_rrcConnectionReconfigurationComplete_r13_01, { "rrcConnectionReconfigurationComplete-r13", "lte-rrc.rrcConnectionReconfigurationComplete_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReconfigurationComplete_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_59, + { &hf_lte_rrc_criticalExtensionsFuture_61, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_59", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_253, + "T_criticalExtensionsFuture_61", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_281, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_79", HFILL }}, - { &hf_lte_rrc_criticalExtensions_60, + "T_nonCriticalExtension_86", HFILL }}, + { &hf_lte_rrc_criticalExtensions_63, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_60_vals), 0, - "T_criticalExtensions_60", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_63_vals), 0, + "T_criticalExtensions_63", HFILL }}, { &hf_lte_rrc_c1_63, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_63_vals), 0, @@ -111168,11 +134137,11 @@ void proto_register_lte_rrc(void) { { "rrcConnectionReestablishment-r13", "lte-rrc.rrcConnectionReestablishment_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishment_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_60, + { &hf_lte_rrc_criticalExtensionsFuture_62, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_60", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_254, + "T_criticalExtensionsFuture_62", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_282, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishment_NB_v1430_IEs", HFILL }}, @@ -111180,23 +134149,23 @@ void proto_register_lte_rrc(void) { { "dl-NAS-MAC", "lte-rrc.dl_NAS_MAC", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_16", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_255, + { &hf_lte_rrc_nonCriticalExtension_283, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_80", HFILL }}, - { &hf_lte_rrc_criticalExtensions_61, + "T_nonCriticalExtension_87", HFILL }}, + { &hf_lte_rrc_criticalExtensions_64, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_61_vals), 0, - "T_criticalExtensions_61", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_64_vals), 0, + "T_criticalExtensions_64", HFILL }}, { &hf_lte_rrc_rrcConnectionReestablishmentComplete_r13_01, { "rrcConnectionReestablishmentComplete-r13", "lte-rrc.rrcConnectionReestablishmentComplete_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentComplete_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_61, + { &hf_lte_rrc_criticalExtensionsFuture_63, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_61", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_256, + "T_criticalExtensionsFuture_63", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_284, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentComplete_NB_v1470_IEs", HFILL }}, @@ -111204,14 +134173,14 @@ void proto_register_lte_rrc(void) { { "measResultServCell-r14", "lte-rrc.measResultServCell_r14_element", FT_NONE, BASE_NONE, NULL, 0, "MeasResultServCell_NB_r14", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_257, + { &hf_lte_rrc_nonCriticalExtension_285, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_81", HFILL }}, - { &hf_lte_rrc_criticalExtensions_62, + "T_nonCriticalExtension_88", HFILL }}, + { &hf_lte_rrc_criticalExtensions_65, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_62_vals), 0, - "T_criticalExtensions_62", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_65_vals), 0, + "T_criticalExtensions_65", HFILL }}, { &hf_lte_rrc_rrcConnectionReestablishmentRequest_r13_01, { "rrcConnectionReestablishmentRequest-r13", "lte-rrc.rrcConnectionReestablishmentRequest_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -111224,10 +134193,10 @@ void proto_register_lte_rrc(void) { { "rrcConnectionReestablishmentRequest-r14", "lte-rrc.rrcConnectionReestablishmentRequest_r14_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReestablishmentRequest_NB_r14_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_62, + { &hf_lte_rrc_criticalExtensionsFuture_64, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_62", HFILL }}, + "T_criticalExtensionsFuture_64", HFILL }}, { &hf_lte_rrc_ue_Identity_r13_01, { "ue-Identity-r13", "lte-rrc.ue_Identity_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -111244,7 +134213,7 @@ void proto_register_lte_rrc(void) { { "earlyContentionResolution-r14", "lte-rrc.earlyContentionResolution_r14", FT_BOOLEAN, BASE_NONE, NULL, 0, "BOOLEAN", HFILL }}, - { &hf_lte_rrc_spare_07, + { &hf_lte_rrc_spare_09, { "spare", "lte-rrc.spare", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_20", HFILL }}, @@ -111272,10 +134241,10 @@ void proto_register_lte_rrc(void) { { "ul-NAS-Count-r14", "lte-rrc.ul_NAS_Count_r14", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_5", HFILL }}, - { &hf_lte_rrc_criticalExtensions_63, + { &hf_lte_rrc_criticalExtensions_66, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_63_vals), 0, - "T_criticalExtensions_63", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_66_vals), 0, + "T_criticalExtensions_66", HFILL }}, { &hf_lte_rrc_c1_64, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_64_vals), 0, @@ -111284,10 +134253,10 @@ void proto_register_lte_rrc(void) { { "rrcConnectionReject-r13", "lte-rrc.rrcConnectionReject_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionReject_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_63, + { &hf_lte_rrc_criticalExtensionsFuture_65, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_63", HFILL }}, + "T_criticalExtensionsFuture_65", HFILL }}, { &hf_lte_rrc_extendedWaitTime_r13, { "extendedWaitTime-r13", "lte-rrc.extendedWaitTime_r13", FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0, @@ -111296,14 +134265,14 @@ void proto_register_lte_rrc(void) { { "rrc-SuspendIndication-r13", "lte-rrc.rrc_SuspendIndication_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rrc_SuspendIndication_r13_01_vals), 0, "T_rrc_SuspendIndication_r13_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_258, + { &hf_lte_rrc_nonCriticalExtension_286, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_82", HFILL }}, - { &hf_lte_rrc_criticalExtensions_64, + "T_nonCriticalExtension_89", HFILL }}, + { &hf_lte_rrc_criticalExtensions_67, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_64_vals), 0, - "T_criticalExtensions_64", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_67_vals), 0, + "T_criticalExtensions_67", HFILL }}, { &hf_lte_rrc_c1_65, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_65_vals), 0, @@ -111312,10 +134281,10 @@ void proto_register_lte_rrc(void) { { "rrcConnectionRelease-r13", "lte-rrc.rrcConnectionRelease_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionRelease_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_64, + { &hf_lte_rrc_criticalExtensionsFuture_66, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_64", HFILL }}, + "T_criticalExtensionsFuture_66", HFILL }}, { &hf_lte_rrc_releaseCause_r13, { "releaseCause-r13", "lte-rrc.releaseCause_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_ReleaseCause_NB_r13_vals), 0, @@ -111324,7 +134293,7 @@ void proto_register_lte_rrc(void) { { "redirectedCarrierInfo-r13", "lte-rrc.redirectedCarrierInfo_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RedirectedCarrierInfo_NB_r13", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_259, + { &hf_lte_rrc_nonCriticalExtension_287, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionRelease_NB_v1430_IEs", HFILL }}, @@ -111336,10 +134305,18 @@ void proto_register_lte_rrc(void) { { "extendedWaitTime-CPdata-r14", "lte-rrc.extendedWaitTime_CPdata_r14", FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_seconds, 0, "INTEGER_1_1800", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_260, + { &hf_lte_rrc_nonCriticalExtension_288, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_83", HFILL }}, + "RRCConnectionRelease_NB_v1530_IEs", HFILL }}, + { &hf_lte_rrc_drb_ContinueROHC_r15_01, + { "drb-ContinueROHC-r15", "lte-rrc.drb_ContinueROHC_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_drb_ContinueROHC_r15_01_vals), 0, + "T_drb_ContinueROHC_r15_01", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_289, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_90", HFILL }}, { &hf_lte_rrc_redirectedCarrierOffsetDedicated_r14, { "redirectedCarrierOffsetDedicated-r14", "lte-rrc.redirectedCarrierOffsetDedicated_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_redirectedCarrierOffsetDedicated_r14_vals), 0, @@ -111348,18 +134325,18 @@ void proto_register_lte_rrc(void) { { "t322-r14", "lte-rrc.t322_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t322_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_criticalExtensions_65, + { &hf_lte_rrc_criticalExtensions_68, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_65_vals), 0, - "T_criticalExtensions_65", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_68_vals), 0, + "T_criticalExtensions_68", HFILL }}, { &hf_lte_rrc_rrcConnectionRequest_r13_01, { "rrcConnectionRequest-r13", "lte-rrc.rrcConnectionRequest_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionRequest_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_65, + { &hf_lte_rrc_criticalExtensionsFuture_67, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_65", HFILL }}, + "T_criticalExtensionsFuture_67", HFILL }}, { &hf_lte_rrc_ue_Identity_r13_02, { "ue-Identity-r13", "lte-rrc.ue_Identity_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_InitialUE_Identity_vals), 0, @@ -111376,14 +134353,14 @@ void proto_register_lte_rrc(void) { { "multiCarrierSupport-r13", "lte-rrc.multiCarrierSupport_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_multiCarrierSupport_r13_vals), 0, "T_multiCarrierSupport_r13", HFILL }}, - { &hf_lte_rrc_spare_08, + { &hf_lte_rrc_spare_10, { "spare", "lte-rrc.spare", FT_BYTES, BASE_NONE, NULL, 0, "BIT_STRING_SIZE_17", HFILL }}, - { &hf_lte_rrc_criticalExtensions_66, + { &hf_lte_rrc_criticalExtensions_69, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_66_vals), 0, - "T_criticalExtensions_66", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_69_vals), 0, + "T_criticalExtensions_69", HFILL }}, { &hf_lte_rrc_c1_66, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_66_vals), 0, @@ -111392,50 +134369,50 @@ void proto_register_lte_rrc(void) { { "rrcConnectionResume-r13", "lte-rrc.rrcConnectionResume_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionResume_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_66, + { &hf_lte_rrc_criticalExtensionsFuture_68, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_66", HFILL }}, + "T_criticalExtensionsFuture_68", HFILL }}, { &hf_lte_rrc_drb_ContinueROHC_r13_01, { "drb-ContinueROHC-r13", "lte-rrc.drb_ContinueROHC_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_drb_ContinueROHC_r13_01_vals), 0, "T_drb_ContinueROHC_r13_01", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_261, + { &hf_lte_rrc_nonCriticalExtension_290, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_84", HFILL }}, - { &hf_lte_rrc_criticalExtensions_67, + "T_nonCriticalExtension_91", HFILL }}, + { &hf_lte_rrc_criticalExtensions_70, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_67_vals), 0, - "T_criticalExtensions_67", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_70_vals), 0, + "T_criticalExtensions_70", HFILL }}, { &hf_lte_rrc_rrcConnectionResumeComplete_r13_03, { "rrcConnectionResumeComplete-r13", "lte-rrc.rrcConnectionResumeComplete_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionResumeComplete_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_67, + { &hf_lte_rrc_criticalExtensionsFuture_69, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_67", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_262, + "T_criticalExtensionsFuture_69", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_291, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionResumeComplete_NB_v1470_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_263, + { &hf_lte_rrc_nonCriticalExtension_292, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_85", HFILL }}, - { &hf_lte_rrc_criticalExtensions_68, + "T_nonCriticalExtension_92", HFILL }}, + { &hf_lte_rrc_criticalExtensions_71, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_68_vals), 0, - "T_criticalExtensions_68", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_71_vals), 0, + "T_criticalExtensions_71", HFILL }}, { &hf_lte_rrc_rrcConnectionResumeRequest_r13_03, { "rrcConnectionResumeRequest-r13", "lte-rrc.rrcConnectionResumeRequest_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionResumeRequest_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_68, + { &hf_lte_rrc_criticalExtensionsFuture_70, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_68", HFILL }}, + "T_criticalExtensionsFuture_70", HFILL }}, { &hf_lte_rrc_shortResumeMAC_I_r13_01, { "shortResumeMAC-I-r13", "lte-rrc.shortResumeMAC_I_r13", FT_BYTES, BASE_NONE, NULL, 0, @@ -111444,14 +134421,10 @@ void proto_register_lte_rrc(void) { { "resumeCause-r13", "lte-rrc.resumeCause_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_EstablishmentCause_NB_r13_vals), 0, "EstablishmentCause_NB_r13", HFILL }}, - { &hf_lte_rrc_spare_09, - { "spare", "lte-rrc.spare", - FT_BYTES, BASE_NONE, NULL, 0, - "BIT_STRING_SIZE_4", HFILL }}, - { &hf_lte_rrc_criticalExtensions_69, + { &hf_lte_rrc_criticalExtensions_72, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_69_vals), 0, - "T_criticalExtensions_69", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_72_vals), 0, + "T_criticalExtensions_72", HFILL }}, { &hf_lte_rrc_c1_67, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_67_vals), 0, @@ -111460,26 +134433,26 @@ void proto_register_lte_rrc(void) { { "rrcConnectionSetup-r13", "lte-rrc.rrcConnectionSetup_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetup_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_69, + { &hf_lte_rrc_criticalExtensionsFuture_71, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_69", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_264, + "T_criticalExtensionsFuture_71", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_293, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_86", HFILL }}, - { &hf_lte_rrc_criticalExtensions_70, + "T_nonCriticalExtension_93", HFILL }}, + { &hf_lte_rrc_criticalExtensions_73, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_70_vals), 0, - "T_criticalExtensions_70", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_73_vals), 0, + "T_criticalExtensions_73", HFILL }}, { &hf_lte_rrc_rrcConnectionSetupComplete_r13_01, { "rrcConnectionSetupComplete-r13", "lte-rrc.rrcConnectionSetupComplete_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetupComplete_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_70, + { &hf_lte_rrc_criticalExtensionsFuture_72, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_70", HFILL }}, + "T_criticalExtensionsFuture_72", HFILL }}, { &hf_lte_rrc_registeredMME_r13, { "registeredMME-r13", "lte-rrc.registeredMME_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -111492,7 +134465,7 @@ void proto_register_lte_rrc(void) { { "up-CIoT-EPS-Optimisation-r13", "lte-rrc.up_CIoT_EPS_Optimisation_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_up_CIoT_EPS_Optimisation_r13_02_vals), 0, "T_up_CIoT_EPS_Optimisation_r13_02", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_265, + { &hf_lte_rrc_nonCriticalExtension_294, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetupComplete_NB_v1430_IEs", HFILL }}, @@ -111500,14 +134473,62 @@ void proto_register_lte_rrc(void) { { "gummei-Type-r14", "lte-rrc.gummei_Type_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_gummei_Type_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_266, + { &hf_lte_rrc_nonCriticalExtension_295, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "RRCConnectionSetupComplete_NB_v1470_IEs", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_267, + { &hf_lte_rrc_nonCriticalExtension_296, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_87", HFILL }}, + "T_nonCriticalExtension_94", HFILL }}, + { &hf_lte_rrc_criticalExtensions_74, + { "criticalExtensions", "lte-rrc.criticalExtensions", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_74_vals), 0, + "T_criticalExtensions_74", HFILL }}, + { &hf_lte_rrc_rrcEarlyDataComplete_r15_03, + { "rrcEarlyDataComplete-r15", "lte-rrc.rrcEarlyDataComplete_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RRCEarlyDataComplete_NB_r15_IEs", HFILL }}, + { &hf_lte_rrc_criticalExtensionsFuture_73, + { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_criticalExtensionsFuture_73", HFILL }}, + { &hf_lte_rrc_redirectedCarrierInfo_r15_01, + { "redirectedCarrierInfo-r15", "lte-rrc.redirectedCarrierInfo_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RedirectedCarrierInfo_NB_r13", HFILL }}, + { &hf_lte_rrc_redirectedCarrierInfoExt_r15, + { "redirectedCarrierInfoExt-r15", "lte-rrc.redirectedCarrierInfoExt_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RedirectedCarrierInfo_NB_v1430", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_297, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_95", HFILL }}, + { &hf_lte_rrc_criticalExtensions_75, + { "criticalExtensions", "lte-rrc.criticalExtensions", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_75_vals), 0, + "T_criticalExtensions_75", HFILL }}, + { &hf_lte_rrc_rrcEarlyDataRequest_r15_03, + { "rrcEarlyDataRequest-r15", "lte-rrc.rrcEarlyDataRequest_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RRCEarlyDataRequest_NB_r15_IEs", HFILL }}, + { &hf_lte_rrc_criticalExtensionsFuture_74, + { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_criticalExtensionsFuture_74", HFILL }}, + { &hf_lte_rrc_establishmentCause_r15_01, + { "establishmentCause-r15", "lte-rrc.establishmentCause_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_establishmentCause_r15_01_vals), 0, + "T_establishmentCause_r15_01", HFILL }}, + { &hf_lte_rrc_cqi_NPDCCH_r15, + { "cqi-NPDCCH-r15", "lte-rrc.cqi_NPDCCH_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_CQI_NPDCCH_NB_r14_vals), 0, + "CQI_NPDCCH_NB_r14", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_298, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_96", HFILL }}, { &hf_lte_rrc_sc_mtch_InfoList_r14_01, { "sc-mtch-InfoList-r14", "lte-rrc.sc_mtch_InfoList_r14", FT_UINT32, BASE_DEC, NULL, 0, @@ -111516,22 +134537,22 @@ void proto_register_lte_rrc(void) { { "scptm-NeighbourCellList-r14", "lte-rrc.scptm_NeighbourCellList_r14", FT_UINT32, BASE_DEC, NULL, 0, "SCPTM_NeighbourCellList_NB_r14", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_268, + { &hf_lte_rrc_nonCriticalExtension_299, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_88", HFILL }}, - { &hf_lte_rrc_criticalExtensions_71, + "T_nonCriticalExtension_97", HFILL }}, + { &hf_lte_rrc_criticalExtensions_76, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_71_vals), 0, - "T_criticalExtensions_71", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_76_vals), 0, + "T_criticalExtensions_76", HFILL }}, { &hf_lte_rrc_systemInformation_r13_01, { "systemInformation-r13", "lte-rrc.systemInformation_r13_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformation_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_71, + { &hf_lte_rrc_criticalExtensionsFuture_75, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_71", HFILL }}, + "T_criticalExtensionsFuture_75", HFILL }}, { &hf_lte_rrc_sib_TypeAndInfo_r13, { "sib-TypeAndInfo-r13", "lte-rrc.sib_TypeAndInfo_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -111576,10 +134597,14 @@ void proto_register_lte_rrc(void) { { "sib22-v1430", "lte-rrc.sib22_v1430_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType22_NB_r14", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_269, + { &hf_lte_rrc_sib23_v1530, + { "sib23-v1530", "lte-rrc.sib23_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "SystemInformationBlockType23_NB_r15", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_300, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_89", HFILL }}, + "T_nonCriticalExtension_98", HFILL }}, { &hf_lte_rrc_hyperSFN_MSB_r13, { "hyperSFN-MSB-r13", "lte-rrc.hyperSFN_MSB_r13", FT_BYTES, BASE_NONE, NULL, 0, @@ -111656,7 +134681,7 @@ void proto_register_lte_rrc(void) { { "systemInfoValueTagList-r13", "lte-rrc.systemInfoValueTagList_r13", FT_UINT32, BASE_DEC, NULL, 0, "SystemInfoValueTagList_NB_r13", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_270, + { &hf_lte_rrc_nonCriticalExtension_301, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_NB_v1350", HFILL }}, @@ -111664,7 +134689,7 @@ void proto_register_lte_rrc(void) { { "cellSelectionInfo-v1350", "lte-rrc.cellSelectionInfo_v1350_element", FT_NONE, BASE_NONE, NULL, 0, "CellSelectionInfo_NB_v1350", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_271, + { &hf_lte_rrc_nonCriticalExtension_302, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_NB_v1430", HFILL }}, @@ -111672,7 +134697,7 @@ void proto_register_lte_rrc(void) { { "cellSelectionInfo-v1430", "lte-rrc.cellSelectionInfo_v1430_element", FT_NONE, BASE_NONE, NULL, 0, "CellSelectionInfo_NB_v1430", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_272, + { &hf_lte_rrc_nonCriticalExtension_303, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "SystemInformationBlockType1_NB_v1450", HFILL }}, @@ -111680,10 +134705,34 @@ void proto_register_lte_rrc(void) { { "nrs-CRS-PowerOffset-v1450", "lte-rrc.nrs_CRS_PowerOffset_v1450", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nrs_CRS_PowerOffset_v1450_vals), 0, "T_nrs_CRS_PowerOffset_v1450", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_273, + { &hf_lte_rrc_nonCriticalExtension_304, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_90", HFILL }}, + "SystemInformationBlockType1_NB_v1530", HFILL }}, + { &hf_lte_rrc_tdd_Parameters_r15, + { "tdd-Parameters-r15", "lte-rrc.tdd_Parameters_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_tdd_Config_r15, + { "tdd-Config-r15", "lte-rrc.tdd_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "TDD_Config_NB_r15", HFILL }}, + { &hf_lte_rrc_tdd_SI_CarrierInfo_r15, + { "tdd-SI-CarrierInfo-r15", "lte-rrc.tdd_SI_CarrierInfo_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_tdd_SI_CarrierInfo_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_tdd_SI_SubframesBitmap_r15, + { "tdd-SI-SubframesBitmap-r15", "lte-rrc.tdd_SI_SubframesBitmap_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_DL_Bitmap_NB_r13_vals), 0, + "DL_Bitmap_NB_r13", HFILL }}, + { &hf_lte_rrc_schedulingInfoList_v1530, + { "schedulingInfoList-v1530", "lte-rrc.schedulingInfoList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "SchedulingInfoList_NB_v1530", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_305, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_99", HFILL }}, { &hf_lte_rrc_PLMN_IdentityList_NB_r13_item, { "PLMN-IdentityInfo-NB-r13", "lte-rrc.PLMN_IdentityInfo_NB_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -111704,6 +134753,10 @@ void proto_register_lte_rrc(void) { { "SchedulingInfo-NB-r13", "lte-rrc.SchedulingInfo_NB_r13_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_SchedulingInfoList_NB_v1530_item, + { "SchedulingInfo-NB-v1530", "lte-rrc.SchedulingInfo_NB_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_si_Periodicity_r13, { "si-Periodicity-r13", "lte-rrc.si_Periodicity_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_si_Periodicity_r13_vals), 0, @@ -111720,6 +134773,10 @@ void proto_register_lte_rrc(void) { { "si-TB-r13", "lte-rrc.si_TB_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_si_TB_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_sib_MappingInfo_v1530, + { "sib-MappingInfo-v1530", "lte-rrc.sib_MappingInfo_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "SIB_MappingInfo_NB_v1530", HFILL }}, { &hf_lte_rrc_SystemInfoValueTagList_NB_r13_item, { "SystemInfoValueTagSI-r13", "lte-rrc.SystemInfoValueTagSI_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -111728,6 +134785,10 @@ void proto_register_lte_rrc(void) { { "SIB-Type-NB-r13", "lte-rrc.SIB_Type_NB_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_SIB_Type_NB_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_SIB_MappingInfo_NB_v1530_item, + { "SIB-Type-NB-v1530", "lte-rrc.SIB_Type_NB_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SIB_Type_NB_v1530_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_delta_RxLevMin_v1350, { "delta-RxLevMin-v1350", "lte-rrc.delta_RxLevMin_v1350", FT_INT32, BASE_DEC, VALS(lte_rrc_delta_RxLevMin_vals), 0, @@ -111740,10 +134801,10 @@ void proto_register_lte_rrc(void) { { "ce-authorisationOffset-r14", "lte-rrc.ce_authorisationOffset_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_authorisationOffset_r14_vals), 0, "T_ce_authorisationOffset_r14", HFILL }}, - { &hf_lte_rrc_criticalExtensions_72, + { &hf_lte_rrc_criticalExtensions_77, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_72_vals), 0, - "T_criticalExtensions_72", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_77_vals), 0, + "T_criticalExtensions_77", HFILL }}, { &hf_lte_rrc_c1_68, { "c1", "lte-rrc.c1", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_c1_68_vals), 0, @@ -111752,26 +134813,26 @@ void proto_register_lte_rrc(void) { { "ueCapabilityEnquiry-r13", "lte-rrc.ueCapabilityEnquiry_r13_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityEnquiry_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_72, + { &hf_lte_rrc_criticalExtensionsFuture_76, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_72", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_274, + "T_criticalExtensionsFuture_76", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_306, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_91", HFILL }}, - { &hf_lte_rrc_criticalExtensions_73, + "T_nonCriticalExtension_100", HFILL }}, + { &hf_lte_rrc_criticalExtensions_78, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_73_vals), 0, - "T_criticalExtensions_73", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_78_vals), 0, + "T_criticalExtensions_78", HFILL }}, { &hf_lte_rrc_ueCapabilityInformation_r13_01, { "ueCapabilityInformation-r13", "lte-rrc.ueCapabilityInformation_r13_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityInformation_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_73, + { &hf_lte_rrc_criticalExtensionsFuture_77, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_73", HFILL }}, + "T_criticalExtensionsFuture_77", HFILL }}, { &hf_lte_rrc_ue_Capability_r13, { "ue-Capability-r13", "lte-rrc.ue_Capability_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -111780,7 +134841,7 @@ void proto_register_lte_rrc(void) { { "ue-RadioPagingInfo-r13", "lte-rrc.ue_RadioPagingInfo_r13_element", FT_NONE, BASE_NONE, NULL, 0, "UE_RadioPagingInfo_NB_r13", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_275, + { &hf_lte_rrc_nonCriticalExtension_307, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UECapabilityInformation_NB_Ext_r14_IEs", HFILL }}, @@ -111788,26 +134849,26 @@ void proto_register_lte_rrc(void) { { "ue-Capability-ContainerExt-r14", "lte-rrc.ue_Capability_ContainerExt_r14", FT_BYTES, BASE_NONE, NULL, 0, "T_ue_Capability_ContainerExt_r14", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_276, + { &hf_lte_rrc_nonCriticalExtension_308, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_92", HFILL }}, - { &hf_lte_rrc_criticalExtensions_74, + "T_nonCriticalExtension_101", HFILL }}, + { &hf_lte_rrc_criticalExtensions_79, { "criticalExtensions", "lte-rrc.criticalExtensions", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_74_vals), 0, - "T_criticalExtensions_74", HFILL }}, + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_criticalExtensions_79_vals), 0, + "T_criticalExtensions_79", HFILL }}, { &hf_lte_rrc_ulInformationTransfer_r13_01, { "ulInformationTransfer-r13", "lte-rrc.ulInformationTransfer_r13_element", FT_NONE, BASE_NONE, NULL, 0, "ULInformationTransfer_NB_r13_IEs", HFILL }}, - { &hf_lte_rrc_criticalExtensionsFuture_74, + { &hf_lte_rrc_criticalExtensionsFuture_78, { "criticalExtensionsFuture", "lte-rrc.criticalExtensionsFuture_element", FT_NONE, BASE_NONE, NULL, 0, - "T_criticalExtensionsFuture_74", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_277, + "T_criticalExtensionsFuture_78", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_309, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_93", HFILL }}, + "T_nonCriticalExtension_102", HFILL }}, { &hf_lte_rrc_radioResourceConfigCommon_r13, { "radioResourceConfigCommon-r13", "lte-rrc.radioResourceConfigCommon_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -111840,14 +134901,34 @@ void proto_register_lte_rrc(void) { { "cp-Reestablishment-r14", "lte-rrc.cp_Reestablishment_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cp_Reestablishment_r14_vals), 0, "T_cp_Reestablishment_r14", HFILL }}, - { &hf_lte_rrc_cqi_Reporting_r14, - { "cqi-Reporting-r14", "lte-rrc.cqi_Reporting_r14", - FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cqi_Reporting_r14_vals), 0, - NULL, HFILL }}, { &hf_lte_rrc_servingCellMeasInfo_r14, { "servingCellMeasInfo-r14", "lte-rrc.servingCellMeasInfo_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_servingCellMeasInfo_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_cqi_Reporting_r14, + { "cqi-Reporting-r14", "lte-rrc.cqi_Reporting_r14", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cqi_Reporting_r14_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_enhancedPHR_r15, + { "enhancedPHR-r15", "lte-rrc.enhancedPHR_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_enhancedPHR_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_freqInfo_v1530, + { "freqInfo-v1530", "lte-rrc.freqInfo_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_tdd_UL_DL_AlignmentOffset_r15, + { "tdd-UL-DL-AlignmentOffset-r15", "lte-rrc.tdd_UL_DL_AlignmentOffset_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_TDD_UL_DL_AlignmentOffset_NB_r15_vals), 0, + "TDD_UL_DL_AlignmentOffset_NB_r15", HFILL }}, + { &hf_lte_rrc_cp_EDT_r15_01, + { "cp-EDT-r15", "lte-rrc.cp_EDT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_cp_EDT_r15_01_vals), 0, + "T_cp_EDT_r15_01", HFILL }}, + { &hf_lte_rrc_up_EDT_r15_01, + { "up-EDT-r15", "lte-rrc.up_EDT_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_up_EDT_r15_01_vals), 0, + "T_up_EDT_r15_01", HFILL }}, { &hf_lte_rrc_cellReselectionInfoCommon_r13, { "cellReselectionInfoCommon-r13", "lte-rrc.cellReselectionInfoCommon_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -111900,6 +134981,14 @@ void proto_register_lte_rrc(void) { { "cellReselectionInfoCommon-v1450", "lte-rrc.cellReselectionInfoCommon_v1450_element", FT_NONE, BASE_NONE, NULL, 0, "CellReselectionInfoCommon_NB_v1450", HFILL }}, + { &hf_lte_rrc_nsss_RRM_Config_r15, + { "nsss-RRM-Config-r15", "lte-rrc.nsss_RRM_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "NSSS_RRM_Config_NB_r15", HFILL }}, + { &hf_lte_rrc_npbch_RRM_Config_r15, + { "npbch-RRM-Config-r15", "lte-rrc.npbch_RRM_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npbch_RRM_Config_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_s_IntraSearchP_v1360, { "s-IntraSearchP-v1360", "lte-rrc.s_IntraSearchP_v1360", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_ReselectionThreshold_NB_vals_ext, 0, @@ -111924,6 +135013,14 @@ void proto_register_lte_rrc(void) { { "intraFreqBlackCellList-r13", "lte-rrc.intraFreqBlackCellList_r13", FT_UINT32, BASE_DEC, NULL, 0, "IntraFreqBlackCellList", HFILL }}, + { &hf_lte_rrc_intraFreqNeighCellList_v1530, + { "intraFreqNeighCellList-v1530", "lte-rrc.intraFreqNeighCellList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "IntraFreqNeighCellList_NB_v1530", HFILL }}, + { &hf_lte_rrc_IntraFreqNeighCellList_NB_v1530_item, + { "IntraFreqNeighCellInfo-NB-v1530", "lte-rrc.IntraFreqNeighCellInfo_NB_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_interFreqCarrierFreqList_r13, { "interFreqCarrierFreqList-r13", "lte-rrc.interFreqCarrierFreqList_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -111956,10 +135053,18 @@ void proto_register_lte_rrc(void) { { "ce-AuthorisationOffset-r14", "lte-rrc.ce_AuthorisationOffset_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ce_AuthorisationOffset_r14_01_vals), 0, "T_ce_AuthorisationOffset_r14_01", HFILL }}, + { &hf_lte_rrc_interFreqNeighCellList_v1530, + { "interFreqNeighCellList-v1530", "lte-rrc.interFreqNeighCellList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "InterFreqNeighCellList_NB_v1530", HFILL }}, { &hf_lte_rrc_InterFreqNeighCellList_NB_r13_item, { "PhysCellId", "lte-rrc.PhysCellId", FT_UINT32, BASE_DEC, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_InterFreqNeighCellList_NB_v1530_item, + { "InterFreqNeighCellInfo-NB-v1530", "lte-rrc.InterFreqNeighCellInfo_NB_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_InterFreqBlackCellList_NB_r13_item, { "PhysCellId", "lte-rrc.PhysCellId", FT_UINT32, BASE_DEC, NULL, 0, @@ -111980,6 +135085,10 @@ void proto_register_lte_rrc(void) { { "AB-ConfigPLMN-NB-r13", "lte-rrc.AB_ConfigPLMN_NB_r13_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_ab_PerNRSRP_r15, + { "ab-PerNRSRP-r15", "lte-rrc.ab_PerNRSRP_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ab_PerNRSRP_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_ab_Config_r13, { "ab-Config-r13", "lte-rrc.ab_Config_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -112096,6 +135205,30 @@ void proto_register_lte_rrc(void) { { "nprach-ProbabilityAnchorList-r14", "lte-rrc.nprach_ProbabilityAnchorList_r14", FT_UINT32, BASE_DEC, NULL, 0, "NPRACH_ProbabilityAnchorList_NB_r14", HFILL }}, + { &hf_lte_rrc_mixedOperationModeConfig_r15, + { "mixedOperationModeConfig-r15", "lte-rrc.mixedOperationModeConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_dl_ConfigListMixed_r15, + { "dl-ConfigListMixed-r15", "lte-rrc.dl_ConfigListMixed_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "DL_ConfigCommonList_NB_r14", HFILL }}, + { &hf_lte_rrc_ul_ConfigListMixed_r15, + { "ul-ConfigListMixed-r15", "lte-rrc.ul_ConfigListMixed_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "UL_ConfigCommonList_NB_r14", HFILL }}, + { &hf_lte_rrc_pagingDistribution_r15, + { "pagingDistribution-r15", "lte-rrc.pagingDistribution_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_pagingDistribution_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nprach_Distribution_r15, + { "nprach-Distribution-r15", "lte-rrc.nprach_Distribution_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_Distribution_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_ul_ConfigList_r15, + { "ul-ConfigList-r15", "lte-rrc.ul_ConfigList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "UL_ConfigCommonListTDD_NB_r15", HFILL }}, { &hf_lte_rrc_DL_ConfigCommonList_NB_r14_item, { "DL-ConfigCommon-NB-r14", "lte-rrc.DL_ConfigCommon_NB_r14_element", FT_NONE, BASE_NONE, NULL, 0, @@ -112104,10 +135237,18 @@ void proto_register_lte_rrc(void) { { "UL-ConfigCommon-NB-r14", "lte-rrc.UL_ConfigCommon_NB_r14_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_UL_ConfigCommonListTDD_NB_r15_item, + { "UL-ConfigCommonTDD-NB-r15", "lte-rrc.UL_ConfigCommonTDD_NB_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_pcch_Config_r14, { "pcch-Config-r14", "lte-rrc.pcch_Config_r14_element", FT_NONE, BASE_NONE, NULL, 0, "PCCH_Config_NB_r14", HFILL }}, + { &hf_lte_rrc_wus_Config_r15_01, + { "wus-Config-r15", "lte-rrc.wus_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "WUS_ConfigPerCarrier_NB_r15", HFILL }}, { &hf_lte_rrc_npdcch_NumRepetitionPaging_r14, { "npdcch-NumRepetitionPaging-r14", "lte-rrc.npdcch_NumRepetitionPaging_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npdcch_NumRepetitionPaging_r14_vals), 0, @@ -112124,6 +135265,14 @@ void proto_register_lte_rrc(void) { { "nprach-ParametersList-r14", "lte-rrc.nprach_ParametersList_r14", FT_UINT32, BASE_DEC, NULL, 0, "NPRACH_ParametersList_NB_r14", HFILL }}, + { &hf_lte_rrc_nprach_ParametersListEDT_r15, + { "nprach-ParametersListEDT-r15", "lte-rrc.nprach_ParametersListEDT_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "NPRACH_ParametersList_NB_r14", HFILL }}, + { &hf_lte_rrc_nprach_ParametersListTDD_r15, + { "nprach-ParametersListTDD-r15", "lte-rrc.nprach_ParametersListTDD_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "NPRACH_ParametersListTDD_NB_r15", HFILL }}, { &hf_lte_rrc_NPRACH_ParametersList_NB_r14_item, { "NPRACH-Parameters-NB-r14", "lte-rrc.NPRACH_Parameters_NB_r14_element", FT_NONE, BASE_NONE, NULL, 0, @@ -112180,6 +135329,26 @@ void proto_register_lte_rrc(void) { { "nprach-ProbabilityAnchor-r14", "lte-rrc.nprach_ProbabilityAnchor_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_ProbabilityAnchor_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_ul_ConfigList_v1530, + { "ul-ConfigList-v1530", "lte-rrc.ul_ConfigList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "UL_ConfigCommonList_NB_v1530", HFILL }}, + { &hf_lte_rrc_ul_ConfigListMixed_v1530, + { "ul-ConfigListMixed-v1530", "lte-rrc.ul_ConfigListMixed_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "UL_ConfigCommonList_NB_v1530", HFILL }}, + { &hf_lte_rrc_UL_ConfigCommonList_NB_v1530_item, + { "UL-ConfigCommon-NB-v1530", "lte-rrc.UL_ConfigCommon_NB_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nprach_ParametersListFmt2_r15, + { "nprach-ParametersListFmt2-r15", "lte-rrc.nprach_ParametersListFmt2_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "NPRACH_ParametersListFmt2_NB_r15", HFILL }}, + { &hf_lte_rrc_nprach_ParametersListFmt2EDT_r15, + { "nprach-ParametersListFmt2EDT-r15", "lte-rrc.nprach_ParametersListFmt2EDT_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "NPRACH_ParametersListFmt2_NB_r15", HFILL }}, { &hf_lte_rrc_dl_CarrierConfig_r13, { "dl-CarrierConfig-r13", "lte-rrc.dl_CarrierConfig_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -112252,6 +135421,10 @@ void proto_register_lte_rrc(void) { { "nrs-PowerOffsetNonAnchor-v1330", "lte-rrc.nrs_PowerOffsetNonAnchor_v1330", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nrs_PowerOffsetNonAnchor_v1330_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_dl_GapNonAnchor_v1530, + { "dl-GapNonAnchor-v1530", "lte-rrc.dl_GapNonAnchor_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "DL_GapConfig_NB_v1530", HFILL }}, { &hf_lte_rrc_carrierFreqOffset_r13, { "carrierFreqOffset-r13", "lte-rrc.carrierFreqOffset_r13", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_T_carrierFreqOffset_r13_vals_ext, 0, @@ -112332,6 +135505,10 @@ void proto_register_lte_rrc(void) { { "dl-GapDurationCoeff-r13", "lte-rrc.dl_GapDurationCoeff_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dl_GapDurationCoeff_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_dl_GapPeriodicity_v1530, + { "dl-GapPeriodicity-v1530", "lte-rrc.dl_GapPeriodicity_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dl_GapPeriodicity_v1530_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_priority_r13, { "priority-r13", "lte-rrc.priority_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -112364,10 +135541,10 @@ void proto_register_lte_rrc(void) { { "logicalChannelSR-Config-r13", "lte-rrc.logicalChannelSR_Config_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logicalChannelSR_Config_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_147, + { &hf_lte_rrc_setup_194, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_129", HFILL }}, + "T_setup_169", HFILL }}, { &hf_lte_rrc_logicalChannelSR_ProhibitTimer_r13, { "logicalChannelSR-ProhibitTimer-r13", "lte-rrc.logicalChannelSR_ProhibitTimer_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_logicalChannelSR_ProhibitTimer_r13_vals), 0, @@ -112380,10 +135557,10 @@ void proto_register_lte_rrc(void) { { "dataInactivityTimerConfig-r14", "lte-rrc.dataInactivityTimerConfig_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dataInactivityTimerConfig_r14_01_vals), 0, "T_dataInactivityTimerConfig_r14_01", HFILL }}, - { &hf_lte_rrc_setup_148, + { &hf_lte_rrc_setup_195, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_130", HFILL }}, + "T_setup_170", HFILL }}, { &hf_lte_rrc_drx_Cycle_v1430, { "drx-Cycle-v1430", "lte-rrc.drx_Cycle_v1430", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_drx_Cycle_v1430_vals), 0, @@ -112392,10 +135569,10 @@ void proto_register_lte_rrc(void) { { "ra-CFRA-Config-r14", "lte-rrc.ra_CFRA_Config_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ra_CFRA_Config_r14_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_149, + { &hf_lte_rrc_setup_196, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_131", HFILL }}, + "T_setup_171", HFILL }}, { &hf_lte_rrc_onDurationTimer_r13, { "onDurationTimer-r13", "lte-rrc.onDurationTimer_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_onDurationTimer_r13_vals), 0, @@ -112432,6 +135609,10 @@ void proto_register_lte_rrc(void) { { "npdcch-Offset-USS-r13", "lte-rrc.npdcch_Offset_USS_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npdcch_Offset_USS_r13_vals), 0, "T_npdcch_Offset_USS_r13", HFILL }}, + { &hf_lte_rrc_npdcch_StartSF_USS_v1530, + { "npdcch-StartSF-USS-v1530", "lte-rrc.npdcch_StartSF_USS_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npdcch_StartSF_USS_v1530_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_nrs_Power_r13, { "nrs-Power-r13", "lte-rrc.nrs_Power_r13", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0, @@ -112456,6 +135637,34 @@ void proto_register_lte_rrc(void) { { "maxNumPreambleAttemptCE-r14", "lte-rrc.maxNumPreambleAttemptCE_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxNumPreambleAttemptCE_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_tdd_Parameters_r15_01, + { "tdd-Parameters-r15", "lte-rrc.tdd_Parameters_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_tdd_Parameters_r15_01", HFILL }}, + { &hf_lte_rrc_nprach_PreambleFormat_r15, + { "nprach-PreambleFormat-r15", "lte-rrc.nprach_PreambleFormat_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_PreambleFormat_r15_vals), 0, + "T_nprach_PreambleFormat_r15", HFILL }}, + { &hf_lte_rrc_numRepetitionsPerPreambleAttempt_r15, + { "numRepetitionsPerPreambleAttempt-r15", "lte-rrc.numRepetitionsPerPreambleAttempt_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_numRepetitionsPerPreambleAttempt_r15_vals), 0, + "T_numRepetitionsPerPreambleAttempt_r15", HFILL }}, + { &hf_lte_rrc_fmt2_Parameters_r15, + { "fmt2-Parameters-r15", "lte-rrc.fmt2_Parameters_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_edt_Parameters_r15_01, + { "edt-Parameters-r15", "lte-rrc.edt_Parameters_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_edt_Parameters_r15_01", HFILL }}, + { &hf_lte_rrc_edt_SmallTBS_Subset_r15_01, + { "edt-SmallTBS-Subset-r15", "lte-rrc.edt_SmallTBS_Subset_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_edt_SmallTBS_Subset_r15_01_vals), 0, + "T_edt_SmallTBS_Subset_r15_01", HFILL }}, + { &hf_lte_rrc_edt_TBS_InfoList_r15, + { "edt-TBS-InfoList-r15", "lte-rrc.edt_TBS_InfoList_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "EDT_TBS_InfoList_NB_r15", HFILL }}, { &hf_lte_rrc_NPRACH_ParametersList_NB_r13_item, { "NPRACH-Parameters-NB-r13", "lte-rrc.NPRACH_Parameters_NB_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -112508,10 +135717,110 @@ void proto_register_lte_rrc(void) { { "nprach-NumCBRA-StartSubcarriers-r13", "lte-rrc.nprach_NumCBRA_StartSubcarriers_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_NPRACH_ParametersListTDD_NB_r15_item, + { "NPRACH-ParametersTDD-NB-r15", "lte-rrc.NPRACH_ParametersTDD_NB_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nprach_Parameters_r15, + { "nprach-Parameters-r15", "lte-rrc.nprach_Parameters_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nprach_Periodicity_r15, + { "nprach-Periodicity-r15", "lte-rrc.nprach_Periodicity_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_Periodicity_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nprach_StartTime_r15, + { "nprach-StartTime-r15", "lte-rrc.nprach_StartTime_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_StartTime_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nprach_SubcarrierOffset_r15, + { "nprach-SubcarrierOffset-r15", "lte-rrc.nprach_SubcarrierOffset_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_SubcarrierOffset_r15_vals), 0, + "T_nprach_SubcarrierOffset_r15", HFILL }}, + { &hf_lte_rrc_nprach_NumSubcarriers_r15, + { "nprach-NumSubcarriers-r15", "lte-rrc.nprach_NumSubcarriers_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_NumSubcarriers_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nprach_SubcarrierMSG3_RangeStart_r15, + { "nprach-SubcarrierMSG3-RangeStart-r15", "lte-rrc.nprach_SubcarrierMSG3_RangeStart_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r15_vals), 0, + "T_nprach_SubcarrierMSG3_RangeStart_r15", HFILL }}, + { &hf_lte_rrc_npdcch_NumRepetitions_RA_r15, + { "npdcch-NumRepetitions-RA-r15", "lte-rrc.npdcch_NumRepetitions_RA_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npdcch_NumRepetitions_RA_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_npdcch_StartSF_CSS_RA_r15, + { "npdcch-StartSF-CSS-RA-r15", "lte-rrc.npdcch_StartSF_CSS_RA_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npdcch_StartSF_CSS_RA_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_npdcch_Offset_RA_r15, + { "npdcch-Offset-RA-r15", "lte-rrc.npdcch_Offset_RA_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npdcch_Offset_RA_r15_vals), 0, + "T_npdcch_Offset_RA_r15", HFILL }}, + { &hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r15, + { "nprach-NumCBRA-StartSubcarriers-r15", "lte-rrc.nprach_NumCBRA_StartSubcarriers_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_NPRACH_ParametersListFmt2_NB_r15_item, + { "NPRACH-ParametersFmt2-NB-r15", "lte-rrc.NPRACH_ParametersFmt2_NB_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_nprach_Parameters_r15_01, + { "nprach-Parameters-r15", "lte-rrc.nprach_Parameters_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nprach_Parameters_r15_01", HFILL }}, + { &hf_lte_rrc_nprach_Periodicity_r15_01, + { "nprach-Periodicity-r15", "lte-rrc.nprach_Periodicity_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_Periodicity_r15_01_vals), 0, + "T_nprach_Periodicity_r15_01", HFILL }}, + { &hf_lte_rrc_nprach_StartTime_r15_01, + { "nprach-StartTime-r15", "lte-rrc.nprach_StartTime_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_StartTime_r15_01_vals), 0, + "T_nprach_StartTime_r15_01", HFILL }}, + { &hf_lte_rrc_nprach_SubcarrierOffset_r15_01, + { "nprach-SubcarrierOffset-r15", "lte-rrc.nprach_SubcarrierOffset_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_SubcarrierOffset_r15_01_vals), 0, + "T_nprach_SubcarrierOffset_r15_01", HFILL }}, + { &hf_lte_rrc_nprach_NumSubcarriers_r15_01, + { "nprach-NumSubcarriers-r15", "lte-rrc.nprach_NumSubcarriers_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_NumSubcarriers_r15_01_vals), 0, + "T_nprach_NumSubcarriers_r15_01", HFILL }}, + { &hf_lte_rrc_nprach_SubcarrierMSG3_RangeStart_r15_01, + { "nprach-SubcarrierMSG3-RangeStart-r15", "lte-rrc.nprach_SubcarrierMSG3_RangeStart_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_SubcarrierMSG3_RangeStart_r15_01_vals), 0, + "T_nprach_SubcarrierMSG3_RangeStart_r15_01", HFILL }}, + { &hf_lte_rrc_npdcch_NumRepetitions_RA_r15_01, + { "npdcch-NumRepetitions-RA-r15", "lte-rrc.npdcch_NumRepetitions_RA_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npdcch_NumRepetitions_RA_r15_01_vals), 0, + "T_npdcch_NumRepetitions_RA_r15_01", HFILL }}, + { &hf_lte_rrc_npdcch_StartSF_CSS_RA_r15_01, + { "npdcch-StartSF-CSS-RA-r15", "lte-rrc.npdcch_StartSF_CSS_RA_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npdcch_StartSF_CSS_RA_r15_01_vals), 0, + "T_npdcch_StartSF_CSS_RA_r15_01", HFILL }}, + { &hf_lte_rrc_npdcch_Offset_RA_r15_01, + { "npdcch-Offset-RA-r15", "lte-rrc.npdcch_Offset_RA_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npdcch_Offset_RA_r15_01_vals), 0, + "T_npdcch_Offset_RA_r15_01", HFILL }}, + { &hf_lte_rrc_nprach_NumCBRA_StartSubcarriers_r15_01, + { "nprach-NumCBRA-StartSubcarriers-r15", "lte-rrc.nprach_NumCBRA_StartSubcarriers_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_NumCBRA_StartSubcarriers_r15_01_vals), 0, + "T_nprach_NumCBRA_StartSubcarriers_r15_01", HFILL }}, + { &hf_lte_rrc_npdcch_CarrierIndex_r15, + { "npdcch-CarrierIndex-r15", "lte-rrc.npdcch_CarrierIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxNonAnchorCarriers_NB_r14", HFILL }}, { &hf_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13_item, { "RSRP-Range", "lte-rrc.RSRP_Range", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_RSRP_Range_vals_ext, 0, NULL, HFILL }}, + { &hf_lte_rrc_EDT_TBS_InfoList_NB_r15_item, + { "EDT-TBS-NB-r15", "lte-rrc.EDT_TBS_NB_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_edt_TBS_r15_01, + { "edt-TBS-r15", "lte-rrc.edt_TBS_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_edt_TBS_r15_01_vals), 0, + "T_edt_TBS_r15_01", HFILL }}, { &hf_lte_rrc_ack_NACK_NumRepetitions_Msg4_r13, { "ack-NACK-NumRepetitions-Msg4-r13", "lte-rrc.ack_NACK_NumRepetitions_Msg4_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -112616,6 +135925,10 @@ void proto_register_lte_rrc(void) { { "interferenceRandomisationConfig-r14", "lte-rrc.interferenceRandomisationConfig_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_interferenceRandomisationConfig_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_npdcch_ConfigDedicated_v1530, + { "npdcch-ConfigDedicated-v1530", "lte-rrc.npdcch_ConfigDedicated_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "NPDCCH_ConfigDedicated_NB_v1530", HFILL }}, { &hf_lte_rrc_powerRampingParameters_r13, { "powerRampingParameters-r13", "lte-rrc.powerRampingParameters_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -112632,10 +135945,18 @@ void proto_register_lte_rrc(void) { { "powerRampingParameters-v1450", "lte-rrc.powerRampingParameters_v1450_element", FT_NONE, BASE_NONE, NULL, 0, "PowerRampingParameters_NB_v1450", HFILL }}, + { &hf_lte_rrc_rach_InfoList_v1530, + { "rach-InfoList-v1530", "lte-rrc.rach_InfoList_v1530", + FT_UINT32, BASE_DEC, NULL, 0, + "RACH_InfoList_NB_v1530", HFILL }}, { &hf_lte_rrc_RACH_InfoList_NB_r13_item, { "RACH-Info-NB-r13", "lte-rrc.RACH_Info_NB_r13_element", FT_NONE, BASE_NONE, NULL, 0, NULL, HFILL }}, + { &hf_lte_rrc_RACH_InfoList_NB_v1530_item, + { "RACH-Info-NB-v1530", "lte-rrc.RACH_Info_NB_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_ra_ResponseWindowSize_r13_01, { "ra-ResponseWindowSize-r13", "lte-rrc.ra_ResponseWindowSize_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ra_ResponseWindowSize_r13_01_vals), 0, @@ -112644,6 +135965,10 @@ void proto_register_lte_rrc(void) { { "mac-ContentionResolutionTimer-r13", "lte-rrc.mac_ContentionResolutionTimer_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mac_ContentionResolutionTimer_r13_01_vals), 0, "T_mac_ContentionResolutionTimer_r13_01", HFILL }}, + { &hf_lte_rrc_mac_ContentionResolutionTimer_r15_01, + { "mac-ContentionResolutionTimer-r15", "lte-rrc.mac_ContentionResolutionTimer_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mac_ContentionResolutionTimer_r15_01_vals), 0, + "T_mac_ContentionResolutionTimer_r15_01", HFILL }}, { &hf_lte_rrc_preambleInitialReceivedTargetPower_v1450, { "preambleInitialReceivedTargetPower-v1450", "lte-rrc.preambleInitialReceivedTargetPower_v1450", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_preambleInitialReceivedTargetPower_v1450_vals), 0, @@ -112700,6 +136025,18 @@ void proto_register_lte_rrc(void) { { "nprach-Config-v1450", "lte-rrc.nprach_Config_v1450_element", FT_NONE, BASE_NONE, NULL, 0, "NPRACH_ConfigSIB_NB_v1450", HFILL }}, + { &hf_lte_rrc_nprach_Config_v1530, + { "nprach-Config-v1530", "lte-rrc.nprach_Config_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "NPRACH_ConfigSIB_NB_v1530", HFILL }}, + { &hf_lte_rrc_dl_Gap_v1530, + { "dl-Gap-v1530", "lte-rrc.dl_Gap_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "DL_GapConfig_NB_v1530", HFILL }}, + { &hf_lte_rrc_wus_Config_r15_02, + { "wus-Config-r15", "lte-rrc.wus_Config_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "WUS_Config_NB_r15", HFILL }}, { &hf_lte_rrc_modificationPeriodCoeff_r13, { "modificationPeriodCoeff-r13", "lte-rrc.modificationPeriodCoeff_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_modificationPeriodCoeff_r13_vals), 0, @@ -112748,6 +136085,10 @@ void proto_register_lte_rrc(void) { { "rlf-TimersAndConstants-r13", "lte-rrc.rlf_TimersAndConstants_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_RLF_TimersAndConstants_NB_r13_vals), 0, "RLF_TimersAndConstants_NB_r13", HFILL }}, + { &hf_lte_rrc_schedulingRequestConfig_r15, + { "schedulingRequestConfig-r15", "lte-rrc.schedulingRequestConfig_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SchedulingRequestConfig_NB_r15", HFILL }}, { &hf_lte_rrc_SRB_ToAddModList_NB_r13_item, { "SRB-ToAddMod-NB-r13", "lte-rrc.SRB_ToAddMod_NB_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -112816,6 +136157,18 @@ void proto_register_lte_rrc(void) { { "dl-AM-RLC-r13", "lte-rrc.dl_AM_RLC_r13_element", FT_NONE, BASE_NONE, NULL, 0, "DL_AM_RLC_NB_r13", HFILL }}, + { &hf_lte_rrc_um_Bi_Directional_r15_01, + { "um-Bi-Directional-r15", "lte-rrc.um_Bi_Directional_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_um_Uni_Directional_UL_r15_01, + { "um-Uni-Directional-UL-r15", "lte-rrc.um_Uni_Directional_UL_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, + { &hf_lte_rrc_um_Uni_Directional_DL_r15_01, + { "um-Uni-Directional-DL-r15", "lte-rrc.um_Uni_Directional_DL_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + NULL, HFILL }}, { &hf_lte_rrc_t_Reordering_r14, { "t-Reordering-r14", "lte-rrc.t_Reordering_r14", FT_UINT32, BASE_DEC|BASE_EXT_STRING, <e_rrc_T_Reordering_vals_ext, 0, @@ -112832,10 +136185,10 @@ void proto_register_lte_rrc(void) { { "enableStatusReportSN-Gap-r13", "lte-rrc.enableStatusReportSN_Gap_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_enableStatusReportSN_Gap_r13_vals), 0, NULL, HFILL }}, - { &hf_lte_rrc_setup_150, + { &hf_lte_rrc_setup_197, { "setup", "lte-rrc.setup_element", FT_NONE, BASE_NONE, NULL, 0, - "T_setup_132", HFILL }}, + "T_setup_172", HFILL }}, { &hf_lte_rrc_t301_r13, { "t301-r13", "lte-rrc.t301_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t301_r13_vals), 0, @@ -112860,6 +136213,82 @@ void proto_register_lte_rrc(void) { { "t311-v1350", "lte-rrc.t311_v1350", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t311_v1350_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_t301_v1530, + { "t301-v1530", "lte-rrc.t301_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t301_v1530_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_t311_v1530, + { "t311-v1530", "lte-rrc.t311_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t311_v1530_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sr_WithHARQ_ACK_Config_r15, + { "sr-WithHARQ-ACK-Config-r15", "lte-rrc.sr_WithHARQ_ACK_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sr_WithHARQ_ACK_Config_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sr_WithoutHARQ_ACK_Config_r15, + { "sr-WithoutHARQ-ACK-Config-r15", "lte-rrc.sr_WithoutHARQ_ACK_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SR_WithoutHARQ_ACK_Config_NB_r15_vals), 0, + "SR_WithoutHARQ_ACK_Config_NB_r15", HFILL }}, + { &hf_lte_rrc_sr_SPS_BSR_Config_r15, + { "sr-SPS-BSR-Config-r15", "lte-rrc.sr_SPS_BSR_Config_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_SR_SPS_BSR_Config_NB_r15_vals), 0, + "SR_SPS_BSR_Config_NB_r15", HFILL }}, + { &hf_lte_rrc_setup_198, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_173", HFILL }}, + { &hf_lte_rrc_sr_ProhibitTimer_r15, + { "sr-ProhibitTimer-r15", "lte-rrc.sr_ProhibitTimer_r15", + FT_UINT32, BASE_DEC|BASE_UNIT_STRING, &units_sr_periods, 0, + "INTEGER_0_7", HFILL }}, + { &hf_lte_rrc_sr_NPRACH_Resource_r15, + { "sr-NPRACH-Resource-r15", "lte-rrc.sr_NPRACH_Resource_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "SR_NPRACH_Resource_NB_r15", HFILL }}, + { &hf_lte_rrc_nprach_CarrierIndex_r15, + { "nprach-CarrierIndex-r15", "lte-rrc.nprach_CarrierIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_maxNonAnchorCarriers_NB_r14", HFILL }}, + { &hf_lte_rrc_nprach_ResourceIndex_r15, + { "nprach-ResourceIndex-r15", "lte-rrc.nprach_ResourceIndex_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_1_maxNPRACH_Resources_NB_r13", HFILL }}, + { &hf_lte_rrc_nprach_SubCarrierIndex_r15, + { "nprach-SubCarrierIndex-r15", "lte-rrc.nprach_SubCarrierIndex_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_SubCarrierIndex_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nprach_Fmt0Fmt1_r15, + { "nprach-Fmt0Fmt1-r15", "lte-rrc.nprach_Fmt0Fmt1_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_47", HFILL }}, + { &hf_lte_rrc_nprach_Fmt2_r15, + { "nprach-Fmt2-r15", "lte-rrc.nprach_Fmt2_r15", + FT_UINT32, BASE_DEC, NULL, 0, + "INTEGER_0_143", HFILL }}, + { &hf_lte_rrc_p0_SR_r15, + { "p0-SR-r15", "lte-rrc.p0_SR_r15", + FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0, + "INTEGER_M126_24", HFILL }}, + { &hf_lte_rrc_alpha_r15, + { "alpha-r15", "lte-rrc.alpha_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_alpha_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_setup_199, + { "setup", "lte-rrc.setup_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_setup_174", HFILL }}, + { &hf_lte_rrc_semiPersistSchedIntervalUL_r15, + { "semiPersistSchedIntervalUL-r15", "lte-rrc.semiPersistSchedIntervalUL_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_semiPersistSchedIntervalUL_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_subframeAssignment_r15_01, + { "subframeAssignment-r15", "lte-rrc.subframeAssignment_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_subframeAssignment_r15_vals), 0, + "T_subframeAssignment_r15", HFILL }}, + { &hf_lte_rrc_specialSubframePatterns_r15, + { "specialSubframePatterns-r15", "lte-rrc.specialSubframePatterns_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_specialSubframePatterns_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_p0_NominalNPUSCH_r13, { "p0-NominalNPUSCH-r13", "lte-rrc.p0_NominalNPUSCH_r13", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_dbm, 0, @@ -112876,6 +136305,30 @@ void proto_register_lte_rrc(void) { { "p0-UE-NPUSCH-r13", "lte-rrc.p0_UE_NPUSCH_r13", FT_INT32, BASE_DEC|BASE_UNIT_STRING, &units_decibels, 0, "INTEGER_M8_7", HFILL }}, + { &hf_lte_rrc_maxDurationFactor_r15_01, + { "maxDurationFactor-r15", "lte-rrc.maxDurationFactor_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_WUS_MaxDurationFactor_NB_r15_vals), 0, + "WUS_MaxDurationFactor_NB_r15", HFILL }}, + { &hf_lte_rrc_numPOs_r15_01, + { "numPOs-r15", "lte-rrc.numPOs_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_numPOs_r15_01_vals), 0, + "T_numPOs_r15_01", HFILL }}, + { &hf_lte_rrc_numDRX_CyclesRelaxed_r15, + { "numDRX-CyclesRelaxed-r15", "lte-rrc.numDRX_CyclesRelaxed_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_numDRX_CyclesRelaxed_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_timeOffsetDRX_r15_01, + { "timeOffsetDRX-r15", "lte-rrc.timeOffsetDRX_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_timeOffsetDRX_r15_01_vals), 0, + "T_timeOffsetDRX_r15_01", HFILL }}, + { &hf_lte_rrc_timeOffset_eDRX_Short_r15_01, + { "timeOffset-eDRX-Short-r15", "lte-rrc.timeOffset_eDRX_Short_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_timeOffset_eDRX_Short_r15_01_vals), 0, + "T_timeOffset_eDRX_Short_r15_01", HFILL }}, + { &hf_lte_rrc_timeOffset_eDRX_Long_r15_01, + { "timeOffset-eDRX-Long-r15", "lte-rrc.timeOffset_eDRX_Long_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_timeOffset_eDRX_Long_r15_01_vals), 0, + "T_timeOffset_eDRX_Long_r15_01", HFILL }}, { &hf_lte_rrc_AdditionalBandInfoList_NB_r14_item, { "FreqBandIndicator-NB-r13", "lte-rrc.FreqBandIndicator_NB_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -112900,6 +136353,14 @@ void proto_register_lte_rrc(void) { { "nrsrqResult-r14", "lte-rrc.nrsrqResult_r14", FT_INT32, BASE_CUSTOM, CF_FUNC(lte_rrc_NRSRQ_Range_NB_r14_fmt), 0, "NRSRQ_Range_NB_r14", HFILL }}, + { &hf_lte_rrc_nsss_RRM_PowerOffset_r15, + { "nsss-RRM-PowerOffset-r15", "lte-rrc.nsss_RRM_PowerOffset_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nsss_RRM_PowerOffset_r15_vals), 0, + "T_nsss_RRM_PowerOffset_r15", HFILL }}, + { &hf_lte_rrc_nsss_NumOccDiffPrecoders_r15, + { "nsss-NumOccDiffPrecoders-r15", "lte-rrc.nsss_NumOccDiffPrecoders_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nsss_NumOccDiffPrecoders_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_accessStratumRelease_r13, { "accessStratumRelease-r13", "lte-rrc.accessStratumRelease_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_AccessStratumRelease_NB_r13_vals), 0, @@ -112924,7 +136385,7 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-r13", "lte-rrc.rf_Parameters_r13_element", FT_NONE, BASE_NONE, NULL, 0, "RF_Parameters_NB_r13", HFILL }}, - { &hf_lte_rrc_dummy_04, + { &hf_lte_rrc_dummy_05, { "dummy", "lte-rrc.dummy_element", FT_NONE, BASE_NONE, NULL, 0, "T_dummy_03", HFILL }}, @@ -112944,7 +136405,7 @@ void proto_register_lte_rrc(void) { { "rf-Parameters-v1430", "lte-rrc.rf_Parameters_v1430_element", FT_NONE, BASE_NONE, NULL, 0, "RF_Parameters_NB_v1430", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_278, + { &hf_lte_rrc_nonCriticalExtension_310, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, "UE_Capability_NB_v1440_IEs", HFILL }}, @@ -112952,10 +136413,50 @@ void proto_register_lte_rrc(void) { { "phyLayerParameters-v1440", "lte-rrc.phyLayerParameters_v1440_element", FT_NONE, BASE_NONE, NULL, 0, "PhyLayerParameters_NB_v1440", HFILL }}, - { &hf_lte_rrc_nonCriticalExtension_279, + { &hf_lte_rrc_nonCriticalExtension_311, { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", FT_NONE, BASE_NONE, NULL, 0, - "T_nonCriticalExtension_94", HFILL }}, + "UE_Capability_NB_v14x0_IEs", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_312, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "UE_Capability_NB_v1530_IEs", HFILL }}, + { &hf_lte_rrc_earlyData_UP_r15_01, + { "earlyData-UP-r15", "lte-rrc.earlyData_UP_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_earlyData_UP_r15_01_vals), 0, + "T_earlyData_UP_r15_01", HFILL }}, + { &hf_lte_rrc_rlc_Parameters_r15, + { "rlc-Parameters-r15", "lte-rrc.rlc_Parameters_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "RLC_Parameters_NB_r15", HFILL }}, + { &hf_lte_rrc_mac_Parameters_v1530_01, + { "mac-Parameters-v1530", "lte-rrc.mac_Parameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "MAC_Parameters_NB_v1530", HFILL }}, + { &hf_lte_rrc_phyLayerParameters_v1530_01, + { "phyLayerParameters-v1530", "lte-rrc.phyLayerParameters_v1530_element", + FT_NONE, BASE_NONE, NULL, 0, + "PhyLayerParameters_NB_v1530", HFILL }}, + { &hf_lte_rrc_tdd_UE_Capability_r15, + { "tdd-UE-Capability-r15", "lte-rrc.tdd_UE_Capability_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "TDD_UE_Capability_NB_r15", HFILL }}, + { &hf_lte_rrc_nonCriticalExtension_313, + { "nonCriticalExtension", "lte-rrc.nonCriticalExtension_element", + FT_NONE, BASE_NONE, NULL, 0, + "T_nonCriticalExtension_103", HFILL }}, + { &hf_lte_rrc_ue_Category_NB_r15, + { "ue-Category-NB-r15", "lte-rrc.ue_Category_NB_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_ue_Category_NB_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_phyLayerParametersRel13_r15, + { "phyLayerParametersRel13-r15", "lte-rrc.phyLayerParametersRel13_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "PhyLayerParameters_NB_r13", HFILL }}, + { &hf_lte_rrc_phyLayerParametersRel14_r15, + { "phyLayerParametersRel14-r15", "lte-rrc.phyLayerParametersRel14_r15_element", + FT_NONE, BASE_NONE, NULL, 0, + "PhyLayerParameters_NB_v1430", HFILL }}, { &hf_lte_rrc_supportedROHC_Profiles_r13, { "supportedROHC-Profiles-r13", "lte-rrc.supportedROHC_Profiles_r13_element", FT_NONE, BASE_NONE, NULL, 0, @@ -112964,6 +136465,10 @@ void proto_register_lte_rrc(void) { { "maxNumberROHC-ContextSessions-r13", "lte-rrc.maxNumberROHC_ContextSessions_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_maxNumberROHC_ContextSessions_r13_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_rlc_UM_r15, + { "rlc-UM-r15", "lte-rrc.rlc_UM_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rlc_UM_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_dataInactMon_r14_01, { "dataInactMon-r14", "lte-rrc.dataInactMon_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_dataInactMon_r14_01_vals), 0, @@ -112972,6 +136477,10 @@ void proto_register_lte_rrc(void) { { "rai-Support-r14", "lte-rrc.rai_Support_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_rai_Support_r14_01_vals), 0, "T_rai_Support_r14_01", HFILL }}, + { &hf_lte_rrc_sr_SPS_BSR_r15, + { "sr-SPS-BSR-r15", "lte-rrc.sr_SPS_BSR_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sr_SPS_BSR_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_multiTone_r13, { "multiTone-r13", "lte-rrc.multiTone_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_multiTone_r13_vals), 0, @@ -112992,6 +136501,30 @@ void proto_register_lte_rrc(void) { { "interferenceRandomisation-r14", "lte-rrc.interferenceRandomisation_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_interferenceRandomisation_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_mixedOperationMode_r15, + { "mixedOperationMode-r15", "lte-rrc.mixedOperationMode_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mixedOperationMode_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sr_WithHARQ_ACK_r15, + { "sr-WithHARQ-ACK-r15", "lte-rrc.sr_WithHARQ_ACK_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sr_WithHARQ_ACK_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_sr_WithoutHARQ_ACK_r15, + { "sr-WithoutHARQ-ACK-r15", "lte-rrc.sr_WithoutHARQ_ACK_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_sr_WithoutHARQ_ACK_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_nprach_Format2_r15, + { "nprach-Format2-r15", "lte-rrc.nprach_Format2_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_nprach_Format2_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_additionalTransmissionSIB1_r15_01, + { "additionalTransmissionSIB1-r15", "lte-rrc.additionalTransmissionSIB1_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_additionalTransmissionSIB1_r15_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_npusch_3dot75kHz_SCS_TDD_r15, + { "npusch-3dot75kHz-SCS-TDD-r15", "lte-rrc.npusch_3dot75kHz_SCS_TDD_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_npusch_3dot75kHz_SCS_TDD_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_supportedBandList_r13, { "supportedBandList-r13", "lte-rrc.supportedBandList_r13", FT_UINT32, BASE_DEC, NULL, 0, @@ -113024,6 +136557,22 @@ void proto_register_lte_rrc(void) { { "multiCarrierPaging-r14", "lte-rrc.multiCarrierPaging_r14", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_multiCarrierPaging_r14_vals), 0, NULL, HFILL }}, + { &hf_lte_rrc_mixedOperationMode_r15_01, + { "mixedOperationMode-r15", "lte-rrc.mixedOperationMode_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_mixedOperationMode_r15_01_vals), 0, + "T_mixedOperationMode_r15_01", HFILL }}, + { &hf_lte_rrc_wakeUpSignal_r15_01, + { "wakeUpSignal-r15", "lte-rrc.wakeUpSignal_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_wakeUpSignal_r15_01_vals), 0, + "T_wakeUpSignal_r15_01", HFILL }}, + { &hf_lte_rrc_wakeUpSignalMinGap_eDRX_r15_01, + { "wakeUpSignalMinGap-eDRX-r15", "lte-rrc.wakeUpSignalMinGap_eDRX_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_wakeUpSignalMinGap_eDRX_r15_01_vals), 0, + "T_wakeUpSignalMinGap_eDRX_r15_01", HFILL }}, + { &hf_lte_rrc_multiCarrierPagingTDD_r15, + { "multiCarrierPagingTDD-r15", "lte-rrc.multiCarrierPagingTDD_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_multiCarrierPagingTDD_r15_vals), 0, + NULL, HFILL }}, { &hf_lte_rrc_t300_r13, { "t300-r13", "lte-rrc.t300_r13", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t300_r13_vals), 0, @@ -113052,6 +136601,22 @@ void proto_register_lte_rrc(void) { { "t311-v1350", "lte-rrc.t311_v1350", FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t311_v1350_01_vals), 0, "T_t311_v1350_01", HFILL }}, + { &hf_lte_rrc_t300_v1530, + { "t300-v1530", "lte-rrc.t300_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t300_v1530_vals), 0, + NULL, HFILL }}, + { &hf_lte_rrc_t301_v1530_01, + { "t301-v1530", "lte-rrc.t301_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t301_v1530_01_vals), 0, + "T_t301_v1530_01", HFILL }}, + { &hf_lte_rrc_t311_v1530_01, + { "t311-v1530", "lte-rrc.t311_v1530", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t311_v1530_01_vals), 0, + "T_t311_v1530_01", HFILL }}, + { &hf_lte_rrc_t300_r15_01, + { "t300-r15", "lte-rrc.t300_r15", + FT_UINT32, BASE_DEC, VALS(lte_rrc_T_t300_r15_01_vals), 0, + "T_t300_r15_01", HFILL }}, { &hf_lte_rrc_SC_MTCH_InfoList_NB_r14_item, { "SC-MTCH-Info-NB-r14", "lte-rrc.SC_MTCH_Info_NB_r14_element", FT_NONE, BASE_NONE, NULL, 0, @@ -113110,7 +136675,7 @@ void proto_register_lte_rrc(void) { "CarrierFreq_NB_r13", HFILL }}, /*--- End of included file: packet-lte-rrc-hfarr.c ---*/ -#line 3492 "./asn1/lte-rrc/packet-lte-rrc-template.c" +#line 3494 "./asn1/lte-rrc/packet-lte-rrc-template.c" { &hf_lte_rrc_eutra_cap_feat_group_ind_1, { "Indicator 1", "lte-rrc.eutra_cap_feat_group_ind_1", @@ -113908,8 +137473,10 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SCG_ConfigInfo_v1310_IEs, &ett_lte_rrc_SCG_ConfigInfo_v1330_IEs, &ett_lte_rrc_SCG_ConfigInfo_v1430_IEs, + &ett_lte_rrc_SCG_ConfigInfo_v1530_IEs, &ett_lte_rrc_T_nonCriticalExtension_04, &ett_lte_rrc_DRB_InfoListSCG_r12, + &ett_lte_rrc_DRB_InfoListSCG_r15, &ett_lte_rrc_DRB_InfoSCG_r12, &ett_lte_rrc_SCellToAddModListSCG_r12, &ett_lte_rrc_SCellToAddModListSCG_Ext_r13, @@ -113989,6 +137556,8 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_DL_CCCH_MessageType, &ett_lte_rrc_T_c1_12, &ett_lte_rrc_T_messageClassExtension_05, + &ett_lte_rrc_T_c2_01, + &ett_lte_rrc_T_messageClassExtensionFuture_r15, &ett_lte_rrc_DL_DCCH_Message, &ett_lte_rrc_DL_DCCH_MessageType, &ett_lte_rrc_T_c1_13, @@ -113997,19 +137566,21 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_UL_CCCH_MessageType, &ett_lte_rrc_T_c1_14, &ett_lte_rrc_T_messageClassExtension_07, - &ett_lte_rrc_T_c2_01, + &ett_lte_rrc_T_c2_02, &ett_lte_rrc_T_messageClassExtensionFuture_r13, + &ett_lte_rrc_T_c3, + &ett_lte_rrc_T_messageClassExtensionFuture_r15_01, &ett_lte_rrc_UL_DCCH_Message, &ett_lte_rrc_UL_DCCH_MessageType, &ett_lte_rrc_T_c1_15, &ett_lte_rrc_T_messageClassExtension_08, - &ett_lte_rrc_T_c2_02, + &ett_lte_rrc_T_c2_03, &ett_lte_rrc_T_messageClassExtensionFuture_r11, &ett_lte_rrc_SC_MCCH_Message_r13, &ett_lte_rrc_SC_MCCH_MessageType_r13, &ett_lte_rrc_T_c1_16, &ett_lte_rrc_T_messageClassExtension_09, - &ett_lte_rrc_T_c2_03, + &ett_lte_rrc_T_c2_04, &ett_lte_rrc_T_messageClassExtensionFuture_r14, &ett_lte_rrc_CounterCheck, &ett_lte_rrc_T_criticalExtensions_07, @@ -114017,16 +137588,20 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_criticalExtensionsFuture_07, &ett_lte_rrc_CounterCheck_r8_IEs, &ett_lte_rrc_CounterCheck_v8a0_IEs, + &ett_lte_rrc_CounterCheck_v1530_IEs, &ett_lte_rrc_T_nonCriticalExtension_08, &ett_lte_rrc_DRB_CountMSB_InfoList, + &ett_lte_rrc_DRB_CountMSB_InfoListExt_r15, &ett_lte_rrc_DRB_CountMSB_Info, &ett_lte_rrc_CounterCheckResponse, &ett_lte_rrc_T_criticalExtensions_08, &ett_lte_rrc_T_criticalExtensionsFuture_08, &ett_lte_rrc_CounterCheckResponse_r8_IEs, &ett_lte_rrc_CounterCheckResponse_v8a0_IEs, + &ett_lte_rrc_CounterCheckResponse_v1530_IEs, &ett_lte_rrc_T_nonCriticalExtension_09, &ett_lte_rrc_DRB_CountInfoList, + &ett_lte_rrc_DRB_CountInfoListExt_r15, &ett_lte_rrc_DRB_CountInfo, &ett_lte_rrc_CSFBParametersRequestCDMA2000, &ett_lte_rrc_T_criticalExtensions_09, @@ -114048,6 +137623,12 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_dedicatedInfoType, &ett_lte_rrc_DLInformationTransfer_v8a0_IEs, &ett_lte_rrc_T_nonCriticalExtension_12, + &ett_lte_rrc_DLInformationTransfer_r15_IEs, + &ett_lte_rrc_T_dedicatedInfoType_r15, + &ett_lte_rrc_FailureInformation_r15, + &ett_lte_rrc_T_nonCriticalExtension_13, + &ett_lte_rrc_FailedLogicalChannelInfo_r15, + &ett_lte_rrc_T_failedLogicalChannelIdentity_r15, &ett_lte_rrc_HandoverFromEUTRAPreparationRequest, &ett_lte_rrc_T_criticalExtensions_12, &ett_lte_rrc_T_c1_19, @@ -114056,7 +137637,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_HandoverFromEUTRAPreparationRequest_v890_IEs, &ett_lte_rrc_HandoverFromEUTRAPreparationRequest_v920_IEs, &ett_lte_rrc_HandoverFromEUTRAPreparationRequest_v1020_IEs, - &ett_lte_rrc_T_nonCriticalExtension_13, + &ett_lte_rrc_T_nonCriticalExtension_14, &ett_lte_rrc_InDeviceCoexIndication_r11, &ett_lte_rrc_T_criticalExtensions_13, &ett_lte_rrc_T_c1_20, @@ -114066,7 +137647,8 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_ul_CA_AssistanceInfo_r11, &ett_lte_rrc_InDeviceCoexIndication_v1310_IEs, &ett_lte_rrc_InDeviceCoexIndication_v1360_IEs, - &ett_lte_rrc_T_nonCriticalExtension_14, + &ett_lte_rrc_InDeviceCoexIndication_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_15, &ett_lte_rrc_AffectedCarrierFreqList_r11, &ett_lte_rrc_AffectedCarrierFreqList_v1310, &ett_lte_rrc_AffectedCarrierFreq_r11, @@ -114081,6 +137663,12 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_IDC_SubframePattern_r11, &ett_lte_rrc_T_subframePatternTDD_r11, &ett_lte_rrc_VictimSystemType_r11, + &ett_lte_rrc_MRDC_AssistanceInfo_r15, + &ett_lte_rrc_SEQUENCE_SIZE_1_maxCombIDC_r11_OF_AffectedCarrierFreqCombInfoMRDC_r15, + &ett_lte_rrc_AffectedCarrierFreqCombInfoMRDC_r15, + &ett_lte_rrc_T_affectedCarrierFreqCombMRDC_r15, + &ett_lte_rrc_AffectedCarrierFreqComb_r15, + &ett_lte_rrc_AffectedCarrierFreqCombNR_r15, &ett_lte_rrc_InterFreqRSTDMeasurementIndication_r10, &ett_lte_rrc_T_criticalExtensions_14, &ett_lte_rrc_T_c1_21, @@ -114088,9 +137676,10 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_InterFreqRSTDMeasurementIndication_r10_IEs, &ett_lte_rrc_T_rstd_InterFreqIndication_r10, &ett_lte_rrc_T_start, - &ett_lte_rrc_T_nonCriticalExtension_15, + &ett_lte_rrc_T_nonCriticalExtension_16, &ett_lte_rrc_RSTD_InterFreqInfoList_r10, &ett_lte_rrc_RSTD_InterFreqInfo_r10, + &ett_lte_rrc_T_measPRS_Offset_r15, &ett_lte_rrc_LoggedMeasurementConfiguration_r10, &ett_lte_rrc_T_criticalExtensions_15, &ett_lte_rrc_T_c1_22, @@ -114099,13 +137688,14 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_LoggedMeasurementConfiguration_v1080_IEs, &ett_lte_rrc_LoggedMeasurementConfiguration_v1130_IEs, &ett_lte_rrc_LoggedMeasurementConfiguration_v1250_IEs, - &ett_lte_rrc_T_nonCriticalExtension_16, + &ett_lte_rrc_LoggedMeasurementConfiguration_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_17, &ett_lte_rrc_TargetMBSFN_AreaList_r12, &ett_lte_rrc_TargetMBSFN_Area_r12, &ett_lte_rrc_MasterInformationBlock, &ett_lte_rrc_MasterInformationBlock_MBMS_r14, &ett_lte_rrc_MBMSCountingRequest_r10, - &ett_lte_rrc_T_nonCriticalExtension_17, + &ett_lte_rrc_T_nonCriticalExtension_18, &ett_lte_rrc_CountingRequestList_r10, &ett_lte_rrc_CountingRequestInfo_r10, &ett_lte_rrc_MBMSCountingResponse_r10, @@ -114113,7 +137703,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_c1_23, &ett_lte_rrc_T_criticalExtensionsFuture_16, &ett_lte_rrc_MBMSCountingResponse_r10_IEs, - &ett_lte_rrc_T_nonCriticalExtension_18, + &ett_lte_rrc_T_nonCriticalExtension_19, &ett_lte_rrc_CountingResponseList_r10, &ett_lte_rrc_CountingResponseInfo_r10, &ett_lte_rrc_MBMSInterestIndication_r11, @@ -114122,35 +137712,41 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_criticalExtensionsFuture_17, &ett_lte_rrc_MBMSInterestIndication_r11_IEs, &ett_lte_rrc_MBMSInterestIndication_v1310_IEs, - &ett_lte_rrc_T_nonCriticalExtension_19, + &ett_lte_rrc_T_nonCriticalExtension_20, &ett_lte_rrc_MBSFNAreaConfiguration_r9, &ett_lte_rrc_MBSFNAreaConfiguration_v930_IEs, &ett_lte_rrc_MBSFNAreaConfiguration_v1250_IEs, &ett_lte_rrc_MBSFNAreaConfiguration_v1430_IEs, - &ett_lte_rrc_T_nonCriticalExtension_20, + &ett_lte_rrc_T_nonCriticalExtension_21, &ett_lte_rrc_CommonSF_AllocPatternList_r9, &ett_lte_rrc_CommonSF_AllocPatternList_r14, - &ett_lte_rrc_MeasurementReport, + &ett_lte_rrc_MeasReportAppLayer_r15, &ett_lte_rrc_T_criticalExtensions_18, - &ett_lte_rrc_T_c1_25, &ett_lte_rrc_T_criticalExtensionsFuture_18, + &ett_lte_rrc_MeasReportAppLayer_r15_IEs, + &ett_lte_rrc_T_nonCriticalExtension_22, + &ett_lte_rrc_MeasurementReport, + &ett_lte_rrc_T_criticalExtensions_19, + &ett_lte_rrc_T_c1_25, + &ett_lte_rrc_T_criticalExtensionsFuture_19, &ett_lte_rrc_MeasurementReport_r8_IEs, &ett_lte_rrc_MeasurementReport_v8a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_21, + &ett_lte_rrc_T_nonCriticalExtension_23, &ett_lte_rrc_MobilityFromEUTRACommand, - &ett_lte_rrc_T_criticalExtensions_19, + &ett_lte_rrc_T_criticalExtensions_20, &ett_lte_rrc_T_c1_26, - &ett_lte_rrc_T_criticalExtensionsFuture_19, + &ett_lte_rrc_T_criticalExtensionsFuture_20, &ett_lte_rrc_MobilityFromEUTRACommand_r8_IEs, &ett_lte_rrc_T_purpose, &ett_lte_rrc_MobilityFromEUTRACommand_v8a0_IEs, &ett_lte_rrc_MobilityFromEUTRACommand_v8d0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_22, + &ett_lte_rrc_T_nonCriticalExtension_24, &ett_lte_rrc_MobilityFromEUTRACommand_r9_IEs, &ett_lte_rrc_T_purpose_01, &ett_lte_rrc_MobilityFromEUTRACommand_v930_IEs, &ett_lte_rrc_MobilityFromEUTRACommand_v960_IEs, - &ett_lte_rrc_T_nonCriticalExtension_23, + &ett_lte_rrc_MobilityFromEUTRACommand_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_25, &ett_lte_rrc_Handover, &ett_lte_rrc_CellChangeOrder, &ett_lte_rrc_T_targetRAT_Type_01, @@ -114162,36 +137758,37 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_Paging_v920_IEs, &ett_lte_rrc_Paging_v1130_IEs, &ett_lte_rrc_Paging_v1310_IEs, - &ett_lte_rrc_T_nonCriticalExtension_24, + &ett_lte_rrc_Paging_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_26, &ett_lte_rrc_PagingRecordList, &ett_lte_rrc_PagingRecord, &ett_lte_rrc_PagingUE_Identity, &ett_lte_rrc_IMSI, &ett_lte_rrc_ProximityIndication_r9, - &ett_lte_rrc_T_criticalExtensions_20, + &ett_lte_rrc_T_criticalExtensions_21, &ett_lte_rrc_T_c1_27, - &ett_lte_rrc_T_criticalExtensionsFuture_20, + &ett_lte_rrc_T_criticalExtensionsFuture_21, &ett_lte_rrc_ProximityIndication_r9_IEs, &ett_lte_rrc_T_carrierFreq_r9, &ett_lte_rrc_ProximityIndication_v930_IEs, - &ett_lte_rrc_T_nonCriticalExtension_25, + &ett_lte_rrc_T_nonCriticalExtension_27, &ett_lte_rrc_RNReconfiguration_r10, - &ett_lte_rrc_T_criticalExtensions_21, + &ett_lte_rrc_T_criticalExtensions_22, &ett_lte_rrc_T_c1_28, - &ett_lte_rrc_T_criticalExtensionsFuture_21, + &ett_lte_rrc_T_criticalExtensionsFuture_22, &ett_lte_rrc_RNReconfiguration_r10_IEs, - &ett_lte_rrc_T_nonCriticalExtension_26, + &ett_lte_rrc_T_nonCriticalExtension_28, &ett_lte_rrc_RN_SystemInfo_r10, &ett_lte_rrc_RNReconfigurationComplete_r10, - &ett_lte_rrc_T_criticalExtensions_22, + &ett_lte_rrc_T_criticalExtensions_23, &ett_lte_rrc_T_c1_29, - &ett_lte_rrc_T_criticalExtensionsFuture_22, + &ett_lte_rrc_T_criticalExtensionsFuture_23, &ett_lte_rrc_RNReconfigurationComplete_r10_IEs, - &ett_lte_rrc_T_nonCriticalExtension_27, + &ett_lte_rrc_T_nonCriticalExtension_29, &ett_lte_rrc_RRCConnectionReconfiguration, - &ett_lte_rrc_T_criticalExtensions_23, + &ett_lte_rrc_T_criticalExtensions_24, &ett_lte_rrc_T_c1_30, - &ett_lte_rrc_T_criticalExtensionsFuture_23, + &ett_lte_rrc_T_criticalExtensionsFuture_24, &ett_lte_rrc_RRCConnectionReconfiguration_r8_IEs, &ett_lte_rrc_SEQUENCE_SIZE_1_maxDRB_OF_DedicatedInfoNAS, &ett_lte_rrc_RRCConnectionReconfiguration_v890_IEs, @@ -114200,7 +137797,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_RRCConnectionReconfiguration_v10l0_IEs, &ett_lte_rrc_RRCConnectionReconfiguration_v12f0_IEs, &ett_lte_rrc_RRCConnectionReconfiguration_v1370_IEs, - &ett_lte_rrc_T_nonCriticalExtension_28, + &ett_lte_rrc_T_nonCriticalExtension_30, &ett_lte_rrc_RRCConnectionReconfiguration_v920_IEs, &ett_lte_rrc_RRCConnectionReconfiguration_v1020_IEs, &ett_lte_rrc_RRCConnectionReconfiguration_v1130_IEs, @@ -114214,7 +137811,9 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_setup_01, &ett_lte_rrc_T_tdm_PatternConfig_r15, &ett_lte_rrc_T_setup_02, - &ett_lte_rrc_T_nonCriticalExtension_29, + &ett_lte_rrc_RRCConnectionReconfiguration_v1530_IEs, + &ett_lte_rrc_SEQUENCE_SIZE_1_maxDRB_r15_OF_DedicatedInfoNAS, + &ett_lte_rrc_T_nonCriticalExtension_31, &ett_lte_rrc_SL_SyncTxControl_r12, &ett_lte_rrc_PSCellToAddMod_r12, &ett_lte_rrc_T_cellIdentification_r12_01, @@ -114226,6 +137825,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SCellToAddModListExt_r13, &ett_lte_rrc_SCellToAddModListExt_v1370, &ett_lte_rrc_SCellToAddModListExt_v1430, + &ett_lte_rrc_SCellGroupToAddModList_r15, &ett_lte_rrc_SCellToAddMod_r10, &ett_lte_rrc_T_cellIdentification_r10, &ett_lte_rrc_SCellToAddMod_v10l0, @@ -114233,8 +137833,11 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_cellIdentification_r13, &ett_lte_rrc_SCellToAddModExt_v1370, &ett_lte_rrc_SCellToAddModExt_v1430, + &ett_lte_rrc_SCellGroupToAddMod_r15, &ett_lte_rrc_SCellToReleaseList_r10, &ett_lte_rrc_SCellToReleaseListExt_r13, + &ett_lte_rrc_SCellGroupToReleaseList_r15, + &ett_lte_rrc_SCellConfigCommon_r15, &ett_lte_rrc_SCG_Configuration_r12, &ett_lte_rrc_T_setup_03, &ett_lte_rrc_T_scg_ConfigPartMCG_r12, @@ -114246,9 +137849,14 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_handoverType, &ett_lte_rrc_T_intraLTE, &ett_lte_rrc_T_interRAT, + &ett_lte_rrc_SecurityConfigHO_v1530, + &ett_lte_rrc_T_handoverType_v1530, + &ett_lte_rrc_T_intra5GC_r15, + &ett_lte_rrc_T_ngc_ToEPC_r15, + &ett_lte_rrc_T_epc_ToNGC_r15, &ett_lte_rrc_RRCConnectionReconfigurationComplete, - &ett_lte_rrc_T_criticalExtensions_24, - &ett_lte_rrc_T_criticalExtensionsFuture_24, + &ett_lte_rrc_T_criticalExtensions_25, + &ett_lte_rrc_T_criticalExtensionsFuture_25, &ett_lte_rrc_RRCConnectionReconfigurationComplete_r8_IEs, &ett_lte_rrc_RRCConnectionReconfigurationComplete_v8a0_IEs, &ett_lte_rrc_RRCConnectionReconfigurationComplete_v1020_IEs, @@ -114256,61 +137864,75 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_RRCConnectionReconfigurationComplete_v1250_IEs, &ett_lte_rrc_RRCConnectionReconfigurationComplete_v1430_IEs, &ett_lte_rrc_RRCConnectionReconfigurationComplete_v1510_IEs, - &ett_lte_rrc_T_nonCriticalExtension_30, + &ett_lte_rrc_RRCConnectionReconfigurationComplete_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_32, &ett_lte_rrc_RRCConnectionReestablishment, - &ett_lte_rrc_T_criticalExtensions_25, + &ett_lte_rrc_T_criticalExtensions_26, &ett_lte_rrc_T_c1_31, - &ett_lte_rrc_T_criticalExtensionsFuture_25, + &ett_lte_rrc_T_criticalExtensionsFuture_26, &ett_lte_rrc_RRCConnectionReestablishment_r8_IEs, &ett_lte_rrc_RRCConnectionReestablishment_v8a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_31, + &ett_lte_rrc_T_nonCriticalExtension_33, &ett_lte_rrc_RRCConnectionReestablishmentComplete, - &ett_lte_rrc_T_criticalExtensions_26, - &ett_lte_rrc_T_criticalExtensionsFuture_26, + &ett_lte_rrc_T_criticalExtensions_27, + &ett_lte_rrc_T_criticalExtensionsFuture_27, &ett_lte_rrc_RRCConnectionReestablishmentComplete_r8_IEs, &ett_lte_rrc_RRCConnectionReestablishmentComplete_v920_IEs, &ett_lte_rrc_RRCConnectionReestablishmentComplete_v8a0_IEs, &ett_lte_rrc_RRCConnectionReestablishmentComplete_v1020_IEs, &ett_lte_rrc_RRCConnectionReestablishmentComplete_v1130_IEs, &ett_lte_rrc_RRCConnectionReestablishmentComplete_v1250_IEs, - &ett_lte_rrc_T_nonCriticalExtension_32, + &ett_lte_rrc_RRCConnectionReestablishmentComplete_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_34, &ett_lte_rrc_RRCConnectionReestablishmentReject, - &ett_lte_rrc_T_criticalExtensions_27, - &ett_lte_rrc_T_criticalExtensionsFuture_27, + &ett_lte_rrc_T_criticalExtensions_28, + &ett_lte_rrc_T_criticalExtensionsFuture_28, &ett_lte_rrc_RRCConnectionReestablishmentReject_r8_IEs, &ett_lte_rrc_RRCConnectionReestablishmentReject_v8a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_33, + &ett_lte_rrc_T_nonCriticalExtension_35, &ett_lte_rrc_RRCConnectionReestablishmentRequest, - &ett_lte_rrc_T_criticalExtensions_28, - &ett_lte_rrc_T_criticalExtensionsFuture_28, + &ett_lte_rrc_T_criticalExtensions_29, + &ett_lte_rrc_T_criticalExtensionsFuture_29, &ett_lte_rrc_RRCConnectionReestablishmentRequest_r8_IEs, &ett_lte_rrc_ReestabUE_Identity, &ett_lte_rrc_RRCConnectionReject, - &ett_lte_rrc_T_criticalExtensions_29, + &ett_lte_rrc_T_criticalExtensions_30, &ett_lte_rrc_T_c1_32, - &ett_lte_rrc_T_criticalExtensionsFuture_29, + &ett_lte_rrc_T_criticalExtensionsFuture_30, &ett_lte_rrc_RRCConnectionReject_r8_IEs, &ett_lte_rrc_RRCConnectionReject_v8a0_IEs, &ett_lte_rrc_RRCConnectionReject_v1020_IEs, &ett_lte_rrc_RRCConnectionReject_v1130_IEs, &ett_lte_rrc_T_deprioritisationReq_r11, &ett_lte_rrc_RRCConnectionReject_v1320_IEs, - &ett_lte_rrc_T_nonCriticalExtension_34, + &ett_lte_rrc_T_nonCriticalExtension_36, &ett_lte_rrc_RRCConnectionRelease, - &ett_lte_rrc_T_criticalExtensions_30, + &ett_lte_rrc_T_criticalExtensions_31, &ett_lte_rrc_T_c1_33, - &ett_lte_rrc_T_criticalExtensionsFuture_30, + &ett_lte_rrc_T_criticalExtensionsFuture_31, &ett_lte_rrc_RRCConnectionRelease_r8_IEs, &ett_lte_rrc_RRCConnectionRelease_v890_IEs, &ett_lte_rrc_RRCConnectionRelease_v9e0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_35, + &ett_lte_rrc_T_nonCriticalExtension_37, &ett_lte_rrc_RRCConnectionRelease_v920_IEs, &ett_lte_rrc_T_cellInfoList_r9, &ett_lte_rrc_RRCConnectionRelease_v1020_IEs, &ett_lte_rrc_RRCConnectionRelease_v1320_IEs, - &ett_lte_rrc_T_nonCriticalExtension_36, + &ett_lte_rrc_RRCConnectionRelease_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_38, &ett_lte_rrc_RedirectedCarrierInfo, &ett_lte_rrc_RedirectedCarrierInfo_v9e0, + &ett_lte_rrc_RRC_InactiveConfig_r15, + &ett_lte_rrc_T_nonCriticalExtension_39, + &ett_lte_rrc_RAN_NotificationAreaInfo_r15, + &ett_lte_rrc_PLMN_RAN_AreaCellList_r15, + &ett_lte_rrc_PLMN_RAN_AreaCell_r15, + &ett_lte_rrc_SEQUENCE_SIZE_1_32_OF_CellIdentity, + &ett_lte_rrc_PLMN_RAN_AreaConfigList_r15, + &ett_lte_rrc_PLMN_RAN_AreaConfig_r15, + &ett_lte_rrc_SEQUENCE_SIZE_1_16_OF_RAN_AreaConfig_r15, + &ett_lte_rrc_RAN_AreaConfig_r15, + &ett_lte_rrc_SEQUENCE_SIZE_1_32_OF_RAN_AreaCode_r15, &ett_lte_rrc_CarrierFreqListUTRA_TDD_r10, &ett_lte_rrc_IdleModeMobilityControlInfo, &ett_lte_rrc_IdleModeMobilityControlInfo_v9e0, @@ -114323,6 +137945,8 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_FreqPriorityEUTRA_v9e0, &ett_lte_rrc_FreqPriorityEUTRA_r12, &ett_lte_rrc_FreqPriorityEUTRA_v1310, + &ett_lte_rrc_FreqPriorityListNR_r15, + &ett_lte_rrc_FreqPriorityNR_r15, &ett_lte_rrc_FreqsPriorityListGERAN, &ett_lte_rrc_FreqsPriorityGERAN, &ett_lte_rrc_FreqPriorityListUTRA_FDD, @@ -114335,6 +137959,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_BandClassPriority1XRTT, &ett_lte_rrc_CellInfoListGERAN_r9, &ett_lte_rrc_CellInfoGERAN_r9, + &ett_lte_rrc_CarrierInfoNR_r15, &ett_lte_rrc_CellInfoListUTRA_FDD_r9, &ett_lte_rrc_CellInfoUTRA_FDD_r9, &ett_lte_rrc_CellInfoListUTRA_TDD_r9, @@ -114342,37 +137967,40 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_CellInfoListUTRA_TDD_r10, &ett_lte_rrc_CellInfoUTRA_TDD_r10, &ett_lte_rrc_RRCConnectionRequest, - &ett_lte_rrc_T_criticalExtensions_31, - &ett_lte_rrc_T_criticalExtensionsFuture_31, + &ett_lte_rrc_T_criticalExtensions_32, + &ett_lte_rrc_T_criticalExtensionsFuture_32, &ett_lte_rrc_RRCConnectionRequest_r8_IEs, &ett_lte_rrc_InitialUE_Identity, &ett_lte_rrc_RRCConnectionResume_r13, - &ett_lte_rrc_T_criticalExtensions_32, + &ett_lte_rrc_T_criticalExtensions_33, &ett_lte_rrc_T_c1_34, - &ett_lte_rrc_T_criticalExtensionsFuture_32, + &ett_lte_rrc_T_criticalExtensionsFuture_33, &ett_lte_rrc_RRCConnectionResume_r13_IEs, &ett_lte_rrc_RRCConnectionResume_v1430_IEs, &ett_lte_rrc_RRCConnectionResume_v1510_IEs, - &ett_lte_rrc_T_nonCriticalExtension_37, + &ett_lte_rrc_RRCConnectionResume_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_40, &ett_lte_rrc_RRCConnectionResumeComplete_r13, - &ett_lte_rrc_T_criticalExtensions_33, - &ett_lte_rrc_T_criticalExtensionsFuture_33, - &ett_lte_rrc_RRCConnectionResumeComplete_r13_IEs, - &ett_lte_rrc_T_nonCriticalExtension_38, - &ett_lte_rrc_RRCConnectionResumeRequest_r13, &ett_lte_rrc_T_criticalExtensions_34, &ett_lte_rrc_T_criticalExtensionsFuture_34, + &ett_lte_rrc_RRCConnectionResumeComplete_r13_IEs, + &ett_lte_rrc_RRCConnectionResumeComplete_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_41, + &ett_lte_rrc_RRCConnectionResumeRequest_r13, + &ett_lte_rrc_T_criticalExtensions_35, &ett_lte_rrc_RRCConnectionResumeRequest_r13_IEs, &ett_lte_rrc_T_resumeIdentity_r13, + &ett_lte_rrc_RRCConnectionResumeRequest_5GC_r15_IEs, + &ett_lte_rrc_T_resumeIdentity_r15, &ett_lte_rrc_RRCConnectionSetup, - &ett_lte_rrc_T_criticalExtensions_35, + &ett_lte_rrc_T_criticalExtensions_36, &ett_lte_rrc_T_c1_35, &ett_lte_rrc_T_criticalExtensionsFuture_35, &ett_lte_rrc_RRCConnectionSetup_r8_IEs, &ett_lte_rrc_RRCConnectionSetup_v8a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_39, + &ett_lte_rrc_T_nonCriticalExtension_42, &ett_lte_rrc_RRCConnectionSetupComplete, - &ett_lte_rrc_T_criticalExtensions_36, + &ett_lte_rrc_T_criticalExtensions_37, &ett_lte_rrc_T_c1_36, &ett_lte_rrc_T_criticalExtensionsFuture_36, &ett_lte_rrc_RRCConnectionSetupComplete_r8_IEs, @@ -114383,63 +138011,79 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_RRCConnectionSetupComplete_v1320_IEs, &ett_lte_rrc_RRCConnectionSetupComplete_v1330_IEs, &ett_lte_rrc_RRCConnectionSetupComplete_v1430_IEs, - &ett_lte_rrc_T_nonCriticalExtension_40, + &ett_lte_rrc_RRCConnectionSetupComplete_v1530_IEs, + &ett_lte_rrc_SEQUENCE_SIZE_1_maxNrofS_NSSAI_r15_OF_S_NSSAI_r15, + &ett_lte_rrc_T_ng_5G_S_TMSI_Bits_r15, + &ett_lte_rrc_T_nonCriticalExtension_43, &ett_lte_rrc_RegisteredMME, + &ett_lte_rrc_RegisteredAMF_r15, + &ett_lte_rrc_RRCEarlyDataComplete_r15, + &ett_lte_rrc_T_criticalExtensions_38, + &ett_lte_rrc_T_criticalExtensionsFuture_37, + &ett_lte_rrc_RRCEarlyDataComplete_r15_IEs, + &ett_lte_rrc_T_nonCriticalExtension_44, + &ett_lte_rrc_RedirectedCarrierInfo_r15_IEs, + &ett_lte_rrc_RRCEarlyDataRequest_r15, + &ett_lte_rrc_T_criticalExtensions_39, + &ett_lte_rrc_T_criticalExtensionsFuture_38, + &ett_lte_rrc_RRCEarlyDataRequest_r15_IEs, + &ett_lte_rrc_T_nonCriticalExtension_45, &ett_lte_rrc_SCGFailureInformation_r12, - &ett_lte_rrc_T_criticalExtensions_37, + &ett_lte_rrc_T_criticalExtensions_40, &ett_lte_rrc_T_c1_37, - &ett_lte_rrc_T_criticalExtensionsFuture_37, + &ett_lte_rrc_T_criticalExtensionsFuture_39, &ett_lte_rrc_SCGFailureInformation_r12_IEs, &ett_lte_rrc_SCGFailureInformation_v1310_IEs, - &ett_lte_rrc_T_nonCriticalExtension_41, + &ett_lte_rrc_T_nonCriticalExtension_46, &ett_lte_rrc_SCGFailureInformation_v12d0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_42, + &ett_lte_rrc_T_nonCriticalExtension_47, &ett_lte_rrc_FailureReportSCG_r12, &ett_lte_rrc_FailureReportSCG_v12d0, &ett_lte_rrc_SCGFailureInformationNR_r15, - &ett_lte_rrc_T_criticalExtensions_38, + &ett_lte_rrc_T_criticalExtensions_41, &ett_lte_rrc_T_c1_38, - &ett_lte_rrc_T_criticalExtensionsFuture_38, + &ett_lte_rrc_T_criticalExtensionsFuture_40, &ett_lte_rrc_SCGFailureInformationNR_r15_IEs, - &ett_lte_rrc_T_nonCriticalExtension_43, + &ett_lte_rrc_T_nonCriticalExtension_48, &ett_lte_rrc_FailureReportSCG_NR_r15, &ett_lte_rrc_MeasResultFreqListFailNR_r15, &ett_lte_rrc_MeasResultFreqFailNR_r15, &ett_lte_rrc_SCPTMConfiguration_r13, &ett_lte_rrc_SCPTMConfiguration_v1340, - &ett_lte_rrc_T_nonCriticalExtension_44, + &ett_lte_rrc_T_nonCriticalExtension_49, &ett_lte_rrc_SCPTMConfiguration_BR_r14, - &ett_lte_rrc_T_nonCriticalExtension_45, + &ett_lte_rrc_T_nonCriticalExtension_50, &ett_lte_rrc_SecurityModeCommand, - &ett_lte_rrc_T_criticalExtensions_39, + &ett_lte_rrc_T_criticalExtensions_42, &ett_lte_rrc_T_c1_39, - &ett_lte_rrc_T_criticalExtensionsFuture_39, + &ett_lte_rrc_T_criticalExtensionsFuture_41, &ett_lte_rrc_SecurityModeCommand_r8_IEs, &ett_lte_rrc_SecurityModeCommand_v8a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_46, + &ett_lte_rrc_T_nonCriticalExtension_51, &ett_lte_rrc_SecurityConfigSMC, &ett_lte_rrc_SecurityModeComplete, - &ett_lte_rrc_T_criticalExtensions_40, - &ett_lte_rrc_T_criticalExtensionsFuture_40, + &ett_lte_rrc_T_criticalExtensions_43, + &ett_lte_rrc_T_criticalExtensionsFuture_42, &ett_lte_rrc_SecurityModeComplete_r8_IEs, &ett_lte_rrc_SecurityModeComplete_v8a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_47, + &ett_lte_rrc_T_nonCriticalExtension_52, &ett_lte_rrc_SecurityModeFailure, - &ett_lte_rrc_T_criticalExtensions_41, - &ett_lte_rrc_T_criticalExtensionsFuture_41, + &ett_lte_rrc_T_criticalExtensions_44, + &ett_lte_rrc_T_criticalExtensionsFuture_43, &ett_lte_rrc_SecurityModeFailure_r8_IEs, &ett_lte_rrc_SecurityModeFailure_v8a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_48, + &ett_lte_rrc_T_nonCriticalExtension_53, &ett_lte_rrc_SidelinkUEInformation_r12, - &ett_lte_rrc_T_criticalExtensions_42, + &ett_lte_rrc_T_criticalExtensions_45, &ett_lte_rrc_T_c1_40, - &ett_lte_rrc_T_criticalExtensionsFuture_42, + &ett_lte_rrc_T_criticalExtensionsFuture_44, &ett_lte_rrc_SidelinkUEInformation_r12_IEs, &ett_lte_rrc_SidelinkUEInformation_v1310_IEs, &ett_lte_rrc_T_commTxResourceInfoReqRelay_r13, &ett_lte_rrc_T_discTxResourceReq_v1310, &ett_lte_rrc_SidelinkUEInformation_v1430_IEs, - &ett_lte_rrc_T_nonCriticalExtension_49, + &ett_lte_rrc_SidelinkUEInformation_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_54, &ett_lte_rrc_SL_CommTxResourceReq_r12, &ett_lte_rrc_SL_DiscTxResourceReqPerFreqList_r13, &ett_lte_rrc_SL_DiscTxResourceReq_r13, @@ -114449,13 +138093,18 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SL_V2X_CommTxFreqList_r14, &ett_lte_rrc_SL_V2X_CommTxResourceReq_r14, &ett_lte_rrc_SystemInformation, - &ett_lte_rrc_T_criticalExtensions_43, - &ett_lte_rrc_T_criticalExtensionsFuture_43, + &ett_lte_rrc_T_criticalExtensions_46, + &ett_lte_rrc_T_criticalExtensionsFuture_r15, + &ett_lte_rrc_T_criticalExtensionsFuture_45, &ett_lte_rrc_SystemInformation_r8_IEs, &ett_lte_rrc_T_sib_TypeAndInfo, &ett_lte_rrc_T_sib_TypeAndInfo_item, &ett_lte_rrc_SystemInformation_v8a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_50, + &ett_lte_rrc_T_nonCriticalExtension_55, + &ett_lte_rrc_PosSystemInformation_r15_IEs, + &ett_lte_rrc_T_posSIB_TypeAndInfo_r15, + &ett_lte_rrc_T_posSIB_TypeAndInfo_r15_item, + &ett_lte_rrc_T_nonCriticalExtension_56, &ett_lte_rrc_SystemInformationBlockType1, &ett_lte_rrc_T_cellAccessRelatedInfo, &ett_lte_rrc_T_cellSelectionInfo, @@ -114464,7 +138113,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SystemInformationBlockType1_v9e0_IEs, &ett_lte_rrc_SystemInformationBlockType1_v10j0_IEs, &ett_lte_rrc_SystemInformationBlockType1_v10l0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_51, + &ett_lte_rrc_T_nonCriticalExtension_57, &ett_lte_rrc_SystemInformationBlockType1_v920_IEs, &ett_lte_rrc_SystemInformationBlockType1_v1130_IEs, &ett_lte_rrc_SystemInformationBlockType1_v1250_IEs, @@ -114481,9 +138130,18 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SystemInformationBlockType1_v1430_IEs, &ett_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_1_r14_OF_CellAccessRelatedInfo_r14, &ett_lte_rrc_SystemInformationBlockType1_v1450_IEs, - &ett_lte_rrc_T_nonCriticalExtension_52, + &ett_lte_rrc_SystemInformationBlockType1_v1530_IEs, + &ett_lte_rrc_T_crs_IntfMitigConfig_r15, + &ett_lte_rrc_T_cellAccessRelatedInfo_5GC_r15, + &ett_lte_rrc_SEQUENCE_SIZE_1_maxPLMN_r11_OF_CellAccessRelatedInfo_5GC_r15, + &ett_lte_rrc_T_nonCriticalExtension_58, &ett_lte_rrc_PLMN_IdentityList, &ett_lte_rrc_PLMN_IdentityInfo, + &ett_lte_rrc_PLMN_IdentityList_v1530, + &ett_lte_rrc_PLMN_IdentityInfo_v1530, + &ett_lte_rrc_PLMN_IdentityList_r15, + &ett_lte_rrc_PLMN_IdentityInfo_r15, + &ett_lte_rrc_T_plmn_Identity_5GC_r15, &ett_lte_rrc_SchedulingInfoList, &ett_lte_rrc_SchedulingInfo, &ett_lte_rrc_SchedulingInfoList_BR_r13, @@ -114494,35 +138152,45 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_CellSelectionInfo_v1130, &ett_lte_rrc_CellSelectionInfo_v1250, &ett_lte_rrc_CellAccessRelatedInfo_r14, + &ett_lte_rrc_CellAccessRelatedInfo_5GC_r15, + &ett_lte_rrc_CellIdentity_5GC_r15, + &ett_lte_rrc_PosSchedulingInfoList_r15, + &ett_lte_rrc_PosSchedulingInfo_r15, + &ett_lte_rrc_PosSIB_MappingInfo_r15, + &ett_lte_rrc_PosSIB_Type_r15, &ett_lte_rrc_SystemInformationBlockType1_MBMS_r14, &ett_lte_rrc_T_cellAccessRelatedInfo_r14, - &ett_lte_rrc_T_nonCriticalExtension_53, + &ett_lte_rrc_T_nonCriticalExtension_59, &ett_lte_rrc_PLMN_IdentityList_MBMS_r14, &ett_lte_rrc_SchedulingInfoList_MBMS_r14, &ett_lte_rrc_SchedulingInfo_MBMS_r14, &ett_lte_rrc_SIB_MappingInfo_MBMS_r14, &ett_lte_rrc_NonMBSFN_SubframeConfig_r14, &ett_lte_rrc_UEAssistanceInformation_r11, - &ett_lte_rrc_T_criticalExtensions_44, + &ett_lte_rrc_T_criticalExtensions_47, &ett_lte_rrc_T_c1_41, - &ett_lte_rrc_T_criticalExtensionsFuture_44, + &ett_lte_rrc_T_criticalExtensionsFuture_46, &ett_lte_rrc_UEAssistanceInformation_r11_IEs, &ett_lte_rrc_UEAssistanceInformation_v1430_IEs, &ett_lte_rrc_T_sps_AssistanceInformation_r14, &ett_lte_rrc_T_rlm_Report_r14, &ett_lte_rrc_UEAssistanceInformation_v1450_IEs, - &ett_lte_rrc_T_nonCriticalExtension_54, + &ett_lte_rrc_UEAssistanceInformation_v1530_IEs, + &ett_lte_rrc_T_sps_AssistanceInformation_v1530, + &ett_lte_rrc_T_nonCriticalExtension_60, &ett_lte_rrc_BW_Preference_r14, &ett_lte_rrc_TrafficPatternInfoList_r14, &ett_lte_rrc_TrafficPatternInfo_r14, + &ett_lte_rrc_TrafficPatternInfoList_v1530, + &ett_lte_rrc_TrafficPatternInfo_v1530, &ett_lte_rrc_DelayBudgetReport_r14, &ett_lte_rrc_OverheatingAssistance_r14, &ett_lte_rrc_T_reducedUE_Category, &ett_lte_rrc_T_reducedMaxCCs, &ett_lte_rrc_UECapabilityEnquiry, - &ett_lte_rrc_T_criticalExtensions_45, + &ett_lte_rrc_T_criticalExtensions_48, &ett_lte_rrc_T_c1_42, - &ett_lte_rrc_T_criticalExtensionsFuture_45, + &ett_lte_rrc_T_criticalExtensionsFuture_47, &ett_lte_rrc_UECapabilityEnquiry_r8_IEs, &ett_lte_rrc_UECapabilityEnquiry_v8a0_IEs, &ett_lte_rrc_UECapabilityEnquiry_v1180_IEs, @@ -114530,39 +138198,42 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_UECapabilityEnquiry_v1310_IEs, &ett_lte_rrc_UECapabilityEnquiry_v1430_IEs, &ett_lte_rrc_UECapabilityEnquiry_v1510_IEs, - &ett_lte_rrc_T_nonCriticalExtension_55, + &ett_lte_rrc_UECapabilityEnquiry_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_61, &ett_lte_rrc_UE_CapabilityRequest, &ett_lte_rrc_UECapabilityInformation, - &ett_lte_rrc_T_criticalExtensions_46, + &ett_lte_rrc_T_criticalExtensions_49, &ett_lte_rrc_T_c1_43, - &ett_lte_rrc_T_criticalExtensionsFuture_46, + &ett_lte_rrc_T_criticalExtensionsFuture_48, &ett_lte_rrc_UECapabilityInformation_r8_IEs, &ett_lte_rrc_UECapabilityInformation_v8a0_IEs, &ett_lte_rrc_UECapabilityInformation_v1250_IEs, - &ett_lte_rrc_T_nonCriticalExtension_56, + &ett_lte_rrc_T_nonCriticalExtension_62, &ett_lte_rrc_UEInformationRequest_r9, - &ett_lte_rrc_T_criticalExtensions_47, + &ett_lte_rrc_T_criticalExtensions_50, &ett_lte_rrc_T_c1_44, - &ett_lte_rrc_T_criticalExtensionsFuture_47, + &ett_lte_rrc_T_criticalExtensionsFuture_49, &ett_lte_rrc_UEInformationRequest_r9_IEs, &ett_lte_rrc_UEInformationRequest_v930_IEs, &ett_lte_rrc_UEInformationRequest_v1020_IEs, &ett_lte_rrc_UEInformationRequest_v1130_IEs, &ett_lte_rrc_UEInformationRequest_v1250_IEs, - &ett_lte_rrc_T_nonCriticalExtension_57, + &ett_lte_rrc_UEInformationRequest_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_63, &ett_lte_rrc_UEInformationResponse_r9, - &ett_lte_rrc_T_criticalExtensions_48, + &ett_lte_rrc_T_criticalExtensions_51, &ett_lte_rrc_T_c1_45, - &ett_lte_rrc_T_criticalExtensionsFuture_48, + &ett_lte_rrc_T_criticalExtensionsFuture_50, &ett_lte_rrc_UEInformationResponse_r9_IEs, &ett_lte_rrc_T_rach_Report_r9, &ett_lte_rrc_UEInformationResponse_v9e0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_58, + &ett_lte_rrc_T_nonCriticalExtension_64, &ett_lte_rrc_UEInformationResponse_v930_IEs, &ett_lte_rrc_UEInformationResponse_v1020_IEs, &ett_lte_rrc_UEInformationResponse_v1130_IEs, &ett_lte_rrc_UEInformationResponse_v1250_IEs, - &ett_lte_rrc_T_nonCriticalExtension_59, + &ett_lte_rrc_UEInformationResponse_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_65, &ett_lte_rrc_RLF_Report_r9, &ett_lte_rrc_T_measResultLastServCell_r9, &ett_lte_rrc_T_measResultNeighCells_r9, @@ -114602,34 +138273,39 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_ConnEstFailReport_r11, &ett_lte_rrc_T_measResultFailedCell_r11, &ett_lte_rrc_T_measResultNeighCells_r11, + &ett_lte_rrc_FlightPathInfoReport_r15, + &ett_lte_rrc_SEQUENCE_SIZE_1_maxWayPoint_r15_OF_WayPointLocation_r15, + &ett_lte_rrc_T_nonCriticalExtension_66, + &ett_lte_rrc_WayPointLocation_r15, &ett_lte_rrc_ULHandoverPreparationTransfer, - &ett_lte_rrc_T_criticalExtensions_49, + &ett_lte_rrc_T_criticalExtensions_52, &ett_lte_rrc_T_c1_46, - &ett_lte_rrc_T_criticalExtensionsFuture_49, + &ett_lte_rrc_T_criticalExtensionsFuture_51, &ett_lte_rrc_ULHandoverPreparationTransfer_r8_IEs, &ett_lte_rrc_ULHandoverPreparationTransfer_v8a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_60, + &ett_lte_rrc_T_nonCriticalExtension_67, &ett_lte_rrc_ULInformationTransfer, - &ett_lte_rrc_T_criticalExtensions_50, + &ett_lte_rrc_T_criticalExtensions_53, &ett_lte_rrc_T_c1_47, - &ett_lte_rrc_T_criticalExtensionsFuture_50, + &ett_lte_rrc_T_criticalExtensionsFuture_52, &ett_lte_rrc_ULInformationTransfer_r8_IEs, &ett_lte_rrc_T_dedicatedInfoType_01, &ett_lte_rrc_ULInformationTransfer_v8a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_61, + &ett_lte_rrc_T_nonCriticalExtension_68, &ett_lte_rrc_ULInformationTransferMRDC_r15, - &ett_lte_rrc_T_criticalExtensions_51, + &ett_lte_rrc_T_criticalExtensions_54, &ett_lte_rrc_T_c1_48, - &ett_lte_rrc_T_criticalExtensionsFuture_51, + &ett_lte_rrc_T_criticalExtensionsFuture_53, &ett_lte_rrc_ULInformationTransferMRDC_r15_IEs, - &ett_lte_rrc_T_nonCriticalExtension_62, + &ett_lte_rrc_T_nonCriticalExtension_69, &ett_lte_rrc_WLANConnectionStatusReport_r13, - &ett_lte_rrc_T_criticalExtensions_52, + &ett_lte_rrc_T_criticalExtensions_55, &ett_lte_rrc_T_c1_49, - &ett_lte_rrc_T_criticalExtensionsFuture_52, + &ett_lte_rrc_T_criticalExtensionsFuture_54, &ett_lte_rrc_WLANConnectionStatusReport_r13_IEs, &ett_lte_rrc_WLANConnectionStatusReport_v1430_IEs, - &ett_lte_rrc_T_nonCriticalExtension_63, + &ett_lte_rrc_T_nonCriticalExtension_70, + &ett_lte_rrc_SystemInformationBlockPos_r15, &ett_lte_rrc_SystemInformationBlockType2, &ett_lte_rrc_T_ac_BarringInfo, &ett_lte_rrc_T_freqInfo, @@ -114641,7 +138317,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SystemInformationBlockType2_v10m0_IEs, &ett_lte_rrc_T_freqInfo_v10l0, &ett_lte_rrc_SEQUENCE_SIZE_1_maxMultiBands_OF_AdditionalSpectrumEmission_v10l0, - &ett_lte_rrc_T_nonCriticalExtension_65, + &ett_lte_rrc_T_nonCriticalExtension_72, &ett_lte_rrc_AC_BarringConfig, &ett_lte_rrc_MBSFN_SubframeConfigList, &ett_lte_rrc_MBSFN_SubframeConfigList_v1430, @@ -114673,10 +138349,12 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_CellReselectionServingFreqInfo_v1310, &ett_lte_rrc_SystemInformationBlockType3_v10j0_IEs, &ett_lte_rrc_SystemInformationBlockType3_v10l0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_66, + &ett_lte_rrc_T_nonCriticalExtension_73, &ett_lte_rrc_CellReselectionInfoCommon_v1460, + &ett_lte_rrc_CellReselectionInfoHSDN_r15, &ett_lte_rrc_SystemInformationBlockType4, &ett_lte_rrc_IntraFreqNeighCellList, + &ett_lte_rrc_IntraFreqNeighHSDN_CellList_r15, &ett_lte_rrc_IntraFreqNeighCellInfo, &ett_lte_rrc_IntraFreqBlackCellList, &ett_lte_rrc_SystemInformationBlockType5, @@ -114689,17 +138367,19 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SystemInformationBlockType5_v10l0_IEs, &ett_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_InterFreqCarrierFreqInfo_v10l0, &ett_lte_rrc_SystemInformationBlockType5_v13a0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_67, + &ett_lte_rrc_T_nonCriticalExtension_74, &ett_lte_rrc_InterFreqCarrierFreqList, &ett_lte_rrc_InterFreqCarrierFreqList_v1250, &ett_lte_rrc_InterFreqCarrierFreqList_v1310, &ett_lte_rrc_InterFreqCarrierFreqList_v1350, &ett_lte_rrc_InterFreqCarrierFreqList_v13a0, + &ett_lte_rrc_InterFreqCarrierFreqList_v1530, &ett_lte_rrc_InterFreqCarrierFreqListExt_r12, &ett_lte_rrc_InterFreqCarrierFreqListExt_v1280, &ett_lte_rrc_InterFreqCarrierFreqListExt_v1310, &ett_lte_rrc_InterFreqCarrierFreqListExt_v1350, &ett_lte_rrc_InterFreqCarrierFreqListExt_v1360, + &ett_lte_rrc_InterFreqCarrierFreqListExt_v1530, &ett_lte_rrc_InterFreqCarrierFreqInfo, &ett_lte_rrc_T_threshX_Q_r9, &ett_lte_rrc_InterFreqCarrierFreqInfo_v8h0, @@ -114712,7 +138392,9 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_InterFreqCarrierFreqInfo_v1310, &ett_lte_rrc_InterFreqCarrierFreqInfo_v1350, &ett_lte_rrc_InterFreqCarrierFreqInfo_v1360, + &ett_lte_rrc_InterFreqCarrierFreqInfo_v1530, &ett_lte_rrc_InterFreqNeighCellList, + &ett_lte_rrc_InterFreqNeighHSDN_CellList_r15, &ett_lte_rrc_InterFreqNeighCellInfo, &ett_lte_rrc_InterFreqBlackCellList, &ett_lte_rrc_RedistributionInterFreqInfo_r13, @@ -114723,7 +138405,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_TDD_Carrier_OF_CarrierFreqInfoUTRA_v1250, &ett_lte_rrc_SystemInformationBlockType6_v8h0_IEs, &ett_lte_rrc_SEQUENCE_SIZE_1_maxUTRA_FDD_Carrier_OF_CarrierFreqInfoUTRA_FDD_v8h0, - &ett_lte_rrc_T_nonCriticalExtension_68, + &ett_lte_rrc_T_nonCriticalExtension_75, &ett_lte_rrc_CarrierFreqInfoUTRA_v1250, &ett_lte_rrc_CarrierFreqListUTRA_FDD, &ett_lte_rrc_CarrierFreqUTRA_FDD, @@ -114824,6 +138506,22 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14, &ett_lte_rrc_SystemInformationBlockType21_r14, &ett_lte_rrc_SL_V2X_ConfigCommon_r14, + &ett_lte_rrc_SystemInformationBlockType24_r15, + &ett_lte_rrc_CarrierFreqListNR_r15, + &ett_lte_rrc_CarrierFreqNR_r15, + &ett_lte_rrc_T_threshX_Q_r15, + &ett_lte_rrc_SystemInformationBlockType25_r15, + &ett_lte_rrc_T_uac_AC1_SelectAssistInfo_r15, + &ett_lte_rrc_SEQUENCE_SIZE_2_maxPLMN_r11_OF_UAC_AC1_SelectAssistInfo_r15, + &ett_lte_rrc_UAC_BarringPerPLMN_List_r15, + &ett_lte_rrc_UAC_BarringPerPLMN_r15, + &ett_lte_rrc_T_uac_AC_BarringListType_r15, + &ett_lte_rrc_SEQUENCE_SIZE_maxAccessCat_1_r15_OF_UAC_BarringInfoSetIndex_r15, + &ett_lte_rrc_UAC_BarringPerCatList_r15, + &ett_lte_rrc_UAC_BarringPerCat_r15, + &ett_lte_rrc_UAC_BarringInfoSetList_r15, + &ett_lte_rrc_UAC_BarringInfoSet_r15, + &ett_lte_rrc_SystemInformationBlockType26_r15, &ett_lte_rrc_AntennaInfoCommon, &ett_lte_rrc_AntennaInfoDedicated, &ett_lte_rrc_T_codebookSubsetRestriction, @@ -114835,18 +138533,26 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_AntennaInfoDedicated_v10i0, &ett_lte_rrc_AntennaInfoDedicated_v1250, &ett_lte_rrc_AntennaInfoDedicated_v1430, + &ett_lte_rrc_AntennaInfoDedicatedSTTI_r15, + &ett_lte_rrc_T_setup_07, + &ett_lte_rrc_T_codebookSubsetRestriction_01, + &ett_lte_rrc_AntennaInfoDedicated_v1530, + &ett_lte_rrc_T_setup_08, &ett_lte_rrc_AntennaInfoUL_r10, + &ett_lte_rrc_AntennaInfoUL_STTI_r15, + &ett_lte_rrc_AUL_Config_r15, + &ett_lte_rrc_T_setup_09, &ett_lte_rrc_CQI_ReportAperiodic_r10, - &ett_lte_rrc_T_setup_07, + &ett_lte_rrc_T_setup_10, &ett_lte_rrc_T_aperiodicCSI_Trigger_r10, &ett_lte_rrc_CQI_ReportAperiodic_v1250, - &ett_lte_rrc_T_setup_08, + &ett_lte_rrc_T_setup_11, &ett_lte_rrc_T_aperiodicCSI_Trigger_v1250, &ett_lte_rrc_CQI_ReportAperiodic_v1310, - &ett_lte_rrc_T_setup_09, + &ett_lte_rrc_T_setup_12, &ett_lte_rrc_T_aperiodicCSI_Trigger_v1310, &ett_lte_rrc_T_aperiodicCSI_Trigger2_r13, - &ett_lte_rrc_T_setup_10, + &ett_lte_rrc_T_setup_13, &ett_lte_rrc_CQI_ReportAperiodicProc_r11, &ett_lte_rrc_CQI_ReportAperiodicProc_v1310, &ett_lte_rrc_CQI_ReportAperiodicHybrid_r14, @@ -114868,29 +138574,40 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_CQI_ReportConfig_v920, &ett_lte_rrc_CQI_ReportConfig_r10, &ett_lte_rrc_T_csi_SubframePatternConfig_r10, - &ett_lte_rrc_T_setup_11, + &ett_lte_rrc_T_setup_14, &ett_lte_rrc_CQI_ReportConfig_v1130, &ett_lte_rrc_CQI_ReportConfig_v1250, &ett_lte_rrc_T_csi_SubframePatternConfig_r12, - &ett_lte_rrc_T_setup_12, + &ett_lte_rrc_T_setup_15, &ett_lte_rrc_CQI_ReportConfig_v1310, &ett_lte_rrc_CQI_ReportConfig_v1320, &ett_lte_rrc_CQI_ReportConfig_v1430, + &ett_lte_rrc_CQI_ReportConfig_v1530, + &ett_lte_rrc_CQI_ReportConfig_r15, + &ett_lte_rrc_T_setup_16, &ett_lte_rrc_CQI_ReportConfigSCell_r10, + &ett_lte_rrc_CQI_ReportConfigSCell_r15, &ett_lte_rrc_CQI_ReportPeriodic, - &ett_lte_rrc_T_setup_13, + &ett_lte_rrc_T_setup_17, &ett_lte_rrc_T_cqi_FormatIndicatorPeriodic, &ett_lte_rrc_T_subbandCQI, &ett_lte_rrc_CQI_ReportPeriodic_r10, - &ett_lte_rrc_T_setup_14, + &ett_lte_rrc_T_setup_18, &ett_lte_rrc_T_cqi_FormatIndicatorPeriodic_r10, &ett_lte_rrc_T_widebandCQI_r10, &ett_lte_rrc_T_subbandCQI_r10, &ett_lte_rrc_T_csi_ConfigIndex_r10, - &ett_lte_rrc_T_setup_15, + &ett_lte_rrc_T_setup_19, &ett_lte_rrc_CQI_ReportPeriodic_v1130, &ett_lte_rrc_CQI_ReportPeriodic_v1310, &ett_lte_rrc_CQI_ReportPeriodic_v1320, + &ett_lte_rrc_CQI_ReportPeriodicSCell_r15, + &ett_lte_rrc_T_setup_20, + &ett_lte_rrc_T_csi_SubframePatternDormant_r15, + &ett_lte_rrc_T_setup_21, + &ett_lte_rrc_T_cqi_FormatIndicatorDormant_r15, + &ett_lte_rrc_T_widebandCQI_r15, + &ett_lte_rrc_T_subbandCQI_r15, &ett_lte_rrc_CQI_ReportPeriodicProcExtToAddModList_r11, &ett_lte_rrc_CQI_ReportPeriodicProcExtToReleaseList_r11, &ett_lte_rrc_CQI_ReportPeriodicProcExt_r11, @@ -114898,9 +138615,14 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_widebandCQI_r11, &ett_lte_rrc_T_subbandCQI_r11, &ett_lte_rrc_T_csi_ConfigIndex_r11, - &ett_lte_rrc_T_setup_16, + &ett_lte_rrc_T_setup_22, + &ett_lte_rrc_CQI_ShortConfigSCell_r15, + &ett_lte_rrc_T_setup_23, + &ett_lte_rrc_T_cqi_FormatIndicatorShort_r15, + &ett_lte_rrc_T_widebandCQI_Short_r15, + &ett_lte_rrc_T_subbandCQI_Short_r15, &ett_lte_rrc_CRI_ReportConfig_r13, - &ett_lte_rrc_T_setup_17, + &ett_lte_rrc_T_setup_24, &ett_lte_rrc_CrossCarrierSchedulingConfig_r10, &ett_lte_rrc_T_schedulingCellInfo_r10, &ett_lte_rrc_T_own_r10, @@ -114920,13 +138642,17 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_cqi_ReportAperiodicProc2_v1310, &ett_lte_rrc_CSI_RS_Config_r10, &ett_lte_rrc_T_csi_RS_r10, - &ett_lte_rrc_T_setup_18, + &ett_lte_rrc_T_setup_25, &ett_lte_rrc_CSI_RS_Config_v1250, &ett_lte_rrc_T_ds_ZeroTxPowerCSI_RS_r12, - &ett_lte_rrc_T_setup_19, + &ett_lte_rrc_T_setup_26, &ett_lte_rrc_SEQUENCE_SIZE_1_maxDS_ZTP_CSI_RS_r12_OF_ZeroTxPowerCSI_RS_r12, &ett_lte_rrc_CSI_RS_Config_v1310, &ett_lte_rrc_CSI_RS_Config_v1430, + &ett_lte_rrc_CSI_RS_Config_v1480, + &ett_lte_rrc_CSI_RS_Config_v1530, + &ett_lte_rrc_CSI_RS_Config_r15, + &ett_lte_rrc_T_setup_27, &ett_lte_rrc_ZeroTxPowerCSI_RS_Conf_r12, &ett_lte_rrc_ZeroTxPowerCSI_RS_r12, &ett_lte_rrc_CSI_RS_ConfigBeamformed_r13, @@ -114941,23 +138667,29 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_CSI_RS_Config_NZP_v1430, &ett_lte_rrc_CSI_RS_ConfigNZP_Activation_r14, &ett_lte_rrc_CSI_RS_ConfigEMIMO_r13, - &ett_lte_rrc_T_setup_20, + &ett_lte_rrc_T_setup_28, &ett_lte_rrc_CSI_RS_ConfigEMIMO_v1430, - &ett_lte_rrc_T_setup_21, + &ett_lte_rrc_T_setup_29, + &ett_lte_rrc_CSI_RS_ConfigEMIMO_v1480, + &ett_lte_rrc_T_setup_30, + &ett_lte_rrc_CSI_RS_ConfigEMIMO_v1530, + &ett_lte_rrc_T_setup_31, &ett_lte_rrc_CSI_RS_ConfigEMIMO2_r14, &ett_lte_rrc_CSI_RS_ConfigEMIMO_Hybrid_r14, - &ett_lte_rrc_T_setup_22, + &ett_lte_rrc_T_setup_32, &ett_lte_rrc_CSI_RS_ConfigNonPrecoded_r13, &ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_CSI_IM_ConfigId_r13, &ett_lte_rrc_CSI_RS_ConfigNonPrecoded_v1430, + &ett_lte_rrc_CSI_RS_ConfigNonPrecoded_v1480, + &ett_lte_rrc_CSI_RS_ConfigNonPrecoded_v1530, &ett_lte_rrc_CSI_RS_ConfigNZP_r11, &ett_lte_rrc_T_qcl_CRS_Info_r11, &ett_lte_rrc_T_mbsfn_SubframeConfigList_r11, - &ett_lte_rrc_T_setup_23, + &ett_lte_rrc_T_setup_33, &ett_lte_rrc_T_mbsfn_SubframeConfigList_v1430, - &ett_lte_rrc_T_setup_24, + &ett_lte_rrc_T_setup_34, &ett_lte_rrc_CSI_RS_ConfigNZP_EMIMO_r13, - &ett_lte_rrc_T_setup_25, + &ett_lte_rrc_T_setup_35, &ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_NZP_ResourceConfig_r13, &ett_lte_rrc_CSI_RS_ConfigNZP_EMIMO_v1430, &ett_lte_rrc_SEQUENCE_SIZE_0_4_OF_NZP_ResourceConfig_r13, @@ -114966,13 +138698,13 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_CSI_RS_ConfigZP_ApList_r14, &ett_lte_rrc_SEQUENCE_SIZE_1_maxCSI_RS_ZP_r11_OF_CSI_RS_ConfigZP_r11, &ett_lte_rrc_DMRS_Config_r11, - &ett_lte_rrc_T_setup_26, + &ett_lte_rrc_T_setup_36, &ett_lte_rrc_DMRS_Config_v1310, &ett_lte_rrc_EPDCCH_Config_r11, &ett_lte_rrc_T_config_r11, - &ett_lte_rrc_T_setup_27, + &ett_lte_rrc_T_setup_37, &ett_lte_rrc_T_subframePatternConfig_r11, - &ett_lte_rrc_T_setup_28, + &ett_lte_rrc_T_setup_38, &ett_lte_rrc_EPDCCH_SetConfigToAddModList_r11, &ett_lte_rrc_EPDCCH_SetConfigToReleaseList_r11, &ett_lte_rrc_EPDCCH_SetConfig_r11, @@ -114980,41 +138712,49 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_csi_RS_ConfigZPId2_r12, &ett_lte_rrc_T_numberPRB_Pairs_v1310, &ett_lte_rrc_T_mpdcch_config_r13, - &ett_lte_rrc_T_setup_30, + &ett_lte_rrc_T_setup_40, &ett_lte_rrc_T_mpdcch_StartSF_UESS_r13, &ett_lte_rrc_EIMTA_MainConfig_r12, - &ett_lte_rrc_T_setup_31, + &ett_lte_rrc_T_setup_41, &ett_lte_rrc_EIMTA_MainConfigServCell_r12, - &ett_lte_rrc_T_setup_32, + &ett_lte_rrc_T_setup_42, &ett_lte_rrc_T_mbsfn_SubframeConfigList_v1250, - &ett_lte_rrc_T_setup_33, + &ett_lte_rrc_T_setup_43, &ett_lte_rrc_LogicalChannelConfig, &ett_lte_rrc_T_ul_SpecificParameters, + &ett_lte_rrc_T_allowedTTI_Lengths_r15, + &ett_lte_rrc_T_setup_44, + &ett_lte_rrc_T_logicalChannelSR_Restriction_r15, + &ett_lte_rrc_T_channellAccessPriority_r15, &ett_lte_rrc_LWA_Configuration_r13, - &ett_lte_rrc_T_setup_34, + &ett_lte_rrc_T_setup_46, &ett_lte_rrc_LWA_Config_r13, &ett_lte_rrc_LWIP_Configuration_r13, - &ett_lte_rrc_T_setup_35, + &ett_lte_rrc_T_setup_47, &ett_lte_rrc_LWIP_Config_r13, &ett_lte_rrc_MAC_MainConfig, &ett_lte_rrc_T_ul_SCH_Config, &ett_lte_rrc_T_phr_Config, - &ett_lte_rrc_T_setup_36, + &ett_lte_rrc_T_setup_48, &ett_lte_rrc_T_mac_MainConfig_v1020, &ett_lte_rrc_T_dualConnectivityPHR, - &ett_lte_rrc_T_setup_37, + &ett_lte_rrc_T_setup_49, &ett_lte_rrc_T_logicalChannelSR_Config_r12, - &ett_lte_rrc_T_setup_38, + &ett_lte_rrc_T_setup_50, &ett_lte_rrc_T_eDRX_Config_CycleStartOffset_r13, - &ett_lte_rrc_T_setup_39, + &ett_lte_rrc_T_setup_51, &ett_lte_rrc_T_drx_Config_r13, &ett_lte_rrc_T_skipUplinkTx_r14, - &ett_lte_rrc_T_setup_40, + &ett_lte_rrc_T_setup_52, &ett_lte_rrc_T_dataInactivityTimerConfig_r14, - &ett_lte_rrc_T_setup_41, + &ett_lte_rrc_T_setup_53, + &ett_lte_rrc_T_shortTTI_AndSPT_r15, + &ett_lte_rrc_T_setup_54, + &ett_lte_rrc_T_dormantStateTimers_r15, + &ett_lte_rrc_T_setup_55, &ett_lte_rrc_MAC_MainConfigSCell_r11, &ett_lte_rrc_DRX_Config, - &ett_lte_rrc_T_setup_42, + &ett_lte_rrc_T_setup_56, &ett_lte_rrc_T_longDRX_CycleStartOffset, &ett_lte_rrc_T_shortDRX, &ett_lte_rrc_DRX_Config_v1130, @@ -115022,6 +138762,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_DRX_Config_v1310, &ett_lte_rrc_T_longDRX_CycleStartOffset_v1310, &ett_lte_rrc_DRX_Config_r13, + &ett_lte_rrc_DRX_Config_r15, &ett_lte_rrc_STAG_ToReleaseList_r11, &ett_lte_rrc_STAG_ToAddModList_r11, &ett_lte_rrc_STAG_ToAddMod_r11, @@ -115031,14 +138772,16 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_nonPrecoded_r13, &ett_lte_rrc_T_beamformedK1a_r13, &ett_lte_rrc_T_beamformedKN_r13, + &ett_lte_rrc_P_C_AndCBSR_r15, &ett_lte_rrc_P_C_AndCBSR_Pair_r13a, &ett_lte_rrc_P_C_AndCBSR_Pair_r13, + &ett_lte_rrc_P_C_AndCBSR_Pair_r15, &ett_lte_rrc_PDCCH_ConfigSCell_r13, &ett_lte_rrc_PDCCH_ConfigLAA_r14, &ett_lte_rrc_PDCCH_CandidateReductions_r13, - &ett_lte_rrc_T_setup_43, + &ett_lte_rrc_T_setup_57, &ett_lte_rrc_PDCCH_CandidateReductionsLAA_UL_r14, - &ett_lte_rrc_T_setup_44, + &ett_lte_rrc_T_setup_58, &ett_lte_rrc_PDCP_Config, &ett_lte_rrc_T_rlc_AM, &ett_lte_rrc_T_rlc_UM, @@ -115047,12 +138790,15 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_profiles, &ett_lte_rrc_T_ul_DataSplitThreshold_r13, &ett_lte_rrc_T_statusFeedback_r13, - &ett_lte_rrc_T_setup_46, + &ett_lte_rrc_T_setup_60, &ett_lte_rrc_T_ul_LWA_Config_r14, - &ett_lte_rrc_T_setup_47, + &ett_lte_rrc_T_setup_61, &ett_lte_rrc_T_uplinkOnlyHeaderCompression_r14, &ett_lte_rrc_T_rohc_r14, &ett_lte_rrc_T_profiles_r14, + &ett_lte_rrc_T_uplinkDataCompression_r15, + &ett_lte_rrc_T_pdcp_DuplicationConfig_r15, + &ett_lte_rrc_T_setup_62, &ett_lte_rrc_PDSCH_ConfigCommon, &ett_lte_rrc_PDSCH_ConfigCommon_v1310, &ett_lte_rrc_PDSCH_ConfigDedicated, @@ -115060,15 +138806,18 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_PDSCH_ConfigDedicated_v1280, &ett_lte_rrc_PDSCH_ConfigDedicated_v1310, &ett_lte_rrc_PDSCH_ConfigDedicated_v1430, + &ett_lte_rrc_PDSCH_ConfigDedicated_v1530, &ett_lte_rrc_PDSCH_ConfigDedicatedSCell_v1430, &ett_lte_rrc_RE_MappingQCLConfigToAddModList_r11, &ett_lte_rrc_RE_MappingQCLConfigToReleaseList_r11, &ett_lte_rrc_PDSCH_RE_MappingQCL_Config_r11, &ett_lte_rrc_T_optionalSetOfFields_r11, &ett_lte_rrc_T_mbsfn_SubframeConfigList_r11_01, - &ett_lte_rrc_T_setup_48, + &ett_lte_rrc_T_setup_63, &ett_lte_rrc_T_mbsfn_SubframeConfigList_v1430_01, - &ett_lte_rrc_T_setup_49, + &ett_lte_rrc_T_setup_64, + &ett_lte_rrc_T_codewordOneConfig_v1530, + &ett_lte_rrc_T_setup_65, &ett_lte_rrc_PerCC_GapIndicationList_r14, &ett_lte_rrc_PerCC_GapIndication_r14, &ett_lte_rrc_PHICH_Config, @@ -115076,46 +138825,67 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_antennaInfo, &ett_lte_rrc_T_antennaInfo_r10, &ett_lte_rrc_T_additionalSpectrumEmissionCA_r10, - &ett_lte_rrc_T_setup_50, + &ett_lte_rrc_T_setup_66, &ett_lte_rrc_T_ce_Mode_r13, &ett_lte_rrc_T_typeA_SRS_TPC_PDCCH_Group_r14, &ett_lte_rrc_SEQUENCE_SIZE_1_32_OF_SRS_TPC_PDCCH_Config_r14, &ett_lte_rrc_T_must_Config_r14, - &ett_lte_rrc_T_setup_52, + &ett_lte_rrc_T_setup_68, &ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_UL_ConfigDedicated, &ett_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_UL_ConfigDedicatedUpPTsExt_r13, &ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_UL_ConfigDedicatedAperiodic_r10, &ett_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13, + &ett_lte_rrc_T_semiStaticCFI_Config_r15, + &ett_lte_rrc_T_setup_69, + &ett_lte_rrc_T_blindPDSCH_Repetition_Config_r15, + &ett_lte_rrc_T_setup_70, &ett_lte_rrc_PhysicalConfigDedicated_v1370, &ett_lte_rrc_PhysicalConfigDedicatedSCell_r10, &ett_lte_rrc_T_nonUL_Configuration_r10, &ett_lte_rrc_T_ul_Configuration_r10, &ett_lte_rrc_T_pucch_SCell, - &ett_lte_rrc_T_setup_53, + &ett_lte_rrc_T_setup_71, &ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_SoundingRS_AperiodicSet_r14, &ett_lte_rrc_SEQUENCE_SIZE_1_4_OF_SoundingRS_AperiodicSetUpPTsExt_r14, &ett_lte_rrc_T_must_Config_r14_01, - &ett_lte_rrc_T_setup_54, + &ett_lte_rrc_T_setup_72, + &ett_lte_rrc_T_semiStaticCFI_Config_r15_01, + &ett_lte_rrc_T_setup_73, + &ett_lte_rrc_T_blindPDSCH_Repetition_Config_r15_01, + &ett_lte_rrc_T_setup_74, &ett_lte_rrc_PhysicalConfigDedicatedSCell_v1370, &ett_lte_rrc_T_pucch_SCell_v1370, - &ett_lte_rrc_T_setup_55, + &ett_lte_rrc_T_setup_75, + &ett_lte_rrc_CFI_Config_r15, + &ett_lte_rrc_CFI_PatternConfig_r15, + &ett_lte_rrc_T_cfi_PatternSubframe_r15, + &ett_lte_rrc_T_cfi_PatternSlotSubslot_r15, &ett_lte_rrc_LAA_SCellConfiguration_r13, &ett_lte_rrc_LAA_SCellConfiguration_v1430, &ett_lte_rrc_T_crossCarrierSchedulingConfig_UL_r14, - &ett_lte_rrc_T_setup_56, + &ett_lte_rrc_T_setup_76, + &ett_lte_rrc_LAA_SCellConfiguration_v1530, + &ett_lte_rrc_PUSCH_ModeConfigLAA_r15, &ett_lte_rrc_LBT_Config_r14, &ett_lte_rrc_CSI_RS_ConfigNZPToAddModList_r11, &ett_lte_rrc_CSI_RS_ConfigNZPToAddModListExt_r13, + &ett_lte_rrc_CSI_RS_ConfigNZPToAddModList_r15, &ett_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r11, &ett_lte_rrc_CSI_RS_ConfigNZPToReleaseListExt_r13, + &ett_lte_rrc_CSI_RS_ConfigNZPToReleaseList_r15, &ett_lte_rrc_CSI_RS_ConfigZPToAddModList_r11, &ett_lte_rrc_CSI_RS_ConfigZPToReleaseList_r11, + &ett_lte_rrc_PhysicalConfigDedicatedSTTI_r15, + &ett_lte_rrc_T_setup_77, &ett_lte_rrc_SoundingRS_AperiodicSet_r14, &ett_lte_rrc_SEQUENCE_SIZE_1_4_OF_SRS_CC_SetIndex_r14, &ett_lte_rrc_SoundingRS_AperiodicSetUpPTsExt_r14, + &ett_lte_rrc_ShortTTI_r15, &ett_lte_rrc_PRACH_ConfigSIB, &ett_lte_rrc_PRACH_ConfigSIB_v1310, &ett_lte_rrc_T_mpdcch_startSF_CSS_RA_r13, + &ett_lte_rrc_PRACH_ConfigSIB_v1530, + &ett_lte_rrc_SEQUENCE_SIZE_1_maxCE_Level_r13_OF_EDT_PRACH_ParametersCE_r15, &ett_lte_rrc_PRACH_Config, &ett_lte_rrc_PRACH_Config_v1310, &ett_lte_rrc_T_mpdcch_startSF_CSS_RA_r13_01, @@ -115125,40 +138895,43 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_PRACH_ParametersListCE_r13, &ett_lte_rrc_PRACH_ParametersCE_r13, &ett_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r13, + &ett_lte_rrc_EDT_PRACH_ParametersCE_r15, + &ett_lte_rrc_T_edt_PRACH_ParametersCE_r15, + &ett_lte_rrc_T_mpdcch_NarrowbandsToMonitor_r15, &ett_lte_rrc_RSRP_ThresholdsPrachInfoList_r13, &ett_lte_rrc_PUCCH_ConfigCommon, &ett_lte_rrc_PUCCH_ConfigCommon_v1310, &ett_lte_rrc_PUCCH_ConfigCommon_v1430, &ett_lte_rrc_PUCCH_ConfigDedicated, &ett_lte_rrc_T_ackNackRepetition, - &ett_lte_rrc_T_setup_57, + &ett_lte_rrc_T_setup_78, &ett_lte_rrc_PUCCH_ConfigDedicated_v1020, &ett_lte_rrc_T_pucch_Format_r10, &ett_lte_rrc_T_channelSelection_r10, &ett_lte_rrc_T_n1PUCCH_AN_CS_r10, - &ett_lte_rrc_T_setup_58, + &ett_lte_rrc_T_setup_79, &ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_N1PUCCH_AN_CS_r10, &ett_lte_rrc_PUCCH_ConfigDedicated_v1130, &ett_lte_rrc_T_n1PUCCH_AN_CS_v1130, - &ett_lte_rrc_T_setup_59, + &ett_lte_rrc_T_setup_80, &ett_lte_rrc_T_n1PUCCH_AN_CS_ListP1_r11, &ett_lte_rrc_T_nPUCCH_Param_r11, - &ett_lte_rrc_T_setup_60, + &ett_lte_rrc_T_setup_81, &ett_lte_rrc_PUCCH_ConfigDedicated_v1250, &ett_lte_rrc_T_nkaPUCCH_Param_r12, - &ett_lte_rrc_T_setup_61, + &ett_lte_rrc_T_setup_82, &ett_lte_rrc_PUCCH_ConfigDedicated_r13, &ett_lte_rrc_T_ackNackRepetition_r13, - &ett_lte_rrc_T_setup_62, + &ett_lte_rrc_T_setup_83, &ett_lte_rrc_T_pucch_Format_r13, &ett_lte_rrc_T_format3_r13, &ett_lte_rrc_T_n3PUCCH_AN_List_r13, &ett_lte_rrc_T_twoAntennaPortActivatedPUCCH_Format3_r13, - &ett_lte_rrc_T_setup_63, + &ett_lte_rrc_T_setup_84, &ett_lte_rrc_T_n3PUCCH_AN_ListP1_r13, &ett_lte_rrc_T_channelSelection_r13, &ett_lte_rrc_T_n1PUCCH_AN_CS_r13, - &ett_lte_rrc_T_setup_64, + &ett_lte_rrc_T_setup_85, &ett_lte_rrc_N1PUCCH_AN_CS_List_r13, &ett_lte_rrc_T_n1PUCCH_AN_CS_ListP1_r13, &ett_lte_rrc_T_format4_r13, @@ -115167,11 +138940,11 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_format5_r13, &ett_lte_rrc_SEQUENCE_SIZE_4_OF_Format5_resource_r13, &ett_lte_rrc_T_nPUCCH_Param_r13, - &ett_lte_rrc_T_setup_65, + &ett_lte_rrc_T_setup_86, &ett_lte_rrc_T_nkaPUCCH_Param_r13, - &ett_lte_rrc_T_setup_66, + &ett_lte_rrc_T_setup_87, &ett_lte_rrc_T_pucch_NumRepetitionCE_r13, - &ett_lte_rrc_T_setup_67, + &ett_lte_rrc_T_setup_88, &ett_lte_rrc_T_modeA, &ett_lte_rrc_T_modeB, &ett_lte_rrc_PUCCH_ConfigDedicated_v1370, @@ -115179,9 +138952,10 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_PUCCH_Format3_Conf_r13, &ett_lte_rrc_T_n3PUCCH_AN_List_r13_01, &ett_lte_rrc_T_twoAntennaPortActivatedPUCCH_Format3_r13_01, - &ett_lte_rrc_T_setup_68, + &ett_lte_rrc_T_setup_89, &ett_lte_rrc_T_n3PUCCH_AN_ListP1_r13_01, &ett_lte_rrc_PUCCH_ConfigDedicated_v1430, + &ett_lte_rrc_PUCCH_ConfigDedicated_v1530, &ett_lte_rrc_Format4_resource_r13, &ett_lte_rrc_Format5_resource_r13, &ett_lte_rrc_N1PUCCH_AN_CS_r10, @@ -115195,29 +138969,37 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_betaOffsetMC_r10, &ett_lte_rrc_PUSCH_ConfigDedicated_v1130, &ett_lte_rrc_T_pusch_DMRS_r11, - &ett_lte_rrc_T_setup_69, + &ett_lte_rrc_T_setup_90, &ett_lte_rrc_PUSCH_ConfigDedicated_v1250, &ett_lte_rrc_T_uciOnPUSCH, - &ett_lte_rrc_T_setup_70, + &ett_lte_rrc_T_setup_91, &ett_lte_rrc_T_betaOffsetMC_r12, &ett_lte_rrc_PUSCH_ConfigDedicated_r13, &ett_lte_rrc_T_betaOffsetMC_r13, &ett_lte_rrc_T_pusch_DMRS_r11_01, - &ett_lte_rrc_T_setup_71, + &ett_lte_rrc_T_setup_92, &ett_lte_rrc_T_uciOnPUSCH_01, - &ett_lte_rrc_T_setup_72, + &ett_lte_rrc_T_setup_93, &ett_lte_rrc_T_betaOffsetMC_r12_01, &ett_lte_rrc_PUSCH_ConfigDedicated_v1430, + &ett_lte_rrc_PUSCH_ConfigDedicated_v1530, + &ett_lte_rrc_T_ce_PUSCH_FlexibleStartPRB_AllocConfig_r15, + &ett_lte_rrc_T_setup_94, + &ett_lte_rrc_T_ce_PUSCH_SubPRB_Config_r15, + &ett_lte_rrc_T_setup_95, &ett_lte_rrc_PUSCH_ConfigDedicatedSCell_r10, &ett_lte_rrc_PUSCH_ConfigDedicatedSCell_v1430, + &ett_lte_rrc_PUSCH_ConfigDedicatedScell_v1530, + &ett_lte_rrc_T_uci_OnPUSCH_r15, + &ett_lte_rrc_T_setup_96, &ett_lte_rrc_TDD_PUSCH_UpPTS_r14, - &ett_lte_rrc_T_setup_73, + &ett_lte_rrc_T_setup_97, &ett_lte_rrc_Enable256QAM_r14, - &ett_lte_rrc_T_setup_74, + &ett_lte_rrc_T_setup_98, &ett_lte_rrc_T_tpc_SubframeSet_Configured_r14, &ett_lte_rrc_T_tpc_SubframeSet_NotConfigured_r14, &ett_lte_rrc_PUSCH_EnhancementsConfig_r14, - &ett_lte_rrc_T_setup_75, + &ett_lte_rrc_T_setup_99, &ett_lte_rrc_T_interval_ULHoppingPUSCH_Enh_r14, &ett_lte_rrc_UL_ReferenceSignalsPUSCH, &ett_lte_rrc_RACH_ConfigCommon, @@ -115231,6 +139013,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_RACH_CE_LevelInfoList_r13, &ett_lte_rrc_RACH_CE_LevelInfo_r13, &ett_lte_rrc_T_preambleMappingInfo_r13, + &ett_lte_rrc_T_edt_Parameters_r15, &ett_lte_rrc_PowerRampingParameters, &ett_lte_rrc_RACH_ConfigDedicated, &ett_lte_rrc_RadioResourceConfigCommonSIB, @@ -115259,25 +139042,33 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_PCCH_Config, &ett_lte_rrc_PCCH_Config_v1310, &ett_lte_rrc_HighSpeedConfig_r14, + &ett_lte_rrc_HighSpeedConfig_v1530, &ett_lte_rrc_HighSpeedConfigSCell_r14, &ett_lte_rrc_RadioResourceConfigDedicated, &ett_lte_rrc_T_mac_MainConfig, + &ett_lte_rrc_T_crs_IntfMitigConfig_r15_01, + &ett_lte_rrc_T_setup_100, &ett_lte_rrc_RadioResourceConfigDedicated_v1370, &ett_lte_rrc_RadioResourceConfigDedicatedPSCell_r12, &ett_lte_rrc_RadioResourceConfigDedicatedPSCell_v1370, &ett_lte_rrc_RadioResourceConfigDedicatedSCG_r12, &ett_lte_rrc_RadioResourceConfigDedicatedSCell_r10, &ett_lte_rrc_SRB_ToAddModList, + &ett_lte_rrc_SRB_ToAddModExtList_r15, &ett_lte_rrc_SRB_ToAddMod, &ett_lte_rrc_T_rlc_Config, &ett_lte_rrc_T_logicalChannelConfig, + &ett_lte_rrc_SRB_ToReleaseListDupl_r15, &ett_lte_rrc_DRB_ToAddModList, + &ett_lte_rrc_DRB_ToAddModList_r15, &ett_lte_rrc_DRB_ToAddModListSCG_r12, + &ett_lte_rrc_DRB_ToAddModListSCG_r15, &ett_lte_rrc_DRB_ToAddMod, &ett_lte_rrc_DRB_ToAddModSCG_r12, &ett_lte_rrc_T_drb_Type_r12_01, &ett_lte_rrc_T_scg_r12, &ett_lte_rrc_DRB_ToReleaseList, + &ett_lte_rrc_DRB_ToReleaseList_r15, &ett_lte_rrc_MeasSubframePatternPCell_r10, &ett_lte_rrc_NeighCellsCRS_Info_r11, &ett_lte_rrc_CRS_AssistanceInfoList_r11, @@ -115285,14 +139076,20 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_NeighCellsCRS_Info_r13, &ett_lte_rrc_CRS_AssistanceInfoList_r13, &ett_lte_rrc_CRS_AssistanceInfo_r13, + &ett_lte_rrc_NeighCellsCRS_Info_r15, + &ett_lte_rrc_CRS_AssistanceInfoList_r15, + &ett_lte_rrc_CRS_AssistanceInfo_r15, &ett_lte_rrc_NAICS_AssistanceInfo_r12, - &ett_lte_rrc_T_setup_76, + &ett_lte_rrc_T_setup_101, &ett_lte_rrc_NeighCellsToReleaseList_r12, &ett_lte_rrc_NeighCellsToAddModList_r12, &ett_lte_rrc_NeighCellsInfo_r12, &ett_lte_rrc_SEQUENCE_SIZE_1_maxP_a_PerNeighCell_r12_OF_P_a, + &ett_lte_rrc_RLC_BearerConfig_r15, + &ett_lte_rrc_T_setup_102, + &ett_lte_rrc_T_logicalChannelIdentityConfig_r15, &ett_lte_rrc_RCLWI_Configuration_r13, - &ett_lte_rrc_T_setup_77, + &ett_lte_rrc_T_setup_103, &ett_lte_rrc_RCLWI_Config_r13, &ett_lte_rrc_T_command, &ett_lte_rrc_T_steerToWLAN_r13, @@ -115304,18 +139101,29 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_RLC_Config_v1250, &ett_lte_rrc_RLC_Config_v1310, &ett_lte_rrc_RLC_Config_v1430, - &ett_lte_rrc_T_setup_78, + &ett_lte_rrc_T_setup_104, &ett_lte_rrc_RLC_Config_v1510, + &ett_lte_rrc_RLC_Config_v1530, + &ett_lte_rrc_T_setup_105, + &ett_lte_rrc_RLC_Config_r15, + &ett_lte_rrc_T_mode_r15, + &ett_lte_rrc_T_am_r15, + &ett_lte_rrc_T_um_Bi_Directional_r15, + &ett_lte_rrc_T_um_Uni_Directional_UL_r15, + &ett_lte_rrc_T_um_Uni_Directional_DL_r15, &ett_lte_rrc_UL_AM_RLC, + &ett_lte_rrc_UL_AM_RLC_r15, &ett_lte_rrc_DL_AM_RLC, + &ett_lte_rrc_DL_AM_RLC_r15, &ett_lte_rrc_UL_UM_RLC, &ett_lte_rrc_DL_UM_RLC, + &ett_lte_rrc_DL_UM_RLC_r15, &ett_lte_rrc_RLF_TimersAndConstants_r9, - &ett_lte_rrc_T_setup_79, + &ett_lte_rrc_T_setup_106, &ett_lte_rrc_RLF_TimersAndConstants_r13, - &ett_lte_rrc_T_setup_80, + &ett_lte_rrc_T_setup_107, &ett_lte_rrc_RLF_TimersAndConstantsSCG_r12, - &ett_lte_rrc_T_setup_81, + &ett_lte_rrc_T_setup_108, &ett_lte_rrc_RN_SubframeConfig_r10, &ett_lte_rrc_T_subframeConfigPattern_r10, &ett_lte_rrc_T_rpdcch_Config_r10, @@ -115329,69 +139137,112 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_n1PUCCH_AN_List_r10, &ett_lte_rrc_T_fallbackForFormat3, &ett_lte_rrc_T_fdd, + &ett_lte_rrc_RSS_Config_r15, &ett_lte_rrc_SchedulingRequestConfig, - &ett_lte_rrc_T_setup_82, + &ett_lte_rrc_T_setup_109, &ett_lte_rrc_SchedulingRequestConfig_v1020, &ett_lte_rrc_SchedulingRequestConfigSCell_r13, - &ett_lte_rrc_T_setup_83, + &ett_lte_rrc_T_setup_110, + &ett_lte_rrc_SchedulingRequestConfig_v1530, + &ett_lte_rrc_T_setup_111, + &ett_lte_rrc_SR_SubslotSPUCCH_ResourceList_r15, + &ett_lte_rrc_SlotOrSubslotPDSCH_Config_r15, + &ett_lte_rrc_T_setup_112, + &ett_lte_rrc_SlotOrSubslotPUSCH_Config_r15, + &ett_lte_rrc_T_setup_113, + &ett_lte_rrc_T_betaOffsetSubslot_ACK_Index_r15, + &ett_lte_rrc_T_betaOffset2Subslot_ACK_Index_r15, + &ett_lte_rrc_T_betaOffsetSubslot_RI_Index_r15, &ett_lte_rrc_SoundingRS_UL_ConfigCommon, - &ett_lte_rrc_T_setup_84, + &ett_lte_rrc_T_setup_114, &ett_lte_rrc_SoundingRS_UL_ConfigDedicated, - &ett_lte_rrc_T_setup_85, + &ett_lte_rrc_T_setup_115, &ett_lte_rrc_SoundingRS_UL_ConfigDedicated_v1020, &ett_lte_rrc_SoundingRS_UL_ConfigDedicated_v1310, - &ett_lte_rrc_T_setup_86, + &ett_lte_rrc_T_setup_116, &ett_lte_rrc_SoundingRS_UL_ConfigDedicatedUpPTsExt_r13, - &ett_lte_rrc_T_setup_87, + &ett_lte_rrc_T_setup_117, &ett_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_r10, - &ett_lte_rrc_T_setup_88, + &ett_lte_rrc_T_setup_118, &ett_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_r10, &ett_lte_rrc_T_srs_ActivateAp_r10, - &ett_lte_rrc_T_setup_89, + &ett_lte_rrc_T_setup_119, &ett_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1310, - &ett_lte_rrc_T_setup_90, + &ett_lte_rrc_T_setup_120, &ett_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_v1310, &ett_lte_rrc_T_srs_ActivateAp_v1310, - &ett_lte_rrc_T_setup_91, + &ett_lte_rrc_T_setup_121, &ett_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodicUpPTsExt_r13, - &ett_lte_rrc_T_setup_92, + &ett_lte_rrc_T_setup_122, &ett_lte_rrc_SEQUENCE_SIZE_1_3_OF_SRS_ConfigAp_r13, &ett_lte_rrc_T_srs_ActivateAp_r13, - &ett_lte_rrc_T_setup_93, + &ett_lte_rrc_T_setup_123, &ett_lte_rrc_SoundingRS_UL_ConfigDedicatedAperiodic_v1430, - &ett_lte_rrc_T_setup_94, + &ett_lte_rrc_T_setup_124, &ett_lte_rrc_SRS_ConfigAp_r10, &ett_lte_rrc_SRS_ConfigAp_v1310, &ett_lte_rrc_SRS_ConfigAp_r13, + &ett_lte_rrc_SPDCCH_Config_r15, + &ett_lte_rrc_T_setup_125, + &ett_lte_rrc_SPDCCH_Set_r15, + &ett_lte_rrc_SPDCCH_Elements_r15, + &ett_lte_rrc_T_setup_126, + &ett_lte_rrc_SEQUENCE_SIZE_1_4_OF_DCI7_Candidates_r15, + &ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_DCI7_CandidatesPerAL_SPDCCH_r15, + &ett_lte_rrc_T_resourceBlockAssignment_r15, + &ett_lte_rrc_T_al_StartingPointSPDCCH_r15, + &ett_lte_rrc_DCI7_CandidatesPerAL_SPDCCH_r15, &ett_lte_rrc_SPS_Config, &ett_lte_rrc_SPS_Config_v1430, &ett_lte_rrc_SPS_ConfigUL_ToAddModList_r14, &ett_lte_rrc_SPS_ConfigUL_ToReleaseList_r14, &ett_lte_rrc_SPS_ConfigSL_ToAddModList_r14, &ett_lte_rrc_SPS_ConfigSL_ToReleaseList_r14, + &ett_lte_rrc_SPS_Config_v1530, + &ett_lte_rrc_SPS_ConfigUL_STTI_ToAddModList_r15, + &ett_lte_rrc_SPS_ConfigUL_STTI_ToReleaseList_r15, + &ett_lte_rrc_SPS_ConfigUL_ToAddModList_r15, + &ett_lte_rrc_SPS_ConfigUL_ToReleaseList_r15, &ett_lte_rrc_SPS_ConfigDL, - &ett_lte_rrc_T_setup_95, + &ett_lte_rrc_T_setup_127, &ett_lte_rrc_T_twoAntennaPortActivated_r10, - &ett_lte_rrc_T_setup_96, + &ett_lte_rrc_T_setup_128, &ett_lte_rrc_SPS_ConfigUL, - &ett_lte_rrc_T_setup_97, + &ett_lte_rrc_T_setup_129, &ett_lte_rrc_T_p0_Persistent, &ett_lte_rrc_T_p0_PersistentSubframeSet2_r12, - &ett_lte_rrc_T_setup_98, + &ett_lte_rrc_T_setup_130, &ett_lte_rrc_SPS_ConfigSL_r14, &ett_lte_rrc_N1PUCCH_AN_PersistentList, + &ett_lte_rrc_SPS_ConfigUL_STTI_r15, + &ett_lte_rrc_T_setup_131, + &ett_lte_rrc_T_p0_Persistent_r15, + &ett_lte_rrc_T_p0_PersistentSubframeSet2_r15, + &ett_lte_rrc_T_setup_132, + &ett_lte_rrc_SPUCCH_Config_r15, + &ett_lte_rrc_T_setup_133, + &ett_lte_rrc_T_twoAntennaPortActivatedSPUCCH_Format3_r15, + &ett_lte_rrc_T_n3SPUCCH_AN_List_r15, + &ett_lte_rrc_SPUCCH_Set_r15, + &ett_lte_rrc_SPUCCH_Elements_r15, + &ett_lte_rrc_T_setup_134, + &ett_lte_rrc_T_n1SubslotSPUCCH_AN_List_r15, + &ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_N4SPUCCH_Resource_r15, + &ett_lte_rrc_N4SPUCCH_Resource_r15, &ett_lte_rrc_SRS_TPC_PDCCH_Config_r14, - &ett_lte_rrc_T_setup_99, + &ett_lte_rrc_T_setup_135, &ett_lte_rrc_SRS_CC_SetIndex_r14, &ett_lte_rrc_TDD_Config, &ett_lte_rrc_TDD_Config_v1130, &ett_lte_rrc_TDD_Config_v1430, &ett_lte_rrc_TDD_Config_v1450, &ett_lte_rrc_TDD_ConfigSL_r12, + &ett_lte_rrc_TimeReferenceInfo_r15, + &ett_lte_rrc_ReferenceTime_r15, &ett_lte_rrc_TPC_PDCCH_Config, - &ett_lte_rrc_T_setup_100, + &ett_lte_rrc_T_setup_136, &ett_lte_rrc_TPC_PDCCH_ConfigSCell_r13, - &ett_lte_rrc_T_setup_101, + &ett_lte_rrc_T_setup_137, &ett_lte_rrc_TPC_Index, &ett_lte_rrc_TunnelConfigLWIP_r13, &ett_lte_rrc_IKE_Identity_r13, @@ -115399,6 +139250,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_UplinkPowerControlCommon, &ett_lte_rrc_UplinkPowerControlCommon_v1020, &ett_lte_rrc_UplinkPowerControlCommon_v1310, + &ett_lte_rrc_UplinkPowerControlCommon_v1530, &ett_lte_rrc_UplinkPowerControlCommonPSCell_r12, &ett_lte_rrc_UplinkPowerControlCommonSCell_r10, &ett_lte_rrc_UplinkPowerControlCommonSCell_v1130, @@ -115409,15 +139261,21 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_UplinkPowerControlDedicated_v1130, &ett_lte_rrc_UplinkPowerControlDedicated_v1250, &ett_lte_rrc_T_set2PowerControlParameter, - &ett_lte_rrc_T_setup_102, + &ett_lte_rrc_T_setup_138, + &ett_lte_rrc_UplinkPowerControlDedicated_v1530, + &ett_lte_rrc_UplinkPowerControlDedicatedSTTI_r15, &ett_lte_rrc_UplinkPUSCH_LessPowerControlDedicated_v1430, &ett_lte_rrc_UplinkPowerControlDedicatedSCell_r10, &ett_lte_rrc_UplinkPowerControlDedicatedSCell_v1310, &ett_lte_rrc_DeltaFList_PUCCH, + &ett_lte_rrc_DeltaFList_SPUCCH_r15, + &ett_lte_rrc_T_setup_139, &ett_lte_rrc_DeltaTxD_OffsetListPUCCH_r10, &ett_lte_rrc_DeltaTxD_OffsetListPUCCH_v1130, + &ett_lte_rrc_DeltaTxD_OffsetListSPUCCH_r15, &ett_lte_rrc_WLAN_Id_List_r13, &ett_lte_rrc_WLAN_MobilityConfig_r13, + &ett_lte_rrc_WUS_Config_r15, &ett_lte_rrc_SecurityAlgorithmConfig, &ett_lte_rrc_CarrierFreqCDMA2000, &ett_lte_rrc_CarrierFreqGERAN, @@ -115428,6 +139286,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_CarrierFreqListMBMS_r11, &ett_lte_rrc_CellIndexList, &ett_lte_rrc_CellSelectionInfoCE_r13, + &ett_lte_rrc_CellSelectionInfoCE_v1530, &ett_lte_rrc_CellSelectionInfoCE1_r13, &ett_lte_rrc_CellSelectionInfoCE1_v1360, &ett_lte_rrc_CSFB_RegistrationParam1XRTT, @@ -115454,10 +139313,13 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_MultiBandInfoList_v10l0, &ett_lte_rrc_MultiBandInfoList_r11, &ett_lte_rrc_MultiBandInfo_v9e0, + &ett_lte_rrc_MultiFrequencyBandListNR_r15, &ett_lte_rrc_NS_PmaxList_r10, &ett_lte_rrc_NS_PmaxList_v10l0, &ett_lte_rrc_NS_PmaxValue_r10, &ett_lte_rrc_NS_PmaxValue_v10l0, + &ett_lte_rrc_NS_PmaxListNR_r15, + &ett_lte_rrc_NS_PmaxValueNR_r15, &ett_lte_rrc_PhysCellIdRange, &ett_lte_rrc_PhysCellIdRangeUTRA_FDDList_r9, &ett_lte_rrc_PhysCellIdRangeUTRA_FDD_r9, @@ -115474,34 +139336,51 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_cdma_SystemTime, &ett_lte_rrc_ThresholdNR_r15, &ett_lte_rrc_ThresholdListNR_r15, + &ett_lte_rrc_BT_NameListConfig_r15, + &ett_lte_rrc_BT_NameList_r15, &ett_lte_rrc_LocationInfo_r10, &ett_lte_rrc_T_locationCoordinates_r10, + &ett_lte_rrc_T_verticalVelocityInfo_r15, + &ett_lte_rrc_LogMeasResultListBT_r15, + &ett_lte_rrc_LogMeasResultBT_r15, + &ett_lte_rrc_LogMeasResultListWLAN_r15, + &ett_lte_rrc_LogMeasResultWLAN_r15, &ett_lte_rrc_MeasConfig, &ett_lte_rrc_T_speedStatePars, - &ett_lte_rrc_T_setup_103, + &ett_lte_rrc_T_setup_140, &ett_lte_rrc_T_measScaleFactor_r12, + &ett_lte_rrc_T_heightThreshRef_r15, &ett_lte_rrc_MeasIdToRemoveList, &ett_lte_rrc_MeasIdToRemoveListExt_r12, &ett_lte_rrc_MeasObjectToRemoveList, &ett_lte_rrc_MeasObjectToRemoveListExt_r13, &ett_lte_rrc_ReportConfigToRemoveList, &ett_lte_rrc_MeasDS_Config_r12, - &ett_lte_rrc_T_setup_104, + &ett_lte_rrc_T_setup_141, &ett_lte_rrc_T_dmtc_PeriodOffset_r12, &ett_lte_rrc_T_ds_OccasionDuration_r12, &ett_lte_rrc_MeasCSI_RS_ToRemoveList_r12, &ett_lte_rrc_MeasCSI_RS_ToAddModList_r12, &ett_lte_rrc_MeasCSI_RS_Config_r12, &ett_lte_rrc_MeasGapConfig, - &ett_lte_rrc_T_setup_105, + &ett_lte_rrc_T_setup_142, &ett_lte_rrc_T_gapOffset, + &ett_lte_rrc_MeasGapConfigDensePRS_r15, + &ett_lte_rrc_T_setup_143, + &ett_lte_rrc_T_gapOffsetDensePRS_r15, &ett_lte_rrc_MeasGapConfigPerCC_List_r14, - &ett_lte_rrc_T_setup_106, + &ett_lte_rrc_T_setup_144, &ett_lte_rrc_MeasGapConfigToRemoveList_r14, &ett_lte_rrc_MeasGapConfigToAddModList_r14, &ett_lte_rrc_MeasGapConfigPerCC_r14, &ett_lte_rrc_MeasGapSharingConfig_r14, - &ett_lte_rrc_T_setup_107, + &ett_lte_rrc_T_setup_145, + &ett_lte_rrc_MeasIdleConfigSIB_r15, + &ett_lte_rrc_MeasIdleConfigDedicated_r15, + &ett_lte_rrc_EUTRA_CarrierList_r15, + &ett_lte_rrc_MeasIdleCarrierEUTRA_r15, + &ett_lte_rrc_T_qualityThreshold_r15, + &ett_lte_rrc_CellList_r15, &ett_lte_rrc_MeasIdToAddModList, &ett_lte_rrc_MeasIdToAddModList_v1310, &ett_lte_rrc_MeasIdToAddModListExt_r12, @@ -115520,23 +139399,22 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_BlackCellsToAddModList, &ett_lte_rrc_BlackCellsToAddMod, &ett_lte_rrc_MeasSubframePatternConfigNeigh_r10, - &ett_lte_rrc_T_setup_109, + &ett_lte_rrc_T_setup_147, &ett_lte_rrc_MeasSubframeCellList_r10, &ett_lte_rrc_AltTTT_CellsToAddModList_r12, &ett_lte_rrc_AltTTT_CellsToAddMod_r12, &ett_lte_rrc_WhiteCellsToAddModList_r13, &ett_lte_rrc_WhiteCellsToAddMod_r13, &ett_lte_rrc_RMTC_Config_r13, - &ett_lte_rrc_T_setup_110, + &ett_lte_rrc_T_setup_148, &ett_lte_rrc_Tx_ResourcePoolMeasList_r14, &ett_lte_rrc_MeasObjectGERAN, &ett_lte_rrc_MeasObjectNR_r15, &ett_lte_rrc_SEQUENCE_SIZE_1_maxCellSFTD_OF_PhysCellIdNR_r15, + &ett_lte_rrc_T_bandNR_r15, &ett_lte_rrc_RS_ConfigSSB_NR_r15, &ett_lte_rrc_CellsToAddModListNR_r15, &ett_lte_rrc_CellsToAddModNR_r15, - &ett_lte_rrc_MTC_SSB_NR_r15, - &ett_lte_rrc_T_periodicityAndOffset_r15, &ett_lte_rrc_MeasObjectToAddModList, &ett_lte_rrc_MeasObjectToAddModListExt_r13, &ett_lte_rrc_MeasObjectToAddModList_v9e0, @@ -115566,6 +139444,13 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_cgi_Info, &ett_lte_rrc_T_measResult, &ett_lte_rrc_T_cgi_Info_v1310, + &ett_lte_rrc_MeasResultListIdle_r15, + &ett_lte_rrc_MeasResultIdle_r15, + &ett_lte_rrc_T_measResultServingCell_r15, + &ett_lte_rrc_T_measResultNeighCells_r15, + &ett_lte_rrc_MeasResultIdleListEUTRA_r15, + &ett_lte_rrc_MeasResultIdleEUTRA_r15, + &ett_lte_rrc_T_measResult_r15, &ett_lte_rrc_MeasResultServFreqListNR_r15, &ett_lte_rrc_MeasResultServFreqNR_r15, &ett_lte_rrc_MeasResultCellListNR_r15, @@ -115604,15 +139489,26 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_MeasResultWLAN_r13, &ett_lte_rrc_MeasResultListCBR_r14, &ett_lte_rrc_MeasResultCBR_r14, + &ett_lte_rrc_MeasResultSensing_r15, + &ett_lte_rrc_SEQUENCE_SIZE_0_400_OF_SensingResult_r15, + &ett_lte_rrc_SensingResult_r15, &ett_lte_rrc_MeasResultForECID_r9, &ett_lte_rrc_PLMN_IdentityList2, &ett_lte_rrc_AdditionalSI_Info_r9, &ett_lte_rrc_MeasResultForRSSI_r13, &ett_lte_rrc_UL_PDCP_DelayResultList_r13, &ett_lte_rrc_UL_PDCP_DelayResult_r13, + &ett_lte_rrc_CGI_InfoNR_r15, + &ett_lte_rrc_T_noSIB1_r15, + &ett_lte_rrc_PLMN_IdentityListNR_r15, + &ett_lte_rrc_PLMN_IdentityInfoListNR_r15, + &ett_lte_rrc_PLMN_IdentityInfoNR_r15, &ett_lte_rrc_MeasResultCellListSFTD_r15, &ett_lte_rrc_MeasResultCellSFTD_r15, &ett_lte_rrc_MeasResultSSTD_r13, + &ett_lte_rrc_MeasSensing_Config_r15, + &ett_lte_rrc_MTC_SSB_NR_r15, + &ett_lte_rrc_T_periodicityAndOffset_r15, &ett_lte_rrc_QuantityConfig, &ett_lte_rrc_QuantityConfigEUTRA, &ett_lte_rrc_QuantityConfigEUTRA_v1250, @@ -115639,10 +139535,12 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_eventC2_r12, &ett_lte_rrc_T_eventV1_r14, &ett_lte_rrc_T_eventV2_r14, + &ett_lte_rrc_T_eventH1_r15, + &ett_lte_rrc_T_eventH2_r15, &ett_lte_rrc_T_periodical, &ett_lte_rrc_T_alternativeTimeToTrigger_r12, &ett_lte_rrc_T_rs_sinr_Config_r13, - &ett_lte_rrc_T_setup_111, + &ett_lte_rrc_T_setup_149, &ett_lte_rrc_RSRQ_RangeConfig_r12, &ett_lte_rrc_ThresholdEUTRA, &ett_lte_rrc_MeasRSSI_ReportConfig_r13, @@ -115668,10 +139566,14 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_ReportConfigToAddMod, &ett_lte_rrc_T_reportConfig, &ett_lte_rrc_RSRQ_Type_r12, + &ett_lte_rrc_SS_RSSI_Measurement_r15, &ett_lte_rrc_UL_DelayConfig_r13, - &ett_lte_rrc_T_setup_112, + &ett_lte_rrc_T_setup_150, &ett_lte_rrc_WLAN_CarrierInfo_r13, &ett_lte_rrc_WLAN_ChannelList_r13, + &ett_lte_rrc_WLAN_NameListConfig_r15, + &ett_lte_rrc_WLAN_NameList_r15, + &ett_lte_rrc_WLAN_RTT_r15, &ett_lte_rrc_WLAN_SuspendConfig_r14, &ett_lte_rrc_AreaConfiguration_r10, &ett_lte_rrc_AreaConfiguration_v1130, @@ -115682,21 +139584,29 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_BandCombinationList_r14, &ett_lte_rrc_BandCombination_r14, &ett_lte_rrc_BandIndication_r14, + &ett_lte_rrc_FlightPathInfoReportConfig_r15, + &ett_lte_rrc_GNSS_ID_r15, &ett_lte_rrc_MeasSubframePattern_r10, &ett_lte_rrc_T_subframePatternTDD_r10, &ett_lte_rrc_OtherConfig_r9, &ett_lte_rrc_T_delayBudgetReportingConfig_r14, - &ett_lte_rrc_T_setup_113, + &ett_lte_rrc_T_setup_151, &ett_lte_rrc_T_rlm_ReportConfig_r14, - &ett_lte_rrc_T_setup_114, + &ett_lte_rrc_T_setup_152, &ett_lte_rrc_T_overheatingAssistanceConfig_r14, - &ett_lte_rrc_T_setup_115, + &ett_lte_rrc_T_setup_153, + &ett_lte_rrc_T_measConfigAppLayer_r15, + &ett_lte_rrc_T_setup_154, &ett_lte_rrc_IDC_Config_r11, &ett_lte_rrc_T_autonomousDenialParameters_r11, + &ett_lte_rrc_T_idc_Indication_MRDC_r15, &ett_lte_rrc_ObtainLocationConfig_r11, &ett_lte_rrc_PowerPrefIndicationConfig_r11, - &ett_lte_rrc_T_setup_116, + &ett_lte_rrc_T_setup_155, &ett_lte_rrc_ReportProximityConfig_r9, + &ett_lte_rrc_CandidateServingFreqListNR_r15, + &ett_lte_rrc_SBAS_ID_r15, + &ett_lte_rrc_S_NSSAI_r15, &ett_lte_rrc_S_TMSI, &ett_lte_rrc_TraceReference_r10, &ett_lte_rrc_UE_CapabilityRAT_ContainerList, @@ -115712,7 +139622,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_UE_EUTRA_Capability_v10f0_IEs, &ett_lte_rrc_UE_EUTRA_Capability_v10i0_IEs, &ett_lte_rrc_UE_EUTRA_Capability_v10j0_IEs, - &ett_lte_rrc_T_nonCriticalExtension_69, + &ett_lte_rrc_T_nonCriticalExtension_76, &ett_lte_rrc_UE_EUTRA_Capability_v11d0_IEs, &ett_lte_rrc_UE_EUTRA_Capability_v11x0_IEs, &ett_lte_rrc_UE_EUTRA_Capability_v12b0_IEs, @@ -115722,7 +139632,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_UE_EUTRA_Capability_v1390_IEs, &ett_lte_rrc_UE_EUTRA_Capability_v13x0_IEs, &ett_lte_rrc_UE_EUTRA_Capability_v1470_IEs, - &ett_lte_rrc_T_nonCriticalExtension_70, + &ett_lte_rrc_T_nonCriticalExtension_77, &ett_lte_rrc_UE_EUTRA_Capability_v920_IEs, &ett_lte_rrc_UE_EUTRA_Capability_v940_IEs, &ett_lte_rrc_UE_EUTRA_Capability_v1020_IEs, @@ -115748,7 +139658,8 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_UE_EUTRA_Capability_v1460_IEs, &ett_lte_rrc_UE_EUTRA_Capability_v1510_IEs, &ett_lte_rrc_UE_EUTRA_Capability_v1520_IEs, - &ett_lte_rrc_T_nonCriticalExtension_71, + &ett_lte_rrc_UE_EUTRA_Capability_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_78, &ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_r9, &ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1060, &ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1130, @@ -115760,6 +139671,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1380, &ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1430, &ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1510, + &ett_lte_rrc_UE_EUTRA_CapabilityAddXDD_Mode_v1530, &ett_lte_rrc_FeatureSetsEUTRA_r15, &ett_lte_rrc_SEQUENCE_SIZE_1_maxFeatureSets_r15_OF_FeatureSetDL_r15, &ett_lte_rrc_SEQUENCE_SIZE_1_maxPerCC_FeatureSets_r15_OF_FeatureSetDL_PerCC_r15, @@ -115772,14 +139684,20 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_MAC_Parameters_v1310, &ett_lte_rrc_MAC_Parameters_v1430, &ett_lte_rrc_MAC_Parameters_v1440, + &ett_lte_rrc_MAC_Parameters_v1530, + &ett_lte_rrc_SEQUENCE_SIZE_1_3_OF_ProcessingTimelineSet_r15, &ett_lte_rrc_RLC_Parameters_r12, &ett_lte_rrc_RLC_Parameters_v1310, &ett_lte_rrc_RLC_Parameters_v1430, + &ett_lte_rrc_RLC_Parameters_v1530, &ett_lte_rrc_PDCP_Parameters, &ett_lte_rrc_PDCP_Parameters_v1130, &ett_lte_rrc_PDCP_Parameters_v1310, &ett_lte_rrc_PDCP_Parameters_v1430, &ett_lte_rrc_T_supportedUplinkOnlyROHC_Profiles_r14, + &ett_lte_rrc_PDCP_Parameters_v1530, + &ett_lte_rrc_SupportedUDC_r15, + &ett_lte_rrc_SupportedOperatorDic_r15, &ett_lte_rrc_PhyLayerParameters, &ett_lte_rrc_PhyLayerParameters_v920, &ett_lte_rrc_PhyLayerParameters_v9d0, @@ -115795,6 +139713,10 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_PhyLayerParameters_v1430, &ett_lte_rrc_PhyLayerParameters_v1450, &ett_lte_rrc_PhyLayerParameters_v1470, + &ett_lte_rrc_PhyLayerParameters_v1530, + &ett_lte_rrc_T_stti_SPT_Capabilities_r15, + &ett_lte_rrc_T_ce_Capabilities_r15, + &ett_lte_rrc_T_urllc_Capabilities_r15, &ett_lte_rrc_MIMO_UE_Parameters_r13, &ett_lte_rrc_MIMO_UE_Parameters_v1430, &ett_lte_rrc_MIMO_UE_Parameters_v1470, @@ -115840,6 +139762,13 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_eNB_RequestedParameters_v1430, &ett_lte_rrc_RF_Parameters_v1450, &ett_lte_rrc_RF_Parameters_v1470, + &ett_lte_rrc_RF_Parameters_v1530, + &ett_lte_rrc_SkipSubframeProcessing_r15, + &ett_lte_rrc_SPT_Parameters_r15, + &ett_lte_rrc_STTI_SPT_BandParameters_r15, + &ett_lte_rrc_STTI_SupportedCombinations_r15, + &ett_lte_rrc_SEQUENCE_SIZE_1_2_OF_DL_UL_CCs_r15, + &ett_lte_rrc_DL_UL_CCs_r15, &ett_lte_rrc_SupportedBandCombination_r10, &ett_lte_rrc_SupportedBandCombinationExt_r10, &ett_lte_rrc_SupportedBandCombination_v1090, @@ -115853,6 +139782,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SupportedBandCombination_v1430, &ett_lte_rrc_SupportedBandCombination_v1450, &ett_lte_rrc_SupportedBandCombination_v1470, + &ett_lte_rrc_SupportedBandCombination_v1530, &ett_lte_rrc_SupportedBandCombinationAdd_r11, &ett_lte_rrc_SupportedBandCombinationAdd_v11d0, &ett_lte_rrc_SupportedBandCombinationAdd_v1250, @@ -115863,6 +139793,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SupportedBandCombinationAdd_v1430, &ett_lte_rrc_SupportedBandCombinationAdd_v1450, &ett_lte_rrc_SupportedBandCombinationAdd_v1470, + &ett_lte_rrc_SupportedBandCombinationAdd_v1530, &ett_lte_rrc_SupportedBandCombinationReduced_r13, &ett_lte_rrc_SupportedBandCombinationReduced_v1320, &ett_lte_rrc_SupportedBandCombinationReduced_v1380, @@ -115870,6 +139801,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SupportedBandCombinationReduced_v1430, &ett_lte_rrc_SupportedBandCombinationReduced_v1450, &ett_lte_rrc_SupportedBandCombinationReduced_v1470, + &ett_lte_rrc_SupportedBandCombinationReduced_v1530, &ett_lte_rrc_BandCombinationParameters_r10, &ett_lte_rrc_BandCombinationParametersExt_r10, &ett_lte_rrc_BandCombinationParameters_v1090, @@ -115899,6 +139831,8 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1450, &ett_lte_rrc_BandCombinationParameters_v1470, &ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1470, + &ett_lte_rrc_BandCombinationParameters_v1530, + &ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_BandParameters_v1530, &ett_lte_rrc_BandParameters_r10, &ett_lte_rrc_BandParameters_v1090, &ett_lte_rrc_BandParameters_v10i0, @@ -115915,7 +139849,9 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SEQUENCE_SIZE_1_maxSimultaneousBands_r10_OF_RetuningTimeInfo_r14, &ett_lte_rrc_BandParameters_v1450, &ett_lte_rrc_BandParameters_v1470, + &ett_lte_rrc_BandParameters_v1530, &ett_lte_rrc_V2X_BandParameters_r14, + &ett_lte_rrc_V2X_BandParameters_v1530, &ett_lte_rrc_BandParametersTxSL_r14, &ett_lte_rrc_BandParametersRxSL_r14, &ett_lte_rrc_V2X_BandwidthClassSL_r14, @@ -115928,6 +139864,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_FeatureSetUL_PerCC_r15, &ett_lte_rrc_BandParametersUL_r10, &ett_lte_rrc_CA_MIMO_ParametersUL_r10, + &ett_lte_rrc_CA_MIMO_ParametersUL_r15, &ett_lte_rrc_BandParametersDL_r10, &ett_lte_rrc_CA_MIMO_ParametersDL_r10, &ett_lte_rrc_CA_MIMO_ParametersDL_v10i0, @@ -115935,6 +139872,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r10_OF_IntraBandContiguousCC_Info_r12, &ett_lte_rrc_CA_MIMO_ParametersDL_r13, &ett_lte_rrc_SEQUENCE_SIZE_1_maxServCell_r13_OF_IntraBandContiguousCC_Info_r12, + &ett_lte_rrc_CA_MIMO_ParametersDL_r15, &ett_lte_rrc_IntraBandContiguousCC_Info_r12, &ett_lte_rrc_MUST_Parameters_r14, &ett_lte_rrc_SupportedBandListEUTRA, @@ -115955,6 +139893,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_MeasParameters_v1310, &ett_lte_rrc_MeasParameters_v1430, &ett_lte_rrc_MeasParameters_v1520, + &ett_lte_rrc_MeasParameters_v1530, &ett_lte_rrc_BandListEUTRA, &ett_lte_rrc_BandCombinationListEUTRA_r10, &ett_lte_rrc_BandInfoEUTRA, @@ -115994,10 +139933,12 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SupportedBandListWLAN_r13, &ett_lte_rrc_CSG_ProximityIndicationParameters_r9, &ett_lte_rrc_NeighCellSI_AcquisitionParameters_r9, + &ett_lte_rrc_NeighCellSI_AcquisitionParameters_v1530, &ett_lte_rrc_SON_Parameters_r9, &ett_lte_rrc_UE_BasedNetwPerfMeasParameters_r10, &ett_lte_rrc_UE_BasedNetwPerfMeasParameters_v1250, &ett_lte_rrc_UE_BasedNetwPerfMeasParameters_v1430, + &ett_lte_rrc_UE_BasedNetwPerfMeasParameters_v1530, &ett_lte_rrc_OTDOA_PositioningCapabilities_r10, &ett_lte_rrc_Other_Parameters_r11, &ett_lte_rrc_Other_Parameters_v11d0, @@ -116005,6 +139946,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_Other_Parameters_v1430, &ett_lte_rrc_OtherParameters_v1450, &ett_lte_rrc_Other_Parameters_v1460, + &ett_lte_rrc_Other_Parameters_v1530, &ett_lte_rrc_MBMS_Parameters_r11, &ett_lte_rrc_MBMS_Parameters_v1250, &ett_lte_rrc_MBMS_Parameters_v1430, @@ -116020,6 +139962,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_CE_Parameters_v1430, &ett_lte_rrc_LAA_Parameters_r13, &ett_lte_rrc_LAA_Parameters_v1430, + &ett_lte_rrc_LAA_Parameters_v1530, &ett_lte_rrc_WLAN_IW_Parameters_r12, &ett_lte_rrc_LWA_Parameters_r13, &ett_lte_rrc_LWA_Parameters_v1430, @@ -116032,8 +139975,12 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SL_Parameters_r12, &ett_lte_rrc_SL_Parameters_v1310, &ett_lte_rrc_SL_Parameters_v1430, + &ett_lte_rrc_SL_Parameters_v1530, + &ett_lte_rrc_UE_CategorySL_r15, &ett_lte_rrc_V2X_SupportedBandCombination_r14, + &ett_lte_rrc_V2X_SupportedBandCombination_v1530, &ett_lte_rrc_V2X_BandCombinationParameters_r14, + &ett_lte_rrc_V2X_BandCombinationParameters_v1530, &ett_lte_rrc_SupportedBandInfoList_r12, &ett_lte_rrc_SupportedBandInfo_r12, &ett_lte_rrc_FreqBandIndicatorListEUTRA_r12, @@ -116100,14 +140047,20 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SL_CBR_PPPP_TxConfigList_r14, &ett_lte_rrc_SL_PPPP_TxConfigIndex_r14, &ett_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_Tx_ConfigIndex_r14, + &ett_lte_rrc_SL_CBR_PPPP_TxConfigList_v1530, + &ett_lte_rrc_SL_PPPP_TxConfigIndex_v1530, + &ett_lte_rrc_SEQUENCE_SIZE_1_maxCBR_Level_r14_OF_MCS_PSSCH_Range_r15, + &ett_lte_rrc_MCS_PSSCH_Range_r15, + &ett_lte_rrc_SL_CBR_PPPP_TxConfigList_r15, + &ett_lte_rrc_SL_PPPP_TxConfigIndex_r15, &ett_lte_rrc_SL_CommConfig_r12, &ett_lte_rrc_T_commTxResources_r12, - &ett_lte_rrc_T_setup_117, + &ett_lte_rrc_T_setup_156, &ett_lte_rrc_T_scheduled_r12, &ett_lte_rrc_T_ue_Selected_r12, &ett_lte_rrc_T_commTxPoolNormalDedicated_r12, &ett_lte_rrc_T_commTxResources_v1310, - &ett_lte_rrc_T_setup_118, + &ett_lte_rrc_T_setup_157, &ett_lte_rrc_T_scheduled_v1310, &ett_lte_rrc_T_ue_Selected_v1310, &ett_lte_rrc_T_commTxPoolNormalDedicatedExt_r13, @@ -116128,21 +140081,23 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_txParameters_r12, &ett_lte_rrc_SL_CommResourcePoolV2X_r14, &ett_lte_rrc_T_rxParametersNCell_r14, + &ett_lte_rrc_SL_MinT2ValueList_r15, + &ett_lte_rrc_SL_MinT2Value_r15, &ett_lte_rrc_SL_CommTxPoolSensingConfig_r14, &ett_lte_rrc_T_p2x_SensingConfig_r14, &ett_lte_rrc_SL_DiscConfig_r12, &ett_lte_rrc_T_discTxResources_r12, - &ett_lte_rrc_T_setup_119, + &ett_lte_rrc_T_setup_158, &ett_lte_rrc_T_scheduled_r12_01, &ett_lte_rrc_T_ue_Selected_r12_01, &ett_lte_rrc_T_discTxPoolDedicated_r12, &ett_lte_rrc_T_discTF_IndexList_v1260, - &ett_lte_rrc_T_setup_120, + &ett_lte_rrc_T_setup_159, &ett_lte_rrc_T_discTxResourcesPS_r13, - &ett_lte_rrc_T_setup_121, + &ett_lte_rrc_T_setup_160, &ett_lte_rrc_T_ue_Selected_r13, &ett_lte_rrc_T_discTxInterFreqInfo_r13, - &ett_lte_rrc_T_setup_122, + &ett_lte_rrc_T_setup_161, &ett_lte_rrc_T_discRxGapConfig_r13, &ett_lte_rrc_T_discTxGapConfig_r13, &ett_lte_rrc_T_discSysInfoToReportConfig_r13, @@ -116152,7 +140107,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SEQUENCE_SIZE_1_maxFreq_OF_ARFCN_ValueEUTRA_r9, &ett_lte_rrc_SL_DiscTxResourceInfoPerFreq_r13, &ett_lte_rrc_SL_DiscTxResource_r13, - &ett_lte_rrc_T_setup_123, + &ett_lte_rrc_T_setup_162, &ett_lte_rrc_SL_DiscTxPoolToAddModList_r12, &ett_lte_rrc_SL_DiscTxPoolToAddMod_r12, &ett_lte_rrc_SL_DiscTxConfigScheduled_r13, @@ -116171,12 +140126,12 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_rxParameters_r12, &ett_lte_rrc_T_discPeriod_v1310, &ett_lte_rrc_T_rxParamsAddNeighFreq_r13, - &ett_lte_rrc_T_setup_125, + &ett_lte_rrc_T_setup_164, &ett_lte_rrc_T_txParamsAddNeighFreq_r13, - &ett_lte_rrc_T_setup_126, + &ett_lte_rrc_T_setup_165, &ett_lte_rrc_T_freqInfo_01, &ett_lte_rrc_T_txParamsAddNeighFreq_v1370, - &ett_lte_rrc_T_setup_127, + &ett_lte_rrc_T_setup_166, &ett_lte_rrc_T_freqInfo_v1370, &ett_lte_rrc_PhysCellIdList_r13, &ett_lte_rrc_SL_PoolSelectionConfig_r12, @@ -116205,6 +140160,8 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SL_PSSCH_TxConfigList_r14, &ett_lte_rrc_SL_PSSCH_TxConfig_r14, &ett_lte_rrc_SL_PSSCH_TxParameters_r14, + &ett_lte_rrc_SL_PSSCH_TxParameters_v1530, + &ett_lte_rrc_SL_ReliabilityList_r15, &ett_lte_rrc_SL_RestrictResourceReservationPeriodList_r14, &ett_lte_rrc_SL_SyncAllowed_r14, &ett_lte_rrc_SL_SyncConfigList_r12, @@ -116228,51 +140185,65 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SL_TxPoolToReleaseListExt_r13, &ett_lte_rrc_SL_V2X_ConfigDedicated_r14, &ett_lte_rrc_T_commTxResources_r14, - &ett_lte_rrc_T_setup_128, + &ett_lte_rrc_T_setup_167, &ett_lte_rrc_T_scheduled_r14, &ett_lte_rrc_T_ue_Selected_r14, &ett_lte_rrc_T_v2x_CommTxPoolNormalDedicated_r14, + &ett_lte_rrc_T_commTxResources_v1530, + &ett_lte_rrc_T_setup_168, + &ett_lte_rrc_T_scheduled_v1530, + &ett_lte_rrc_T_ue_Selected_v1530, + &ett_lte_rrc_LogicalChGroupInfoList_v1530, &ett_lte_rrc_SL_TxPoolToAddModListV2X_r14, &ett_lte_rrc_SL_TxPoolToAddMod_r14, &ett_lte_rrc_SL_TxPoolToReleaseListV2X_r14, + &ett_lte_rrc_SL_V2X_FreqSelectionConfigList_r15, + &ett_lte_rrc_SL_V2X_FreqSelectionConfig_r15, + &ett_lte_rrc_SL_V2X_PacketDuplicationConfig_r15, + &ett_lte_rrc_SL_PPPR_Dest_CarrierFreqList_r15, + &ett_lte_rrc_SL_PPPR_Dest_CarrierFreq, + &ett_lte_rrc_SL_AllowedCarrierFreqList_r15, + &ett_lte_rrc_SEQUENCE_SIZE_1_maxFreqV2X_r14_OF_ARFCN_ValueEUTRA_r9, + &ett_lte_rrc_SL_V2X_SyncFreqList_r15, &ett_lte_rrc_SL_ZoneConfig_r14, &ett_lte_rrc_SBCCH_SL_BCH_Message, &ett_lte_rrc_SBCCH_SL_BCH_Message_V2X_r14, &ett_lte_rrc_MasterInformationBlock_SL, &ett_lte_rrc_MasterInformationBlock_SL_V2X_r14, &ett_lte_rrc_HandoverPreparationInformation_NB, - &ett_lte_rrc_T_criticalExtensions_53, + &ett_lte_rrc_T_criticalExtensions_56, &ett_lte_rrc_T_c1_50, - &ett_lte_rrc_T_criticalExtensionsFuture_53, + &ett_lte_rrc_T_criticalExtensionsFuture_55, &ett_lte_rrc_HandoverPreparationInformation_NB_IEs, &ett_lte_rrc_HandoverPreparationInformation_NB_v1380_IEs, &ett_lte_rrc_HandoverPreparationInformation_NB_Ext_r14_IEs, - &ett_lte_rrc_T_nonCriticalExtension_72, + &ett_lte_rrc_T_nonCriticalExtension_79, &ett_lte_rrc_UEPagingCoverageInformation_NB, - &ett_lte_rrc_T_criticalExtensions_54, + &ett_lte_rrc_T_criticalExtensions_57, &ett_lte_rrc_T_c1_51, - &ett_lte_rrc_T_criticalExtensionsFuture_54, + &ett_lte_rrc_T_criticalExtensionsFuture_56, &ett_lte_rrc_UEPagingCoverageInformation_NB_IEs, - &ett_lte_rrc_T_nonCriticalExtension_73, + &ett_lte_rrc_T_nonCriticalExtension_80, &ett_lte_rrc_UERadioAccessCapabilityInformation_NB, - &ett_lte_rrc_T_criticalExtensions_55, + &ett_lte_rrc_T_criticalExtensions_58, &ett_lte_rrc_T_c1_52, - &ett_lte_rrc_T_criticalExtensionsFuture_55, + &ett_lte_rrc_T_criticalExtensionsFuture_57, &ett_lte_rrc_UERadioAccessCapabilityInformation_NB_IEs, &ett_lte_rrc_UERadioAccessCapabilityInformation_NB_v1380_IEs, &ett_lte_rrc_UERadioAccessCapabilityInformation_NB_r14_IEs, - &ett_lte_rrc_T_nonCriticalExtension_74, + &ett_lte_rrc_T_nonCriticalExtension_81, &ett_lte_rrc_UERadioPagingInformation_NB, - &ett_lte_rrc_T_criticalExtensions_56, + &ett_lte_rrc_T_criticalExtensions_59, &ett_lte_rrc_T_c1_53, - &ett_lte_rrc_T_criticalExtensionsFuture_56, + &ett_lte_rrc_T_criticalExtensionsFuture_58, &ett_lte_rrc_UERadioPagingInformation_NB_IEs, - &ett_lte_rrc_T_nonCriticalExtension_75, + &ett_lte_rrc_T_nonCriticalExtension_82, &ett_lte_rrc_AS_Config_NB, &ett_lte_rrc_AS_Context_NB, &ett_lte_rrc_ReestablishmentInfo_NB, &ett_lte_rrc_RRM_Config_NB, &ett_lte_rrc_BCCH_BCH_Message_NB, + &ett_lte_rrc_BCCH_BCH_Message_TDD_NB, &ett_lte_rrc_BCCH_DL_SCH_Message_NB, &ett_lte_rrc_BCCH_DL_SCH_MessageType_NB, &ett_lte_rrc_T_c1_54, @@ -116302,144 +140273,172 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_c1_60, &ett_lte_rrc_T_messageClassExtension_16, &ett_lte_rrc_DLInformationTransfer_NB, - &ett_lte_rrc_T_criticalExtensions_57, + &ett_lte_rrc_T_criticalExtensions_60, &ett_lte_rrc_T_c1_61, - &ett_lte_rrc_T_criticalExtensionsFuture_57, + &ett_lte_rrc_T_criticalExtensionsFuture_59, &ett_lte_rrc_DLInformationTransfer_NB_r13_IEs, - &ett_lte_rrc_T_nonCriticalExtension_76, + &ett_lte_rrc_T_nonCriticalExtension_83, &ett_lte_rrc_MasterInformationBlock_NB, &ett_lte_rrc_T_operationModeInfo_r13, &ett_lte_rrc_Guardband_NB_r13, &ett_lte_rrc_Inband_SamePCI_NB_r13, &ett_lte_rrc_Inband_DifferentPCI_NB_r13, &ett_lte_rrc_Standalone_NB_r13, + &ett_lte_rrc_MasterInformationBlock_TDD_NB_r15, + &ett_lte_rrc_T_operationModeInfo_r15, + &ett_lte_rrc_GuardbandTDD_NB_r15, + &ett_lte_rrc_T_sib_GuardbandInfo_r15, + &ett_lte_rrc_Inband_SamePCI_TDD_NB_r15, + &ett_lte_rrc_Inband_DifferentPCI_TDD_NB_r15, + &ett_lte_rrc_StandaloneTDD_NB_r15, + &ett_lte_rrc_SIB_GuardbandAnchorTDD_NB_r15, + &ett_lte_rrc_SIB_GuardbandGuardbandTDD_NB_r15, + &ett_lte_rrc_SIB_GuardbandInbandSamePCI_TDD_NB_r15, + &ett_lte_rrc_SIB_GuardbandInbandDiffPCI_TDD_NB_r15, &ett_lte_rrc_Paging_NB, - &ett_lte_rrc_T_nonCriticalExtension_77, + &ett_lte_rrc_T_nonCriticalExtension_84, &ett_lte_rrc_PagingRecordList_NB_r13, &ett_lte_rrc_PagingRecord_NB_r13, &ett_lte_rrc_RRCConnectionReconfiguration_NB, - &ett_lte_rrc_T_criticalExtensions_58, + &ett_lte_rrc_T_criticalExtensions_61, &ett_lte_rrc_T_c1_62, - &ett_lte_rrc_T_criticalExtensionsFuture_58, + &ett_lte_rrc_T_criticalExtensionsFuture_60, &ett_lte_rrc_RRCConnectionReconfiguration_NB_r13_IEs, &ett_lte_rrc_SEQUENCE_SIZE_1_maxDRB_NB_r13_OF_DedicatedInfoNAS, - &ett_lte_rrc_T_nonCriticalExtension_78, + &ett_lte_rrc_T_nonCriticalExtension_85, &ett_lte_rrc_RRCConnectionReconfigurationComplete_NB, - &ett_lte_rrc_T_criticalExtensions_59, - &ett_lte_rrc_T_criticalExtensionsFuture_59, + &ett_lte_rrc_T_criticalExtensions_62, + &ett_lte_rrc_T_criticalExtensionsFuture_61, &ett_lte_rrc_RRCConnectionReconfigurationComplete_NB_r13_IEs, - &ett_lte_rrc_T_nonCriticalExtension_79, + &ett_lte_rrc_T_nonCriticalExtension_86, &ett_lte_rrc_RRCConnectionReestablishment_NB, - &ett_lte_rrc_T_criticalExtensions_60, + &ett_lte_rrc_T_criticalExtensions_63, &ett_lte_rrc_T_c1_63, - &ett_lte_rrc_T_criticalExtensionsFuture_60, + &ett_lte_rrc_T_criticalExtensionsFuture_62, &ett_lte_rrc_RRCConnectionReestablishment_NB_r13_IEs, &ett_lte_rrc_RRCConnectionReestablishment_NB_v1430_IEs, - &ett_lte_rrc_T_nonCriticalExtension_80, + &ett_lte_rrc_T_nonCriticalExtension_87, &ett_lte_rrc_RRCConnectionReestablishmentComplete_NB, - &ett_lte_rrc_T_criticalExtensions_61, - &ett_lte_rrc_T_criticalExtensionsFuture_61, + &ett_lte_rrc_T_criticalExtensions_64, + &ett_lte_rrc_T_criticalExtensionsFuture_63, &ett_lte_rrc_RRCConnectionReestablishmentComplete_NB_r13_IEs, &ett_lte_rrc_RRCConnectionReestablishmentComplete_NB_v1470_IEs, - &ett_lte_rrc_T_nonCriticalExtension_81, + &ett_lte_rrc_T_nonCriticalExtension_88, &ett_lte_rrc_RRCConnectionReestablishmentRequest_NB, - &ett_lte_rrc_T_criticalExtensions_62, + &ett_lte_rrc_T_criticalExtensions_65, &ett_lte_rrc_T_later_01, - &ett_lte_rrc_T_criticalExtensionsFuture_62, + &ett_lte_rrc_T_criticalExtensionsFuture_64, &ett_lte_rrc_RRCConnectionReestablishmentRequest_NB_r13_IEs, &ett_lte_rrc_RRCConnectionReestablishmentRequest_NB_r14_IEs, &ett_lte_rrc_ReestabUE_Identity_CP_NB_r14, &ett_lte_rrc_RRCConnectionReject_NB, - &ett_lte_rrc_T_criticalExtensions_63, + &ett_lte_rrc_T_criticalExtensions_66, &ett_lte_rrc_T_c1_64, - &ett_lte_rrc_T_criticalExtensionsFuture_63, + &ett_lte_rrc_T_criticalExtensionsFuture_65, &ett_lte_rrc_RRCConnectionReject_NB_r13_IEs, - &ett_lte_rrc_T_nonCriticalExtension_82, + &ett_lte_rrc_T_nonCriticalExtension_89, &ett_lte_rrc_RRCConnectionRelease_NB, - &ett_lte_rrc_T_criticalExtensions_64, + &ett_lte_rrc_T_criticalExtensions_67, &ett_lte_rrc_T_c1_65, - &ett_lte_rrc_T_criticalExtensionsFuture_64, + &ett_lte_rrc_T_criticalExtensionsFuture_66, &ett_lte_rrc_RRCConnectionRelease_NB_r13_IEs, &ett_lte_rrc_RRCConnectionRelease_NB_v1430_IEs, - &ett_lte_rrc_T_nonCriticalExtension_83, + &ett_lte_rrc_RRCConnectionRelease_NB_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_90, &ett_lte_rrc_RedirectedCarrierInfo_NB_v1430, &ett_lte_rrc_RRCConnectionRequest_NB, - &ett_lte_rrc_T_criticalExtensions_65, - &ett_lte_rrc_T_criticalExtensionsFuture_65, + &ett_lte_rrc_T_criticalExtensions_68, + &ett_lte_rrc_T_criticalExtensionsFuture_67, &ett_lte_rrc_RRCConnectionRequest_NB_r13_IEs, &ett_lte_rrc_RRCConnectionResume_NB, - &ett_lte_rrc_T_criticalExtensions_66, + &ett_lte_rrc_T_criticalExtensions_69, &ett_lte_rrc_T_c1_66, - &ett_lte_rrc_T_criticalExtensionsFuture_66, + &ett_lte_rrc_T_criticalExtensionsFuture_68, &ett_lte_rrc_RRCConnectionResume_NB_r13_IEs, - &ett_lte_rrc_T_nonCriticalExtension_84, + &ett_lte_rrc_T_nonCriticalExtension_91, &ett_lte_rrc_RRCConnectionResumeComplete_NB, - &ett_lte_rrc_T_criticalExtensions_67, - &ett_lte_rrc_T_criticalExtensionsFuture_67, + &ett_lte_rrc_T_criticalExtensions_70, + &ett_lte_rrc_T_criticalExtensionsFuture_69, &ett_lte_rrc_RRCConnectionResumeComplete_NB_r13_IEs, &ett_lte_rrc_RRCConnectionResumeComplete_NB_v1470_IEs, - &ett_lte_rrc_T_nonCriticalExtension_85, + &ett_lte_rrc_T_nonCriticalExtension_92, &ett_lte_rrc_RRCConnectionResumeRequest_NB, - &ett_lte_rrc_T_criticalExtensions_68, - &ett_lte_rrc_T_criticalExtensionsFuture_68, + &ett_lte_rrc_T_criticalExtensions_71, + &ett_lte_rrc_T_criticalExtensionsFuture_70, &ett_lte_rrc_RRCConnectionResumeRequest_NB_r13_IEs, &ett_lte_rrc_RRCConnectionSetup_NB, - &ett_lte_rrc_T_criticalExtensions_69, + &ett_lte_rrc_T_criticalExtensions_72, &ett_lte_rrc_T_c1_67, - &ett_lte_rrc_T_criticalExtensionsFuture_69, + &ett_lte_rrc_T_criticalExtensionsFuture_71, &ett_lte_rrc_RRCConnectionSetup_NB_r13_IEs, - &ett_lte_rrc_T_nonCriticalExtension_86, + &ett_lte_rrc_T_nonCriticalExtension_93, &ett_lte_rrc_RRCConnectionSetupComplete_NB, - &ett_lte_rrc_T_criticalExtensions_70, - &ett_lte_rrc_T_criticalExtensionsFuture_70, + &ett_lte_rrc_T_criticalExtensions_73, + &ett_lte_rrc_T_criticalExtensionsFuture_72, &ett_lte_rrc_RRCConnectionSetupComplete_NB_r13_IEs, &ett_lte_rrc_RRCConnectionSetupComplete_NB_v1430_IEs, &ett_lte_rrc_RRCConnectionSetupComplete_NB_v1470_IEs, - &ett_lte_rrc_T_nonCriticalExtension_87, + &ett_lte_rrc_T_nonCriticalExtension_94, + &ett_lte_rrc_RRCEarlyDataComplete_NB_r15, + &ett_lte_rrc_T_criticalExtensions_74, + &ett_lte_rrc_T_criticalExtensionsFuture_73, + &ett_lte_rrc_RRCEarlyDataComplete_NB_r15_IEs, + &ett_lte_rrc_T_nonCriticalExtension_95, + &ett_lte_rrc_RRCEarlyDataRequest_NB_r15, + &ett_lte_rrc_T_criticalExtensions_75, + &ett_lte_rrc_T_criticalExtensionsFuture_74, + &ett_lte_rrc_RRCEarlyDataRequest_NB_r15_IEs, + &ett_lte_rrc_T_nonCriticalExtension_96, &ett_lte_rrc_SCPTMConfiguration_NB_r14, - &ett_lte_rrc_T_nonCriticalExtension_88, + &ett_lte_rrc_T_nonCriticalExtension_97, &ett_lte_rrc_SystemInformation_NB, - &ett_lte_rrc_T_criticalExtensions_71, - &ett_lte_rrc_T_criticalExtensionsFuture_71, + &ett_lte_rrc_T_criticalExtensions_76, + &ett_lte_rrc_T_criticalExtensionsFuture_75, &ett_lte_rrc_SystemInformation_NB_r13_IEs, &ett_lte_rrc_T_sib_TypeAndInfo_r13, &ett_lte_rrc_T_sib_TypeAndInfo_r13_item, - &ett_lte_rrc_T_nonCriticalExtension_89, + &ett_lte_rrc_T_nonCriticalExtension_98, &ett_lte_rrc_SystemInformationBlockType1_NB, &ett_lte_rrc_T_cellAccessRelatedInfo_r13, &ett_lte_rrc_T_cellSelectionInfo_r13, &ett_lte_rrc_SystemInformationBlockType1_NB_v1350, &ett_lte_rrc_SystemInformationBlockType1_NB_v1430, &ett_lte_rrc_SystemInformationBlockType1_NB_v1450, - &ett_lte_rrc_T_nonCriticalExtension_90, + &ett_lte_rrc_SystemInformationBlockType1_NB_v1530, + &ett_lte_rrc_T_tdd_Parameters_r15, + &ett_lte_rrc_T_nonCriticalExtension_99, &ett_lte_rrc_PLMN_IdentityList_NB_r13, &ett_lte_rrc_PLMN_IdentityInfo_NB_r13, &ett_lte_rrc_SchedulingInfoList_NB_r13, + &ett_lte_rrc_SchedulingInfoList_NB_v1530, &ett_lte_rrc_SchedulingInfo_NB_r13, + &ett_lte_rrc_SchedulingInfo_NB_v1530, &ett_lte_rrc_SystemInfoValueTagList_NB_r13, &ett_lte_rrc_SIB_MappingInfo_NB_r13, + &ett_lte_rrc_SIB_MappingInfo_NB_v1530, &ett_lte_rrc_CellSelectionInfo_NB_v1350, &ett_lte_rrc_CellSelectionInfo_NB_v1430, &ett_lte_rrc_UECapabilityEnquiry_NB, - &ett_lte_rrc_T_criticalExtensions_72, + &ett_lte_rrc_T_criticalExtensions_77, &ett_lte_rrc_T_c1_68, - &ett_lte_rrc_T_criticalExtensionsFuture_72, + &ett_lte_rrc_T_criticalExtensionsFuture_76, &ett_lte_rrc_UECapabilityEnquiry_NB_r13_IEs, - &ett_lte_rrc_T_nonCriticalExtension_91, + &ett_lte_rrc_T_nonCriticalExtension_100, &ett_lte_rrc_UECapabilityInformation_NB, - &ett_lte_rrc_T_criticalExtensions_73, - &ett_lte_rrc_T_criticalExtensionsFuture_73, + &ett_lte_rrc_T_criticalExtensions_78, + &ett_lte_rrc_T_criticalExtensionsFuture_77, &ett_lte_rrc_UECapabilityInformation_NB_r13_IEs, &ett_lte_rrc_UECapabilityInformation_NB_Ext_r14_IEs, - &ett_lte_rrc_T_nonCriticalExtension_92, + &ett_lte_rrc_T_nonCriticalExtension_101, &ett_lte_rrc_ULInformationTransfer_NB, - &ett_lte_rrc_T_criticalExtensions_74, - &ett_lte_rrc_T_criticalExtensionsFuture_74, + &ett_lte_rrc_T_criticalExtensions_79, + &ett_lte_rrc_T_criticalExtensionsFuture_78, &ett_lte_rrc_ULInformationTransfer_NB_r13_IEs, - &ett_lte_rrc_T_nonCriticalExtension_93, + &ett_lte_rrc_T_nonCriticalExtension_102, &ett_lte_rrc_SystemInformationBlockType2_NB_r13, &ett_lte_rrc_T_freqInfo_r13_01, &ett_lte_rrc_AdditionalSpectrumEmission_r13, + &ett_lte_rrc_T_freqInfo_v1530, &ett_lte_rrc_SystemInformationBlockType3_NB_r13, &ett_lte_rrc_T_cellReselectionInfoCommon_r13, &ett_lte_rrc_T_cellReselectionServingFreqInfo_r13, @@ -116450,10 +140449,14 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_IntraFreqCellReselectionInfo_NB_v1430, &ett_lte_rrc_CellReselectionInfoCommon_NB_v1450, &ett_lte_rrc_SystemInformationBlockType4_NB_r13, + &ett_lte_rrc_IntraFreqNeighCellList_NB_v1530, + &ett_lte_rrc_IntraFreqNeighCellInfo_NB_v1530, &ett_lte_rrc_SystemInformationBlockType5_NB_r13, &ett_lte_rrc_InterFreqCarrierFreqList_NB_r13, &ett_lte_rrc_InterFreqCarrierFreqInfo_NB_r13, &ett_lte_rrc_InterFreqNeighCellList_NB_r13, + &ett_lte_rrc_InterFreqNeighCellList_NB_v1530, + &ett_lte_rrc_InterFreqNeighCellInfo_NB_v1530, &ett_lte_rrc_InterFreqBlackCellList_NB_r13, &ett_lte_rrc_SystemInformationBlockType14_NB_r13, &ett_lte_rrc_T_ab_Param_r13, @@ -116469,16 +140472,22 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_SC_MCCH_SchedulingInfo_NB_r14, &ett_lte_rrc_T_schedulingPeriodStartOffsetSCPTM_r14_02, &ett_lte_rrc_SystemInformationBlockType22_NB_r14, + &ett_lte_rrc_T_mixedOperationModeConfig_r15, &ett_lte_rrc_DL_ConfigCommonList_NB_r14, &ett_lte_rrc_UL_ConfigCommonList_NB_r14, + &ett_lte_rrc_UL_ConfigCommonListTDD_NB_r15, &ett_lte_rrc_DL_ConfigCommon_NB_r14, &ett_lte_rrc_PCCH_Config_NB_r14, &ett_lte_rrc_UL_ConfigCommon_NB_r14, + &ett_lte_rrc_UL_ConfigCommonTDD_NB_r15, &ett_lte_rrc_NPRACH_ParametersList_NB_r14, &ett_lte_rrc_NPRACH_Parameters_NB_r14, &ett_lte_rrc_T_nprach_Parameters_r14, &ett_lte_rrc_NPRACH_ProbabilityAnchorList_NB_r14, &ett_lte_rrc_NPRACH_ProbabilityAnchor_NB_r14, + &ett_lte_rrc_SystemInformationBlockType23_NB_r15, + &ett_lte_rrc_UL_ConfigCommonList_NB_v1530, + &ett_lte_rrc_UL_ConfigCommon_NB_v1530, &ett_lte_rrc_CarrierConfigDedicated_NB_r13, &ett_lte_rrc_DL_CarrierConfigDedicated_NB_r13, &ett_lte_rrc_T_downlinkBitmapNonAnchor_r13, @@ -116498,25 +140507,39 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_T_samePCI_r14, &ett_lte_rrc_T_differentPCI_r14, &ett_lte_rrc_DL_GapConfig_NB_r13, + &ett_lte_rrc_DL_GapConfig_NB_v1530, &ett_lte_rrc_LogicalChannelConfig_NB_r13, &ett_lte_rrc_MAC_MainConfig_NB_r13, &ett_lte_rrc_T_ul_SCH_Config_r13, &ett_lte_rrc_T_logicalChannelSR_Config_r13, - &ett_lte_rrc_T_setup_129, + &ett_lte_rrc_T_setup_169, &ett_lte_rrc_T_dataInactivityTimerConfig_r14_01, - &ett_lte_rrc_T_setup_130, + &ett_lte_rrc_T_setup_170, &ett_lte_rrc_DRX_Config_NB_r13, - &ett_lte_rrc_T_setup_131, + &ett_lte_rrc_T_setup_171, &ett_lte_rrc_NPDCCH_ConfigDedicated_NB_r13, + &ett_lte_rrc_NPDCCH_ConfigDedicated_NB_v1530, &ett_lte_rrc_NPDSCH_ConfigCommon_NB_r13, &ett_lte_rrc_NPRACH_ConfigSIB_NB_r13, &ett_lte_rrc_NPRACH_ConfigSIB_NB_v1330, &ett_lte_rrc_NPRACH_ConfigSIB_NB_v1450, + &ett_lte_rrc_NPRACH_ConfigSIB_NB_v1530, + &ett_lte_rrc_T_tdd_Parameters_r15_01, + &ett_lte_rrc_T_fmt2_Parameters_r15, + &ett_lte_rrc_T_edt_Parameters_r15_01, &ett_lte_rrc_NPRACH_ParametersList_NB_r13, &ett_lte_rrc_NPRACH_ParametersList_NB_v1330, &ett_lte_rrc_NPRACH_Parameters_NB_r13, &ett_lte_rrc_NPRACH_Parameters_NB_v1330, + &ett_lte_rrc_NPRACH_ParametersListTDD_NB_r15, + &ett_lte_rrc_NPRACH_ParametersTDD_NB_r15, + &ett_lte_rrc_T_nprach_Parameters_r15, + &ett_lte_rrc_NPRACH_ParametersListFmt2_NB_r15, + &ett_lte_rrc_NPRACH_ParametersFmt2_NB_r15, + &ett_lte_rrc_T_nprach_Parameters_r15_01, &ett_lte_rrc_RSRP_ThresholdsNPRACH_InfoList_NB_r13, + &ett_lte_rrc_EDT_TBS_InfoList_NB_r15, + &ett_lte_rrc_EDT_TBS_NB_r15, &ett_lte_rrc_NPUSCH_ConfigCommon_NB_r13, &ett_lte_rrc_SEQUENCE_SIZE_1_maxNPRACH_Resources_NB_r13_OF_ACK_NACK_NumRepetitions_NB_r13, &ett_lte_rrc_T_dmrs_Config_r13, @@ -116529,7 +140552,9 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_PhysicalConfigDedicated_NB_r13, &ett_lte_rrc_RACH_ConfigCommon_NB_r13, &ett_lte_rrc_RACH_InfoList_NB_r13, + &ett_lte_rrc_RACH_InfoList_NB_v1530, &ett_lte_rrc_RACH_Info_NB_r13, + &ett_lte_rrc_RACH_Info_NB_v1530, &ett_lte_rrc_PowerRampingParameters_NB_v1450, &ett_lte_rrc_T_powerRampingParametersCE1_r14, &ett_lte_rrc_RadioResourceConfigCommonSIB_NB_r13, @@ -116550,26 +140575,43 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_UL_AM_RLC_NB_r13, &ett_lte_rrc_DL_AM_RLC_NB_r13, &ett_lte_rrc_RLF_TimersAndConstants_NB_r13, - &ett_lte_rrc_T_setup_132, + &ett_lte_rrc_T_setup_172, + &ett_lte_rrc_SchedulingRequestConfig_NB_r15, + &ett_lte_rrc_SR_WithoutHARQ_ACK_Config_NB_r15, + &ett_lte_rrc_T_setup_173, + &ett_lte_rrc_SR_NPRACH_Resource_NB_r15, + &ett_lte_rrc_T_nprach_SubCarrierIndex_r15, + &ett_lte_rrc_SR_SPS_BSR_Config_NB_r15, + &ett_lte_rrc_T_setup_174, + &ett_lte_rrc_TDD_Config_NB_r15, &ett_lte_rrc_UplinkPowerControlCommon_NB_r13, &ett_lte_rrc_UplinkPowerControlDedicated_NB_r13, + &ett_lte_rrc_WUS_Config_NB_r15, + &ett_lte_rrc_WUS_ConfigPerCarrier_NB_r15, &ett_lte_rrc_AdditionalBandInfoList_NB_r14, &ett_lte_rrc_MultiBandInfoList_NB_r13, &ett_lte_rrc_MultiBandInfo_NB_r13, &ett_lte_rrc_NS_PmaxList_NB_r13, &ett_lte_rrc_NS_PmaxValue_NB_r13, &ett_lte_rrc_MeasResultServCell_NB_r14, + &ett_lte_rrc_NSSS_RRM_Config_NB_r15, &ett_lte_rrc_UE_Capability_NB_r13, &ett_lte_rrc_T_dummy_03, &ett_lte_rrc_UE_Capability_NB_Ext_r14_IEs, &ett_lte_rrc_UE_Capability_NB_v1440_IEs, - &ett_lte_rrc_T_nonCriticalExtension_94, + &ett_lte_rrc_UE_Capability_NB_v14x0_IEs, + &ett_lte_rrc_UE_Capability_NB_v1530_IEs, + &ett_lte_rrc_T_nonCriticalExtension_103, + &ett_lte_rrc_TDD_UE_Capability_NB_r15, &ett_lte_rrc_PDCP_Parameters_NB_r13, &ett_lte_rrc_T_supportedROHC_Profiles_r13, + &ett_lte_rrc_RLC_Parameters_NB_r15, &ett_lte_rrc_MAC_Parameters_NB_r14, + &ett_lte_rrc_MAC_Parameters_NB_v1530, &ett_lte_rrc_PhyLayerParameters_NB_r13, &ett_lte_rrc_PhyLayerParameters_NB_v1430, &ett_lte_rrc_PhyLayerParameters_NB_v1440, + &ett_lte_rrc_PhyLayerParameters_NB_v1530, &ett_lte_rrc_RF_Parameters_NB_r13, &ett_lte_rrc_RF_Parameters_NB_v1430, &ett_lte_rrc_SupportedBandList_NB_r13, @@ -116585,7 +140627,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_PCI_ARFCN_NB_r14, /*--- End of included file: packet-lte-rrc-ettarr.c ---*/ -#line 4251 "./asn1/lte-rrc/packet-lte-rrc-template.c" +#line 4253 "./asn1/lte-rrc/packet-lte-rrc-template.c" &ett_lte_rrc_featureGroupIndicators, &ett_lte_rrc_featureGroupIndRel9Add, @@ -116620,7 +140662,7 @@ void proto_register_lte_rrc(void) { &ett_lte_rrc_sourceRB_ConfigNR_r15, &ett_lte_rrc_sourceRB_ConfigSN_NR_r15, &ett_lte_rrc_sourceOtherConfigSN_NR_r15, - &ett_lte_rrc_sourceContextENDC_r15, + &ett_lte_rrc_sourceContextEN_DC_r15, &ett_lte_rrc_requestedFreqBandsNR_MRDC_r15, &ett_lte_rrc_measGapPatterns_v1520 }; @@ -116692,6 +140734,7 @@ void proto_register_lte_rrc(void) { register_dissector("lte-rrc.ul.ccch", dissect_UL_CCCH_Message_PDU, proto_lte_rrc); register_dissector("lte-rrc.ul.dcch", dissect_UL_DCCH_Message_PDU, proto_lte_rrc); register_dissector("lte-rrc.sc.mcch", dissect_SC_MCCH_Message_r13_PDU, proto_lte_rrc); + register_dissector("lte-rrc.rrc_conn_reconf", dissect_RRCConnectionReconfiguration_PDU, proto_lte_rrc); register_dissector("lte-rrc.ue_cap_info", dissect_UECapabilityInformation_PDU, proto_lte_rrc); register_dissector("lte-rrc.ue_eutra_cap", dissect_lte_rrc_UE_EUTRA_Capability_PDU, proto_lte_rrc); register_dissector("lte-rrc.sbcch.sl.bch", dissect_SBCCH_SL_BCH_Message_PDU, proto_lte_rrc); @@ -116699,6 +140742,7 @@ void proto_register_lte_rrc(void) { register_dissector("lte-rrc.ue_radio_access_cap_info.nb", dissect_UERadioAccessCapabilityInformation_NB_PDU, proto_lte_rrc); register_dissector("lte-rrc.ue_radio_paging_info.nb", dissect_UERadioPagingInformation_NB_PDU, proto_lte_rrc); register_dissector("lte-rrc.bcch.bch.nb", dissect_BCCH_BCH_Message_NB_PDU, proto_lte_rrc); + register_dissector("lte-rrc.bcch.bch.nb.tdd", dissect_BCCH_BCH_Message_TDD_NB_PDU, proto_lte_rrc); register_dissector("lte-rrc.bcch.dl.sch.nb", dissect_BCCH_DL_SCH_Message_NB_PDU, proto_lte_rrc); register_dissector("lte-rrc.pcch.nb", dissect_PCCH_Message_NB_PDU, proto_lte_rrc); register_dissector("lte-rrc.dl.ccch.nb", dissect_DL_CCCH_Message_NB_PDU, proto_lte_rrc); @@ -116709,7 +140753,7 @@ void proto_register_lte_rrc(void) { /*--- End of included file: packet-lte-rrc-dis-reg.c ---*/ -#line 4341 "./asn1/lte-rrc/packet-lte-rrc-template.c" +#line 4343 "./asn1/lte-rrc/packet-lte-rrc-template.c" lte_rrc_etws_cmas_dcs_hash = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), g_direct_hash, g_direct_equal); lte_rrc_system_info_value_changed_hash = wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), g_direct_hash, g_direct_equal); @@ -116726,12 +140770,14 @@ void proto_register_lte_rrc(void) { void proto_reg_handoff_lte_rrc(void) { - dissector_add_for_decode_as_with_preference("udp.port", lte_rrc_dl_ccch_handle); - nas_eps_handle = find_dissector("nas-eps"); - rrc_irat_ho_to_utran_cmd_handle = find_dissector("rrc.irat.ho_to_utran_cmd"); - rrc_sys_info_cont_handle = find_dissector("rrc.sysinfo.cont"); - gsm_a_dtap_handle = find_dissector("gsm_a_dtap"); - gsm_rlcmac_dl_handle = find_dissector("gsm_rlcmac_dl"); + dissector_add_for_decode_as_with_preference("udp.port", lte_rrc_dl_ccch_handle); + nas_eps_handle = find_dissector("nas-eps"); + rrc_irat_ho_to_utran_cmd_handle = find_dissector("rrc.irat.ho_to_utran_cmd"); + rrc_sys_info_cont_handle = find_dissector("rrc.sysinfo.cont"); + gsm_a_dtap_handle = find_dissector("gsm_a_dtap"); + gsm_rlcmac_dl_handle = find_dissector("gsm_rlcmac_dl"); + nr_rrc_reconf_handle = find_dissector("nr-rrc.rrc_reconf"); + lte_rrc_conn_reconf_handle = find_dissector("lte-rrc.rrc_conn_reconf"); } -- cgit v1.2.3