aboutsummaryrefslogtreecommitdiffstats
path: root/epan/dissectors/packet-s1ap.c
diff options
context:
space:
mode:
authorAndersBroman <anders.broman@ericsson.com>2014-09-10 16:30:41 +0200
committerAnders Broman <a.broman58@gmail.com>2014-09-10 15:56:05 +0000
commit4567134a56a0abcb61f1aec100ab6f2b126f891d (patch)
treebea3dfecb20883bc6452ad36574dd03c4be6ea96 /epan/dissectors/packet-s1ap.c
parentcc412a6cdf5321925ff0d35f0bcc28b42af69483 (diff)
Update to revission V12.2.0 (2014-06)
Remove soft deprecated APIs Change-Id: I30adcb9f381c77142385c22fcc4a208169b0cf5e Reviewed-on: https://code.wireshark.org/review/4062 Petri-Dish: Anders Broman <a.broman58@gmail.com> Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org> Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'epan/dissectors/packet-s1ap.c')
-rw-r--r--epan/dissectors/packet-s1ap.c662
1 files changed, 595 insertions, 67 deletions
diff --git a/epan/dissectors/packet-s1ap.c b/epan/dissectors/packet-s1ap.c
index d9f930d75b..004435b016 100644
--- a/epan/dissectors/packet-s1ap.c
+++ b/epan/dissectors/packet-s1ap.c
@@ -105,6 +105,9 @@ static dissector_handle_t bssgp_handle;
#define maxnoofCellIDforMDT 32
#define maxnoofTAforMDT 8
#define maxnoofMDTPLMNs 16
+#define maxnoofCellsforRestart 256
+#define maxnoofRestartTAIs 2048
+#define maxnoofRestartEmergencyAreaIDs 256
#define maxnoofIRATReportingCells 128
#define maxnoofcandidateCells 16
#define maxnoofCellineNB 256
@@ -158,7 +161,8 @@ typedef enum _ProcedureCode_enum {
id_uplinkUEAssociatedLPPaTransport = 45,
id_downlinkNonUEAssociatedLPPaTransport = 46,
id_uplinkNonUEAssociatedLPPaTransport = 47,
- id_UERadioCapabilityMatch = 48
+ id_UERadioCapabilityMatch = 48,
+ id_PWSRestartIndication = 49
} ProcedureCode_enum;
typedef enum _ProtocolIE_ID_enum {
@@ -247,7 +251,6 @@ typedef enum _ProtocolIE_ID_enum {
id_Unknown_82 = 82,
id_cdma2000HOStatus = 83,
id_cdma2000HORequiredIndication = 84,
- id_Unknown_85 = 85,
id_E_UTRAN_Trace_ID = 86,
id_RelativeMMECapacity = 87,
id_SourceMME_UE_S1AP_ID = 88,
@@ -343,7 +346,19 @@ typedef enum _ProtocolIE_ID_enum {
id_SignallingBasedMDTPLMNList = 178,
id_ULCOUNTValueExtended = 179,
id_DLCOUNTValueExtended = 180,
- id_ReceiveStatusOfULPDCPSDUsExtended = 181
+ id_ReceiveStatusOfULPDCPSDUsExtended = 181,
+ id_ECGIListForRestart = 182,
+ id_SIPTO_Correlation_ID = 183,
+ id_SIPTO_L_GW_TransportLayerAddress = 184,
+ id_TransportInformation = 185,
+ id_LHN_ID = 186,
+ id_AdditionalCSFallbackIndicator = 187,
+ id_TAIListForRestart = 188,
+ id_UserLocationInformation = 189,
+ id_EmergencyAreaIDListForRestart = 190,
+ id_KillAllWarningMessages = 191,
+ id_Masked_IMEISV = 192,
+ id_eNBIndirectX2TransportLayerAddresses = 193
} ProtocolIE_ID_enum;
/*--- End of included file: packet-s1ap-val.h ---*/
@@ -373,6 +388,7 @@ static int hf_s1ap_CNDomain_PDU = -1; /* CNDomain */
static int hf_s1ap_ConcurrentWarningMessageIndicator_PDU = -1; /* ConcurrentWarningMessageIndicator */
static int hf_s1ap_Correlation_ID_PDU = -1; /* Correlation_ID */
static int hf_s1ap_CSFallbackIndicator_PDU = -1; /* CSFallbackIndicator */
+static int hf_s1ap_AdditionalCSFallbackIndicator_PDU = -1; /* AdditionalCSFallbackIndicator */
static int hf_s1ap_CSG_Id_PDU = -1; /* CSG_Id */
static int hf_s1ap_CSG_IdList_PDU = -1; /* CSG_IdList */
static int hf_s1ap_CSGMembershipStatus_PDU = -1; /* CSGMembershipStatus */
@@ -381,6 +397,7 @@ static int hf_s1ap_CriticalityDiagnostics_PDU = -1; /* CriticalityDiagnostics *
static int hf_s1ap_DataCodingScheme_PDU = -1; /* DataCodingScheme */
static int hf_s1ap_Direct_Forwarding_Path_Availability_PDU = -1; /* Direct_Forwarding_Path_Availability */
static int hf_s1ap_Data_Forwarding_Not_Possible_PDU = -1; /* Data_Forwarding_Not_Possible */
+static int hf_s1ap_EmergencyAreaIDListForRestart_PDU = -1; /* EmergencyAreaIDListForRestart */
static int hf_s1ap_s1ap_Global_ENB_ID_PDU = -1; /* Global_ENB_ID */
static int hf_s1ap_GUMMEIList_PDU = -1; /* GUMMEIList */
static int hf_s1ap_s1ap_ENB_StatusTransfer_TransparentContainer_PDU = -1; /* ENB_StatusTransfer_TransparentContainer */
@@ -397,8 +414,11 @@ static int hf_s1ap_GUMMEIType_PDU = -1; /* GUMMEIType */
static int hf_s1ap_GWContextReleaseIndication_PDU = -1; /* GWContextReleaseIndication */
static int hf_s1ap_HandoverRestrictionList_PDU = -1; /* HandoverRestrictionList */
static int hf_s1ap_HandoverType_PDU = -1; /* HandoverType */
+static int hf_s1ap_Masked_IMEISV_PDU = -1; /* Masked_IMEISV */
+static int hf_s1ap_KillAllWarningMessages_PDU = -1; /* KillAllWarningMessages */
static int hf_s1ap_LAI_PDU = -1; /* LAI */
static int hf_s1ap_LPPa_PDU_PDU = -1; /* LPPa_PDU */
+static int hf_s1ap_LHN_ID_PDU = -1; /* LHN_ID */
static int hf_s1ap_M3Configuration_PDU = -1; /* M3Configuration */
static int hf_s1ap_M4Configuration_PDU = -1; /* M4Configuration */
static int hf_s1ap_M5Configuration_PDU = -1; /* M5Configuration */
@@ -428,6 +448,7 @@ static int hf_s1ap_RelayNode_Indicator_PDU = -1; /* RelayNode_Indicator */
static int hf_s1ap_RequestType_PDU = -1; /* RequestType */
static int hf_s1ap_RepetitionPeriod_PDU = -1; /* RepetitionPeriod */
static int hf_s1ap_RRC_Establishment_Cause_PDU = -1; /* RRC_Establishment_Cause */
+static int hf_s1ap_ECGIListForRestart_PDU = -1; /* ECGIListForRestart */
static int hf_s1ap_Routing_ID_PDU = -1; /* Routing_ID */
static int hf_s1ap_SecurityKey_PDU = -1; /* SecurityKey */
static int hf_s1ap_SecurityContext_PDU = -1; /* SecurityContext */
@@ -449,10 +470,12 @@ static int hf_s1ap_TargeteNB_ToSourceeNB_TransparentContainer_PDU = -1; /* Targ
static int hf_s1ap_Target_ToSource_TransparentContainer_PDU = -1; /* Target_ToSource_TransparentContainer */
static int hf_s1ap_TimeToWait_PDU = -1; /* TimeToWait */
static int hf_s1ap_Time_UE_StayedInCell_EnhancedGranularity_PDU = -1; /* Time_UE_StayedInCell_EnhancedGranularity */
+static int hf_s1ap_TransportInformation_PDU = -1; /* TransportInformation */
static int hf_s1ap_TransportLayerAddress_PDU = -1; /* TransportLayerAddress */
static int hf_s1ap_TraceActivation_PDU = -1; /* TraceActivation */
static int hf_s1ap_TrafficLoadReductionIndication_PDU = -1; /* TrafficLoadReductionIndication */
static int hf_s1ap_TunnelInformation_PDU = -1; /* TunnelInformation */
+static int hf_s1ap_TAIListForRestart_PDU = -1; /* TAIListForRestart */
static int hf_s1ap_UEAggregateMaximumBitrate_PDU = -1; /* UEAggregateMaximumBitrate */
static int hf_s1ap_UE_S1AP_IDs_PDU = -1; /* UE_S1AP_IDs */
static int hf_s1ap_UE_associatedLogicalS1_ConnectionItem_PDU = -1; /* UE_associatedLogicalS1_ConnectionItem */
@@ -460,6 +483,7 @@ static int hf_s1ap_UEIdentityIndexValue_PDU = -1; /* UEIdentityIndexValue */
static int hf_s1ap_UEPagingID_PDU = -1; /* UEPagingID */
static int hf_s1ap_UERadioCapability_PDU = -1; /* UERadioCapability */
static int hf_s1ap_UESecurityCapabilities_PDU = -1; /* UESecurityCapabilities */
+static int hf_s1ap_UserLocationInformation_PDU = -1; /* UserLocationInformation */
static int hf_s1ap_VoiceSupportMatchIndicator_PDU = -1; /* VoiceSupportMatchIndicator */
static int hf_s1ap_WarningAreaList_PDU = -1; /* WarningAreaList */
static int hf_s1ap_WarningType_PDU = -1; /* WarningType */
@@ -467,6 +491,7 @@ static int hf_s1ap_WarningSecurityInfo_PDU = -1; /* WarningSecurityInfo */
static int hf_s1ap_WarningMessageContents_PDU = -1; /* WarningMessageContents */
static int hf_s1ap_X2TNLConfigurationInfo_PDU = -1; /* X2TNLConfigurationInfo */
static int hf_s1ap_ENBX2ExtTLAs_PDU = -1; /* ENBX2ExtTLAs */
+static int hf_s1ap_ENBIndirectX2TransportLayerAddresses_PDU = -1; /* ENBIndirectX2TransportLayerAddresses */
static int hf_s1ap_HandoverRequired_PDU = -1; /* HandoverRequired */
static int hf_s1ap_HandoverCommand_PDU = -1; /* HandoverCommand */
static int hf_s1ap_E_RABSubjecttoDataForwardingList_PDU = -1; /* E_RABSubjecttoDataForwardingList */
@@ -568,6 +593,7 @@ static int hf_s1ap_MMEConfigurationTransfer_PDU = -1; /* MMEConfigurationTransf
static int hf_s1ap_PrivateMessage_PDU = -1; /* PrivateMessage */
static int hf_s1ap_KillRequest_PDU = -1; /* KillRequest */
static int hf_s1ap_KillResponse_PDU = -1; /* KillResponse */
+static int hf_s1ap_PWSRestartIndication_PDU = -1; /* PWSRestartIndication */
static int hf_s1ap_DownlinkUEAssociatedLPPaTransport_PDU = -1; /* DownlinkUEAssociatedLPPaTransport */
static int hf_s1ap_UplinkUEAssociatedLPPaTransport_PDU = -1; /* UplinkUEAssociatedLPPaTransport */
static int hf_s1ap_DownlinkNonUEAssociatedLPPaTransport_PDU = -1; /* DownlinkNonUEAssociatedLPPaTransport */
@@ -653,6 +679,7 @@ static int hf_s1ap_completedCellinEAI = -1; /* CompletedCellinEAI */
static int hf_s1ap_EmergencyAreaID_Cancelled_item = -1; /* EmergencyAreaID_Cancelled_Item */
static int hf_s1ap_cancelledCellinEAI = -1; /* CancelledCellinEAI */
static int hf_s1ap_CompletedCellinEAI_item = -1; /* CompletedCellinEAI_Item */
+static int hf_s1ap_EmergencyAreaIDListForRestart_item = -1; /* EmergencyAreaID */
static int hf_s1ap_macroENB_ID = -1; /* BIT_STRING_SIZE_20 */
static int hf_s1ap_homeENB_ID = -1; /* BIT_STRING_SIZE_28 */
static int hf_s1ap_lAI = -1; /* LAI */
@@ -722,6 +749,8 @@ static int hf_s1ap_rIMInformation = -1; /* RIMInformation */
static int hf_s1ap_rIMRoutingAddress = -1; /* RIMRoutingAddress */
static int hf_s1ap_gERAN_Cell_ID = -1; /* GERAN_Cell_ID */
static int hf_s1ap_targetRNC_ID = -1; /* TargetRNC_ID */
+static int hf_s1ap_eHRPD_Sector_ID = -1; /* OCTET_STRING_SIZE_16 */
+static int hf_s1ap_ECGIListForRestart_item = -1; /* EUTRAN_CGI */
static int hf_s1ap_nextHopChainingCount = -1; /* INTEGER_0_7 */
static int hf_s1ap_nextHopParameter = -1; /* SecurityKey */
static int hf_s1ap_sONInformationRequest = -1; /* SONInformationRequest */
@@ -766,12 +795,14 @@ static int hf_s1ap_cGI = -1; /* CGI */
static int hf_s1ap_rNC_ID = -1; /* RNC_ID */
static int hf_s1ap_extendedRNC_ID = -1; /* ExtendedRNC_ID */
static int hf_s1ap_measurementThreshold = -1; /* MeasurementThresholdA2 */
+static int hf_s1ap_transportLayerAddress = -1; /* TransportLayerAddress */
+static int hf_s1ap_uL_GTP_TEID = -1; /* GTP_TEID */
static int hf_s1ap_e_UTRAN_Trace_ID = -1; /* E_UTRAN_Trace_ID */
static int hf_s1ap_interfacesToTrace = -1; /* InterfacesToTrace */
static int hf_s1ap_traceDepth = -1; /* TraceDepth */
static int hf_s1ap_traceCollectionEntityIPAddress = -1; /* TransportLayerAddress */
-static int hf_s1ap_transportLayerAddress = -1; /* TransportLayerAddress */
static int hf_s1ap_uDP_Port_Number = -1; /* Port_Number */
+static int hf_s1ap_TAIListForRestart_item = -1; /* TAI */
static int hf_s1ap_uEaggregateMaximumBitRateDL = -1; /* BitRate */
static int hf_s1ap_uEaggregateMaximumBitRateUL = -1; /* BitRate */
static int hf_s1ap_uE_S1AP_ID_pair = -1; /* UE_S1AP_ID_pair */
@@ -782,6 +813,8 @@ static int hf_s1ap_s_TMSI = -1; /* S_TMSI */
static int hf_s1ap_iMSI = -1; /* IMSI */
static int hf_s1ap_encryptionAlgorithms = -1; /* EncryptionAlgorithms */
static int hf_s1ap_integrityProtectionAlgorithms = -1; /* IntegrityProtectionAlgorithms */
+static int hf_s1ap_eutran_cgi = -1; /* EUTRAN_CGI */
+static int hf_s1ap_tai = -1; /* TAI */
static int hf_s1ap_cellIDList = -1; /* ECGIList */
static int hf_s1ap_trackingAreaListforWarning = -1; /* TAIListforWarning */
static int hf_s1ap_emergencyAreaIDList = -1; /* EmergencyAreaIDList */
@@ -790,11 +823,11 @@ static int hf_s1ap_ENBX2ExtTLAs_item = -1; /* ENBX2ExtTLA */
static int hf_s1ap_iPsecTLA = -1; /* TransportLayerAddress */
static int hf_s1ap_gTPTLAa = -1; /* ENBX2GTPTLAs */
static int hf_s1ap_ENBX2GTPTLAs_item = -1; /* TransportLayerAddress */
+static int hf_s1ap_ENBIndirectX2TransportLayerAddresses_item = -1; /* TransportLayerAddress */
static int hf_s1ap_protocolIEs = -1; /* ProtocolIE_Container */
static int hf_s1ap_dL_transportLayerAddress = -1; /* TransportLayerAddress */
static int hf_s1ap_dL_gTP_TEID = -1; /* GTP_TEID */
static int hf_s1ap_uL_TransportLayerAddress = -1; /* TransportLayerAddress */
-static int hf_s1ap_uL_GTP_TEID = -1; /* GTP_TEID */
static int hf_s1ap_gTP_TEID = -1; /* GTP_TEID */
static int hf_s1ap_e_RABlevelQosParameters = -1; /* E_RABLevelQoSParameters */
static int hf_s1ap_E_RABToBeSetupListBearerSUReq_item = -1; /* ProtocolIE_SingleContainer */
@@ -844,10 +877,12 @@ static int hf_s1ap_failureEventReporting_02 = -1; /* FailureEventReportingCause
static int hf_s1ap_eUTRAN = -1; /* EUTRANcellLoadReportingResponse */
static int hf_s1ap_uTRAN = -1; /* OCTET_STRING */
static int hf_s1ap_gERAN = -1; /* OCTET_STRING */
+static int hf_s1ap_eHRPD = -1; /* EHRPDSectorLoadReportingResponse */
static int hf_s1ap_compositeAvailableCapacityGroup = -1; /* CompositeAvailableCapacityGroup */
static int hf_s1ap_cell_ID_01 = -1; /* OCTET_STRING */
static int hf_s1ap_eUTRANcellLoadReportingResponse = -1; /* EUTRANcellLoadReportingResponse */
static int hf_s1ap_eUTRAN_01 = -1; /* OCTET_STRING */
+static int hf_s1ap_eHRPD_01 = -1; /* EHRPD_Sector_ID */
static int hf_s1ap_RequestedCellList_item = -1; /* IRAT_Cell_ID */
static int hf_s1ap_requestedCellList = -1; /* RequestedCellList */
static int hf_s1ap_cell_ID_02 = -1; /* IRAT_Cell_ID */
@@ -856,6 +891,7 @@ static int hf_s1ap_MultiCellLoadReportingResponse_item = -1; /* MultiCellLoadRe
static int hf_s1ap_eUTRANResponse = -1; /* EUTRANResponse */
static int hf_s1ap_uTRANResponse = -1; /* OCTET_STRING */
static int hf_s1ap_gERANResponse = -1; /* OCTET_STRING */
+static int hf_s1ap_eHRPD_02 = -1; /* EHRPDMultiSectorLoadReportingResponseItem */
static int hf_s1ap_numberOfMeasurementReportingLevels = -1; /* NumberOfMeasurementReportingLevels */
static int hf_s1ap_cellLoadReportingResponse = -1; /* CellLoadReportingResponse */
static int hf_s1ap_overloadFlag = -1; /* OverloadFlag */
@@ -876,6 +912,12 @@ static int hf_s1ap_notifyFlag = -1; /* NotifyFlag */
static int hf_s1ap_tooEarlyInterRATHOReportFromEUTRAN = -1; /* TooEarlyInterRATHOReportReportFromEUTRAN */
static int hf_s1ap_uERLFReportContainer = -1; /* OCTET_STRING */
static int hf_s1ap_mobilityInformation = -1; /* MobilityInformation */
+static int hf_s1ap_dL_EHRPD_CompositeAvailableCapacity = -1; /* EHRPDCompositeAvailableCapacity */
+static int hf_s1ap_uL_EHRPD_CompositeAvailableCapacity = -1; /* EHRPDCompositeAvailableCapacity */
+static int hf_s1ap_eHRPDSectorCapacityClassValue = -1; /* EHRPDSectorCapacityClassValue */
+static int hf_s1ap_eHRPDCapacityValue = -1; /* EHRPDCapacityValue */
+static int hf_s1ap_eHRPD_Sector_ID_01 = -1; /* EHRPD_Sector_ID */
+static int hf_s1ap_eHRPDSectorLoadReportingResponse = -1; /* EHRPDSectorLoadReportingResponse */
/*--- End of included file: packet-s1ap-hf.c ---*/
#line 75 "../../asn1/s1ap/packet-s1ap-template.c"
@@ -936,6 +978,7 @@ static gint ett_s1ap_EmergencyAreaID_Cancelled = -1;
static gint ett_s1ap_EmergencyAreaID_Cancelled_Item = -1;
static gint ett_s1ap_CompletedCellinEAI = -1;
static gint ett_s1ap_CompletedCellinEAI_Item = -1;
+static gint ett_s1ap_EmergencyAreaIDListForRestart = -1;
static gint ett_s1ap_ENB_ID = -1;
static gint ett_s1ap_GERAN_Cell_ID = -1;
static gint ett_s1ap_Global_ENB_ID = -1;
@@ -976,6 +1019,7 @@ static gint ett_s1ap_M1PeriodicReporting = -1;
static gint ett_s1ap_RequestType = -1;
static gint ett_s1ap_RIMTransfer = -1;
static gint ett_s1ap_RIMRoutingAddress = -1;
+static gint ett_s1ap_ECGIListForRestart = -1;
static gint ett_s1ap_SecurityContext = -1;
static gint ett_s1ap_SONInformation = -1;
static gint ett_s1ap_SONInformationReply = -1;
@@ -1008,8 +1052,10 @@ static gint ett_s1ap_TargeteNB_ID = -1;
static gint ett_s1ap_TargetRNC_ID = -1;
static gint ett_s1ap_TargeteNB_ToSourceeNB_TransparentContainer = -1;
static gint ett_s1ap_M1ThresholdEventA2 = -1;
+static gint ett_s1ap_TransportInformation = -1;
static gint ett_s1ap_TraceActivation = -1;
static gint ett_s1ap_TunnelInformation = -1;
+static gint ett_s1ap_TAIListForRestart = -1;
static gint ett_s1ap_UEAggregateMaximumBitrate = -1;
static gint ett_s1ap_UE_S1AP_IDs = -1;
static gint ett_s1ap_UE_S1AP_ID_pair = -1;
@@ -1017,11 +1063,13 @@ static gint ett_s1ap_UE_associatedLogicalS1_ConnectionItem = -1;
static gint ett_s1ap_UE_HistoryInformation = -1;
static gint ett_s1ap_UEPagingID = -1;
static gint ett_s1ap_UESecurityCapabilities = -1;
+static gint ett_s1ap_UserLocationInformation = -1;
static gint ett_s1ap_WarningAreaList = -1;
static gint ett_s1ap_X2TNLConfigurationInfo = -1;
static gint ett_s1ap_ENBX2ExtTLAs = -1;
static gint ett_s1ap_ENBX2ExtTLA = -1;
static gint ett_s1ap_ENBX2GTPTLAs = -1;
+static gint ett_s1ap_ENBIndirectX2TransportLayerAddresses = -1;
static gint ett_s1ap_HandoverRequired = -1;
static gint ett_s1ap_HandoverCommand = -1;
static gint ett_s1ap_E_RABDataForwardingItem = -1;
@@ -1118,6 +1166,7 @@ static gint ett_s1ap_MMEConfigurationTransfer = -1;
static gint ett_s1ap_PrivateMessage = -1;
static gint ett_s1ap_KillRequest = -1;
static gint ett_s1ap_KillResponse = -1;
+static gint ett_s1ap_PWSRestartIndication = -1;
static gint ett_s1ap_DownlinkUEAssociatedLPPaTransport = -1;
static gint ett_s1ap_UplinkUEAssociatedLPPaTransport = -1;
static gint ett_s1ap_DownlinkNonUEAssociatedLPPaTransport = -1;
@@ -1154,6 +1203,9 @@ static gint ett_s1ap_NotificationCellList = -1;
static gint ett_s1ap_NotificationCellList_Item = -1;
static gint ett_s1ap_FailureEventReport = -1;
static gint ett_s1ap_TooEarlyInterRATHOReportReportFromEUTRAN = -1;
+static gint ett_s1ap_EHRPDSectorLoadReportingResponse = -1;
+static gint ett_s1ap_EHRPDCompositeAvailableCapacity = -1;
+static gint ett_s1ap_EHRPDMultiSectorLoadReportingResponseItem = -1;
/*--- End of included file: packet-s1ap-ett.c ---*/
#line 86 "../../asn1/s1ap/packet-s1ap-template.c"
@@ -1313,6 +1365,7 @@ static const value_string s1ap_ProcedureCode_vals[] = {
{ id_downlinkNonUEAssociatedLPPaTransport, "id-downlinkNonUEAssociatedLPPaTransport" },
{ id_uplinkNonUEAssociatedLPPaTransport, "id-uplinkNonUEAssociatedLPPaTransport" },
{ id_UERadioCapabilityMatch, "id-UERadioCapabilityMatch" },
+ { id_PWSRestartIndication, "id-PWSRestartIndication" },
{ 0, NULL }
};
@@ -1429,7 +1482,6 @@ static const value_string s1ap_ProtocolIE_ID_vals[] = {
{ id_Unknown_82, "id-Unknown-82" },
{ id_cdma2000HOStatus, "id-cdma2000HOStatus" },
{ id_cdma2000HORequiredIndication, "id-cdma2000HORequiredIndication" },
- { id_Unknown_85, "id-Unknown-85" },
{ id_E_UTRAN_Trace_ID, "id-E-UTRAN-Trace-ID" },
{ id_RelativeMMECapacity, "id-RelativeMMECapacity" },
{ id_SourceMME_UE_S1AP_ID, "id-SourceMME-UE-S1AP-ID" },
@@ -1526,6 +1578,18 @@ static const value_string s1ap_ProtocolIE_ID_vals[] = {
{ id_ULCOUNTValueExtended, "id-ULCOUNTValueExtended" },
{ id_DLCOUNTValueExtended, "id-DLCOUNTValueExtended" },
{ id_ReceiveStatusOfULPDCPSDUsExtended, "id-ReceiveStatusOfULPDCPSDUsExtended" },
+ { id_ECGIListForRestart, "id-ECGIListForRestart" },
+ { id_SIPTO_Correlation_ID, "id-SIPTO-Correlation-ID" },
+ { id_SIPTO_L_GW_TransportLayerAddress, "id-SIPTO-L-GW-TransportLayerAddress" },
+ { id_TransportInformation, "id-TransportInformation" },
+ { id_LHN_ID, "id-LHN-ID" },
+ { id_AdditionalCSFallbackIndicator, "id-AdditionalCSFallbackIndicator" },
+ { id_TAIListForRestart, "id-TAIListForRestart" },
+ { id_UserLocationInformation, "id-UserLocationInformation" },
+ { id_EmergencyAreaIDListForRestart, "id-EmergencyAreaIDListForRestart" },
+ { id_KillAllWarningMessages, "id-KillAllWarningMessages" },
+ { id_Masked_IMEISV, "id-Masked-IMEISV" },
+ { id_eNBIndirectX2TransportLayerAddresses, "id-eNBIndirectX2TransportLayerAddresses" },
{ 0, NULL }
};
@@ -1720,7 +1784,7 @@ dissect_s1ap_PLMNidentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
3, 3, FALSE, &parameter_tvb);
- if(tvb_length(tvb)==0)
+ if(tvb_reported_length(tvb)==0)
return offset;
if (!parameter_tvb)
@@ -2498,7 +2562,7 @@ static value_string_ext s1ap_CauseRadioNetwork_vals_ext = VALUE_STRING_EXT_INIT(
static int
dissect_s1ap_CauseRadioNetwork(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1125 "../../asn1/s1ap/s1ap.cnf"
+#line 1153 "../../asn1/s1ap/s1ap.cnf"
guint32 value;
offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36, &value, TRUE, 3, NULL);
@@ -2520,7 +2584,7 @@ const value_string s1ap_CauseTransport_vals[] = {
static int
dissect_s1ap_CauseTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1130 "../../asn1/s1ap/s1ap.cnf"
+#line 1158 "../../asn1/s1ap/s1ap.cnf"
guint32 value;
offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
2, &value, TRUE, 0, NULL);
@@ -2545,7 +2609,7 @@ const value_string s1ap_CauseNas_vals[] = {
static int
dissect_s1ap_CauseNas(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1135 "../../asn1/s1ap/s1ap.cnf"
+#line 1163 "../../asn1/s1ap/s1ap.cnf"
guint32 value;
offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
4, &value, TRUE, 1, NULL);
@@ -2572,7 +2636,7 @@ const value_string s1ap_CauseProtocol_vals[] = {
static int
dissect_s1ap_CauseProtocol(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1140 "../../asn1/s1ap/s1ap.cnf"
+#line 1168 "../../asn1/s1ap/s1ap.cnf"
guint32 value;
offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
7, &value, TRUE, 0, NULL);
@@ -2598,7 +2662,7 @@ const value_string s1ap_CauseMisc_vals[] = {
static int
dissect_s1ap_CauseMisc(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1145 "../../asn1/s1ap/s1ap.cnf"
+#line 1173 "../../asn1/s1ap/s1ap.cnf"
guint32 value;
offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
6, &value, TRUE, 0, NULL);
@@ -2917,6 +2981,22 @@ dissect_s1ap_CSFallbackIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
}
+static const value_string s1ap_AdditionalCSFallbackIndicator_vals[] = {
+ { 0, "no-restriction" },
+ { 1, "restriction" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_s1ap_AdditionalCSFallbackIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
+ 2, NULL, TRUE, 0, NULL);
+
+ return offset;
+}
+
+
static int
dissect_s1ap_CSG_Id(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -3156,6 +3236,20 @@ dissect_s1ap_EmergencyAreaIDList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *
}
+static const per_sequence_t EmergencyAreaIDListForRestart_sequence_of[1] = {
+ { &hf_s1ap_EmergencyAreaIDListForRestart_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_EmergencyAreaID },
+};
+
+static int
+dissect_s1ap_EmergencyAreaIDListForRestart(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_EmergencyAreaIDListForRestart, EmergencyAreaIDListForRestart_sequence_of,
+ 1, maxnoofRestartEmergencyAreaIDs, FALSE);
+
+ return offset;
+}
+
+
static int
dissect_s1ap_BIT_STRING_SIZE_20(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -3339,7 +3433,7 @@ dissect_s1ap_ENBname(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr
if (!parameter_tvb)
return offset;
- length = tvb_length(parameter_tvb);
+ length = tvb_reported_length(parameter_tvb);
is_ascii = TRUE;
for (p_offset=0; p_offset < length; p_offset++){
@@ -3372,7 +3466,7 @@ dissect_s1ap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t
return offset;
/* Get the length */
- tvb_len = tvb_length(parameter_tvb);
+ tvb_len = tvb_reported_length(parameter_tvb);
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_TransportLayerAddress);
if (tvb_len==4){
/* IPv4 */
@@ -3772,6 +3866,16 @@ dissect_s1ap_HandoverType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
static int
+dissect_s1ap_Masked_IMEISV(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,
+ 64, 64, FALSE, NULL, NULL);
+
+ return offset;
+}
+
+
+
+static int
dissect_s1ap_MeasurementsToActivate(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);
@@ -3967,6 +4071,21 @@ dissect_s1ap_InterfacesToTrace(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
}
+static const value_string s1ap_KillAllWarningMessages_vals[] = {
+ { 0, "true" },
+ { 0, NULL }
+};
+
+
+static int
+dissect_s1ap_KillAllWarningMessages(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *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_s1ap_Time_UE_StayedInCell(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -4059,7 +4178,7 @@ dissect_s1ap_LPPa_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p
NO_BOUND, NO_BOUND, FALSE, &parameter_tvb);
- if ((tvb_length(parameter_tvb)>0)&&(lppa_handle))
+ if ((tvb_reported_length(parameter_tvb)>0)&&(lppa_handle))
call_dissector(lppa_handle, parameter_tvb, actx->pinfo, tree);
@@ -4068,6 +4187,16 @@ dissect_s1ap_LPPa_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p
}
+
+static int
+dissect_s1ap_LHN_ID(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,
+ 32, 256, FALSE, NULL);
+
+ return offset;
+}
+
+
static const value_string s1ap_Links_to_log_vals[] = {
{ 0, "uplink" },
{ 1, "downlink" },
@@ -4452,7 +4581,7 @@ dissect_s1ap_NAS_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr
NO_BOUND, NO_BOUND, FALSE, &parameter_tvb);
- if ((tvb_length(parameter_tvb)>0)&&(nas_eps_handle))
+ if ((tvb_reported_length(parameter_tvb)>0)&&(nas_eps_handle))
call_dissector(nas_eps_handle,parameter_tvb,actx->pinfo, tree);
@@ -4676,7 +4805,7 @@ dissect_s1ap_RIMInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
return offset;
subtree = proto_item_add_subtree(actx->created_item, ett_s1ap_RIMInformation);
- if ((tvb_length(parameter_tvb)>0)&&(bssgp_handle)){
+ if ((tvb_reported_length(parameter_tvb)>0)&&(bssgp_handle)){
col_set_fence(actx->pinfo->cinfo, COL_INFO);
call_dissector(bssgp_handle,parameter_tvb,actx->pinfo, subtree);
}
@@ -4716,15 +4845,27 @@ dissect_s1ap_TargetRNC_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
}
+
+static int
+dissect_s1ap_OCTET_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_octet_string(tvb, offset, actx, tree, hf_index,
+ 16, 16, FALSE, NULL);
+
+ return offset;
+}
+
+
static const value_string s1ap_RIMRoutingAddress_vals[] = {
{ 0, "gERAN-Cell-ID" },
{ 1, "targetRNC-ID" },
+ { 2, "eHRPD-Sector-ID" },
{ 0, NULL }
};
static const per_choice_t RIMRoutingAddress_choice[] = {
{ 0, &hf_s1ap_gERAN_Cell_ID , ASN1_EXTENSION_ROOT , dissect_s1ap_GERAN_Cell_ID },
{ 1, &hf_s1ap_targetRNC_ID , ASN1_NOT_EXTENSION_ROOT, dissect_s1ap_TargetRNC_ID },
+ { 2, &hf_s1ap_eHRPD_Sector_ID, ASN1_NOT_EXTENSION_ROOT, dissect_s1ap_OCTET_STRING_SIZE_16 },
{ 0, NULL, 0, NULL }
};
@@ -4825,6 +4966,20 @@ dissect_s1ap_RRC_Establishment_Cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx
}
+static const per_sequence_t ECGIListForRestart_sequence_of[1] = {
+ { &hf_s1ap_ECGIListForRestart_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_EUTRAN_CGI },
+};
+
+static int
+dissect_s1ap_ECGIListForRestart(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_ECGIListForRestart, ECGIListForRestart_sequence_of,
+ 1, maxnoofCellsforRestart, FALSE);
+
+ return offset;
+}
+
+
static int
dissect_s1ap_Routing_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -5041,7 +5196,7 @@ dissect_s1ap_Source_ToTarget_TransparentContainer(tvbuff_t *tvb _U_, int offset
Source BSS to Target BSS
Transparent Container 48.018
*/
- de_bssgp_source_BSS_to_target_BSS_transp_cont(parameter_tvb, subtree, actx->pinfo, 0, tvb_length(parameter_tvb), NULL, 0);
+ de_bssgp_source_BSS_to_target_BSS_transp_cont(parameter_tvb, subtree, actx->pinfo, 0, tvb_reported_length(parameter_tvb), NULL, 0);
break;
case 3:
/* utrantolte */
@@ -5394,7 +5549,7 @@ dissect_s1ap_Target_ToSource_TransparentContainer(tvbuff_t *tvb _U_, int offset
Target BSS to Source BSS
Transparent Container 48.018
*/
- de_bssgp_target_BSS_to_source_BSS_transp_cont(parameter_tvb, subtree, actx->pinfo, 0, tvb_length(parameter_tvb), NULL, 0);
+ de_bssgp_target_BSS_to_source_BSS_transp_cont(parameter_tvb, subtree, actx->pinfo, 0, tvb_reported_length(parameter_tvb), NULL, 0);
break;
case 3:
@@ -5447,6 +5602,21 @@ dissect_s1ap_Time_UE_StayedInCell_EnhancedGranularity(tvbuff_t *tvb _U_, int off
}
+static const per_sequence_t TransportInformation_sequence[] = {
+ { &hf_s1ap_transportLayerAddress, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TransportLayerAddress },
+ { &hf_s1ap_uL_GTP_TEID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_GTP_TEID },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_TransportInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_TransportInformation, TransportInformation_sequence);
+
+ return offset;
+}
+
+
static int
dissect_s1ap_E_UTRAN_Trace_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -5521,6 +5691,20 @@ dissect_s1ap_TunnelInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *ac
}
+static const per_sequence_t TAIListForRestart_sequence_of[1] = {
+ { &hf_s1ap_TAIListForRestart_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_TAI },
+};
+
+static int
+dissect_s1ap_TAIListForRestart(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_TAIListForRestart, TAIListForRestart_sequence_of,
+ 1, maxnoofRestartTAIs, FALSE);
+
+ return offset;
+}
+
+
static const per_sequence_t UEAggregateMaximumBitrate_sequence[] = {
{ &hf_s1ap_uEaggregateMaximumBitRateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
{ &hf_s1ap_uEaggregateMaximumBitRateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
@@ -5663,6 +5847,22 @@ dissect_s1ap_UESecurityCapabilities(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_
}
+static const per_sequence_t UserLocationInformation_sequence[] = {
+ { &hf_s1ap_eutran_cgi , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EUTRAN_CGI },
+ { &hf_s1ap_tai , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TAI },
+ { &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_UserLocationInformation(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_UserLocationInformation, UserLocationInformation_sequence);
+
+ return offset;
+}
+
+
static const value_string s1ap_VoiceSupportMatchIndicator_vals[] = {
{ 0, "supported" },
{ 1, "not-supported" },
@@ -5777,6 +5977,20 @@ dissect_s1ap_ENBX2ExtTLAs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
}
+static const per_sequence_t ENBIndirectX2TransportLayerAddresses_sequence_of[1] = {
+ { &hf_s1ap_ENBIndirectX2TransportLayerAddresses_item, ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_TransportLayerAddress },
+};
+
+static int
+dissect_s1ap_ENBIndirectX2TransportLayerAddresses(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_constrained_sequence_of(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_ENBIndirectX2TransportLayerAddresses, ENBIndirectX2TransportLayerAddresses_sequence_of,
+ 1, maxnoofeNBX2TLAs, FALSE);
+
+ return offset;
+}
+
+
static int
dissect_s1ap_E_RAB_IE_ContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@@ -5864,7 +6078,7 @@ static const per_sequence_t HandoverPreparationFailure_sequence[] = {
static int
dissect_s1ap_HandoverPreparationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1066 "../../asn1/s1ap/s1ap.cnf"
+#line 1094 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", HandoverPreparationFailure ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -5927,7 +6141,7 @@ static const per_sequence_t HandoverRequestAcknowledge_sequence[] = {
static int
dissect_s1ap_HandoverRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1070 "../../asn1/s1ap/s1ap.cnf"
+#line 1098 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", HandoverRequestAcknowledge ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -5999,7 +6213,7 @@ static const per_sequence_t HandoverFailure_sequence[] = {
static int
dissect_s1ap_HandoverFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1072 "../../asn1/s1ap/s1ap.cnf"
+#line 1100 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", HandoverFailure ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6016,7 +6230,7 @@ static const per_sequence_t HandoverNotify_sequence[] = {
static int
dissect_s1ap_HandoverNotify(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1074 "../../asn1/s1ap/s1ap.cnf"
+#line 1102 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", HandoverNotify ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6033,7 +6247,7 @@ static const per_sequence_t PathSwitchRequest_sequence[] = {
static int
dissect_s1ap_PathSwitchRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1076 "../../asn1/s1ap/s1ap.cnf"
+#line 1104 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", PathSwitchRequest ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6076,7 +6290,7 @@ static const per_sequence_t PathSwitchRequestAcknowledge_sequence[] = {
static int
dissect_s1ap_PathSwitchRequestAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1078 "../../asn1/s1ap/s1ap.cnf"
+#line 1106 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", PathSwitchRequestAcknowledge ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6119,7 +6333,7 @@ static const per_sequence_t PathSwitchRequestFailure_sequence[] = {
static int
dissect_s1ap_PathSwitchRequestFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1080 "../../asn1/s1ap/s1ap.cnf"
+#line 1108 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", PathSwitchRequestFailure ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6136,7 +6350,7 @@ static const per_sequence_t HandoverCancel_sequence[] = {
static int
dissect_s1ap_HandoverCancel(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1082 "../../asn1/s1ap/s1ap.cnf"
+#line 1110 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", HandoverCancel ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6153,7 +6367,7 @@ static const per_sequence_t HandoverCancelAcknowledge_sequence[] = {
static int
dissect_s1ap_HandoverCancelAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1084 "../../asn1/s1ap/s1ap.cnf"
+#line 1112 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", HandoverCancelAcknowledge ");
@@ -6172,7 +6386,7 @@ static const per_sequence_t E_RABSetupRequest_sequence[] = {
static int
dissect_s1ap_E_RABSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1028 "../../asn1/s1ap/s1ap.cnf"
+#line 1056 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", E_RABSetupRequest ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6222,7 +6436,7 @@ static const per_sequence_t E_RABSetupResponse_sequence[] = {
static int
dissect_s1ap_E_RABSetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1030 "../../asn1/s1ap/s1ap.cnf"
+#line 1058 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", E_RABSetupResponse ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6270,7 +6484,7 @@ static const per_sequence_t E_RABModifyRequest_sequence[] = {
static int
dissect_s1ap_E_RABModifyRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1032 "../../asn1/s1ap/s1ap.cnf"
+#line 1060 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", E_RABModifyRequest ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6318,7 +6532,7 @@ static const per_sequence_t E_RABModifyResponse_sequence[] = {
static int
dissect_s1ap_E_RABModifyResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1034 "../../asn1/s1ap/s1ap.cnf"
+#line 1062 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", E_RABModifyResponse ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6364,7 +6578,7 @@ static const per_sequence_t E_RABReleaseCommand_sequence[] = {
static int
dissect_s1ap_E_RABReleaseCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1036 "../../asn1/s1ap/s1ap.cnf"
+#line 1064 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", E_RABReleaseCommand ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6381,7 +6595,7 @@ static const per_sequence_t E_RABReleaseResponse_sequence[] = {
static int
dissect_s1ap_E_RABReleaseResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1038 "../../asn1/s1ap/s1ap.cnf"
+#line 1066 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", E_RABReleaseResponse ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6427,7 +6641,7 @@ static const per_sequence_t E_RABReleaseIndication_sequence[] = {
static int
dissect_s1ap_E_RABReleaseIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1040 "../../asn1/s1ap/s1ap.cnf"
+#line 1068 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", E_RABReleaseIndication ");
@@ -6445,7 +6659,7 @@ static const per_sequence_t InitialContextSetupRequest_sequence[] = {
static int
dissect_s1ap_InitialContextSetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1043 "../../asn1/s1ap/s1ap.cnf"
+#line 1071 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", InitialContextSetupRequest ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6495,7 +6709,7 @@ static const per_sequence_t InitialContextSetupResponse_sequence[] = {
static int
dissect_s1ap_InitialContextSetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1045 "../../asn1/s1ap/s1ap.cnf"
+#line 1073 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", InitialContextSetupResponse ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6543,7 +6757,7 @@ static const per_sequence_t InitialContextSetupFailure_sequence[] = {
static int
dissect_s1ap_InitialContextSetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1047 "../../asn1/s1ap/s1ap.cnf"
+#line 1075 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", InitialContextSetupFailure ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6603,7 +6817,7 @@ static const per_sequence_t UEContextReleaseRequest_sequence[] = {
static int
dissect_s1ap_UEContextReleaseRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1049 "../../asn1/s1ap/s1ap.cnf"
+#line 1077 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", UEContextReleaseRequest ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6620,7 +6834,7 @@ static const per_sequence_t UEContextReleaseCommand_sequence[] = {
static int
dissect_s1ap_UEContextReleaseCommand(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1051 "../../asn1/s1ap/s1ap.cnf"
+#line 1079 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", UEContextReleaseCommand ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6637,7 +6851,7 @@ static const per_sequence_t UEContextReleaseComplete_sequence[] = {
static int
dissect_s1ap_UEContextReleaseComplete(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1053 "../../asn1/s1ap/s1ap.cnf"
+#line 1081 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", UEContextReleaseComplete ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6654,7 +6868,7 @@ static const per_sequence_t UEContextModificationRequest_sequence[] = {
static int
dissect_s1ap_UEContextModificationRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1055 "../../asn1/s1ap/s1ap.cnf"
+#line 1083 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", UEContextModificationRequest ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6671,7 +6885,7 @@ static const per_sequence_t UEContextModificationResponse_sequence[] = {
static int
dissect_s1ap_UEContextModificationResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1057 "../../asn1/s1ap/s1ap.cnf"
+#line 1085 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", UEContextModificationResponse ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6688,7 +6902,7 @@ static const per_sequence_t UEContextModificationFailure_sequence[] = {
static int
dissect_s1ap_UEContextModificationFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1059 "../../asn1/s1ap/s1ap.cnf"
+#line 1087 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", UEContextModificationFailure ");
@@ -6805,7 +7019,7 @@ static const per_sequence_t Reset_sequence[] = {
static int
dissect_s1ap_Reset(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1088 "../../asn1/s1ap/s1ap.cnf"
+#line 1116 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", Reset ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6873,7 +7087,7 @@ static const per_sequence_t ResetAcknowledge_sequence[] = {
static int
dissect_s1ap_ResetAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1090 "../../asn1/s1ap/s1ap.cnf"
+#line 1118 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", ResetAcknowledge ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6918,7 +7132,7 @@ static const per_sequence_t S1SetupRequest_sequence[] = {
static int
dissect_s1ap_S1SetupRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1094 "../../asn1/s1ap/s1ap.cnf"
+#line 1122 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", S1SetupRequest ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6935,7 +7149,7 @@ static const per_sequence_t S1SetupResponse_sequence[] = {
static int
dissect_s1ap_S1SetupResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1096 "../../asn1/s1ap/s1ap.cnf"
+#line 1124 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", S1SetupResponse ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6952,7 +7166,7 @@ static const per_sequence_t S1SetupFailure_sequence[] = {
static int
dissect_s1ap_S1SetupFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1098 "../../asn1/s1ap/s1ap.cnf"
+#line 1126 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", S1SetupFailure ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6969,7 +7183,7 @@ static const per_sequence_t ENBConfigurationUpdate_sequence[] = {
static int
dissect_s1ap_ENBConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1100 "../../asn1/s1ap/s1ap.cnf"
+#line 1128 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", ENBConfigurationUpdate ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -6986,7 +7200,7 @@ static const per_sequence_t ENBConfigurationUpdateAcknowledge_sequence[] = {
static int
dissect_s1ap_ENBConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1102 "../../asn1/s1ap/s1ap.cnf"
+#line 1130 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", ENBConfigurationUpdateAcknowledge ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -7003,7 +7217,7 @@ static const per_sequence_t ENBConfigurationUpdateFailure_sequence[] = {
static int
dissect_s1ap_ENBConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1104 "../../asn1/s1ap/s1ap.cnf"
+#line 1132 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", ENBConfigurationUpdateFailure ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -7020,7 +7234,7 @@ static const per_sequence_t MMEConfigurationUpdate_sequence[] = {
static int
dissect_s1ap_MMEConfigurationUpdate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1106 "../../asn1/s1ap/s1ap.cnf"
+#line 1134 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", MMEConfigurationUpdate ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -7037,7 +7251,7 @@ static const per_sequence_t MMEConfigurationUpdateAcknowledge_sequence[] = {
static int
dissect_s1ap_MMEConfigurationUpdateAcknowledge(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1108 "../../asn1/s1ap/s1ap.cnf"
+#line 1136 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", MMEConfigurationUpdateAcknowledge ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -7054,7 +7268,7 @@ static const per_sequence_t MMEConfigurationUpdateFailure_sequence[] = {
static int
dissect_s1ap_MMEConfigurationUpdateFailure(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1110 "../../asn1/s1ap/s1ap.cnf"
+#line 1138 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", MMEConfigurationUpdateFailure ");
@@ -7268,7 +7482,7 @@ static const per_sequence_t WriteReplaceWarningRequest_sequence[] = {
static int
dissect_s1ap_WriteReplaceWarningRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1113 "../../asn1/s1ap/s1ap.cnf"
+#line 1141 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", WriteReplaceWarningRequest ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -7285,7 +7499,7 @@ static const per_sequence_t WriteReplaceWarningResponse_sequence[] = {
static int
dissect_s1ap_WriteReplaceWarningResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1115 "../../asn1/s1ap/s1ap.cnf"
+#line 1143 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", WriteReplaceWarningResponse ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -7392,7 +7606,7 @@ static const per_sequence_t KillRequest_sequence[] = {
static int
dissect_s1ap_KillRequest(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1117 "../../asn1/s1ap/s1ap.cnf"
+#line 1145 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", KillRequest ");
offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
@@ -7409,7 +7623,7 @@ static const per_sequence_t KillResponse_sequence[] = {
static int
dissect_s1ap_KillResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
-#line 1119 "../../asn1/s1ap/s1ap.cnf"
+#line 1147 "../../asn1/s1ap/s1ap.cnf"
col_append_str(actx->pinfo->cinfo, COL_INFO, ", KillResponse ");
@@ -7423,6 +7637,20 @@ dissect_s1ap_KillResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
}
+static const per_sequence_t PWSRestartIndication_sequence[] = {
+ { &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_PWSRestartIndication(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_PWSRestartIndication, PWSRestartIndication_sequence);
+
+ return offset;
+}
+
+
static const per_sequence_t DownlinkUEAssociatedLPPaTransport_sequence[] = {
{ &hf_s1ap_protocolIEs , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_Container },
{ NULL, 0, 0, NULL }
@@ -7621,10 +7849,21 @@ dissect_s1ap_OCTET_STRING(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
}
+
+static int
+dissect_s1ap_EHRPD_Sector_ID(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,
+ 16, 16, FALSE, NULL);
+
+ return offset;
+}
+
+
static const value_string s1ap_IRAT_Cell_ID_vals[] = {
{ 0, "eUTRAN" },
{ 1, "uTRAN" },
{ 2, "gERAN" },
+ { 3, "eHRPD" },
{ 0, NULL }
};
@@ -7632,6 +7871,7 @@ static const per_choice_t IRAT_Cell_ID_choice[] = {
{ 0, &hf_s1ap_eUTRAN_01 , ASN1_EXTENSION_ROOT , dissect_s1ap_OCTET_STRING },
{ 1, &hf_s1ap_uTRAN , ASN1_EXTENSION_ROOT , dissect_s1ap_OCTET_STRING },
{ 2, &hf_s1ap_gERAN , ASN1_EXTENSION_ROOT , dissect_s1ap_OCTET_STRING },
+ { 3, &hf_s1ap_eHRPD_01 , ASN1_NOT_EXTENSION_ROOT, dissect_s1ap_EHRPD_Sector_ID },
{ 0, NULL, 0, NULL }
};
@@ -7973,10 +8213,61 @@ dissect_s1ap_EUTRANcellLoadReportingResponse(tvbuff_t *tvb _U_, int offset _U_,
}
+
+static int
+dissect_s1ap_EHRPDSectorCapacityClassValue(tvbuff_t *tvb _U_, int offset _U_, 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, 100U, NULL, TRUE);
+
+ return offset;
+}
+
+
+
+static int
+dissect_s1ap_EHRPDCapacityValue(tvbuff_t *tvb _U_, int offset _U_, 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 per_sequence_t EHRPDCompositeAvailableCapacity_sequence[] = {
+ { &hf_s1ap_eHRPDSectorCapacityClassValue, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EHRPDSectorCapacityClassValue },
+ { &hf_s1ap_eHRPDCapacityValue, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EHRPDCapacityValue },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_EHRPDCompositeAvailableCapacity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_EHRPDCompositeAvailableCapacity, EHRPDCompositeAvailableCapacity_sequence);
+
+ return offset;
+}
+
+
+static const per_sequence_t EHRPDSectorLoadReportingResponse_sequence[] = {
+ { &hf_s1ap_dL_EHRPD_CompositeAvailableCapacity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EHRPDCompositeAvailableCapacity },
+ { &hf_s1ap_uL_EHRPD_CompositeAvailableCapacity, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EHRPDCompositeAvailableCapacity },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_EHRPDSectorLoadReportingResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_EHRPDSectorLoadReportingResponse, EHRPDSectorLoadReportingResponse_sequence);
+
+ return offset;
+}
+
+
static const value_string s1ap_CellLoadReportingResponse_vals[] = {
{ 0, "eUTRAN" },
{ 1, "uTRAN" },
{ 2, "gERAN" },
+ { 3, "eHRPD" },
{ 0, NULL }
};
@@ -7984,6 +8275,7 @@ static const per_choice_t CellLoadReportingResponse_choice[] = {
{ 0, &hf_s1ap_eUTRAN , ASN1_EXTENSION_ROOT , dissect_s1ap_EUTRANcellLoadReportingResponse },
{ 1, &hf_s1ap_uTRAN , ASN1_EXTENSION_ROOT , dissect_s1ap_OCTET_STRING },
{ 2, &hf_s1ap_gERAN , ASN1_EXTENSION_ROOT , dissect_s1ap_OCTET_STRING },
+ { 3, &hf_s1ap_eHRPD , ASN1_NOT_EXTENSION_ROOT, dissect_s1ap_EHRPDSectorLoadReportingResponse },
{ 0, NULL, 0, NULL }
};
@@ -8012,10 +8304,26 @@ dissect_s1ap_EUTRANResponse(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
}
+static const per_sequence_t EHRPDMultiSectorLoadReportingResponseItem_sequence[] = {
+ { &hf_s1ap_eHRPD_Sector_ID_01, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EHRPD_Sector_ID },
+ { &hf_s1ap_eHRPDSectorLoadReportingResponse, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EHRPDSectorLoadReportingResponse },
+ { NULL, 0, 0, NULL }
+};
+
+static int
+dissect_s1ap_EHRPDMultiSectorLoadReportingResponseItem(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
+ offset = dissect_per_sequence(tvb, offset, actx, tree, hf_index,
+ ett_s1ap_EHRPDMultiSectorLoadReportingResponseItem, EHRPDMultiSectorLoadReportingResponseItem_sequence);
+
+ return offset;
+}
+
+
static const value_string s1ap_MultiCellLoadReportingResponse_Item_vals[] = {
{ 0, "eUTRANResponse" },
{ 1, "uTRANResponse" },
{ 2, "gERANResponse" },
+ { 3, "eHRPD" },
{ 0, NULL }
};
@@ -8023,6 +8331,7 @@ static const per_choice_t MultiCellLoadReportingResponse_Item_choice[] = {
{ 0, &hf_s1ap_eUTRANResponse , ASN1_EXTENSION_ROOT , dissect_s1ap_EUTRANResponse },
{ 1, &hf_s1ap_uTRANResponse , ASN1_EXTENSION_ROOT , dissect_s1ap_OCTET_STRING },
{ 2, &hf_s1ap_gERANResponse , ASN1_EXTENSION_ROOT , dissect_s1ap_OCTET_STRING },
+ { 3, &hf_s1ap_eHRPD_02 , ASN1_NOT_EXTENSION_ROOT, dissect_s1ap_EHRPDMultiSectorLoadReportingResponseItem },
{ 0, NULL, 0, NULL }
};
@@ -8402,6 +8711,14 @@ static int dissect_CSFallbackIndicator_PDU(tvbuff_t *tvb _U_, packet_info *pinfo
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_AdditionalCSFallbackIndicator_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_AdditionalCSFallbackIndicator(tvb, offset, &asn1_ctx, tree, hf_s1ap_AdditionalCSFallbackIndicator_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_CSG_Id_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -8466,6 +8783,14 @@ static int dissect_Data_Forwarding_Not_Possible_PDU(tvbuff_t *tvb _U_, packet_in
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_EmergencyAreaIDListForRestart_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_EmergencyAreaIDListForRestart(tvb, offset, &asn1_ctx, tree, hf_s1ap_EmergencyAreaIDListForRestart_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
int dissect_s1ap_Global_ENB_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -8594,6 +8919,22 @@ static int dissect_HandoverType_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, p
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_Masked_IMEISV_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_Masked_IMEISV(tvb, offset, &asn1_ctx, tree, hf_s1ap_Masked_IMEISV_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
+static int dissect_KillAllWarningMessages_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_KillAllWarningMessages(tvb, offset, &asn1_ctx, tree, hf_s1ap_KillAllWarningMessages_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_LAI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -8610,6 +8951,14 @@ static int dissect_LPPa_PDU_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_LHN_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_LHN_ID(tvb, offset, &asn1_ctx, tree, hf_s1ap_LHN_ID_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_M3Configuration_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -8842,6 +9191,14 @@ static int dissect_RRC_Establishment_Cause_PDU(tvbuff_t *tvb _U_, packet_info *p
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_ECGIListForRestart_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_ECGIListForRestart(tvb, offset, &asn1_ctx, tree, hf_s1ap_ECGIListForRestart_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_Routing_ID_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -9010,6 +9367,14 @@ static int dissect_Time_UE_StayedInCell_EnhancedGranularity_PDU(tvbuff_t *tvb _U
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_TransportInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_TransportInformation(tvb, offset, &asn1_ctx, tree, hf_s1ap_TransportInformation_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_TransportLayerAddress_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -9042,6 +9407,14 @@ static int dissect_TunnelInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_TAIListForRestart_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_TAIListForRestart(tvb, offset, &asn1_ctx, tree, hf_s1ap_TAIListForRestart_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_UEAggregateMaximumBitrate_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -9098,6 +9471,14 @@ static int dissect_UESecurityCapabilities_PDU(tvbuff_t *tvb _U_, packet_info *pi
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_UserLocationInformation_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_UserLocationInformation(tvb, offset, &asn1_ctx, tree, hf_s1ap_UserLocationInformation_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_VoiceSupportMatchIndicator_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -9154,6 +9535,14 @@ static int dissect_ENBX2ExtTLAs_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, p
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_ENBIndirectX2TransportLayerAddresses_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_ENBIndirectX2TransportLayerAddresses(tvb, offset, &asn1_ctx, tree, hf_s1ap_ENBIndirectX2TransportLayerAddresses_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_HandoverRequired_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -9962,6 +10351,14 @@ static int dissect_KillResponse_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, p
offset += 7; offset >>= 3;
return offset;
}
+static int dissect_PWSRestartIndication_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
+ int offset = 0;
+ asn1_ctx_t asn1_ctx;
+ asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
+ offset = dissect_s1ap_PWSRestartIndication(tvb, offset, &asn1_ctx, tree, hf_s1ap_PWSRestartIndication_PDU);
+ offset += 7; offset >>= 3;
+ return offset;
+}
static int dissect_DownlinkUEAssociatedLPPaTransport_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_, void *data _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@@ -10252,6 +10649,14 @@ proto_reg_handoff_s1ap(void)
dissector_add_uint("s1ap.ies", id_GUMMEIType, new_create_dissector_handle(dissect_GUMMEIType_PDU, proto_s1ap));
dissector_add_uint("s1ap.ies", id_Tunnel_Information_for_BBF, new_create_dissector_handle(dissect_TunnelInformation_PDU, proto_s1ap));
dissector_add_uint("s1ap.ies", id_ManagementBasedMDTPLMNList, new_create_dissector_handle(dissect_MDTPLMNList_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.ies", id_ECGIListForRestart, new_create_dissector_handle(dissect_ECGIListForRestart_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.ies", id_SIPTO_L_GW_TransportLayerAddress, new_create_dissector_handle(dissect_TransportLayerAddress_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.ies", id_LHN_ID, new_create_dissector_handle(dissect_LHN_ID_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.ies", id_AdditionalCSFallbackIndicator, new_create_dissector_handle(dissect_AdditionalCSFallbackIndicator_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.ies", id_TAIListForRestart, new_create_dissector_handle(dissect_TAIListForRestart_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.ies", id_UserLocationInformation, new_create_dissector_handle(dissect_UserLocationInformation_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.ies", id_KillAllWarningMessages, new_create_dissector_handle(dissect_KillAllWarningMessages_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.ies", id_Masked_IMEISV, new_create_dissector_handle(dissect_Masked_IMEISV_PDU, proto_s1ap));
dissector_add_uint("s1ap.extension", id_Data_Forwarding_Not_Possible, new_create_dissector_handle(dissect_Data_Forwarding_Not_Possible_PDU, proto_s1ap));
dissector_add_uint("s1ap.extension", id_Time_Synchronization_Info, new_create_dissector_handle(dissect_TimeSynchronizationInfo_PDU, proto_s1ap));
dissector_add_uint("s1ap.extension", id_x2TNLConfigurationInfo, new_create_dissector_handle(dissect_X2TNLConfigurationInfo_PDU, proto_s1ap));
@@ -10269,6 +10674,10 @@ proto_reg_handoff_s1ap(void)
dissector_add_uint("s1ap.extension", id_ULCOUNTValueExtended, new_create_dissector_handle(dissect_COUNTValueExtended_PDU, proto_s1ap));
dissector_add_uint("s1ap.extension", id_DLCOUNTValueExtended, new_create_dissector_handle(dissect_COUNTValueExtended_PDU, proto_s1ap));
dissector_add_uint("s1ap.extension", id_ReceiveStatusOfULPDCPSDUsExtended, new_create_dissector_handle(dissect_ReceiveStatusOfULPDCPSDUsExtended_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.extension", id_SIPTO_Correlation_ID, new_create_dissector_handle(dissect_Correlation_ID_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.extension", id_TransportInformation, new_create_dissector_handle(dissect_TransportInformation_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.extension", id_EmergencyAreaIDListForRestart, new_create_dissector_handle(dissect_EmergencyAreaIDListForRestart_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.extension", id_eNBIndirectX2TransportLayerAddresses, new_create_dissector_handle(dissect_ENBIndirectX2TransportLayerAddresses_PDU, proto_s1ap));
dissector_add_uint("s1ap.proc.imsg", id_HandoverPreparation, new_create_dissector_handle(dissect_HandoverRequired_PDU, proto_s1ap));
dissector_add_uint("s1ap.proc.sout", id_HandoverPreparation, new_create_dissector_handle(dissect_HandoverCommand_PDU, proto_s1ap));
dissector_add_uint("s1ap.proc.uout", id_HandoverPreparation, new_create_dissector_handle(dissect_HandoverPreparationFailure_PDU, proto_s1ap));
@@ -10343,6 +10752,7 @@ proto_reg_handoff_s1ap(void)
dissector_add_uint("s1ap.proc.imsg", id_uplinkNonUEAssociatedLPPaTransport, new_create_dissector_handle(dissect_UplinkNonUEAssociatedLPPaTransport_PDU, proto_s1ap));
dissector_add_uint("s1ap.proc.imsg", id_UERadioCapabilityMatch, new_create_dissector_handle(dissect_UERadioCapabilityMatchRequest_PDU, proto_s1ap));
dissector_add_uint("s1ap.proc.sout", id_UERadioCapabilityMatch, new_create_dissector_handle(dissect_UERadioCapabilityMatchResponse_PDU, proto_s1ap));
+ dissector_add_uint("s1ap.proc.imsg", id_PWSRestartIndication, new_create_dissector_handle(dissect_PWSRestartIndication_PDU, proto_s1ap));
/*--- End of included file: packet-s1ap-dis-tab.c ---*/
@@ -10441,6 +10851,10 @@ void proto_register_s1ap(void) {
{ "CSFallbackIndicator", "s1ap.CSFallbackIndicator",
FT_UINT32, BASE_DEC, VALS(s1ap_CSFallbackIndicator_vals), 0,
NULL, HFILL }},
+ { &hf_s1ap_AdditionalCSFallbackIndicator_PDU,
+ { "AdditionalCSFallbackIndicator", "s1ap.AdditionalCSFallbackIndicator",
+ FT_UINT32, BASE_DEC, VALS(s1ap_AdditionalCSFallbackIndicator_vals), 0,
+ NULL, HFILL }},
{ &hf_s1ap_CSG_Id_PDU,
{ "CSG-Id", "s1ap.CSG_Id",
FT_BYTES, BASE_NONE, NULL, 0,
@@ -10473,6 +10887,10 @@ void proto_register_s1ap(void) {
{ "Data-Forwarding-Not-Possible", "s1ap.Data_Forwarding_Not_Possible",
FT_UINT32, BASE_DEC, VALS(s1ap_Data_Forwarding_Not_Possible_vals), 0,
NULL, HFILL }},
+ { &hf_s1ap_EmergencyAreaIDListForRestart_PDU,
+ { "EmergencyAreaIDListForRestart", "s1ap.EmergencyAreaIDListForRestart",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_s1ap_Global_ENB_ID_PDU,
{ "Global-ENB-ID", "s1ap.Global_ENB_ID_element",
FT_NONE, BASE_NONE, NULL, 0,
@@ -10537,6 +10955,14 @@ void proto_register_s1ap(void) {
{ "HandoverType", "s1ap.HandoverType",
FT_UINT32, BASE_DEC, VALS(s1ap_HandoverType_vals), 0,
NULL, HFILL }},
+ { &hf_s1ap_Masked_IMEISV_PDU,
+ { "Masked-IMEISV", "s1ap.Masked_IMEISV",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_KillAllWarningMessages_PDU,
+ { "KillAllWarningMessages", "s1ap.KillAllWarningMessages",
+ FT_UINT32, BASE_DEC, VALS(s1ap_KillAllWarningMessages_vals), 0,
+ NULL, HFILL }},
{ &hf_s1ap_LAI_PDU,
{ "LAI", "s1ap.LAI_element",
FT_NONE, BASE_NONE, NULL, 0,
@@ -10545,6 +10971,10 @@ void proto_register_s1ap(void) {
{ "LPPa-PDU", "s1ap.LPPa_PDU",
FT_BYTES, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_LHN_ID_PDU,
+ { "LHN-ID", "s1ap.LHN_ID",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_M3Configuration_PDU,
{ "M3Configuration", "s1ap.M3Configuration_element",
FT_NONE, BASE_NONE, NULL, 0,
@@ -10661,6 +11091,10 @@ void proto_register_s1ap(void) {
{ "RRC-Establishment-Cause", "s1ap.RRC_Establishment_Cause",
FT_UINT32, BASE_DEC, VALS(s1ap_RRC_Establishment_Cause_vals), 0,
NULL, HFILL }},
+ { &hf_s1ap_ECGIListForRestart_PDU,
+ { "ECGIListForRestart", "s1ap.ECGIListForRestart",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_Routing_ID_PDU,
{ "Routing-ID", "s1ap.Routing_ID",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -10745,6 +11179,10 @@ void proto_register_s1ap(void) {
{ "Time-UE-StayedInCell-EnhancedGranularity", "s1ap.Time_UE_StayedInCell_EnhancedGranularity",
FT_UINT32, BASE_DEC, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_TransportInformation_PDU,
+ { "TransportInformation", "s1ap.TransportInformation_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_TransportLayerAddress_PDU,
{ "TransportLayerAddress", "s1ap.TransportLayerAddress",
FT_BYTES, BASE_NONE, NULL, 0,
@@ -10761,6 +11199,10 @@ void proto_register_s1ap(void) {
{ "TunnelInformation", "s1ap.TunnelInformation_element",
FT_NONE, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_TAIListForRestart_PDU,
+ { "TAIListForRestart", "s1ap.TAIListForRestart",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_UEAggregateMaximumBitrate_PDU,
{ "UEAggregateMaximumBitrate", "s1ap.UEAggregateMaximumBitrate_element",
FT_NONE, BASE_NONE, NULL, 0,
@@ -10789,6 +11231,10 @@ void proto_register_s1ap(void) {
{ "UESecurityCapabilities", "s1ap.UESecurityCapabilities_element",
FT_NONE, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_UserLocationInformation_PDU,
+ { "UserLocationInformation", "s1ap.UserLocationInformation_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_VoiceSupportMatchIndicator_PDU,
{ "VoiceSupportMatchIndicator", "s1ap.VoiceSupportMatchIndicator",
FT_UINT32, BASE_DEC, VALS(s1ap_VoiceSupportMatchIndicator_vals), 0,
@@ -10817,6 +11263,10 @@ void proto_register_s1ap(void) {
{ "ENBX2ExtTLAs", "s1ap.ENBX2ExtTLAs",
FT_UINT32, BASE_DEC, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_ENBIndirectX2TransportLayerAddresses_PDU,
+ { "ENBIndirectX2TransportLayerAddresses", "s1ap.ENBIndirectX2TransportLayerAddresses",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_HandoverRequired_PDU,
{ "HandoverRequired", "s1ap.HandoverRequired_element",
FT_NONE, BASE_NONE, NULL, 0,
@@ -11221,6 +11671,10 @@ void proto_register_s1ap(void) {
{ "KillResponse", "s1ap.KillResponse_element",
FT_NONE, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_PWSRestartIndication_PDU,
+ { "PWSRestartIndication", "s1ap.PWSRestartIndication_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_DownlinkUEAssociatedLPPaTransport_PDU,
{ "DownlinkUEAssociatedLPPaTransport", "s1ap.DownlinkUEAssociatedLPPaTransport_element",
FT_NONE, BASE_NONE, NULL, 0,
@@ -11561,6 +12015,10 @@ void proto_register_s1ap(void) {
{ "CompletedCellinEAI-Item", "s1ap.CompletedCellinEAI_Item_element",
FT_NONE, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_EmergencyAreaIDListForRestart_item,
+ { "EmergencyAreaID", "s1ap.EmergencyAreaID",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_macroENB_ID,
{ "macroENB-ID", "s1ap.macroENB_ID",
FT_BYTES, BASE_NONE, NULL, 0,
@@ -11837,6 +12295,14 @@ void proto_register_s1ap(void) {
{ "targetRNC-ID", "s1ap.targetRNC_ID_element",
FT_NONE, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_eHRPD_Sector_ID,
+ { "eHRPD-Sector-ID", "s1ap.eHRPD_Sector_ID",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ "OCTET_STRING_SIZE_16", HFILL }},
+ { &hf_s1ap_ECGIListForRestart_item,
+ { "EUTRAN-CGI", "s1ap.EUTRAN_CGI_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_nextHopChainingCount,
{ "nextHopChainingCount", "s1ap.nextHopChainingCount",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -12013,6 +12479,14 @@ void proto_register_s1ap(void) {
{ "measurementThreshold", "s1ap.measurementThreshold",
FT_UINT32, BASE_DEC, VALS(s1ap_MeasurementThresholdA2_vals), 0,
"MeasurementThresholdA2", HFILL }},
+ { &hf_s1ap_transportLayerAddress,
+ { "transportLayerAddress", "s1ap.transportLayerAddress",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_uL_GTP_TEID,
+ { "uL-GTP-TEID", "s1ap.uL_GTP_TEID",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ "GTP_TEID", HFILL }},
{ &hf_s1ap_e_UTRAN_Trace_ID,
{ "e-UTRAN-Trace-ID", "s1ap.e_UTRAN_Trace_ID",
FT_BYTES, BASE_NONE, NULL, 0,
@@ -12029,14 +12503,14 @@ void proto_register_s1ap(void) {
{ "traceCollectionEntityIPAddress", "s1ap.traceCollectionEntityIPAddress",
FT_BYTES, BASE_NONE, NULL, 0,
"TransportLayerAddress", HFILL }},
- { &hf_s1ap_transportLayerAddress,
- { "transportLayerAddress", "s1ap.transportLayerAddress",
- FT_BYTES, BASE_NONE, NULL, 0,
- NULL, HFILL }},
{ &hf_s1ap_uDP_Port_Number,
{ "uDP-Port-Number", "s1ap.uDP_Port_Number",
FT_BYTES, BASE_NONE, NULL, 0,
"Port_Number", HFILL }},
+ { &hf_s1ap_TAIListForRestart_item,
+ { "TAI", "s1ap.TAI_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_uEaggregateMaximumBitRateDL,
{ "uEaggregateMaximumBitRateDL", "s1ap.uEaggregateMaximumBitRateDL",
FT_UINT64, BASE_DEC, NULL, 0,
@@ -12077,6 +12551,14 @@ void proto_register_s1ap(void) {
{ "integrityProtectionAlgorithms", "s1ap.integrityProtectionAlgorithms",
FT_BYTES, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_eutran_cgi,
+ { "eutran-cgi", "s1ap.eutran_cgi_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_tai,
+ { "tai", "s1ap.tai_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_cellIDList,
{ "cellIDList", "s1ap.cellIDList",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -12109,6 +12591,10 @@ void proto_register_s1ap(void) {
{ "TransportLayerAddress", "s1ap.TransportLayerAddress",
FT_BYTES, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_ENBIndirectX2TransportLayerAddresses_item,
+ { "TransportLayerAddress", "s1ap.TransportLayerAddress",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
{ &hf_s1ap_protocolIEs,
{ "protocolIEs", "s1ap.protocolIEs",
FT_UINT32, BASE_DEC, NULL, 0,
@@ -12125,10 +12611,6 @@ void proto_register_s1ap(void) {
{ "uL-TransportLayerAddress", "s1ap.uL_TransportLayerAddress",
FT_BYTES, BASE_NONE, NULL, 0,
"TransportLayerAddress", HFILL }},
- { &hf_s1ap_uL_GTP_TEID,
- { "uL-GTP-TEID", "s1ap.uL_GTP_TEID",
- FT_BYTES, BASE_NONE, NULL, 0,
- "GTP_TEID", HFILL }},
{ &hf_s1ap_gTP_TEID,
{ "gTP-TEID", "s1ap.gTP_TEID",
FT_BYTES, BASE_NONE, NULL, 0,
@@ -12325,6 +12807,10 @@ void proto_register_s1ap(void) {
{ "gERAN", "s1ap.gERAN",
FT_BYTES, BASE_NONE, NULL, 0,
"OCTET_STRING", HFILL }},
+ { &hf_s1ap_eHRPD,
+ { "eHRPD", "s1ap.eHRPD_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EHRPDSectorLoadReportingResponse", HFILL }},
{ &hf_s1ap_compositeAvailableCapacityGroup,
{ "compositeAvailableCapacityGroup", "s1ap.compositeAvailableCapacityGroup",
FT_BYTES, BASE_NONE, NULL, 0,
@@ -12341,6 +12827,10 @@ void proto_register_s1ap(void) {
{ "eUTRAN", "s1ap.eUTRAN",
FT_BYTES, BASE_NONE, NULL, 0,
"OCTET_STRING", HFILL }},
+ { &hf_s1ap_eHRPD_01,
+ { "eHRPD", "s1ap.eHRPD",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ "EHRPD_Sector_ID", HFILL }},
{ &hf_s1ap_RequestedCellList_item,
{ "IRAT-Cell-ID", "s1ap.IRAT_Cell_ID",
FT_UINT32, BASE_DEC, VALS(s1ap_IRAT_Cell_ID_vals), 0,
@@ -12373,6 +12863,10 @@ void proto_register_s1ap(void) {
{ "gERANResponse", "s1ap.gERANResponse",
FT_BYTES, BASE_NONE, NULL, 0,
"OCTET_STRING", HFILL }},
+ { &hf_s1ap_eHRPD_02,
+ { "eHRPD", "s1ap.eHRPD_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EHRPDMultiSectorLoadReportingResponseItem", HFILL }},
{ &hf_s1ap_numberOfMeasurementReportingLevels,
{ "numberOfMeasurementReportingLevels", "s1ap.numberOfMeasurementReportingLevels",
FT_UINT32, BASE_DEC, VALS(s1ap_NumberOfMeasurementReportingLevels_vals), 0,
@@ -12453,6 +12947,30 @@ void proto_register_s1ap(void) {
{ "mobilityInformation", "s1ap.mobilityInformation",
FT_BYTES, BASE_NONE, NULL, 0,
NULL, HFILL }},
+ { &hf_s1ap_dL_EHRPD_CompositeAvailableCapacity,
+ { "dL-EHRPD-CompositeAvailableCapacity", "s1ap.dL_EHRPD_CompositeAvailableCapacity_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EHRPDCompositeAvailableCapacity", HFILL }},
+ { &hf_s1ap_uL_EHRPD_CompositeAvailableCapacity,
+ { "uL-EHRPD-CompositeAvailableCapacity", "s1ap.uL_EHRPD_CompositeAvailableCapacity_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ "EHRPDCompositeAvailableCapacity", HFILL }},
+ { &hf_s1ap_eHRPDSectorCapacityClassValue,
+ { "eHRPDSectorCapacityClassValue", "s1ap.eHRPDSectorCapacityClassValue",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_eHRPDCapacityValue,
+ { "eHRPDCapacityValue", "s1ap.eHRPDCapacityValue",
+ FT_UINT32, BASE_DEC, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_eHRPD_Sector_ID_01,
+ { "eHRPD-Sector-ID", "s1ap.eHRPD_Sector_ID",
+ FT_BYTES, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
+ { &hf_s1ap_eHRPDSectorLoadReportingResponse,
+ { "eHRPDSectorLoadReportingResponse", "s1ap.eHRPDSectorLoadReportingResponse_element",
+ FT_NONE, BASE_NONE, NULL, 0,
+ NULL, HFILL }},
/*--- End of included file: packet-s1ap-hfarr.c ---*/
#line 231 "../../asn1/s1ap/packet-s1ap-template.c"
@@ -12514,6 +13032,7 @@ void proto_register_s1ap(void) {
&ett_s1ap_EmergencyAreaID_Cancelled_Item,
&ett_s1ap_CompletedCellinEAI,
&ett_s1ap_CompletedCellinEAI_Item,
+ &ett_s1ap_EmergencyAreaIDListForRestart,
&ett_s1ap_ENB_ID,
&ett_s1ap_GERAN_Cell_ID,
&ett_s1ap_Global_ENB_ID,
@@ -12554,6 +13073,7 @@ void proto_register_s1ap(void) {
&ett_s1ap_RequestType,
&ett_s1ap_RIMTransfer,
&ett_s1ap_RIMRoutingAddress,
+ &ett_s1ap_ECGIListForRestart,
&ett_s1ap_SecurityContext,
&ett_s1ap_SONInformation,
&ett_s1ap_SONInformationReply,
@@ -12586,8 +13106,10 @@ void proto_register_s1ap(void) {
&ett_s1ap_TargetRNC_ID,
&ett_s1ap_TargeteNB_ToSourceeNB_TransparentContainer,
&ett_s1ap_M1ThresholdEventA2,
+ &ett_s1ap_TransportInformation,
&ett_s1ap_TraceActivation,
&ett_s1ap_TunnelInformation,
+ &ett_s1ap_TAIListForRestart,
&ett_s1ap_UEAggregateMaximumBitrate,
&ett_s1ap_UE_S1AP_IDs,
&ett_s1ap_UE_S1AP_ID_pair,
@@ -12595,11 +13117,13 @@ void proto_register_s1ap(void) {
&ett_s1ap_UE_HistoryInformation,
&ett_s1ap_UEPagingID,
&ett_s1ap_UESecurityCapabilities,
+ &ett_s1ap_UserLocationInformation,
&ett_s1ap_WarningAreaList,
&ett_s1ap_X2TNLConfigurationInfo,
&ett_s1ap_ENBX2ExtTLAs,
&ett_s1ap_ENBX2ExtTLA,
&ett_s1ap_ENBX2GTPTLAs,
+ &ett_s1ap_ENBIndirectX2TransportLayerAddresses,
&ett_s1ap_HandoverRequired,
&ett_s1ap_HandoverCommand,
&ett_s1ap_E_RABDataForwardingItem,
@@ -12696,6 +13220,7 @@ void proto_register_s1ap(void) {
&ett_s1ap_PrivateMessage,
&ett_s1ap_KillRequest,
&ett_s1ap_KillResponse,
+ &ett_s1ap_PWSRestartIndication,
&ett_s1ap_DownlinkUEAssociatedLPPaTransport,
&ett_s1ap_UplinkUEAssociatedLPPaTransport,
&ett_s1ap_DownlinkNonUEAssociatedLPPaTransport,
@@ -12732,6 +13257,9 @@ void proto_register_s1ap(void) {
&ett_s1ap_NotificationCellList_Item,
&ett_s1ap_FailureEventReport,
&ett_s1ap_TooEarlyInterRATHOReportReportFromEUTRAN,
+ &ett_s1ap_EHRPDSectorLoadReportingResponse,
+ &ett_s1ap_EHRPDCompositeAvailableCapacity,
+ &ett_s1ap_EHRPDMultiSectorLoadReportingResponseItem,
/*--- End of included file: packet-s1ap-ettarr.c ---*/
#line 243 "../../asn1/s1ap/packet-s1ap-template.c"