From Anders:

Update to June specification.

svn path=/trunk/; revision=28767
This commit is contained in:
Stig Bjørlykke 2009-06-17 15:02:12 +00:00
parent fae33ea177
commit 89162943b0
8 changed files with 347 additions and 304 deletions

View File

@ -1,5 +1,5 @@
-- $Id$
-- 3GPP TS 36.413 version 8.5.1 (2009-04)
-- 3GPP TS 36.413 V8.6.0 (2009-06)
-- 9.3.5 Common Definitions
-- **************************************************************
--
@ -35,3 +35,4 @@ TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuc
END

View File

@ -1,5 +1,5 @@
-- $Id$
-- 3GPP TS 36.413 version 8.5.1 (2009-04)
-- 3GPP TS 36.413 V8.6.0 (2009-06)
-- 9.3.6 Constant Definitions
-- **************************************************************
--
@ -95,18 +95,16 @@ maxProtocolIEs INTEGER ::= 65535
maxNrOfCSGs INTEGER ::= 256
maxNrOfE-RABs INTEGER ::= 256
maxNrOfInterfaces INTEGER ::= 3 --FFS
maxnoofTAIs INTEGER ::= 256
maxnoofTACs INTEGER ::= 256
maxNrOfErrors INTEGER ::= 256
maxnoofBPLMNs INTEGER ::= 6
maxnoofPLMNsPerMME INTEGER ::= 32 -- FFS
maxnoofPLMNsPerMME INTEGER ::= 32
maxnoofEPLMNs INTEGER ::= 15
maxnoofEPLMNsPlusOne INTEGER ::= 16
maxnoofForbLACs INTEGER ::= 4096
maxnoofForbTACs INTEGER ::= 4096
maxNrOfIndividualS1ConnectionsToReset INTEGER ::= 256
maxnoofGUMMEIs INTEGER ::= 256 -- FFS
maxnoofCells INTEGER ::= 16
maxnoofTAIforWarning INTEGER ::= 65535
maxnoofCellID INTEGER ::= 65535
@ -248,5 +246,8 @@ id-RRC-Establishment-Cause ProtocolIE-ID ::= 134
id-NASSecurityParametersfromE-UTRAN ProtocolIE-ID ::= 135
id-NASSecurityParameterstoE-UTRAN ProtocolIE-ID ::= 136
id-DefaultPagingDRX ProtocolIE-ID ::= 137
id-Source-ToTarget-TransparentContainer-Secondary ProtocolIE-ID ::= 138
id-Target-ToSource-TransparentContainer-Secondary ProtocolIE-ID ::= 139
END

View File

@ -1,5 +1,5 @@
-- $Id$
-- 3GPP TS 36.413 version 8.5.1 (2009-04)
-- 3GPP TS 36.413 V8.6.0 (2009-06)
-- 9.3.7 Container Definitions
-- **************************************************************
--
@ -204,3 +204,4 @@ END

View File

@ -1,5 +1,5 @@
-- $Id$
-- 3GPP TS 36.413 version 8.5.1 (2009-04)
-- 3GPP TS 36.413 V8.6.0 (2009-06)
-- 9.3.4 Information Element Definitions
-- **************************************************************
--
@ -21,7 +21,6 @@ IMPORTS
id-Bearers-SubjectToStatusTransfer-Item,
maxNrOfCSGs,
maxNrOfE-RABs,
maxNrOfInterfaces,
maxNrOfErrors,
maxnoofBPLMNs,
maxnoofPLMNsPerMME,
@ -31,7 +30,6 @@ IMPORTS
maxnoofForbLACs,
maxnoofForbTACs,
maxnoofTACs,
maxnoofGUMMEIs,
maxnoofCells,
maxnoofCellID,
maxnoofEmergencyAreaID,
@ -102,15 +100,10 @@ BitRate ::= INTEGER (0..10000000000)
BPLMNs ::= SEQUENCE (SIZE(1.. maxnoofBPLMNs)) OF PLMNidentity
BroadcastCompletedAreaList ::= SEQUENCE {
BroadcastCompletedAreaList ::= CHOICE {
cellID-Broadcast CellID-Broadcast,
tAI-Broadcast TAI-Broadcast,
emergencyAreaID-Broadcast EmergencyAreaID-Broadcast,
iE-Extensions ProtocolExtensionContainer { {BroadcastCompletedAreaList-ExtIEs} } OPTIONAL,
...
}
BroadcastCompletedAreaList-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
@ -184,7 +177,8 @@ CauseRadioNetwork ::= ENUMERATED {
s1-intra-system-handover-triggered,
s1-inter-system-handover-triggered,
x2-handover-triggered,
...
...,
redirection-towards-1xRTT
}
@ -292,8 +286,10 @@ CNDomain ::= ENUMERATED {
}
CSFallbackIndicator ::= ENUMERATED {
cs-fallback-required,
...
cs-fallback-required,
cs-fallback-high-priority,
...,
cs-fallback-high-priority
}
CSG-Id ::= BIT STRING (SIZE (27))
@ -453,6 +449,60 @@ EventType ::= ENUMERATED {
...
}
E-RAB-ID ::= INTEGER (0..15, ...)
E-RABInformationList ::= SEQUENCE (SIZE (1.. maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { { E-RABInformationListIEs } }
E-RABInformationListIEs S1AP-PROTOCOL-IES ::= {
{ ID id-E-RABInformationListItem CRITICALITY ignore TYPE E-RABInformationListItem PRESENCE mandatory },
...
}
E-RABInformationListItem ::= SEQUENCE {
e-RAB-ID E-RAB-ID,
dL-Forwarding DL-Forwarding OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {E-RABInformationListItem-ExtIEs} } OPTIONAL,
...
}
E-RABInformationListItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
E-RABList ::= SEQUENCE (SIZE(1.. maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {E-RABItemIEs} }
E-RABItemIEs S1AP-PROTOCOL-IES ::= {
{ ID id-E-RABItem CRITICALITY ignore TYPE E-RABItem PRESENCE mandatory },
...
}
E-RABItem ::= SEQUENCE {
e-RAB-ID E-RAB-ID,
cause Cause,
iE-Extensions ProtocolExtensionContainer { {E-RABItem-ExtIEs} } OPTIONAL,
...
}
E-RABItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
E-RABLevelQoSParameters ::= SEQUENCE {
qCI QCI,
allocationRetentionPriority AllocationAndRetentionPriority,
gbrQosInformation GBR-QosInformation OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {E-RABQoSParameters-ExtIEs} } OPTIONAL,
...
}
E-RABQoSParameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
EUTRAN-CGI ::= SEQUENCE {
pLMNidentity PLMNidentity,
cell-ID CellIdentity,
@ -736,7 +786,7 @@ ReportArea ::= ENUMERATED {
...
}
RepetitionPeriod ::= INTEGER (1..4096)
RepetitionPeriod ::= INTEGER (0..4096)
RNC-ID ::= INTEGER (0..4095)
@ -754,71 +804,15 @@ RRC-Establishment-Cause ::= ENUMERATED {
-- S
E-RAB-ID ::= INTEGER (0..15, ...)
E-RABInformationList ::= SEQUENCE (SIZE (1.. maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { { E-RABInformationListIEs } }
E-RABInformationListIEs S1AP-PROTOCOL-IES ::= {
{ ID id-E-RABInformationListItem CRITICALITY ignore TYPE E-RABInformationListItem PRESENCE mandatory },
...
}
E-RABInformationListItem ::= SEQUENCE {
e-RAB-ID E-RAB-ID,
dL-Forwarding DL-Forwarding OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {E-RABInformationListItem-ExtIEs} } OPTIONAL,
...
}
E-RABInformationListItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
E-RABList ::= SEQUENCE (SIZE(1.. maxNrOfE-RABs)) OF ProtocolIE-SingleContainer { {E-RABItemIEs} }
E-RABItemIEs S1AP-PROTOCOL-IES ::= {
{ ID id-E-RABItem CRITICALITY ignore TYPE E-RABItem PRESENCE mandatory },
...
}
E-RABItem ::= SEQUENCE {
e-RAB-ID E-RAB-ID,
cause Cause,
iE-Extensions ProtocolExtensionContainer { {E-RABItem-ExtIEs} } OPTIONAL,
...
}
E-RABItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
E-RABLevelQoSParameters ::= SEQUENCE {
qCI QCI,
allocationRetentionPriority AllocationAndRetentionPriority,
gbrQosInformation GBR-QosInformation OPTIONAL,
iE-Extensions ProtocolExtensionContainer { {E-RABQoSParameters-ExtIEs} } OPTIONAL,
...
}
E-RABQoSParameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
...
}
SecurityKey ::= BIT STRING (SIZE(256))
SecurityContext ::= SEQUENCE {
nextHopParameter INTEGER (0..7),
nextHopChainingCount SecurityKey,
iE-Extensions ProtocolExtensionContainer { { SecurityContext-ExtIEs} } OPTIONAL,
nextHopChainingCount INTEGER (0..7),
nextHopParameter SecurityKey,
iE-Extensions ProtocolExtensionContainer { { SecurityContext-ExtIEs} } OPTIONAL,
...
}
@ -943,6 +937,7 @@ SupportedTAs-Item-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
S-TMSI ::= SEQUENCE {
mMEC MME-Code,
m-TMSI M-TMSI,
iE-Extensions ProtocolExtensionContainer { {S-TMSI-ExtIEs} } OPTIONAL,
...
}
@ -1185,3 +1180,4 @@ END

View File

@ -1,5 +1,5 @@
-- $Id$
-- 3GPP TS 36.413 version 8.5.1 (2009-04)
-- 3GPP TS 36.413 V8.6.0 (2009-06)
-- 9.3.3 PDU Definitions
-- **************************************************************
--
@ -205,6 +205,7 @@ FROM S1AP-Containers
id-SONConfigurationTransferECT,
id-SONConfigurationTransferMCT,
id-Source-ToTarget-TransparentContainer,
id-Source-ToTarget-TransparentContainer-Secondary,
id-SourceMME-UE-S1AP-ID,
id-SRVCCOperationPossible,
id-SRVCCHOIndication,
@ -215,6 +216,7 @@ FROM S1AP-Containers
id-TAIItem,
id-TAIList,
id-Target-ToSource-TransparentContainer,
id-Target-ToSource-TransparentContainer-Secondary,
id-TargetID,
id-TimeToWait,
id-TraceActivation,
@ -289,10 +291,9 @@ HandoverRequiredIEs S1AP-PROTOCOL-IES ::= {
{ ID id-Direct-Forwarding-Path-Availability CRITICALITY ignore TYPE Direct-Forwarding-Path-Availability PRESENCE optional } |
{ ID id-SRVCCHOIndication CRITICALITY reject TYPE SRVCCHOIndication PRESENCE optional }|
{ ID id-Source-ToTarget-TransparentContainer CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE mandatory }|
{ ID id-Source-ToTarget-TransparentContainer CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE optional }|
{ ID id-Source-ToTarget-TransparentContainer-Secondary CRITICALITY reject TYPE Source-ToTarget-TransparentContainer PRESENCE optional }|
{ ID id-MSClassmark2 CRITICALITY reject TYPE MSClassmark2 PRESENCE conditional }|
{ ID id-MSClassmark3 CRITICALITY ignore TYPE MSClassmark3 PRESENCE conditional },
...
}
@ -317,7 +318,7 @@ HandoverCommandIEs S1AP-PROTOCOL-IES ::= {
{ ID id-E-RABSubjecttoDataForwardingList CRITICALITY ignore TYPE E-RABSubjecttoDataForwardingList PRESENCE optional } |
{ ID id-E-RABtoReleaseListHOCmd CRITICALITY ignore TYPE E-RABList PRESENCE optional } |
{ ID id-Target-ToSource-TransparentContainer CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE mandatory }|
{ ID id-Target-ToSource-TransparentContainer CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE optional }|
{ ID id-Target-ToSource-TransparentContainer-Secondary CRITICALITY reject TYPE Target-ToSource-TransparentContainer PRESENCE optional }|
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
@ -366,7 +367,7 @@ HandoverPreparationFailureIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- HANDOVER RESOURCE ALLOCATION ELEMTARY PROCEDURE
-- HANDOVER RESOURCE ALLOCATION ELEMENTARY PROCEDURE
--
-- **************************************************************
@ -502,7 +503,7 @@ HandoverFailureIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- HANDOVER NOTIFICATION ELEMTARY PROCEDURE
-- HANDOVER NOTIFICATION ELEMENTARY PROCEDURE
--
-- **************************************************************
@ -527,7 +528,7 @@ HandoverNotifyIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- PATH SWITCH REQUEST ELEMTARY PROCEDURE
-- PATH SWITCH REQUEST ELEMENTARY PROCEDURE
--
-- **************************************************************
@ -634,7 +635,7 @@ PathSwitchRequestFailureIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- HANDOVER CANCEL ELEMTARY PROCEDURE
-- HANDOVER CANCEL ELEMENTARY PROCEDURE
--
-- **************************************************************
@ -1065,6 +1066,13 @@ InitialContextSetupFailureIEs S1AP-PROTOCOL-IES ::= {
...
}
-- **************************************************************
--
-- PAGING ELEMENTARY PROCEDURE
--
-- **************************************************************
-- **************************************************************
--
-- Paging
@ -1270,7 +1278,8 @@ InitialUEMessage-IEs S1AP-PROTOCOL-IES ::= {
{ ID id-EUTRAN-CGI CRITICALITY ignore TYPE EUTRAN-CGI PRESENCE mandatory} |
{ ID id-RRC-Establishment-Cause CRITICALITY ignore TYPE RRC-Establishment-Cause PRESENCE mandatory} |
{ ID id-S-TMSI CRITICALITY reject TYPE S-TMSI PRESENCE optional} |
{ ID id-CSG-Id CRITICALITY reject TYPE CSG-Id PRESENCE optional},
{ ID id-CSG-Id CRITICALITY reject TYPE CSG-Id PRESENCE optional} |
{ ID id-GUMMEI-ID CRITICALITY reject TYPE GUMMEI PRESENCE optional},
...
}
@ -1592,7 +1601,7 @@ MMEConfigurationUpdateFailureIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- DOWNLINK S1 CDMA2000 TUNNELING ELEMTARY PROCEDURE
-- DOWNLINK S1 CDMA2000 TUNNELING ELEMENTARY PROCEDURE
--
-- **************************************************************
@ -1619,7 +1628,7 @@ DownlinkS1cdma2000tunnelingIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- UPLINK S1 CDMA2000 TUNNELING ELEMTARY PROCEDURE
-- UPLINK S1 CDMA2000 TUNNELING ELEMENTARY PROCEDURE
--
-- **************************************************************
@ -1648,7 +1657,7 @@ UplinkS1cdma2000tunnelingIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- UE CAPABILITY INFO INDICATION PROCEDURE
-- UE CAPABILITY INFO INDICATION ELEMENTARY PROCEDURE
--
-- **************************************************************
@ -1672,7 +1681,7 @@ UECapabilityInfoIndicationIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- eNB STATUS TRANSFER
-- eNB STATUS TRANSFER ELEMENTARY PROCEDURE
--
-- **************************************************************
@ -1697,7 +1706,7 @@ ENBStatusTransferIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- MME STATUS TRANSFER
-- MME STATUS TRANSFER ELEMENTARY PROCEDURE
--
-- **************************************************************
@ -1722,7 +1731,7 @@ MMEStatusTransferIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- Trace Procedures
-- TRACE ELEMENTARY PROCEDURES
--
-- **************************************************************
-- **************************************************************
@ -1788,7 +1797,7 @@ DeactivateTraceIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- CELL TRAFFIC TRACE PROCEDURE
-- CELL TRAFFIC TRACE ELEMENTARY PROCEDURE
--
-- **************************************************************
@ -1814,7 +1823,7 @@ CellTrafficTraceIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- LOCATION ELEMENTARY PROCEDURE
-- LOCATION ELEMENTARY PROCEDURES
--
-- **************************************************************
@ -1876,7 +1885,7 @@ LocationReportIEs S1AP-PROTOCOL-IES ::= {
-- **************************************************************
--
-- OVERLOAD ELEMENTARY PROCEDURE
-- OVERLOAD ELEMENTARY PROCEDURES
--
-- **************************************************************
@ -2074,3 +2083,4 @@ PrivateMessageIEs S1AP-PRIVATE-IES ::= {
END

View File

@ -1,5 +1,5 @@
-- $Id$
-- 3GPP TS 36.413 version 8.5.1 (2009-04)
-- 3GPP TS 36.413 V8.6.0 (2009-06)
-- 9.3.2 Elementary Procedure Definitions
-- **************************************************************
--
@ -549,3 +549,4 @@ END

View File

@ -29,7 +29,6 @@ ProtocolError-IE-ContainerList
E-RAB-IE-ContainerPairList
Presence
L3-Information
M-TMSI
NumberofBroadcast
OldBSS-ToNewBSS-Information
SourceBSS-ToTargetBSS-TransparentContainer
@ -420,6 +419,8 @@ id-RRC-Establishment-Cause ProtocolIE-ID
id-NASSecurityParametersfromE-UTRAN ProtocolIE-ID
id-NASSecurityParameterstoE-UTRAN ProtocolIE-ID
id-DefaultPagingDRX ProtocolIE-ID
id-Source-ToTarget-TransparentContainer-Secondary ProtocolIE-ID
id-Target-ToSource-TransparentContainer-Secondary ProtocolIE-ID
#.END
#.REGISTER_NEW
@ -542,13 +543,15 @@ RRC-Establishment-Cause N s1ap.ies id-RRC-Establishment-Cause
NASSecurityParametersfromE-UTRAN N s1ap.ies id-NASSecurityParametersfromE-UTRAN
NASSecurityParameterstoE-UTRAN N s1ap.ies id-NASSecurityParameterstoE-UTRAN
PagingDRX N s1ap.ies id-DefaultPagingDRX
Source-ToTarget-TransparentContainer N s1ap.ies id-Source-ToTarget-TransparentContainer-Secondary
Target-ToSource-TransparentContainer N s1ap.ies id-Target-ToSource-TransparentContainer-Secondary
#S1AP-PROTOCOL-IES-PAIR
#RAB-SetupOrModifyItemFirst N s1ap.ies.pair.first id-RAB-SetupOrModifyItem
#RAB-SetupOrModifyItemSecond N s1ap.ies.pair.second id-RAB-SetupOrModifyItem
#RAB-SetupOrModifyItemFirst N s1ap.ies.pair.first id-RAB-SetupOrModifyItem
#RAB-SetupOrModifyItemSecond N s1ap.ies.pair.second id-RAB-SetupOrModifyItem
#NBAP-PROTOCOL-EXTENSION
#RAB-Parameters N s1ap.extension id-AlternativeRABConfiguration
#RAB-Parameters N s1ap.extension id-AlternativeRABConfiguration
#Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf N s1ap.extension id-Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf
#NBAP-ELEMENTARY-PROCEDURE

View File

@ -1,7 +1,7 @@
/* Do not modify this file. */
/* It is created automatically by the ASN.1 to Wireshark dissector compiler */
/* packet-s1ap.c */
/* ../../tools/asn2wrs.py -p s1ap -c s1ap.cnf -s packet-s1ap-template S1AP-CommonDataTypes.asn S1AP-Constants.asn S1AP-Containers.asn S1AP-IEs.asn S1AP-PDU-Contents.asn S1AP-PDU-Descriptions.asn */
/* ../../tools/asn2wrs.py -p s1ap -c ./s1ap.cnf -s ./packet-s1ap-template -D . S1AP-CommonDataTypes.asn S1AP-Constants.asn S1AP-Containers.asn S1AP-IEs.asn S1AP-PDU-Contents.asn S1AP-PDU-Descriptions.asn */
/* Input file: packet-s1ap-template.c */
@ -77,7 +77,6 @@ static dissector_handle_t nas_eps_handle;
#define maxProtocolIEs 65535
#define maxNrOfCSGs 256
#define maxNrOfE_RABs 256
#define maxNrOfInterfaces 3
#define maxnoofTAIs 256
#define maxnoofTACs 256
#define maxNrOfErrors 256
@ -88,7 +87,6 @@ static dissector_handle_t nas_eps_handle;
#define maxnoofForbLACs 4096
#define maxnoofForbTACs 4096
#define maxNrOfIndividualS1ConnectionsToReset 256
#define maxnoofGUMMEIs 256
#define maxnoofCells 16
#define maxnoofTAIforWarning 65535
#define maxnoofCellID 65535
@ -267,7 +265,9 @@ typedef enum _ProtocolIE_ID_enum {
id_RRC_Establishment_Cause = 134,
id_NASSecurityParametersfromE_UTRAN = 135,
id_NASSecurityParameterstoE_UTRAN = 136,
id_DefaultPagingDRX = 137
id_DefaultPagingDRX = 137,
id_Source_ToTarget_TransparentContainer_Secondary = 138,
id_Target_ToSource_TransparentContainer_Secondary = 139
} ProtocolIE_ID_enum;
/*--- End of included file: packet-s1ap-val.h ---*/
@ -302,6 +302,9 @@ static int hf_s1ap_Global_ENB_ID_PDU = -1; /* Global_ENB_ID */
static int hf_s1ap_ENB_StatusTransfer_TransparentContainer_PDU = -1; /* ENB_StatusTransfer_TransparentContainer */
static int hf_s1ap_ENB_UE_S1AP_ID_PDU = -1; /* ENB_UE_S1AP_ID */
static int hf_s1ap_ENBname_PDU = -1; /* ENBname */
static int hf_s1ap_E_RABInformationListItem_PDU = -1; /* E_RABInformationListItem */
static int hf_s1ap_E_RABList_PDU = -1; /* E_RABList */
static int hf_s1ap_E_RABItem_PDU = -1; /* E_RABItem */
static int hf_s1ap_EUTRAN_CGI_PDU = -1; /* EUTRAN_CGI */
static int hf_s1ap_GUMMEI_PDU = -1; /* GUMMEI */
static int hf_s1ap_HandoverRestrictionList_PDU = -1; /* HandoverRestrictionList */
@ -321,9 +324,6 @@ static int hf_s1ap_RelativeMMECapacity_PDU = -1; /* RelativeMMECapacity */
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_E_RABInformationListItem_PDU = -1; /* E_RABInformationListItem */
static int hf_s1ap_E_RABList_PDU = -1; /* E_RABList */
static int hf_s1ap_E_RABItem_PDU = -1; /* E_RABItem */
static int hf_s1ap_SecurityKey_PDU = -1; /* SecurityKey */
static int hf_s1ap_SecurityContext_PDU = -1; /* SecurityContext */
static int hf_s1ap_SerialNumber_PDU = -1; /* SerialNumber */
@ -517,6 +517,12 @@ static int hf_s1ap_eNB_ID = -1; /* ENB_ID */
static int hf_s1ap_bearers_SubjectToStatusTransferList = -1; /* Bearers_SubjectToStatusTransferList */
static int hf_s1ap_ENBX2TLAs_item = -1; /* TransportLayerAddress */
static int hf_s1ap_EPLMNs_item = -1; /* PLMNidentity */
static int hf_s1ap_dL_Forwarding = -1; /* DL_Forwarding */
static int hf_s1ap_E_RABList_item = -1; /* ProtocolIE_SingleContainer */
static int hf_s1ap_cause = -1; /* Cause */
static int hf_s1ap_qCI = -1; /* QCI */
static int hf_s1ap_allocationRetentionPriority = -1; /* AllocationAndRetentionPriority */
static int hf_s1ap_gbrQosInformation = -1; /* GBR_QosInformation */
static int hf_s1ap_cell_ID = -1; /* CellIdentity */
static int hf_s1ap_ForbiddenTAs_item = -1; /* ForbiddenTAs_Item */
static int hf_s1ap_pLMN_Identity = -1; /* PLMNidentity */
@ -549,14 +555,8 @@ static int hf_s1ap_reportArea = -1; /* ReportArea */
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_dL_Forwarding = -1; /* DL_Forwarding */
static int hf_s1ap_E_RABList_item = -1; /* ProtocolIE_SingleContainer */
static int hf_s1ap_cause = -1; /* Cause */
static int hf_s1ap_qCI = -1; /* QCI */
static int hf_s1ap_allocationRetentionPriority = -1; /* AllocationAndRetentionPriority */
static int hf_s1ap_gbrQosInformation = -1; /* GBR_QosInformation */
static int hf_s1ap_nextHopParameter = -1; /* INTEGER_0_7 */
static int hf_s1ap_nextHopChainingCount = -1; /* SecurityKey */
static int hf_s1ap_nextHopChainingCount = -1; /* INTEGER_0_7 */
static int hf_s1ap_nextHopParameter = -1; /* SecurityKey */
static int hf_s1ap_sONInformationRequest = -1; /* SONInformationRequest */
static int hf_s1ap_sONInformationReply = -1; /* SONInformationReply */
static int hf_s1ap_x2TNLConfigurationInfo = -1; /* X2TNLConfigurationInfo */
@ -576,6 +576,7 @@ static int hf_s1ap_SupportedTAs_item = -1; /* SupportedTAs_Item */
static int hf_s1ap_tAC = -1; /* TAC */
static int hf_s1ap_broadcastPLMNs = -1; /* BPLMNs */
static int hf_s1ap_mMEC = -1; /* MME_Code */
static int hf_s1ap_m_TMSI = -1; /* M_TMSI */
static int hf_s1ap_TAIListforWarning_item = -1; /* TAI */
static int hf_s1ap_TAI_Broadcast_item = -1; /* TAI_Broadcast_Item */
static int hf_s1ap_tAI = -1; /* TAI */
@ -681,6 +682,10 @@ static gint ett_s1ap_Global_ENB_ID = -1;
static gint ett_s1ap_ENB_StatusTransfer_TransparentContainer = -1;
static gint ett_s1ap_ENBX2TLAs = -1;
static gint ett_s1ap_EPLMNs = -1;
static gint ett_s1ap_E_RABInformationListItem = -1;
static gint ett_s1ap_E_RABList = -1;
static gint ett_s1ap_E_RABItem = -1;
static gint ett_s1ap_E_RABLevelQoSParameters = -1;
static gint ett_s1ap_EUTRAN_CGI = -1;
static gint ett_s1ap_ForbiddenTAs = -1;
static gint ett_s1ap_ForbiddenTAs_Item = -1;
@ -699,10 +704,6 @@ static gint ett_s1ap_OverloadResponse = -1;
static gint ett_s1ap_RequestType = -1;
static gint ett_s1ap_RIMTransfer = -1;
static gint ett_s1ap_RIMRoutingAddress = -1;
static gint ett_s1ap_E_RABInformationListItem = -1;
static gint ett_s1ap_E_RABList = -1;
static gint ett_s1ap_E_RABItem = -1;
static gint ett_s1ap_E_RABLevelQoSParameters = -1;
static gint ett_s1ap_SecurityContext = -1;
static gint ett_s1ap_SONInformation = -1;
static gint ett_s1ap_SONInformationReply = -1;
@ -974,7 +975,7 @@ dissect_s1ap_ProcedureCode(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
0U, 255U, &ProcedureCode, FALSE);
#line 85 "s1ap.cnf"
#line 84 "s1ap.cnf"
if (check_col(actx->pinfo->cinfo, COL_INFO))
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
val_to_str(ProcedureCode, s1ap_ProcedureCode_vals,
@ -1116,6 +1117,8 @@ static const value_string s1ap_ProtocolIE_ID_vals[] = {
{ id_NASSecurityParametersfromE_UTRAN, "id-NASSecurityParametersfromE-UTRAN" },
{ id_NASSecurityParameterstoE_UTRAN, "id-NASSecurityParameterstoE-UTRAN" },
{ id_DefaultPagingDRX, "id-DefaultPagingDRX" },
{ id_Source_ToTarget_TransparentContainer_Secondary, "id-Source-ToTarget-TransparentContainer-Secondary" },
{ id_Target_ToSource_TransparentContainer_Secondary, "id-Target-ToSource-TransparentContainer-Secondary" },
{ 0, NULL }
};
@ -1125,7 +1128,7 @@ dissect_s1ap_ProtocolIE_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
0U, 65535U, &ProtocolIE_ID, FALSE);
#line 68 "s1ap.cnf"
#line 67 "s1ap.cnf"
if (tree) {
proto_item_append_text(proto_item_get_parent_nth(actx->created_item, 2), ": %s", val_to_str(ProtocolIE_ID, VALS(s1ap_ProtocolIE_ID_vals), "unknown (%d)"));
}
@ -1205,7 +1208,7 @@ static const per_sequence_t ProtocolIE_ContainerList_sequence_of[1] = {
static int
dissect_s1ap_ProtocolIE_ContainerList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 107 "s1ap.cnf"
#line 106 "s1ap.cnf"
static const asn1_par_def_t ProtocolIE_ContainerList_pars[] = {
{ "lowerBound", ASN1_PAR_INTEGER },
{ "upperBound", ASN1_PAR_INTEGER },
@ -1468,7 +1471,7 @@ dissect_s1ap_BitRate(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr
static int
dissect_s1ap_PLMNidentity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 169 "s1ap.cnf"
#line 168 "s1ap.cnf"
tvbuff_t *parameter_tvb=NULL;
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
@ -1708,18 +1711,25 @@ dissect_s1ap_EmergencyAreaID_Broadcast(tvbuff_t *tvb _U_, int offset _U_, asn1_c
}
static const per_sequence_t BroadcastCompletedAreaList_sequence[] = {
{ &hf_s1ap_cellID_Broadcast, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_CellID_Broadcast },
{ &hf_s1ap_tAI_Broadcast , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_TAI_Broadcast },
{ &hf_s1ap_emergencyAreaID_Broadcast, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_EmergencyAreaID_Broadcast },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
static const value_string s1ap_BroadcastCompletedAreaList_vals[] = {
{ 0, "cellID-Broadcast" },
{ 1, "tAI-Broadcast" },
{ 2, "emergencyAreaID-Broadcast" },
{ 0, NULL }
};
static const per_choice_t BroadcastCompletedAreaList_choice[] = {
{ 0, &hf_s1ap_cellID_Broadcast, ASN1_EXTENSION_ROOT , dissect_s1ap_CellID_Broadcast },
{ 1, &hf_s1ap_tAI_Broadcast , ASN1_EXTENSION_ROOT , dissect_s1ap_TAI_Broadcast },
{ 2, &hf_s1ap_emergencyAreaID_Broadcast, ASN1_EXTENSION_ROOT , dissect_s1ap_EmergencyAreaID_Broadcast },
{ 0, NULL, 0, NULL }
};
static int
dissect_s1ap_BroadcastCompletedAreaList(tvbuff_t *tvb _U_, int offset _U_, 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_BroadcastCompletedAreaList, BroadcastCompletedAreaList_sequence);
offset = dissect_per_choice(tvb, offset, actx, tree, hf_index,
ett_s1ap_BroadcastCompletedAreaList, BroadcastCompletedAreaList_choice,
NULL);
return offset;
}
@ -1762,6 +1772,7 @@ static const value_string s1ap_CauseRadioNetwork_vals[] = {
{ 33, "s1-intra-system-handover-triggered" },
{ 34, "s1-inter-system-handover-triggered" },
{ 35, "x2-handover-triggered" },
{ 36, "redirection-towards-1xRTT" },
{ 0, NULL }
};
@ -1769,7 +1780,7 @@ static const value_string s1ap_CauseRadioNetwork_vals[] = {
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_) {
offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
36, NULL, TRUE, 0, NULL);
36, NULL, TRUE, 1, NULL);
return offset;
}
@ -2101,6 +2112,8 @@ dissect_s1ap_CNDomain(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, p
static const value_string s1ap_CSFallbackIndicator_vals[] = {
{ 0, "cs-fallback-required" },
{ 1, "cs-fallback-high-priority" },
{ 2, "cs-fallback-high-priority" },
{ 0, NULL }
};
@ -2108,7 +2121,7 @@ static const value_string s1ap_CSFallbackIndicator_vals[] = {
static int
dissect_s1ap_CSFallbackIndicator(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_enumerated(tvb, offset, actx, tree, hf_index,
1, NULL, TRUE, 0, NULL);
2, NULL, TRUE, 1, NULL);
return offset;
}
@ -2405,7 +2418,7 @@ dissect_s1ap_ENB_UE_S1AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
static int
dissect_s1ap_ENBname(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 182 "s1ap.cnf"
#line 181 "s1ap.cnf"
tvbuff_t *parameter_tvb=NULL;
int length;
int p_offset;
@ -2438,7 +2451,7 @@ dissect_s1ap_ENBname(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, pr
static int
dissect_s1ap_TransportLayerAddress(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 217 "s1ap.cnf"
#line 216 "s1ap.cnf"
tvbuff_t *parameter_tvb=NULL;
proto_tree *subtree;
gint tvb_len;
@ -2521,6 +2534,97 @@ dissect_s1ap_EventType(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
}
static const per_sequence_t E_RABInformationListItem_sequence[] = {
{ &hf_s1ap_e_RAB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_E_RAB_ID },
{ &hf_s1ap_dL_Forwarding , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_DL_Forwarding },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
static int
dissect_s1ap_E_RABInformationListItem(tvbuff_t *tvb _U_, int offset _U_, 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_E_RABInformationListItem, E_RABInformationListItem_sequence);
return offset;
}
static const per_sequence_t E_RABList_sequence_of[1] = {
{ &hf_s1ap_E_RABList_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_SingleContainer },
};
static int
dissect_s1ap_E_RABList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_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_E_RABList, E_RABList_sequence_of,
1, maxNrOfE_RABs, FALSE);
return offset;
}
static const per_sequence_t E_RABItem_sequence[] = {
{ &hf_s1ap_e_RAB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_E_RAB_ID },
{ &hf_s1ap_cause , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Cause },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
static int
dissect_s1ap_E_RABItem(tvbuff_t *tvb _U_, int offset _U_, 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_E_RABItem, E_RABItem_sequence);
return offset;
}
static int
dissect_s1ap_QCI(tvbuff_t *tvb _U_, int offset _U_, 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 GBR_QosInformation_sequence[] = {
{ &hf_s1ap_e_RAB_MaximumBitrateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
{ &hf_s1ap_e_RAB_MaximumBitrateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
{ &hf_s1ap_e_RAB_GuaranteedBitrateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
{ &hf_s1ap_e_RAB_GuaranteedBitrateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
static int
dissect_s1ap_GBR_QosInformation(tvbuff_t *tvb _U_, int offset _U_, 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_GBR_QosInformation, GBR_QosInformation_sequence);
return offset;
}
static const per_sequence_t E_RABLevelQoSParameters_sequence[] = {
{ &hf_s1ap_qCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_QCI },
{ &hf_s1ap_allocationRetentionPriority, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_AllocationAndRetentionPriority },
{ &hf_s1ap_gbrQosInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_GBR_QosInformation },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
static int
dissect_s1ap_E_RABLevelQoSParameters(tvbuff_t *tvb _U_, int offset _U_, 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_E_RABLevelQoSParameters, E_RABLevelQoSParameters_sequence);
return offset;
}
static int
dissect_s1ap_ExtendedRNC_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@ -2637,24 +2741,6 @@ dissect_s1ap_ForbiddenLAs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
}
static const per_sequence_t GBR_QosInformation_sequence[] = {
{ &hf_s1ap_e_RAB_MaximumBitrateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
{ &hf_s1ap_e_RAB_MaximumBitrateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
{ &hf_s1ap_e_RAB_GuaranteedBitrateDL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
{ &hf_s1ap_e_RAB_GuaranteedBitrateUL, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_BitRate },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
static int
dissect_s1ap_GBR_QosInformation(tvbuff_t *tvb _U_, int offset _U_, 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_GBR_QosInformation, GBR_QosInformation_sequence);
return offset;
}
static int
dissect_s1ap_GTP_TEID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@ -2891,6 +2977,16 @@ dissect_s1ap_MME_UE_S1AP_ID(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx
static int
dissect_s1ap_M_TMSI(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,
4, 4, FALSE, NULL);
return offset;
}
static int
dissect_s1ap_MSClassmark2(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,
@ -2913,7 +3009,7 @@ dissect_s1ap_MSClassmark3(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
static int
dissect_s1ap_NAS_PDU(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 208 "s1ap.cnf"
#line 207 "s1ap.cnf"
tvbuff_t *parameter_tvb=NULL;
@ -3016,16 +3112,6 @@ dissect_s1ap_PagingDRX(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_,
static int
dissect_s1ap_QCI(tvbuff_t *tvb _U_, int offset _U_, 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 int
dissect_s1ap_RelativeMMECapacity(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
offset = dissect_per_constrained_integer(tvb, offset, actx, tree, hf_index,
@ -3116,7 +3202,7 @@ dissect_s1ap_RIMTransfer(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
static int
dissect_s1ap_RepetitionPeriod(tvbuff_t *tvb _U_, int offset _U_, 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, 4096U, NULL, FALSE);
0U, 4096U, NULL, FALSE);
return offset;
}
@ -3151,69 +3237,6 @@ dissect_s1ap_RRC_Establishment_Cause(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx
}
static const per_sequence_t E_RABInformationListItem_sequence[] = {
{ &hf_s1ap_e_RAB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_E_RAB_ID },
{ &hf_s1ap_dL_Forwarding , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_DL_Forwarding },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
static int
dissect_s1ap_E_RABInformationListItem(tvbuff_t *tvb _U_, int offset _U_, 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_E_RABInformationListItem, E_RABInformationListItem_sequence);
return offset;
}
static const per_sequence_t E_RABList_sequence_of[1] = {
{ &hf_s1ap_E_RABList_item , ASN1_NO_EXTENSIONS , ASN1_NOT_OPTIONAL, dissect_s1ap_ProtocolIE_SingleContainer },
};
static int
dissect_s1ap_E_RABList(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_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_E_RABList, E_RABList_sequence_of,
1, maxNrOfE_RABs, FALSE);
return offset;
}
static const per_sequence_t E_RABItem_sequence[] = {
{ &hf_s1ap_e_RAB_ID , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_E_RAB_ID },
{ &hf_s1ap_cause , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_Cause },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
static int
dissect_s1ap_E_RABItem(tvbuff_t *tvb _U_, int offset _U_, 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_E_RABItem, E_RABItem_sequence);
return offset;
}
static const per_sequence_t E_RABLevelQoSParameters_sequence[] = {
{ &hf_s1ap_qCI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_QCI },
{ &hf_s1ap_allocationRetentionPriority, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_AllocationAndRetentionPriority },
{ &hf_s1ap_gbrQosInformation, ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_GBR_QosInformation },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
static int
dissect_s1ap_E_RABLevelQoSParameters(tvbuff_t *tvb _U_, int offset _U_, 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_E_RABLevelQoSParameters, E_RABLevelQoSParameters_sequence);
return offset;
}
static int
dissect_s1ap_SecurityKey(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
@ -3235,8 +3258,8 @@ dissect_s1ap_INTEGER_0_7(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_
static const per_sequence_t SecurityContext_sequence[] = {
{ &hf_s1ap_nextHopParameter, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_INTEGER_0_7 },
{ &hf_s1ap_nextHopChainingCount, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SecurityKey },
{ &hf_s1ap_nextHopChainingCount, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_INTEGER_0_7 },
{ &hf_s1ap_nextHopParameter, ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_SecurityKey },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@ -3532,6 +3555,7 @@ dissect_s1ap_SupportedTAs(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U
static const per_sequence_t S_TMSI_sequence[] = {
{ &hf_s1ap_mMEC , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_MME_Code },
{ &hf_s1ap_m_TMSI , ASN1_EXTENSION_ROOT , ASN1_NOT_OPTIONAL, dissect_s1ap_M_TMSI },
{ &hf_s1ap_iE_Extensions , ASN1_EXTENSION_ROOT , ASN1_OPTIONAL , dissect_s1ap_ProtocolExtensionContainer },
{ NULL, 0, 0, NULL }
};
@ -3864,7 +3888,7 @@ dissect_s1ap_WarningMessageContents(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_
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_) {
#line 134 "s1ap.cnf"
#line 133 "s1ap.cnf"
asn1_stack_frame_push(actx, "ProtocolIE-ContainerList");
asn1_param_push_integer(actx, 1);
asn1_param_push_integer(actx, maxNrOfE_RABs);
@ -4698,7 +4722,7 @@ static const per_sequence_t DownlinkNASTransport_sequence[] = {
static int
dissect_s1ap_DownlinkNASTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 244 "s1ap.cnf"
#line 243 "s1ap.cnf"
/* Set the direction of the message */
actx->pinfo->link_dir=P2P_DIR_DL;
@ -4717,7 +4741,7 @@ static const per_sequence_t InitialUEMessage_sequence[] = {
static int
dissect_s1ap_InitialUEMessage(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 240 "s1ap.cnf"
#line 239 "s1ap.cnf"
/* Set the direction of the message */
actx->pinfo->link_dir=P2P_DIR_UL;
@ -4736,7 +4760,7 @@ static const per_sequence_t UplinkNASTransport_sequence[] = {
static int
dissect_s1ap_UplinkNASTransport(tvbuff_t *tvb _U_, int offset _U_, asn1_ctx_t *actx _U_, proto_tree *tree _U_, int hf_index _U_) {
#line 248 "s1ap.cnf"
#line 247 "s1ap.cnf"
/* Set the direction of the message */
actx->pinfo->link_dir=P2P_DIR_UL;
@ -5577,6 +5601,30 @@ static int dissect_ENBname_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_
offset += 7; offset >>= 3;
return offset;
}
static int dissect_E_RABInformationListItem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
offset = dissect_s1ap_E_RABInformationListItem(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABInformationListItem_PDU);
offset += 7; offset >>= 3;
return offset;
}
static int dissect_E_RABList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
offset = dissect_s1ap_E_RABList(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABList_PDU);
offset += 7; offset >>= 3;
return offset;
}
static int dissect_E_RABItem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
offset = dissect_s1ap_E_RABItem(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABItem_PDU);
offset += 7; offset >>= 3;
return offset;
}
static int dissect_EUTRAN_CGI_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@ -5729,30 +5777,6 @@ static int dissect_RRC_Establishment_Cause_PDU(tvbuff_t *tvb _U_, packet_info *p
offset += 7; offset >>= 3;
return offset;
}
static int dissect_E_RABInformationListItem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
offset = dissect_s1ap_E_RABInformationListItem(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABInformationListItem_PDU);
offset += 7; offset >>= 3;
return offset;
}
static int dissect_E_RABList_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
offset = dissect_s1ap_E_RABList(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABList_PDU);
offset += 7; offset >>= 3;
return offset;
}
static int dissect_E_RABItem_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
asn1_ctx_init(&asn1_ctx, ASN1_ENC_PER, TRUE, pinfo);
offset = dissect_s1ap_E_RABItem(tvb, offset, &asn1_ctx, tree, hf_s1ap_E_RABItem_PDU);
offset += 7; offset >>= 3;
return offset;
}
static int dissect_SecurityKey_PDU(tvbuff_t *tvb _U_, packet_info *pinfo _U_, proto_tree *tree _U_) {
int offset = 0;
asn1_ctx_t asn1_ctx;
@ -6958,6 +6982,8 @@ proto_reg_handoff_s1ap(void)
dissector_add("s1ap.ies", id_NASSecurityParametersfromE_UTRAN, new_create_dissector_handle(dissect_NASSecurityParametersfromE_UTRAN_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_NASSecurityParameterstoE_UTRAN, new_create_dissector_handle(dissect_NASSecurityParameterstoE_UTRAN_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_DefaultPagingDRX, new_create_dissector_handle(dissect_PagingDRX_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_Source_ToTarget_TransparentContainer_Secondary, new_create_dissector_handle(dissect_Source_ToTarget_TransparentContainer_PDU, proto_s1ap));
dissector_add("s1ap.ies", id_Target_ToSource_TransparentContainer_Secondary, new_create_dissector_handle(dissect_Target_ToSource_TransparentContainer_PDU, proto_s1ap));
dissector_add("s1ap.proc.imsg", id_HandoverPreparation, new_create_dissector_handle(dissect_HandoverRequired_PDU, proto_s1ap));
dissector_add("s1ap.proc.sout", id_HandoverPreparation, new_create_dissector_handle(dissect_HandoverCommand_PDU, proto_s1ap));
dissector_add("s1ap.proc.uout", id_HandoverPreparation, new_create_dissector_handle(dissect_HandoverPreparationFailure_PDU, proto_s1ap));
@ -7064,7 +7090,7 @@ void proto_register_s1ap(void) {
"s1ap.Bearers_SubjectToStatusTransfer_Item", HFILL }},
{ &hf_s1ap_BroadcastCompletedAreaList_PDU,
{ "BroadcastCompletedAreaList", "s1ap.BroadcastCompletedAreaList",
FT_NONE, BASE_NONE, NULL, 0,
FT_UINT32, BASE_DEC, VALS(s1ap_BroadcastCompletedAreaList_vals), 0,
"s1ap.BroadcastCompletedAreaList", HFILL }},
{ &hf_s1ap_Cause_PDU,
{ "Cause", "s1ap.Cause",
@ -7142,6 +7168,18 @@ void proto_register_s1ap(void) {
{ "ENBname", "s1ap.ENBname",
FT_STRING, BASE_NONE, NULL, 0,
"s1ap.ENBname", HFILL }},
{ &hf_s1ap_E_RABInformationListItem_PDU,
{ "E-RABInformationListItem", "s1ap.E_RABInformationListItem",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.E_RABInformationListItem", HFILL }},
{ &hf_s1ap_E_RABList_PDU,
{ "E-RABList", "s1ap.E_RABList",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.E_RABList", HFILL }},
{ &hf_s1ap_E_RABItem_PDU,
{ "E-RABItem", "s1ap.E_RABItem",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.E_RABItem", HFILL }},
{ &hf_s1ap_EUTRAN_CGI_PDU,
{ "EUTRAN-CGI", "s1ap.EUTRAN_CGI",
FT_NONE, BASE_NONE, NULL, 0,
@ -7218,18 +7256,6 @@ void proto_register_s1ap(void) {
{ "RRC-Establishment-Cause", "s1ap.RRC_Establishment_Cause",
FT_UINT32, BASE_DEC, VALS(s1ap_RRC_Establishment_Cause_vals), 0,
"s1ap.RRC_Establishment_Cause", HFILL }},
{ &hf_s1ap_E_RABInformationListItem_PDU,
{ "E-RABInformationListItem", "s1ap.E_RABInformationListItem",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.E_RABInformationListItem", HFILL }},
{ &hf_s1ap_E_RABList_PDU,
{ "E-RABList", "s1ap.E_RABList",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.E_RABList", HFILL }},
{ &hf_s1ap_E_RABItem_PDU,
{ "E-RABItem", "s1ap.E_RABItem",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.E_RABItem", HFILL }},
{ &hf_s1ap_SecurityKey_PDU,
{ "SecurityKey", "s1ap.SecurityKey",
FT_BYTES, BASE_HEX, NULL, 0,
@ -8002,6 +8028,30 @@ void proto_register_s1ap(void) {
{ "PLMNidentity", "s1ap.PLMNidentity",
FT_BYTES, BASE_HEX, NULL, 0,
"s1ap.PLMNidentity", HFILL }},
{ &hf_s1ap_dL_Forwarding,
{ "dL-Forwarding", "s1ap.dL_Forwarding",
FT_UINT32, BASE_DEC, VALS(s1ap_DL_Forwarding_vals), 0,
"s1ap.DL_Forwarding", HFILL }},
{ &hf_s1ap_E_RABList_item,
{ "ProtocolIE-SingleContainer", "s1ap.ProtocolIE_SingleContainer",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.ProtocolIE_SingleContainer", HFILL }},
{ &hf_s1ap_cause,
{ "cause", "s1ap.cause",
FT_UINT32, BASE_DEC, VALS(s1ap_Cause_vals), 0,
"s1ap.Cause", HFILL }},
{ &hf_s1ap_qCI,
{ "qCI", "s1ap.qCI",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.QCI", HFILL }},
{ &hf_s1ap_allocationRetentionPriority,
{ "allocationRetentionPriority", "s1ap.allocationRetentionPriority",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.AllocationAndRetentionPriority", HFILL }},
{ &hf_s1ap_gbrQosInformation,
{ "gbrQosInformation", "s1ap.gbrQosInformation",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.GBR_QosInformation", HFILL }},
{ &hf_s1ap_cell_ID,
{ "cell-ID", "s1ap.cell_ID",
FT_BYTES, BASE_HEX, NULL, 0,
@ -8130,36 +8180,12 @@ void proto_register_s1ap(void) {
{ "gERAN-Cell-ID", "s1ap.gERAN_Cell_ID",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.GERAN_Cell_ID", HFILL }},
{ &hf_s1ap_dL_Forwarding,
{ "dL-Forwarding", "s1ap.dL_Forwarding",
FT_UINT32, BASE_DEC, VALS(s1ap_DL_Forwarding_vals), 0,
"s1ap.DL_Forwarding", HFILL }},
{ &hf_s1ap_E_RABList_item,
{ "ProtocolIE-SingleContainer", "s1ap.ProtocolIE_SingleContainer",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.ProtocolIE_SingleContainer", HFILL }},
{ &hf_s1ap_cause,
{ "cause", "s1ap.cause",
FT_UINT32, BASE_DEC, VALS(s1ap_Cause_vals), 0,
"s1ap.Cause", HFILL }},
{ &hf_s1ap_qCI,
{ "qCI", "s1ap.qCI",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.QCI", HFILL }},
{ &hf_s1ap_allocationRetentionPriority,
{ "allocationRetentionPriority", "s1ap.allocationRetentionPriority",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.AllocationAndRetentionPriority", HFILL }},
{ &hf_s1ap_gbrQosInformation,
{ "gbrQosInformation", "s1ap.gbrQosInformation",
FT_NONE, BASE_NONE, NULL, 0,
"s1ap.GBR_QosInformation", HFILL }},
{ &hf_s1ap_nextHopParameter,
{ "nextHopParameter", "s1ap.nextHopParameter",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.INTEGER_0_7", HFILL }},
{ &hf_s1ap_nextHopChainingCount,
{ "nextHopChainingCount", "s1ap.nextHopChainingCount",
FT_UINT32, BASE_DEC, NULL, 0,
"s1ap.INTEGER_0_7", HFILL }},
{ &hf_s1ap_nextHopParameter,
{ "nextHopParameter", "s1ap.nextHopParameter",
FT_BYTES, BASE_HEX, NULL, 0,
"s1ap.SecurityKey", HFILL }},
{ &hf_s1ap_sONInformationRequest,
@ -8238,6 +8264,10 @@ void proto_register_s1ap(void) {
{ "mMEC", "s1ap.mMEC",
FT_BYTES, BASE_HEX, NULL, 0,
"s1ap.MME_Code", HFILL }},
{ &hf_s1ap_m_TMSI,
{ "m-TMSI", "s1ap.m_TMSI",
FT_BYTES, BASE_HEX, NULL, 0,
"s1ap.M_TMSI", HFILL }},
{ &hf_s1ap_TAIListforWarning_item,
{ "TAI", "s1ap.TAI",
FT_NONE, BASE_NONE, NULL, 0,
@ -8515,6 +8545,10 @@ void proto_register_s1ap(void) {
&ett_s1ap_ENB_StatusTransfer_TransparentContainer,
&ett_s1ap_ENBX2TLAs,
&ett_s1ap_EPLMNs,
&ett_s1ap_E_RABInformationListItem,
&ett_s1ap_E_RABList,
&ett_s1ap_E_RABItem,
&ett_s1ap_E_RABLevelQoSParameters,
&ett_s1ap_EUTRAN_CGI,
&ett_s1ap_ForbiddenTAs,
&ett_s1ap_ForbiddenTAs_Item,
@ -8533,10 +8567,6 @@ void proto_register_s1ap(void) {
&ett_s1ap_RequestType,
&ett_s1ap_RIMTransfer,
&ett_s1ap_RIMRoutingAddress,
&ett_s1ap_E_RABInformationListItem,
&ett_s1ap_E_RABList,
&ett_s1ap_E_RABItem,
&ett_s1ap_E_RABLevelQoSParameters,
&ett_s1ap_SecurityContext,
&ett_s1ap_SONInformation,
&ett_s1ap_SONInformationReply,