Initial work on a E-UTRAN) S1 Application Protocol (S1AP) packet dissector.
svn path=/trunk/; revision=23884
This commit is contained in:
parent
0238daecf6
commit
53f5c9aaf5
|
@ -0,0 +1,26 @@
|
||||||
|
# $Id$
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Wireshark - Network traffic analyzer
|
||||||
|
# By Gerald Combs <gerald@wireshark.org>
|
||||||
|
# Copyright 1998 Gerald Combs
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License
|
||||||
|
# as published by the Free Software Foundation; either version 2
|
||||||
|
# of the License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
|
||||||
|
|
||||||
|
include ../Makefile.preinc
|
||||||
|
include Makefile.common
|
||||||
|
include ../Makefile.inc
|
||||||
|
|
|
@ -0,0 +1,52 @@
|
||||||
|
# $Id$
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Wireshark - Network traffic analyzer
|
||||||
|
# By Gerald Combs <gerald@wireshark.org>
|
||||||
|
# Copyright 1998 Gerald Combs
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License
|
||||||
|
# as published by the Free Software Foundation; either version 2
|
||||||
|
# of the License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
|
||||||
|
|
||||||
|
PROTOCOL_NAME = s1ap
|
||||||
|
|
||||||
|
DISSECTOR_FILES = \
|
||||||
|
packet-$(PROTOCOL_NAME).c
|
||||||
|
|
||||||
|
NEED_PACKET_PROTO_H = 0
|
||||||
|
|
||||||
|
EXT_ASN_FILE_LIST =
|
||||||
|
|
||||||
|
ASN_FILE_LIST = \
|
||||||
|
S1AP-CommonDataTypes.asn \
|
||||||
|
S1AP-Constants.asn \
|
||||||
|
S1AP-Containers.asn \
|
||||||
|
S1AP-IEs.asn \
|
||||||
|
S1AP-PDU-Contents.asn \
|
||||||
|
S1AP-PDU-Descriptions.asn
|
||||||
|
|
||||||
|
EXTRA_DIST = \
|
||||||
|
$(ASN_FILE_LIST) \
|
||||||
|
packet-$(PROTOCOL_NAME)-template.c \
|
||||||
|
$(PROTOCOL_NAME).cnf
|
||||||
|
|
||||||
|
SRC_FILES = \
|
||||||
|
$(EXTRA_DIST) \
|
||||||
|
$(EXT_ASN_FILE_LIST)
|
||||||
|
|
||||||
|
A2W_FLAGS =
|
||||||
|
|
||||||
|
EXTRA_CNF =
|
||||||
|
|
|
@ -0,0 +1,29 @@
|
||||||
|
## Use: $(MAKE) /$(MAKEFLAGS) -f makefile.nmake
|
||||||
|
#
|
||||||
|
# $Id$
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# Wireshark - Network traffic analyzer
|
||||||
|
# By Gerald Combs <gerald@wireshark.org>
|
||||||
|
# Copyright 1998 Gerald Combs
|
||||||
|
#
|
||||||
|
# This program is free software; you can redistribute it and/or
|
||||||
|
# modify it under the terms of the GNU General Public License
|
||||||
|
# as published by the Free Software Foundation; either version 2
|
||||||
|
# of the License, or (at your option) any later version.
|
||||||
|
#
|
||||||
|
# This program is distributed in the hope that it will be useful,
|
||||||
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
# GNU General Public License for more details.
|
||||||
|
#
|
||||||
|
# You should have received a copy of the GNU General Public License
|
||||||
|
# along with this program; if not, write to the Free Software
|
||||||
|
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
|
||||||
|
|
||||||
|
include ../../config.nmake
|
||||||
|
include ../Makefile.preinc.nmake
|
||||||
|
include Makefile.common
|
||||||
|
include ../Makefile.inc.nmake
|
||||||
|
|
|
@ -0,0 +1,34 @@
|
||||||
|
-- $Id$
|
||||||
|
-- 9.3.5 Common Definitions
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Common definitions
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-CommonDataTypes {
|
||||||
|
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
|
||||||
|
eps-Access (20) modules (3) s1ap (1) version1 (1) s1ap-CommonDataTypes (3) }
|
||||||
|
|
||||||
|
DEFINITIONS AUTOMATIC TAGS ::=
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
Criticality ::= ENUMERATED { reject, ignore, notify }
|
||||||
|
|
||||||
|
Presence ::= ENUMERATED { optional, conditional, mandatory }
|
||||||
|
|
||||||
|
PrivateIE-ID ::= CHOICE {
|
||||||
|
local INTEGER (0..65535),
|
||||||
|
global OBJECT IDENTIFIER
|
||||||
|
}
|
||||||
|
|
||||||
|
ProcedureCode ::= INTEGER (0..255)
|
||||||
|
|
||||||
|
ProtocolExtensionID ::= INTEGER (0..65535)
|
||||||
|
|
||||||
|
ProtocolIE-ID ::= INTEGER (0..65535)
|
||||||
|
|
||||||
|
TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuccessfull-outcome }
|
||||||
|
|
||||||
|
END
|
|
@ -0,0 +1,153 @@
|
||||||
|
-- $Id$
|
||||||
|
-- 9.3.6 Constant Definitions
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Constant definitions
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-Constants {
|
||||||
|
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
|
||||||
|
eps-Access (20) modules (3) s1ap (1) version1 (1) s1ap-Constants (4) }
|
||||||
|
|
||||||
|
DEFINITIONS AUTOMATIC TAGS ::=
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Elementary Procedures
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
id-HandoverPreparation INTEGER ::= 0
|
||||||
|
id-HandoverResourceAllocation INTEGER ::= 1
|
||||||
|
id-HandoverNotification INTEGER ::= 2
|
||||||
|
id-PathSwitchRequest INTEGER ::= 3
|
||||||
|
id-HandoverCancel INTEGER ::= 4
|
||||||
|
id-SAEBearerSetup INTEGER ::= 5
|
||||||
|
id-SAEBearerModify INTEGER ::= 6
|
||||||
|
id-SAEBearerRelease INTEGER ::= 7
|
||||||
|
id-SAEBearerReleaseRequest INTEGER ::= 8
|
||||||
|
id-InitialContextSetup INTEGER ::= 9
|
||||||
|
id-Paging INTEGER ::= 10
|
||||||
|
id-downlinkNASTransport INTEGER ::= 11
|
||||||
|
id-initialUEMessage INTEGER ::= 12
|
||||||
|
id-uplinkNASTransport INTEGER ::= 13
|
||||||
|
id-Reset INTEGER ::= 14
|
||||||
|
id-ErrorIndication INTEGER ::= 15
|
||||||
|
id-NASNonDeliveryIndication INTEGER ::= 16
|
||||||
|
id-S1Setup INTEGER ::= 17
|
||||||
|
id-UEContextReleaseRequest INTEGER ::= 18
|
||||||
|
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Extension constants
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
maxPrivateIEs INTEGER ::= 65535
|
||||||
|
maxProtocolExtensions INTEGER ::= 65535
|
||||||
|
maxProtocolIEs INTEGER ::= 65535
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Lists
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
maxNrOfSAEBs INTEGER ::= 256
|
||||||
|
maxNrOfInterfaces INTEGER ::= 3 --FFS
|
||||||
|
maxnoofTAI INTEGER ::= 256 --FFS
|
||||||
|
maxNrOfErrors INTEGER ::= 256
|
||||||
|
maxnoofBPLMNs INTEGER ::= 6
|
||||||
|
maxnoofNRIs INTEGER ::= 512 -- FFS
|
||||||
|
maxnoofPLMNsPerMME INTEGER ::= 32 -- FFS
|
||||||
|
maxnoofTAIs INTEGER ::= 256 -- FFS
|
||||||
|
maxnoofEPLMNs INTEGER ::= 15
|
||||||
|
maxnoofEPLMNsPlusOne INTEGER ::= 16
|
||||||
|
maxnoofForbLACs INTEGER ::= 256 -- FFS Value to be checked
|
||||||
|
maxnoofForbTAIs INTEGER ::= 256 -- FFS Value to be checked
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- IEs
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
id-MME-UE-S1AP-ID INTEGER ::= 0
|
||||||
|
id-HandoverType INTEGER ::= 1
|
||||||
|
id-Cause INTEGER ::= 2
|
||||||
|
id-SourceID INTEGER ::= 3
|
||||||
|
id-TargetID INTEGER ::= 4
|
||||||
|
id-Intra-LTEHOInformationReq INTEGER ::= 5
|
||||||
|
id-LTEtoUTRANHOInformationReq INTEGER ::= 6
|
||||||
|
id-LTEtoGERANHOInformationReq INTEGER ::= 7
|
||||||
|
id-eNB-UE-S1AP-ID INTEGER ::= 8
|
||||||
|
id-Intra-LTEHOInformationRes INTEGER ::= 9
|
||||||
|
id-LTEtoUTRANHOInformationRes INTEGER ::= 10
|
||||||
|
id-LTEtoGERANHOInformationRes INTEGER ::= 11
|
||||||
|
id-SAEBearerSubjecttoDataForwardingList INTEGER ::= 12
|
||||||
|
id-SAEBearertoReleaseListHOCmd INTEGER ::= 13
|
||||||
|
id-SAEBearerDataForwardingItem INTEGER ::= 14
|
||||||
|
id-SAEBearerReleaseItemBearerRelComp INTEGER ::= 15
|
||||||
|
id-SAEBearerToBeSetupListBearerSUReq INTEGER ::= 16
|
||||||
|
id-SAEBearerToBeSetupItemBearerSUReq INTEGER ::= 17
|
||||||
|
id-SAEBearerAdmittedList INTEGER ::= 18
|
||||||
|
id-SAEBearerFailedToSetupListHOReqAck INTEGER ::= 19
|
||||||
|
id-SAEBearerAdmittedItem INTEGER ::= 20
|
||||||
|
id-SAEBearerFailedtoSetupItemHOReqAck INTEGER ::= 21
|
||||||
|
id-SAEBearerToBeSwitchedDLList INTEGER ::= 22
|
||||||
|
id-SAEBearerToBeSwitchedDLItem INTEGER ::= 23
|
||||||
|
id-SAEBearerToBeSetupListCtxtSUReq INTEGER::= 24
|
||||||
|
id-TraceActivation INTEGER::= 25
|
||||||
|
id-NAS-PDU INTEGER ::= 26
|
||||||
|
id-SAEBearerToBeSetupItemHOReq INTEGER ::= 27
|
||||||
|
id-SAEBearerSetupListBearerSURes INTEGER ::= 28
|
||||||
|
id-SAEBearerFailedToSetupListBearerSURes INTEGER ::= 29
|
||||||
|
id-SAEBearerToBeModifiedListBearerModReq INTEGER ::= 30
|
||||||
|
id-SAEBearerModifyListBearerModRes INTEGER ::= 31
|
||||||
|
id-SAEBearerFailedToModifyList INTEGER ::= 32
|
||||||
|
id-SAEBearerToBeReleasedList INTEGER ::= 33
|
||||||
|
id-SAEBearerReleaseListBearerRelComp INTEGER ::= 33
|
||||||
|
id-SAEBearerFailedToReleaseList INTEGER ::= 34
|
||||||
|
id-SAEBearerItem INTEGER ::= 35
|
||||||
|
id-SAEBearerToBeModifiedItemBearerModReq INTEGER ::= 36
|
||||||
|
id-SAEBearerModifyItemBearerModRes INTEGER ::= 37
|
||||||
|
id-SAEBearerReleaseItem INTEGER ::= 38
|
||||||
|
id-SAEBearerSetupItemBearerSURes INTEGER ::= 39
|
||||||
|
id-Security-Information INTEGER ::= 40
|
||||||
|
id-HandoverRestrictionList INTEGER ::= 41
|
||||||
|
id-s-TMSI INTEGER ::= 43
|
||||||
|
id-pagingDRX INTEGER ::= 44
|
||||||
|
id-pagingCause INTEGER ::= 45
|
||||||
|
id-TAIdList INTEGER ::= 46
|
||||||
|
id-TAIdItem INTEGER ::= 47
|
||||||
|
id-SAEBearerFailedToSetupListCtxtSURes INTEGER ::= 48
|
||||||
|
id-SAEBearerReleaseItemHOCmd INTEGER ::= 49
|
||||||
|
id-SAEBearerSetupItemCtxtSURes INTEGER ::= 50
|
||||||
|
id-SAEBearerSetupListCtxtSURes INTEGER ::= 51
|
||||||
|
id-SAEBearerToBeSetupItemCtxtSUReq INTEGER ::= 52
|
||||||
|
id-SAEBearerToBeSetupListHOReq INTEGER ::= 53
|
||||||
|
id-GERANtoLTEHOInformationReq INTEGER ::= 54
|
||||||
|
id-GERANtoLTEHOInformationRes INTEGER ::= 55
|
||||||
|
id-UTRANtoLTEHOInformationReq INTEGER ::= 56
|
||||||
|
id-UTRANtoLTEHOInformationRes INTEGER ::= 57
|
||||||
|
id-CriticalityDiagnostics INTEGER ::= 58
|
||||||
|
id-ENB-ID INTEGER ::= 59
|
||||||
|
id-eNBname INTEGER ::= 60
|
||||||
|
id-MMEname INTEGER ::= 61
|
||||||
|
id-NRIs INTEGER ::= 62
|
||||||
|
id-ServedPLMNs INTEGER ::= 63
|
||||||
|
id-SupportedTAIs INTEGER ::= 64
|
||||||
|
id-TimeToWait INTEGER ::= 65
|
||||||
|
id-aggregateMaximumBitrate INTEGER ::= 66
|
||||||
|
id-TAId INTEGER ::= 67
|
||||||
|
id-ServingPLMN INTEGER ::= 68
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
END
|
|
@ -0,0 +1,200 @@
|
||||||
|
-- $Id$
|
||||||
|
-- 9.3.7 Container Definitions
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Container definitions
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
|
||||||
|
S1AP-Containers {
|
||||||
|
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
|
||||||
|
eps-Access (20) modules (3) s1ap (1) version1 (1) s1ap-Containers (5) }
|
||||||
|
|
||||||
|
DEFINITIONS AUTOMATIC TAGS ::=
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- IE parameter types from other modules.
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
IMPORTS
|
||||||
|
Criticality,
|
||||||
|
Presence,
|
||||||
|
PrivateIE-ID,
|
||||||
|
ProtocolExtensionID,
|
||||||
|
ProtocolIE-ID
|
||||||
|
FROM S1AP-CommonDataTypes
|
||||||
|
|
||||||
|
maxPrivateIEs,
|
||||||
|
maxProtocolExtensions,
|
||||||
|
maxProtocolIEs
|
||||||
|
FROM S1AP-Constants;
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Class Definition for Protocol IEs
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-PROTOCOL-IES ::= CLASS {
|
||||||
|
&id ProtocolIE-ID UNIQUE,
|
||||||
|
&criticality Criticality,
|
||||||
|
&Value,
|
||||||
|
&presence Presence
|
||||||
|
}
|
||||||
|
WITH SYNTAX {
|
||||||
|
ID &id
|
||||||
|
CRITICALITY &criticality
|
||||||
|
TYPE &Value
|
||||||
|
PRESENCE &presence
|
||||||
|
}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Class Definition for Protocol IEs
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-PROTOCOL-IES-PAIR ::= CLASS {
|
||||||
|
&id ProtocolIE-ID UNIQUE,
|
||||||
|
&firstCriticality Criticality,
|
||||||
|
&FirstValue,
|
||||||
|
&secondCriticality Criticality,
|
||||||
|
&SecondValue,
|
||||||
|
&presence Presence
|
||||||
|
}
|
||||||
|
WITH SYNTAX {
|
||||||
|
ID &id
|
||||||
|
FIRST CRITICALITY &firstCriticality
|
||||||
|
FIRST TYPE &FirstValue
|
||||||
|
SECOND CRITICALITY &secondCriticality
|
||||||
|
SECOND TYPE &SecondValue
|
||||||
|
PRESENCE &presence
|
||||||
|
}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Class Definition for Protocol Extensions
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-PROTOCOL-EXTENSION ::= CLASS {
|
||||||
|
&id ProtocolExtensionID UNIQUE,
|
||||||
|
&criticality Criticality,
|
||||||
|
&Extension,
|
||||||
|
&presence Presence
|
||||||
|
}
|
||||||
|
WITH SYNTAX {
|
||||||
|
ID &id
|
||||||
|
CRITICALITY &criticality
|
||||||
|
EXTENSION &Extension
|
||||||
|
PRESENCE &presence
|
||||||
|
}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Class Definition for Private IEs
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-PRIVATE-IES ::= CLASS {
|
||||||
|
&id PrivateIE-ID,
|
||||||
|
&criticality Criticality,
|
||||||
|
&Value,
|
||||||
|
&presence Presence
|
||||||
|
}
|
||||||
|
WITH SYNTAX {
|
||||||
|
ID &id
|
||||||
|
CRITICALITY &criticality
|
||||||
|
TYPE &Value
|
||||||
|
PRESENCE &presence
|
||||||
|
}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Container for Protocol IEs
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
ProtocolIE-Container {S1AP-PROTOCOL-IES : IEsSetParam} ::=
|
||||||
|
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
|
||||||
|
ProtocolIE-Field {{IEsSetParam}}
|
||||||
|
|
||||||
|
ProtocolIE-SingleContainer {S1AP-PROTOCOL-IES : IEsSetParam} ::=
|
||||||
|
ProtocolIE-Field {{IEsSetParam}}
|
||||||
|
|
||||||
|
ProtocolIE-Field {S1AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
|
||||||
|
id S1AP-PROTOCOL-IES.&id ({IEsSetParam}),
|
||||||
|
criticality S1AP-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}),
|
||||||
|
value S1AP-PROTOCOL-IES.&Value ({IEsSetParam}{@id})
|
||||||
|
}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Container for Protocol IE Pairs
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
ProtocolIE-ContainerPair {S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
|
||||||
|
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
|
||||||
|
ProtocolIE-FieldPair {{IEsSetParam}}
|
||||||
|
|
||||||
|
ProtocolIE-FieldPair {S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE {
|
||||||
|
id S1AP-PROTOCOL-IES-PAIR.&id ({IEsSetParam}),
|
||||||
|
firstCriticality S1AP-PROTOCOL-IES-PAIR.&firstCriticality ({IEsSetParam}{@id}),
|
||||||
|
firstValue S1AP-PROTOCOL-IES-PAIR.&FirstValue ({IEsSetParam}{@id}),
|
||||||
|
secondCriticality S1AP-PROTOCOL-IES-PAIR.&secondCriticality ({IEsSetParam}{@id}),
|
||||||
|
secondValue S1AP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id})
|
||||||
|
}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Container Lists for Protocol IE Containers
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES : IEsSetParam} ::=
|
||||||
|
SEQUENCE (SIZE (lowerBound..upperBound)) OF
|
||||||
|
ProtocolIE-SingleContainer {{IEsSetParam}}
|
||||||
|
|
||||||
|
ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
|
||||||
|
SEQUENCE (SIZE (lowerBound..upperBound)) OF
|
||||||
|
ProtocolIE-ContainerPair {{IEsSetParam}}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Container for Protocol Extensions
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
ProtocolExtensionContainer {S1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
|
||||||
|
SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
|
||||||
|
ProtocolExtensionField {{ExtensionSetParam}}
|
||||||
|
|
||||||
|
ProtocolExtensionField {S1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE {
|
||||||
|
id S1AP-PROTOCOL-EXTENSION.&id ({ExtensionSetParam}),
|
||||||
|
criticality S1AP-PROTOCOL-EXTENSION.&criticality ({ExtensionSetParam}{@id}),
|
||||||
|
extensionValue S1AP-PROTOCOL-EXTENSION.&Extension ({ExtensionSetParam}{@id})
|
||||||
|
}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Container for Private IEs
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
PrivateIE-Container {S1AP-PRIVATE-IES : IEsSetParam } ::=
|
||||||
|
SEQUENCE (SIZE (1.. maxPrivateIEs)) OF
|
||||||
|
PrivateIE-Field {{IEsSetParam}}
|
||||||
|
|
||||||
|
PrivateIE-Field {S1AP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE {
|
||||||
|
id S1AP-PRIVATE-IES.&id ({IEsSetParam}),
|
||||||
|
criticality S1AP-PRIVATE-IES.&criticality ({IEsSetParam}{@id}),
|
||||||
|
value S1AP-PRIVATE-IES.&Value ({IEsSetParam}{@id})
|
||||||
|
}
|
||||||
|
|
||||||
|
END
|
|
@ -0,0 +1,486 @@
|
||||||
|
-- $Id$
|
||||||
|
-- 9.3.4 Information Element Definitions
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Information Element Definitions
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-IEs {
|
||||||
|
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
|
||||||
|
eps-Access (20) modules (3) s1ap (1) version1 (1) s1ap-IEs (2) }
|
||||||
|
|
||||||
|
DEFINITIONS AUTOMATIC TAGS ::=
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
IMPORTS
|
||||||
|
id-SAEBearerItem,
|
||||||
|
maxNrOfSAEBs,
|
||||||
|
maxNrOfInterfaces,
|
||||||
|
|
||||||
|
maxNrOfErrors,
|
||||||
|
maxnoofBPLMNs,
|
||||||
|
maxnoofNRIs,
|
||||||
|
maxnoofPLMNsPerMME,
|
||||||
|
maxnoofTAIs,
|
||||||
|
maxnoofEPLMNs,
|
||||||
|
maxnoofEPLMNsPlusOne,
|
||||||
|
maxnoofForbLACs,
|
||||||
|
maxnoofForbTAIs
|
||||||
|
|
||||||
|
FROM S1AP-Constants
|
||||||
|
|
||||||
|
Criticality,
|
||||||
|
ProcedureCode,
|
||||||
|
ProtocolIE-ID,
|
||||||
|
TriggeringMessage
|
||||||
|
FROM S1AP-CommonDataTypes
|
||||||
|
|
||||||
|
ProtocolExtensionContainer{},
|
||||||
|
S1AP-PROTOCOL-EXTENSION,
|
||||||
|
ProtocolIE-SingleContainer{},
|
||||||
|
S1AP-PROTOCOL-IES
|
||||||
|
|
||||||
|
FROM S1AP-Containers;
|
||||||
|
|
||||||
|
-- A
|
||||||
|
|
||||||
|
AllocationRetentionPriority ::= SEQUENCE {
|
||||||
|
priorityLevel PriorityLevel,
|
||||||
|
iE-Extensions ProtocolExtensionContainer { {AllocationRetentionPriority-ExtIEs} } OPTIONAL,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
AllocationRetentionPriority-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
AggregateMaximumBitrate ::= SEQUENCE {
|
||||||
|
aggregateMaximumBitRateDL SAE-Bearer-BitRate,
|
||||||
|
aggregateMaximumBitRateUL SAE-Bearer-BitRate,
|
||||||
|
iE-Extensions ProtocolExtensionContainer { {Aggregate-MaximumBitrates-ExtIEs} } OPTIONAL,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
Aggregate-MaximumBitrates-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
-- B
|
||||||
|
|
||||||
|
BPLMNs ::= SEQUENCE (SIZE(1.. maxnoofBPLMNs)) OF PLMNidentity
|
||||||
|
|
||||||
|
|
||||||
|
-- C
|
||||||
|
|
||||||
|
Cause ::= CHOICE {
|
||||||
|
radioNetwork CauseRadioNetwork,
|
||||||
|
transport CauseTransport,
|
||||||
|
protocol CauseProtocol,
|
||||||
|
misc CauseMisc,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
CauseMisc ::= ENUMERATED {
|
||||||
|
control-processing-overload,
|
||||||
|
not-enough-user-plane-processing-resources,
|
||||||
|
hardware-failure,
|
||||||
|
om-intervention,
|
||||||
|
unspecified,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
CauseProtocol ::= ENUMERATED {
|
||||||
|
transfer-syntax-error,
|
||||||
|
abstract-syntax-error-reject,
|
||||||
|
abstract-syntax-error-ignore-and-notify,
|
||||||
|
message-not-compatible-with-receiver-state,
|
||||||
|
semantic-error,
|
||||||
|
abstract-syntax-error-falsely-constructed-message,
|
||||||
|
unspecified,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
CauseRadioNetwork ::= ENUMERATED {
|
||||||
|
unspecified,
|
||||||
|
handover-triggered,
|
||||||
|
tx2relocoverall-expiry,
|
||||||
|
...
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
CauseTransport ::= ENUMERATED {
|
||||||
|
transport-resource-unavailable,
|
||||||
|
unspecified,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
CGI ::= SEQUENCE {
|
||||||
|
pLMNidentity PLMNidentity,
|
||||||
|
lAC LAC,
|
||||||
|
cI CI
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
CI ::= OCTET STRING (SIZE (2))
|
||||||
|
|
||||||
|
CriticalityDiagnostics ::= SEQUENCE {
|
||||||
|
procedureCode ProcedureCode OPTIONAL,
|
||||||
|
triggeringMessage TriggeringMessage OPTIONAL,
|
||||||
|
procedureCriticality Criticality OPTIONAL,
|
||||||
|
iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL,
|
||||||
|
iE-Extensions ProtocolExtensionContainer {{CriticalityDiagnostics-ExtIEs}} OPTIONAL,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
CriticalityDiagnostics-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE (1..maxNrOfErrors)) OF
|
||||||
|
SEQUENCE {
|
||||||
|
iECriticality Criticality,
|
||||||
|
iE-ID ProtocolIE-ID,
|
||||||
|
typeOfError TypeOfError OPTIONAL,
|
||||||
|
iE-Extensions ProtocolExtensionContainer {{CriticalityDiagnostics-IE-List-ExtIEs}} OPTIONAL,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
CriticalityDiagnostics-IE-List-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
-- D
|
||||||
|
-- E
|
||||||
|
|
||||||
|
ENB-UE-S1AP-ID ::= TBCD-STRING (SIZE (3))
|
||||||
|
ENB-ID ::= INTEGER (0..65535)
|
||||||
|
|
||||||
|
ENBname ::= OCTET STRING
|
||||||
|
|
||||||
|
EPLMNs ::= SEQUENCE (SIZE(1..maxnoofEPLMNs)) OF PLMNidentity
|
||||||
|
|
||||||
|
ExtendedRNC-ID ::= INTEGER (4096..65535)
|
||||||
|
|
||||||
|
-- F
|
||||||
|
|
||||||
|
ForbiddenInterRATs ::= ENUMERATED {
|
||||||
|
all,
|
||||||
|
geran,
|
||||||
|
utran,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
ForbiddenTAs ::= SEQUENCE (SIZE(1.. maxnoofEPLMNsPlusOne)) OF ForbiddenTAs-Item
|
||||||
|
|
||||||
|
ForbiddenTAs-Item ::= SEQUENCE {
|
||||||
|
pLMN-Identity PLMNidentity,
|
||||||
|
forbiddenTAIs ForbiddenTAIs
|
||||||
|
}
|
||||||
|
|
||||||
|
ForbiddenTAIs ::= SEQUENCE (SIZE(1..maxnoofForbTAIs)) OF TAI
|
||||||
|
|
||||||
|
ForbiddenLAs ::= SEQUENCE (SIZE(1..maxnoofEPLMNsPlusOne)) OF ForbiddenLAs-Item
|
||||||
|
|
||||||
|
ForbiddenLAs-Item ::= SEQUENCE {
|
||||||
|
pLMN-Identity PLMNidentity,
|
||||||
|
forbiddenLACs ForbiddenLACs
|
||||||
|
}
|
||||||
|
|
||||||
|
ForbiddenLACs ::= SEQUENCE (SIZE(1..maxnoofForbLACs)) OF LAC
|
||||||
|
|
||||||
|
-- G
|
||||||
|
|
||||||
|
GTP-TEID ::= OCTET STRING (SIZE (4))
|
||||||
|
|
||||||
|
|
||||||
|
-- H
|
||||||
|
|
||||||
|
HandoverRestrictionList ::= SEQUENCE {
|
||||||
|
equivalentPLMNs EPLMNs OPTIONAL,
|
||||||
|
forbiddenTAs ForbiddenTAs OPTIONAL,
|
||||||
|
forbiddenLAs ForbiddenLAs OPTIONAL,
|
||||||
|
forbiddenInterRATs ForbiddenInterRATs OPTIONAL,
|
||||||
|
iE-Extensions ProtocolExtensionContainer { {HandoverRestrictionList-ExtIEs} } OPTIONAL,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
HandoverRestrictionList-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
HandoverType ::= ENUMERATED {
|
||||||
|
intralte,
|
||||||
|
ltetoutran,
|
||||||
|
ltetogeran,
|
||||||
|
utrantolte,
|
||||||
|
gerantolte,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
-- I
|
||||||
|
|
||||||
|
InterfacesToTraceList ::= SEQUENCE (SIZE (1..maxNrOfInterfaces)) OF InterfacesToTraceItem
|
||||||
|
|
||||||
|
InterfacesToTraceItem ::= SEQUENCE {
|
||||||
|
interfaceType InterfaceType,
|
||||||
|
traceDepth TraceDepth,
|
||||||
|
iE-Extensions ProtocolExtensionContainer { {InterfacesToTraceItem-ExtIEs} } OPTIONAL,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
InterfacesToTraceItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
InterfaceType ::= ENUMERATED {
|
||||||
|
s1,
|
||||||
|
x2,
|
||||||
|
uu,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
-- J
|
||||||
|
-- K
|
||||||
|
-- L
|
||||||
|
|
||||||
|
Label ::= INTEGER (1..256)
|
||||||
|
|
||||||
|
LAC ::= OCTET STRING (SIZE (2))
|
||||||
|
|
||||||
|
LAI ::= SEQUENCE {
|
||||||
|
pLMNidentity PLMNidentity,
|
||||||
|
lAC LAC,
|
||||||
|
iE-Extensions ProtocolExtensionContainer { {LAI-ExtIEs} } OPTIONAL
|
||||||
|
}
|
||||||
|
|
||||||
|
LAI-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
-- M
|
||||||
|
|
||||||
|
MMEname ::= OCTET STRING
|
||||||
|
|
||||||
|
MME-UE-S1AP-ID ::= TBCD-STRING (SIZE (3))
|
||||||
|
|
||||||
|
-- N
|
||||||
|
|
||||||
|
NAS-PDU ::= OCTET STRING
|
||||||
|
|
||||||
|
NRIs ::= SEQUENCE (SIZE(1..maxnoofNRIs)) OF NRI
|
||||||
|
|
||||||
|
NRI ::= OCTET STRING
|
||||||
|
|
||||||
|
-- O
|
||||||
|
-- P
|
||||||
|
|
||||||
|
PagingDRX ::= INTEGER (0..4095)
|
||||||
|
|
||||||
|
PagingCause ::= ENUMERATED {
|
||||||
|
terminating-conversational-call,
|
||||||
|
terminating-streaming-call,
|
||||||
|
terminating-interactive-call,
|
||||||
|
terminating-background-call,
|
||||||
|
terminating-low-priority-signalling,
|
||||||
|
...,
|
||||||
|
terminating-high-priority-signalling
|
||||||
|
}
|
||||||
|
PLMNidentity ::= TBCD-STRING (SIZE (3))
|
||||||
|
|
||||||
|
PriorityLevel ::= INTEGER (0..15)
|
||||||
|
|
||||||
|
|
||||||
|
-- Q
|
||||||
|
-- R
|
||||||
|
|
||||||
|
RAC ::= OCTET STRING (SIZE (1))
|
||||||
|
|
||||||
|
|
||||||
|
RNC-ID ::= INTEGER (0..4095)
|
||||||
|
|
||||||
|
-- S
|
||||||
|
|
||||||
|
SAE-Bearer-ID ::= OCTET STRING
|
||||||
|
|
||||||
|
SAEBearerList ::= SEQUENCE (SIZE(0.. maxNrOfSAEBs)) OF ProtocolIE-SingleContainer { {SAEBearerItemIEs} }
|
||||||
|
|
||||||
|
SAEBearerItemIEs S1AP-PROTOCOL-IES ::= {
|
||||||
|
{ ID id-SAEBearerItem CRITICALITY reject TYPE SAEBearerItem PRESENCE mandatory },
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
SAEBearerItem ::= SEQUENCE {
|
||||||
|
sAE-Bearer-ID SAE-Bearer-ID,
|
||||||
|
cause Cause,
|
||||||
|
iE-Extensions ProtocolExtensionContainer { {SAEBearerItem-ExtIEs} } OPTIONAL,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
SAEBearerItem-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
SAE-Bearer-BitRate ::= INTEGER (0..10000000)
|
||||||
|
|
||||||
|
|
||||||
|
SAE-BearerLevelQoSParameters ::= SEQUENCE {
|
||||||
|
label Label,
|
||||||
|
allocationRetentionPriority AllocationRetentionPriority OPTIONAL,
|
||||||
|
sAE-BearerType SAE-Bearer-Type,
|
||||||
|
iE-Extensions ProtocolExtensionContainer { {SAE-Bearer-QoSParameters-ExtIEs} } OPTIONAL,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
SAE-Bearer-QoSParameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
SAE-Bearer-Type ::= CHOICE {
|
||||||
|
sAE-GBR-Bearer SAE-GBR-Bearer,
|
||||||
|
sAE-non-GBR-Bearer SAE-non-GBR-Bearer,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
SAE-GBR-Bearer ::= SEQUENCE {
|
||||||
|
sAE-Bearer-MaximumBitrateDL SAE-Bearer-BitRate,
|
||||||
|
sAE-Bearer-MaximumBitrateUL SAE-Bearer-BitRate,
|
||||||
|
sAE-Bearer-GuaranteedBitrateDL SAE-Bearer-BitRate,
|
||||||
|
sAE-Bearer-GuaranteedBitrateUL SAE-Bearer-BitRate,
|
||||||
|
iE-Extensions ProtocolExtensionContainer { {SAE-GBR-Bearer-Parameters-ExtIEs} } OPTIONAL,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
SAE-GBR-Bearer-Parameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
SAE-non-GBR-Bearer ::= SEQUENCE {
|
||||||
|
sAE-non-GBR-Bearer-Type ENUMERATED {non-GBR-Bearer,...},
|
||||||
|
iE-Extensions ProtocolExtensionContainer { {SAE-non-GBR-Bearer-Parameters-ExtIEs} } OPTIONAL,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
SAE-non-GBR-Bearer-Parameters-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
SecurityInformation ::= SEQUENCE {
|
||||||
|
securityPlaceHolder ENUMERATED {whatever},
|
||||||
|
iE-Extensions ProtocolExtensionContainer { { SecurityInformation-ExtIEs} } OPTIONAL
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
SecurityInformation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
SourceBSS-ToTargetBSS-TransparentContainer ::= OCTET STRING
|
||||||
|
|
||||||
|
SourceID ::= SEQUENCE {
|
||||||
|
sourceeNB-ID SourceeNB-ID,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
SourceeNB-ID ::= SEQUENCE {
|
||||||
|
pLMNidentity PLMNidentity,
|
||||||
|
eNB-ID ENB-ID
|
||||||
|
}
|
||||||
|
|
||||||
|
SourceeNodeB-ToTargeteNodeB-TransparentContainer ::= OCTET STRING
|
||||||
|
|
||||||
|
SourceRNC-ToTargetRNC-TransparentContainer ::= OCTET STRING
|
||||||
|
|
||||||
|
|
||||||
|
ServedPLMNs ::= SEQUENCE (SIZE(1.. maxnoofPLMNsPerMME)) OF PLMNidentity
|
||||||
|
|
||||||
|
SupportedTAIs ::= SEQUENCE (SIZE(1.. maxnoofTAIs)) OF SupportedTAs-Item
|
||||||
|
|
||||||
|
SupportedTAs-Item ::= SEQUENCE {
|
||||||
|
tAI TAId,
|
||||||
|
broadcastPLMNs BPLMNs,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
S-TMSI ::= OCTET STRING
|
||||||
|
|
||||||
|
|
||||||
|
-- T
|
||||||
|
|
||||||
|
TAI ::= OCTET STRING
|
||||||
|
|
||||||
|
TAId ::= OCTET STRING
|
||||||
|
|
||||||
|
TBCD-STRING ::= OCTET STRING
|
||||||
|
|
||||||
|
TargetID ::= CHOICE {
|
||||||
|
targeteNB-ID TargeteNB-ID,
|
||||||
|
targetRNC-ID TargetRNC-ID,
|
||||||
|
cGI CGI,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
TargeteNB-ID ::= SEQUENCE {
|
||||||
|
pLMNidentity PLMNidentity,
|
||||||
|
eNB-ID ENB-ID
|
||||||
|
}
|
||||||
|
|
||||||
|
TargetRNC-ID ::= SEQUENCE {
|
||||||
|
lAI LAI,
|
||||||
|
rAC RAC OPTIONAL,
|
||||||
|
rNC-ID RNC-ID
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
TargeteNodeB-ToSourceeNodeB-TransparentContainer ::= OCTET STRING
|
||||||
|
TargetRNC-ToSourceRNC-TransparentContainer ::= OCTET STRING
|
||||||
|
TargetBSS-ToSourceBSS-TransparentContainer ::= OCTET STRING
|
||||||
|
|
||||||
|
TimeToWait ::= OCTET STRING
|
||||||
|
|
||||||
|
TransportLayerAddress ::= OCTET STRING
|
||||||
|
|
||||||
|
TraceActivation ::= SEQUENCE {
|
||||||
|
traceReference TraceReference,
|
||||||
|
interfacesToTraceList InterfacesToTraceList,
|
||||||
|
iE-Extensions ProtocolExtensionContainer { { TraceActivation-ExtIEs} } OPTIONAL
|
||||||
|
}
|
||||||
|
|
||||||
|
TraceActivation-ExtIEs S1AP-PROTOCOL-EXTENSION ::= {
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
TraceDepth ::= ENUMERATED {
|
||||||
|
minimum,
|
||||||
|
medium,
|
||||||
|
maximum,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
TraceReference ::= OCTET STRING (SIZE (3))
|
||||||
|
|
||||||
|
TypeOfError ::= ENUMERATED {
|
||||||
|
not-understood,
|
||||||
|
missing,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
-- U
|
||||||
|
|
||||||
|
UserDataType ::= INTEGER
|
||||||
|
-- Editors note: FFS (ENUMERATED?)
|
||||||
|
|
||||||
|
-- V
|
||||||
|
-- W
|
||||||
|
-- X
|
||||||
|
-- Y
|
||||||
|
-- Z
|
||||||
|
|
||||||
|
END
|
||||||
|
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -0,0 +1,313 @@
|
||||||
|
-- $Id$
|
||||||
|
-- 9.3.2 Elementary Procedure Definitions
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Elementary Procedure definitions
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-PDU-Descriptions {
|
||||||
|
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
|
||||||
|
eps-Access (20) modules (3) s1ap (1) version1 (1) s1ap-PDU-Descriptions (0)}
|
||||||
|
|
||||||
|
DEFINITIONS AUTOMATIC TAGS ::=
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- IE parameter types from other modules.
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
IMPORTS
|
||||||
|
Criticality,
|
||||||
|
ProcedureCode
|
||||||
|
FROM S1AP-CommonDataTypes
|
||||||
|
|
||||||
|
HandoverRequired,
|
||||||
|
HandoverCommand,
|
||||||
|
HandoverPreparationFailure,
|
||||||
|
HandoverRequest,
|
||||||
|
HandoverRequestAcknowledge,
|
||||||
|
HandoverFailure,
|
||||||
|
HandoverNotify,
|
||||||
|
PathSwitchRequest,
|
||||||
|
PathSwitchRequestAcknowledge,
|
||||||
|
PathSwitchRequestFailure,
|
||||||
|
SAEBearerSetupRequest,
|
||||||
|
SAEBearerSetupResponse,
|
||||||
|
SAEBearerModifyRequest,
|
||||||
|
SAEBearerModifyResponse,
|
||||||
|
SAEBearerReleaseCommand,
|
||||||
|
SAEBearerReleaseComplete,
|
||||||
|
SAEBearerReleaseRequest,
|
||||||
|
InitialContextSetupRequest,
|
||||||
|
InitialContextSetupResponse,
|
||||||
|
InitialContextSetupFailure,
|
||||||
|
Paging,
|
||||||
|
DownlinkNASTransport,
|
||||||
|
InitialUEMessage,
|
||||||
|
UplinkNASTransport,
|
||||||
|
HandoverCancel,
|
||||||
|
HandoverCancelAcknowledge,
|
||||||
|
Reset,
|
||||||
|
ResetAcknowledge,
|
||||||
|
ErrorIndication,
|
||||||
|
NASNonDeliveryIndication,
|
||||||
|
S1SetupRequest,
|
||||||
|
S1SetupResponse,
|
||||||
|
S1SetupFailure,
|
||||||
|
UEContextReleaseRequest
|
||||||
|
|
||||||
|
FROM S1AP-PDU-Contents
|
||||||
|
|
||||||
|
id-HandoverPreparation,
|
||||||
|
id-HandoverResourceAllocation,
|
||||||
|
id-HandoverNotification,
|
||||||
|
id-PathSwitchRequest,
|
||||||
|
id-SAEBearerSetup,
|
||||||
|
id-SAEBearerModify,
|
||||||
|
id-SAEBearerRelease,
|
||||||
|
id-SAEBearerReleaseRequest,
|
||||||
|
id-InitialContextSetup,
|
||||||
|
id-Paging,
|
||||||
|
id-downlinkNASTransport,
|
||||||
|
id-initialUEMessage,
|
||||||
|
id-uplinkNASTransport,
|
||||||
|
id-HandoverCancel,
|
||||||
|
id-Reset,
|
||||||
|
id-ErrorIndication,
|
||||||
|
id-NASNonDeliveryIndication,
|
||||||
|
id-S1Setup,
|
||||||
|
id-UEContextReleaseRequest
|
||||||
|
FROM S1AP-Constants;
|
||||||
|
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Interface Elementary Procedure Class
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-ELEMENTARY-PROCEDURE ::= CLASS {
|
||||||
|
&InitiatingMessage ,
|
||||||
|
&SuccessfulOutcome OPTIONAL,
|
||||||
|
&UnsuccessfulOutcome OPTIONAL,
|
||||||
|
&procedureCode ProcedureCode UNIQUE,
|
||||||
|
&criticality Criticality DEFAULT ignore
|
||||||
|
}
|
||||||
|
WITH SYNTAX {
|
||||||
|
INITIATING MESSAGE &InitiatingMessage
|
||||||
|
[SUCCESSFUL OUTCOME &SuccessfulOutcome]
|
||||||
|
[UNSUCCESSFUL OUTCOME &UnsuccessfulOutcome]
|
||||||
|
PROCEDURE CODE &procedureCode
|
||||||
|
[CRITICALITY &criticality]
|
||||||
|
}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Interface PDU Definition
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-PDU ::= CHOICE {
|
||||||
|
initiatingMessage InitiatingMessage,
|
||||||
|
successfulOutcome SuccessfulOutcome,
|
||||||
|
unsuccessfulOutcome UnsuccessfulOutcome,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
InitiatingMessage ::= SEQUENCE {
|
||||||
|
procedureCode S1AP-ELEMENTARY-PROCEDURE.&procedureCode ({S1AP-ELEMENTARY-PROCEDURES}),
|
||||||
|
criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
|
||||||
|
value S1AP-ELEMENTARY-PROCEDURE.&InitiatingMessage ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
|
||||||
|
}
|
||||||
|
|
||||||
|
SuccessfulOutcome ::= SEQUENCE {
|
||||||
|
procedureCode S1AP-ELEMENTARY-PROCEDURE.&procedureCode ({S1AP-ELEMENTARY-PROCEDURES}),
|
||||||
|
criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
|
||||||
|
value S1AP-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
|
||||||
|
}
|
||||||
|
|
||||||
|
UnsuccessfulOutcome ::= SEQUENCE {
|
||||||
|
procedureCode S1AP-ELEMENTARY-PROCEDURE.&procedureCode ({S1AP-ELEMENTARY-PROCEDURES}),
|
||||||
|
criticality S1AP-ELEMENTARY-PROCEDURE.&criticality ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode}),
|
||||||
|
value S1AP-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({S1AP-ELEMENTARY-PROCEDURES}{@procedureCode})
|
||||||
|
}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Interface Elementary Procedure List
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
S1AP-ELEMENTARY-PROCEDURES S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
S1AP-ELEMENTARY-PROCEDURES-CLASS-1 |
|
||||||
|
S1AP-ELEMENTARY-PROCEDURES-CLASS-2,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
S1AP-ELEMENTARY-PROCEDURES-CLASS-1 S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
handoverPreparation |
|
||||||
|
handoverResourceAllocation |
|
||||||
|
pathSwitchRequest |
|
||||||
|
sAEbearerSetup |
|
||||||
|
sAEbearerModify |
|
||||||
|
sAEbearerRelease |
|
||||||
|
initialContextSetup |
|
||||||
|
handoverCancel |
|
||||||
|
reset |
|
||||||
|
s1Setup,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
S1AP-ELEMENTARY-PROCEDURES-CLASS-2 S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
handoverNotification |
|
||||||
|
sAEbearerReleaseRequest |
|
||||||
|
paging |
|
||||||
|
downlinkNASTransport |
|
||||||
|
initialUEMessage |
|
||||||
|
uplinkNASTransport |
|
||||||
|
errorIndication |
|
||||||
|
nASNonDeliveryIndication |
|
||||||
|
uEContextReleaseRequest ,
|
||||||
|
...
|
||||||
|
}
|
||||||
|
|
||||||
|
-- **************************************************************
|
||||||
|
--
|
||||||
|
-- Interface Elementary Procedures
|
||||||
|
--
|
||||||
|
-- **************************************************************
|
||||||
|
|
||||||
|
handoverPreparation S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE HandoverRequired
|
||||||
|
SUCCESSFUL OUTCOME HandoverCommand
|
||||||
|
UNSUCCESSFUL OUTCOME HandoverPreparationFailure
|
||||||
|
PROCEDURE CODE id-HandoverPreparation
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
handoverResourceAllocation S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE HandoverRequest
|
||||||
|
SUCCESSFUL OUTCOME HandoverRequestAcknowledge
|
||||||
|
UNSUCCESSFUL OUTCOME HandoverFailure
|
||||||
|
PROCEDURE CODE id-HandoverResourceAllocation
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
handoverNotification S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE HandoverNotify
|
||||||
|
PROCEDURE CODE id-HandoverNotification
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
pathSwitchRequest S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE PathSwitchRequest
|
||||||
|
SUCCESSFUL OUTCOME PathSwitchRequestAcknowledge
|
||||||
|
UNSUCCESSFUL OUTCOME PathSwitchRequestFailure
|
||||||
|
PROCEDURE CODE id-PathSwitchRequest
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
sAEbearerSetup S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE SAEBearerSetupRequest
|
||||||
|
SUCCESSFUL OUTCOME SAEBearerSetupResponse
|
||||||
|
PROCEDURE CODE id-SAEBearerSetup
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
sAEbearerModify S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE SAEBearerModifyRequest
|
||||||
|
SUCCESSFUL OUTCOME SAEBearerModifyResponse
|
||||||
|
PROCEDURE CODE id-SAEBearerModify
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
sAEbearerRelease S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE SAEBearerReleaseCommand
|
||||||
|
SUCCESSFUL OUTCOME SAEBearerReleaseComplete
|
||||||
|
PROCEDURE CODE id-SAEBearerRelease
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
sAEbearerReleaseRequest S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE SAEBearerReleaseRequest
|
||||||
|
PROCEDURE CODE id-SAEBearerReleaseRequest
|
||||||
|
CRITICALITY ignore
|
||||||
|
}
|
||||||
|
|
||||||
|
initialContextSetup S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE InitialContextSetupRequest
|
||||||
|
SUCCESSFUL OUTCOME InitialContextSetupResponse
|
||||||
|
UNSUCCESSFUL OUTCOME InitialContextSetupFailure
|
||||||
|
PROCEDURE CODE id-InitialContextSetup
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
uEContextReleaseRequest S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE UEContextReleaseRequest
|
||||||
|
PROCEDURE CODE id-UEContextReleaseRequest
|
||||||
|
CRITICALITY ignore
|
||||||
|
}
|
||||||
|
|
||||||
|
paging S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE Paging
|
||||||
|
PROCEDURE CODE id-Paging
|
||||||
|
CRITICALITY ignore
|
||||||
|
}
|
||||||
|
|
||||||
|
downlinkNASTransport S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE DownlinkNASTransport
|
||||||
|
PROCEDURE CODE id-downlinkNASTransport
|
||||||
|
CRITICALITY ignore
|
||||||
|
}
|
||||||
|
|
||||||
|
initialUEMessage S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE InitialUEMessage
|
||||||
|
PROCEDURE CODE id-initialUEMessage
|
||||||
|
CRITICALITY ignore
|
||||||
|
}
|
||||||
|
|
||||||
|
uplinkNASTransport S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE UplinkNASTransport
|
||||||
|
PROCEDURE CODE id-uplinkNASTransport
|
||||||
|
CRITICALITY ignore
|
||||||
|
}
|
||||||
|
nASNonDeliveryIndication S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE NASNonDeliveryIndication
|
||||||
|
PROCEDURE CODE id-NASNonDeliveryIndication
|
||||||
|
CRITICALITY ignore
|
||||||
|
}
|
||||||
|
|
||||||
|
handoverCancel S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE HandoverCancel
|
||||||
|
SUCCESSFUL OUTCOME HandoverCancelAcknowledge
|
||||||
|
PROCEDURE CODE id-HandoverCancel
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
reset S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE Reset
|
||||||
|
SUCCESSFUL OUTCOME ResetAcknowledge
|
||||||
|
PROCEDURE CODE id-Reset
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
errorIndication S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE ErrorIndication
|
||||||
|
PROCEDURE CODE id-ErrorIndication
|
||||||
|
CRITICALITY ignore
|
||||||
|
}
|
||||||
|
|
||||||
|
s1Setup S1AP-ELEMENTARY-PROCEDURE ::= {
|
||||||
|
INITIATING MESSAGE S1SetupRequest
|
||||||
|
SUCCESSFUL OUTCOME S1SetupResponse
|
||||||
|
UNSUCCESSFUL OUTCOME S1SetupFailure
|
||||||
|
PROCEDURE CODE id-S1Setup
|
||||||
|
CRITICALITY reject
|
||||||
|
}
|
||||||
|
|
||||||
|
END
|
|
@ -0,0 +1,208 @@
|
||||||
|
/* packet-s1ap.c
|
||||||
|
* Routines for E-UTRAN) S1 Application Protocol (S1AP) packet dissection
|
||||||
|
* Copyright 2007, Anders Broman <anders.broman@ericsson.com>
|
||||||
|
*
|
||||||
|
* $Id: packet-s1ap-template.c 22778 2007-09-03 16:40:51Z etxrab $
|
||||||
|
*
|
||||||
|
* Wireshark - Network traffic analyzer
|
||||||
|
* By Gerald Combs <gerald@wireshark.org>
|
||||||
|
* Copyright 1998 Gerald Combs
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU General Public License
|
||||||
|
* as published by the Free Software Foundation; either version 2
|
||||||
|
* of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
|
*
|
||||||
|
* Based on the RANAP dissector
|
||||||
|
*
|
||||||
|
* References: 3GPP TS 25.413 version 6.6.0 Release
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifdef HAVE_CONFIG_H
|
||||||
|
# include "config.h"
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#include <glib.h>
|
||||||
|
#include <epan/packet.h>
|
||||||
|
#include <epan/conversation.h>
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <epan/emem.h>
|
||||||
|
#include <epan/strutil.h>
|
||||||
|
#include <epan/asn1.h>
|
||||||
|
|
||||||
|
#include "packet-ber.h"
|
||||||
|
#include "packet-per.h"
|
||||||
|
#include "packet-gsm_map.h"
|
||||||
|
#include "packet-s1ap.h"
|
||||||
|
#include "packet-e212.h"
|
||||||
|
#include "packet-sccp.h"
|
||||||
|
|
||||||
|
#ifdef _MSC_VER
|
||||||
|
/* disable: "warning C4146: unary minus operator applied to unsigned type, result still unsigned" */
|
||||||
|
#pragma warning(disable:4146)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#define PNAME "S1 Application Protocol "
|
||||||
|
#define PSNAME "S1AP"
|
||||||
|
#define PFNAME "s1ap"
|
||||||
|
|
||||||
|
#include "packet-s1ap-val.h"
|
||||||
|
|
||||||
|
static dissector_handle_t s1ap_handle = NULL;
|
||||||
|
|
||||||
|
/* Initialize the protocol and registered fields */
|
||||||
|
static int proto_s1ap = -1;
|
||||||
|
|
||||||
|
#include "packet-s1ap-hf.c"
|
||||||
|
|
||||||
|
/* Initialize the subtree pointers */
|
||||||
|
static int ett_s1ap = -1;
|
||||||
|
|
||||||
|
#include "packet-s1ap-ett.c"
|
||||||
|
|
||||||
|
/* Global variables */
|
||||||
|
static guint32 ProcedureCode;
|
||||||
|
static guint32 ProtocolIE_ID;
|
||||||
|
static guint32 ProtocolExtensionID;
|
||||||
|
|
||||||
|
/* Dissector tables */
|
||||||
|
static dissector_table_t s1ap_ies_dissector_table;
|
||||||
|
static dissector_table_t s1ap_ies_p1_dissector_table;
|
||||||
|
static dissector_table_t s1ap_ies_p2_dissector_table;
|
||||||
|
static dissector_table_t s1ap_extension_dissector_table;
|
||||||
|
static dissector_table_t s1ap_proc_imsg_dissector_table;
|
||||||
|
static dissector_table_t s1ap_proc_sout_dissector_table;
|
||||||
|
static dissector_table_t s1ap_proc_uout_dissector_table;
|
||||||
|
static dissector_table_t s1ap_proc_out_dissector_table;
|
||||||
|
|
||||||
|
static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
|
||||||
|
static int dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
|
||||||
|
static int dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
|
||||||
|
static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
|
||||||
|
static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
|
||||||
|
static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
|
||||||
|
static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
|
||||||
|
static int dissect_OutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree);
|
||||||
|
|
||||||
|
#include "packet-s1ap-fn.c"
|
||||||
|
|
||||||
|
static int dissect_ProtocolIEFieldValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||||
|
{
|
||||||
|
return (dissector_try_port(s1ap_ies_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int dissect_ProtocolIEFieldPairFirstValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||||
|
{
|
||||||
|
return (dissector_try_port(s1ap_ies_p1_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int dissect_ProtocolIEFieldPairSecondValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||||
|
{
|
||||||
|
return (dissector_try_port(s1ap_ies_p2_dissector_table, ProtocolIE_ID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int dissect_ProtocolExtensionFieldExtensionValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||||
|
{
|
||||||
|
return (dissector_try_port(s1ap_extension_dissector_table, ProtocolExtensionID, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int dissect_InitiatingMessageValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||||
|
{
|
||||||
|
return (dissector_try_port(s1ap_proc_imsg_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int dissect_SuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||||
|
{
|
||||||
|
return (dissector_try_port(s1ap_proc_sout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int dissect_UnsuccessfulOutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||||
|
{
|
||||||
|
return (dissector_try_port(s1ap_proc_uout_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static int dissect_OutcomeValue(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||||
|
{
|
||||||
|
return (dissector_try_port(s1ap_proc_out_dissector_table, ProcedureCode, tvb, pinfo, tree)) ? tvb_length(tvb) : 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
dissect_s1ap(tvbuff_t *tvb, packet_info *pinfo, proto_tree *tree)
|
||||||
|
{
|
||||||
|
proto_item *s1ap_item = NULL;
|
||||||
|
proto_tree *s1ap_tree = NULL;
|
||||||
|
|
||||||
|
/* make entry in the Protocol column on summary display */
|
||||||
|
if (check_col(pinfo->cinfo, COL_PROTOCOL))
|
||||||
|
col_set_str(pinfo->cinfo, COL_PROTOCOL, "S1AP");
|
||||||
|
|
||||||
|
/* create the s1ap protocol tree */
|
||||||
|
s1ap_item = proto_tree_add_item(tree, proto_s1ap, tvb, 0, -1, FALSE);
|
||||||
|
s1ap_tree = proto_item_add_subtree(s1ap_item, ett_s1ap);
|
||||||
|
|
||||||
|
dissect_S1AP_PDU_PDU(tvb, pinfo, s1ap_tree);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*--- proto_register_s1ap -------------------------------------------*/
|
||||||
|
void proto_register_s1ap(void) {
|
||||||
|
|
||||||
|
/* List of fields */
|
||||||
|
|
||||||
|
static hf_register_info hf[] = {
|
||||||
|
|
||||||
|
#include "packet-s1ap-hfarr.c"
|
||||||
|
};
|
||||||
|
|
||||||
|
/* List of subtrees */
|
||||||
|
static gint *ett[] = {
|
||||||
|
&ett_s1ap,
|
||||||
|
#include "packet-s1ap-ettarr.c"
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* Register protocol */
|
||||||
|
proto_s1ap = proto_register_protocol(PNAME, PSNAME, PFNAME);
|
||||||
|
/* Register fields and subtrees */
|
||||||
|
proto_register_field_array(proto_s1ap, hf, array_length(hf));
|
||||||
|
proto_register_subtree_array(ett, array_length(ett));
|
||||||
|
|
||||||
|
/* Register dissector */
|
||||||
|
register_dissector("s1ap", dissect_s1ap, proto_s1ap);
|
||||||
|
s1ap_handle = find_dissector("s1ap");
|
||||||
|
|
||||||
|
/* Register dissector tables */
|
||||||
|
s1ap_ies_dissector_table = register_dissector_table("s1ap.ies", "S1AP-PROTOCOL-IES", FT_UINT32, BASE_DEC);
|
||||||
|
s1ap_ies_p1_dissector_table = register_dissector_table("s1ap.ies.pair.first", "S1AP-PROTOCOL-IES-PAIR FirstValue", FT_UINT32, BASE_DEC);
|
||||||
|
s1ap_ies_p2_dissector_table = register_dissector_table("s1ap.ies.pair.second", "S1AP-PROTOCOL-IES-PAIR SecondValue", FT_UINT32, BASE_DEC);
|
||||||
|
s1ap_extension_dissector_table = register_dissector_table("s1ap.extension", "S1AP-PROTOCOL-EXTENSION", FT_UINT32, BASE_DEC);
|
||||||
|
s1ap_proc_imsg_dissector_table = register_dissector_table("s1ap.proc.imsg", "S1AP-ELEMENTARY-PROCEDURE InitiatingMessage", FT_UINT32, BASE_DEC);
|
||||||
|
s1ap_proc_sout_dissector_table = register_dissector_table("s1ap.proc.sout", "S1AP-ELEMENTARY-PROCEDURE SuccessfulOutcome", FT_UINT32, BASE_DEC);
|
||||||
|
s1ap_proc_uout_dissector_table = register_dissector_table("s1ap.proc.uout", "S1AP-ELEMENTARY-PROCEDURE UnsuccessfulOutcome", FT_UINT32, BASE_DEC);
|
||||||
|
s1ap_proc_out_dissector_table = register_dissector_table("s1ap.proc.out", "S1AP-ELEMENTARY-PROCEDURE Outcome", FT_UINT32, BASE_DEC);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*--- proto_reg_handoff_s1ap ---------------------------------------*/
|
||||||
|
void
|
||||||
|
proto_reg_handoff_s1ap(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
dissector_add("sctp.port", 0, s1ap_handle);
|
||||||
|
|
||||||
|
#include "packet-s1ap-dis-tab.c"
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,374 @@
|
||||||
|
# s1ap.cnf
|
||||||
|
# s1ap conformation file
|
||||||
|
|
||||||
|
# $Id$
|
||||||
|
|
||||||
|
#.OPT
|
||||||
|
PER
|
||||||
|
ALIGNED
|
||||||
|
#.END
|
||||||
|
|
||||||
|
#.EXPORTS
|
||||||
|
|
||||||
|
#.PDU_NEW
|
||||||
|
S1AP-PDU
|
||||||
|
|
||||||
|
#.MAKE_ENUM
|
||||||
|
ProcedureCode
|
||||||
|
ProtocolIE-ID
|
||||||
|
|
||||||
|
#.NO_EMIT
|
||||||
|
|
||||||
|
#.TYPE_RENAME
|
||||||
|
|
||||||
|
InitiatingMessage/value InitiatingMessage_value
|
||||||
|
SuccessfulOutcome/value SuccessfulOutcome_value
|
||||||
|
UnsuccessfulOutcome/value UnsuccessfulOutcome_value
|
||||||
|
|
||||||
|
#.FIELD_RENAME
|
||||||
|
|
||||||
|
InitiatingMessage/value initiatingMessagevalue
|
||||||
|
UnsuccessfulOutcome/value unsuccessfulOutcome_value
|
||||||
|
SuccessfulOutcome/value successfulOutcome_value
|
||||||
|
|
||||||
|
|
||||||
|
PrivateIE-Field/id private_id
|
||||||
|
ProtocolExtensionField/id ext_id
|
||||||
|
|
||||||
|
PrivateIE-Field/value private_value
|
||||||
|
ProtocolIE-Field/value ie_field_value
|
||||||
|
|
||||||
|
#.FN_PARS ProtocolIE-ID VAL_PTR=&ProtocolIE_ID
|
||||||
|
#.FN_FTR ProtocolIE-ID
|
||||||
|
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)"));
|
||||||
|
}
|
||||||
|
#.END
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
#.FN_PARS ProtocolIE-Field/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldValue
|
||||||
|
#.FN_PARS ProtocolIE-FieldPair/firstValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairFirstValue
|
||||||
|
#.FN_PARS ProtocolIE-FieldPair/secondValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolIEFieldPairSecondValue
|
||||||
|
|
||||||
|
#.FN_PARS ProtocolExtensionID VAL_PTR=&ProtocolExtensionID
|
||||||
|
#.FN_PARS ProtocolExtensionField/extensionValue FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_ProtocolExtensionFieldExtensionValue
|
||||||
|
|
||||||
|
#.FN_PARS ProcedureCode VAL_PTR = &ProcedureCode
|
||||||
|
#.FN_FTR ProcedureCode
|
||||||
|
if (check_col(actx->pinfo->cinfo, COL_INFO))
|
||||||
|
col_add_fstr(actx->pinfo->cinfo, COL_INFO, "%s ",
|
||||||
|
val_to_str(ProcedureCode, s1ap_ProcedureCode_vals,
|
||||||
|
"unknown message"));
|
||||||
|
#.END
|
||||||
|
|
||||||
|
#.FN_PARS InitiatingMessage/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_InitiatingMessageValue
|
||||||
|
|
||||||
|
#.FN_PARS SuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_SuccessfulOutcomeValue
|
||||||
|
|
||||||
|
#.FN_PARS UnsuccessfulOutcome/value FN_VARIANT=_pdu_new TYPE_REF_FN=dissect_UnsuccessfulOutcomeValue
|
||||||
|
|
||||||
|
#--- Parameterization is not supported in asn2wrs ---
|
||||||
|
|
||||||
|
#ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES : IEsSetParam} ::=
|
||||||
|
# SEQUENCE (SIZE (lowerBound..upperBound)) OF
|
||||||
|
# ProtocolIE-Container {{IEsSetParam}}
|
||||||
|
|
||||||
|
#.FN_PARS ProtocolIE-ContainerList
|
||||||
|
MIN_VAL = asn1_param_get_integer(%(ACTX)s,"lowerBound")
|
||||||
|
MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
|
||||||
|
#.FN_HDR ProtocolIE-ContainerList
|
||||||
|
static const asn1_par_def_t ProtocolIE_ContainerList_pars[] = {
|
||||||
|
{ "lowerBound", ASN1_PAR_INTEGER },
|
||||||
|
{ "upperBound", ASN1_PAR_INTEGER },
|
||||||
|
{ NULL, 0 }
|
||||||
|
};
|
||||||
|
asn1_stack_frame_check(actx, "ProtocolIE-ContainerList", ProtocolIE_ContainerList_pars);
|
||||||
|
#.END
|
||||||
|
|
||||||
|
#ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::=
|
||||||
|
# SEQUENCE (SIZE (lowerBound..upperBound)) OF
|
||||||
|
# ProtocolIE-ContainerPair {{IEsSetParam}}
|
||||||
|
|
||||||
|
#.FN_PARS ProtocolIE-ContainerPairList
|
||||||
|
MIN_VAL = asn1_param_get_integer(%(ACTX)s,"lowerBound")
|
||||||
|
MAX_VAL = asn1_param_get_integer(%(ACTX)s,"upperBound")
|
||||||
|
#.FN_HDR ProtocolIE-ContainerPairList
|
||||||
|
static const asn1_par_def_t ProtocolIE_ContainerPairList_pars[] = {
|
||||||
|
{ "lowerBound", ASN1_PAR_INTEGER },
|
||||||
|
{ "upperBound", ASN1_PAR_INTEGER },
|
||||||
|
{ NULL, 0 }
|
||||||
|
};
|
||||||
|
asn1_stack_frame_check(actx, "ProtocolIE-ContainerPairList", ProtocolIE_ContainerPairList_pars);
|
||||||
|
#.END
|
||||||
|
|
||||||
|
#RAB-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::= ProtocolIE-ContainerList { 1, maxNrOfRABs, {IEsSetParam} }
|
||||||
|
|
||||||
|
#ProtocolError-IE-ContainerList { S1AP-PROTOCOL-IES : IEsSetParam } ::= ProtocolIE-ContainerList { 1, maxNrOfRABs, {IEsSetParam} }
|
||||||
|
#.FN_BODY ProtocolError-IE-ContainerList
|
||||||
|
asn1_stack_frame_push(%(ACTX)s, "ProtocolIE-ContainerList");
|
||||||
|
asn1_param_push_integer(%(ACTX)s, 1);
|
||||||
|
asn1_param_push_integer(%(ACTX)s, maxNrOfRABs);
|
||||||
|
%(DEFAULT_BODY)s
|
||||||
|
asn1_stack_frame_pop(%(ACTX)s, "ProtocolIE-ContainerList");
|
||||||
|
#.END
|
||||||
|
|
||||||
|
#.END
|
||||||
|
|
||||||
|
#.FN_BODY NAS-PDU VAL_PTR = &nas_pdu_tvb
|
||||||
|
tvbuff_t *nas_pdu_tvb=NULL;
|
||||||
|
|
||||||
|
%(DEFAULT_BODY)s
|
||||||
|
|
||||||
|
if (nas_pdu_tvb)
|
||||||
|
dissector_try_port(nas_pdu_dissector_table, 0x1, nas_pdu_tvb, %(ACTX)s->pinfo, proto_tree_get_root(tree));
|
||||||
|
#.END
|
||||||
|
|
||||||
|
# following construction is not supported by asn2wrs
|
||||||
|
# PLMNidentity ::= TBCD-STRING (SIZE (3))
|
||||||
|
# TBCD-STRING ::= OCTET STRING
|
||||||
|
|
||||||
|
#.FN_BODY PLMNidentity VAL_PTR =
|
||||||
|
tvbuff_t *parameter_tvb=NULL;
|
||||||
|
|
||||||
|
offset = dissect_per_octet_string(tvb, offset, actx, tree, hf_index,
|
||||||
|
3, 3, FALSE, ¶meter_tvb);
|
||||||
|
|
||||||
|
if (!parameter_tvb)
|
||||||
|
return offset;
|
||||||
|
dissect_e212_mcc_mnc(parameter_tvb, tree, 0);
|
||||||
|
#.END
|
||||||
|
|
||||||
|
#.TYPE_ATTR
|
||||||
|
ProtocolExtensionID TYPE = FT_UINT8 DISPLAY = BASE_DEC STRINGS = VALS(s1ap_ProtocolIE_ID_vals)
|
||||||
|
|
||||||
|
#.ASSIGN_VALUE_TO_TYPE # S1AP does not have constants assigned to types, they are pure INTEGER
|
||||||
|
# ProcedureCode
|
||||||
|
|
||||||
|
id-HandoverPreparation ProcedureCode
|
||||||
|
id-HandoverResourceAllocation ProcedureCode
|
||||||
|
id-HandoverNotification ProcedureCode
|
||||||
|
id-PathSwitchRequest ProcedureCode
|
||||||
|
id-HandoverCancel ProcedureCode
|
||||||
|
id-SAEBearerSetup ProcedureCode
|
||||||
|
id-SAEBearerModify ProcedureCode
|
||||||
|
id-SAEBearerRelease ProcedureCode
|
||||||
|
id-SAEBearerReleaseRequest ProcedureCode
|
||||||
|
id-InitialContextSetup ProcedureCode
|
||||||
|
id-Paging ProcedureCode
|
||||||
|
id-downlinkNASTransport ProcedureCode
|
||||||
|
id-initialUEMessage ProcedureCode
|
||||||
|
id-uplinkNASTransport ProcedureCode
|
||||||
|
id-Reset ProcedureCode
|
||||||
|
id-ErrorIndication ProcedureCode
|
||||||
|
id-NASNonDeliveryIndication ProcedureCode
|
||||||
|
id-S1Setup ProcedureCode
|
||||||
|
id-UEContextReleaseRequest ProcedureCode
|
||||||
|
|
||||||
|
# ProtocolIE-ID
|
||||||
|
id-MME-UE-S1AP-ID ProtocolIE-ID
|
||||||
|
id-HandoverType ProtocolIE-ID
|
||||||
|
id-Cause ProtocolIE-ID
|
||||||
|
id-SourceID ProtocolIE-ID
|
||||||
|
id-TargetID ProtocolIE-ID
|
||||||
|
id-Intra-LTEHOInformationReq ProtocolIE-ID
|
||||||
|
id-LTEtoUTRANHOInformationReq ProtocolIE-ID
|
||||||
|
id-LTEtoGERANHOInformationReq ProtocolIE-ID
|
||||||
|
id-eNB-UE-S1AP-ID ProtocolIE-ID
|
||||||
|
id-Intra-LTEHOInformationRes ProtocolIE-ID
|
||||||
|
id-LTEtoUTRANHOInformationRes ProtocolIE-ID
|
||||||
|
id-LTEtoGERANHOInformationRes ProtocolIE-ID
|
||||||
|
id-SAEBearerSubjecttoDataForwardingList ProtocolIE-ID
|
||||||
|
id-SAEBearertoReleaseListHOCmd ProtocolIE-ID
|
||||||
|
id-SAEBearerDataForwardingItem ProtocolIE-ID
|
||||||
|
id-SAEBearerReleaseItemBearerRelComp ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeSetupListBearerSUReq ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeSetupItemBearerSUReq ProtocolIE-ID
|
||||||
|
id-SAEBearerAdmittedList ProtocolIE-ID
|
||||||
|
id-SAEBearerFailedToSetupListHOReqAck ProtocolIE-ID
|
||||||
|
id-SAEBearerAdmittedItem ProtocolIE-ID
|
||||||
|
id-SAEBearerFailedtoSetupItemHOReqAck ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeSwitchedDLList ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeSwitchedDLItem ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeSetupListCtxtSUReq ProtocolIE-ID
|
||||||
|
id-TraceActivation ProtocolIE-ID
|
||||||
|
id-NAS-PDU ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeSetupItemHOReq ProtocolIE-ID
|
||||||
|
id-SAEBearerSetupListBearerSURes ProtocolIE-ID
|
||||||
|
id-SAEBearerFailedToSetupListBearerSURes ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeModifiedListBearerModReq ProtocolIE-ID
|
||||||
|
id-SAEBearerModifyListBearerModRes ProtocolIE-ID
|
||||||
|
#id-SAEBearerFailedToModifyList ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeReleasedList ProtocolIE-ID
|
||||||
|
id-SAEBearerReleaseListBearerRelComp ProtocolIE-ID
|
||||||
|
id-SAEBearerFailedToReleaseList ProtocolIE-ID
|
||||||
|
id-SAEBearerItem ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeModifiedItemBearerModReq ProtocolIE-ID
|
||||||
|
id-SAEBearerModifyItemBearerModRes ProtocolIE-ID
|
||||||
|
id-SAEBearerReleaseItem ProtocolIE-ID
|
||||||
|
id-SAEBearerSetupItemBearerSURes ProtocolIE-ID
|
||||||
|
id-Security-Information ProtocolIE-ID
|
||||||
|
id-HandoverRestrictionList ProtocolIE-ID
|
||||||
|
id-s-TMSI ProtocolIE-ID
|
||||||
|
id-pagingDRX ProtocolIE-ID
|
||||||
|
id-pagingCause ProtocolIE-ID
|
||||||
|
id-TAIdList ProtocolIE-ID
|
||||||
|
id-TAIdItem ProtocolIE-ID
|
||||||
|
id-SAEBearerFailedToSetupListCtxtSURes ProtocolIE-ID
|
||||||
|
id-SAEBearerReleaseItemHOCmd ProtocolIE-ID
|
||||||
|
id-SAEBearerSetupItemCtxtSURes ProtocolIE-ID
|
||||||
|
id-SAEBearerSetupListCtxtSURes ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeSetupItemCtxtSUReq ProtocolIE-ID
|
||||||
|
id-SAEBearerToBeSetupListHOReq ProtocolIE-ID
|
||||||
|
id-GERANtoLTEHOInformationReq ProtocolIE-ID
|
||||||
|
id-GERANtoLTEHOInformationRes ProtocolIE-ID
|
||||||
|
id-UTRANtoLTEHOInformationReq ProtocolIE-ID
|
||||||
|
id-UTRANtoLTEHOInformationRes ProtocolIE-ID
|
||||||
|
id-CriticalityDiagnostics ProtocolIE-ID
|
||||||
|
id-ENB-ID ProtocolIE-ID
|
||||||
|
id-eNBname ProtocolIE-ID
|
||||||
|
id-MMEname ProtocolIE-ID
|
||||||
|
id-NRIs ProtocolIE-ID
|
||||||
|
id-ServedPLMNs ProtocolIE-ID
|
||||||
|
id-SupportedTAIs ProtocolIE-ID
|
||||||
|
id-TimeToWait ProtocolIE-ID
|
||||||
|
id-aggregateMaximumBitrate ProtocolIE-ID
|
||||||
|
id-TAId ProtocolIE-ID
|
||||||
|
id-ServingPLMN ProtocolIE-ID
|
||||||
|
#.END
|
||||||
|
|
||||||
|
#.REGISTER_NEW
|
||||||
|
|
||||||
|
#S1AP-PROTOCOL-IES
|
||||||
|
MME-UE-S1AP-ID N s1ap.ies id-MME-UE-S1AP-ID
|
||||||
|
HandoverType N s1ap.ies id-HandoverType
|
||||||
|
Cause N s1ap.ies id-Cause
|
||||||
|
SourceID N s1ap.ies id-SourceID
|
||||||
|
TargetID N s1ap.ies id-TargetID
|
||||||
|
Intra-LTEHOInformationReq N s1ap.ies id-Intra-LTEHOInformationReq
|
||||||
|
LTEtoUTRANHOInformationReq N s1ap.ies id-LTEtoUTRANHOInformationReq
|
||||||
|
LTEtoGERANHOInformationReq N s1ap.ies id-LTEtoGERANHOInformationReq
|
||||||
|
ENB-UE-S1AP-ID N s1ap.ies id-eNB-UE-S1AP-ID
|
||||||
|
Intra-LTEHOInformationRes N s1ap.ies id-Intra-LTEHOInformationRes
|
||||||
|
LTEtoUTRANHOInformationRes N s1ap.ies id-LTEtoUTRANHOInformationRes
|
||||||
|
LTEtoGERANHOInformationRes N s1ap.ies id-LTEtoGERANHOInformationRes
|
||||||
|
SAEBearerSubjecttoDataForwardingList N s1ap.ies id-SAEBearerSubjecttoDataForwardingList
|
||||||
|
SAEBearertoReleaseListHOCmd N s1ap.ies id-SAEBearertoReleaseListHOCmd
|
||||||
|
SAEBearerDataForwardingItem N s1ap.ies id-SAEBearerDataForwardingItem
|
||||||
|
SAEBearerReleaseItemBearerRelComp N s1ap.ies id-SAEBearerReleaseItemBearerRelComp
|
||||||
|
SAEBearerToBeSetupListBearerSUReq N s1ap.ies id-SAEBearerToBeSetupListBearerSUReq
|
||||||
|
SAEBearerToBeSetupItemBearerSUReq N s1ap.ies id-SAEBearerToBeSetupItemBearerSUReq
|
||||||
|
SAEBearerAdmittedList N s1ap.ies id-SAEBearerAdmittedList
|
||||||
|
SAEBearerFailedtoSetupListHOReqAck N s1ap.ies id-SAEBearerFailedToSetupListHOReqAck
|
||||||
|
SAEBearerAdmittedItem N s1ap.ies id-SAEBearerAdmittedItem
|
||||||
|
SAEBearerFailedToSetupItemHOReqAck N s1ap.ies id-SAEBearerFailedtoSetupItemHOReqAck
|
||||||
|
SAEBearerToBeSwitchedDLList N s1ap.ies id-SAEBearerToBeSwitchedDLList
|
||||||
|
SAEBearerToBeSwitchedDLItem N s1ap.ies id-SAEBearerToBeSwitchedDLItem
|
||||||
|
SAEBearerToBeSetupListCtxtSUReq N s1ap.ies id-SAEBearerToBeSetupListCtxtSUReq
|
||||||
|
TraceActivation N s1ap.ies id-TraceActivation
|
||||||
|
NAS-PDU N s1ap.ies id-NAS-PDU
|
||||||
|
SAEBearerToBeSetupItemHOReq N s1ap.ies id-SAEBearerToBeSetupItemHOReq
|
||||||
|
SAEBearerSetupListBearerSURes N s1ap.ies id-SAEBearerSetupListBearerSURes
|
||||||
|
SAEBearerList N s1ap.ies id-SAEBearerFailedToSetupListBearerSURes
|
||||||
|
SAEBearerToBeModifiedListBearerModReq N s1ap.ies id-SAEBearerToBeModifiedListBearerModReq
|
||||||
|
SAEBearerModifyListBearerModRes N s1ap.ies id-SAEBearerModifyListBearerModRes
|
||||||
|
SAEBearerList N s1ap.ies id-SAEBearerFailedToModifyList
|
||||||
|
SAEBearerList N s1ap.ies id-SAEBearerToBeReleasedList
|
||||||
|
SAEBearerReleaseListBearerRelComp N s1ap.ies id-SAEBearerReleaseListBearerRelComp
|
||||||
|
SAEBearerList N s1ap.ies id-SAEBearerFailedToReleaseList
|
||||||
|
SAEBearerItem N s1ap.ies id-SAEBearerItem
|
||||||
|
SAEBearerToBeModifiedItemBearerModReq N s1ap.ies id-SAEBearerToBeModifiedItemBearerModReq
|
||||||
|
SAEBearerModifyItemBearerModRes N s1ap.ies id-SAEBearerModifyItemBearerModRes
|
||||||
|
#SAEBearerReleaseItem N s1ap.ies id-SAEBearerReleaseItem
|
||||||
|
SAEBearerSetupItemBearerSURes N s1ap.ies id-SAEBearerSetupItemBearerSURes
|
||||||
|
SecurityInformation N s1ap.ies id-Security-Information
|
||||||
|
HandoverRestrictionList N s1ap.ies id-HandoverRestrictionList
|
||||||
|
S-TMSI N s1ap.ies id-s-TMSI
|
||||||
|
PagingDRX N s1ap.ies id-pagingDRX
|
||||||
|
PagingCause N s1ap.ies id-pagingCause
|
||||||
|
TAIdList N s1ap.ies id-TAIdList
|
||||||
|
TAIdItem N s1ap.ies id-TAIdItem
|
||||||
|
SAEBearerList N s1ap.ies id-SAEBearerFailedToSetupListCtxtSURes
|
||||||
|
SAEBearerReleaseItemHOCmd N s1ap.ies id-SAEBearerReleaseItemHOCmd
|
||||||
|
SAEBearerSetupItemCtxtSURes N s1ap.ies id-SAEBearerSetupItemCtxtSURes
|
||||||
|
SAEBearerSetupListCtxtSURes N s1ap.ies id-SAEBearerSetupListCtxtSURes
|
||||||
|
SAEBearerToBeSetupItemCtxtSUReq N s1ap.ies id-SAEBearerToBeSetupItemCtxtSUReq
|
||||||
|
SAEBearerToBeSetupListHOReq N s1ap.ies id-SAEBearerToBeSetupListHOReq
|
||||||
|
GERANtoLTEHOInformationReq N s1ap.ies id-GERANtoLTEHOInformationReq
|
||||||
|
GERANtoLTEHOInformationRes N s1ap.ies id-GERANtoLTEHOInformationRes
|
||||||
|
UTRANtoLTEHOInformationReq N s1ap.ies id-UTRANtoLTEHOInformationReq
|
||||||
|
UTRANtoLTEHOInformationRes N s1ap.ies id-UTRANtoLTEHOInformationRes
|
||||||
|
CriticalityDiagnostics N s1ap.ies id-CriticalityDiagnostics
|
||||||
|
ENB-ID N s1ap.ies id-ENB-ID
|
||||||
|
ENBname N s1ap.ies id-eNBname
|
||||||
|
MMEname N s1ap.ies id-MMEname
|
||||||
|
NRIs N s1ap.ies id-NRIs
|
||||||
|
ServedPLMNs N s1ap.ies id-ServedPLMNs
|
||||||
|
SupportedTAIs N s1ap.ies id-SupportedTAIs
|
||||||
|
TimeToWait N s1ap.ies id-TimeToWait
|
||||||
|
AggregateMaximumBitrate N s1ap.ies id-aggregateMaximumBitrate
|
||||||
|
TAId N s1ap.ies id-TAId
|
||||||
|
PLMNidentity N s1ap.ies id-ServingPLMN
|
||||||
|
|
||||||
|
#S1AP-PROTOCOL-IES-PAIR
|
||||||
|
#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
|
||||||
|
#Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf N s1ap.extension id-Alt-RAB-Parameter-ExtendedGuaranteedBitrateInf
|
||||||
|
|
||||||
|
#NBAP-ELEMENTARY-PROCEDURE
|
||||||
|
HandoverRequired N s1ap.proc.imsg id-HandoverPreparation
|
||||||
|
HandoverCommand N s1ap.proc.sout id-HandoverPreparation
|
||||||
|
HandoverPreparationFailure N s1ap.proc.uout id-HandoverPreparation
|
||||||
|
|
||||||
|
HandoverRequest N s1ap.proc.imsg id-HandoverResourceAllocation
|
||||||
|
HandoverRequestAcknowledge N s1ap.proc.sout id-HandoverResourceAllocation
|
||||||
|
HandoverFailure N s1ap.proc.uout id-HandoverResourceAllocation
|
||||||
|
|
||||||
|
HandoverNotify N s1ap.proc.imsg id-HandoverNotification
|
||||||
|
|
||||||
|
PathSwitchRequest N s1ap.proc.imsg id-PathSwitchRequest
|
||||||
|
PathSwitchRequestAcknowledge N s1ap.proc.sout id-PathSwitchRequest
|
||||||
|
PathSwitchRequestFailure N s1ap.proc.uout id-PathSwitchRequest
|
||||||
|
|
||||||
|
SAEBearerSetupRequest N s1ap.proc.imsg id-SAEBearerSetup
|
||||||
|
SAEBearerSetupResponse N s1ap.proc.sout id-SAEBearerSetup
|
||||||
|
|
||||||
|
SAEBearerModifyRequest N s1ap.proc.imsg id-SAEBearerModify
|
||||||
|
SAEBearerModifyResponse N s1ap.proc.sout id-SAEBearerModify
|
||||||
|
|
||||||
|
SAEBearerReleaseCommand N s1ap.proc.imsg id-SAEBearerRelease
|
||||||
|
SAEBearerReleaseComplete N s1ap.proc.sout id-SAEBearerRelease
|
||||||
|
|
||||||
|
SAEBearerReleaseRequest N s1ap.proc.imsg id-SAEBearerReleaseRequest
|
||||||
|
|
||||||
|
InitialContextSetupRequest N s1ap.proc.imsg id-InitialContextSetup
|
||||||
|
InitialContextSetupResponse N s1ap.proc.sout id-InitialContextSetup
|
||||||
|
InitialContextSetupFailure N s1ap.proc.uout id-InitialContextSetup
|
||||||
|
|
||||||
|
UEContextReleaseRequest N s1ap.proc.imsg id-UEContextReleaseRequest
|
||||||
|
|
||||||
|
Paging N s1ap.proc.imsg id-Paging
|
||||||
|
|
||||||
|
DownlinkNASTransport N s1ap.proc.imsg id-downlinkNASTransport
|
||||||
|
|
||||||
|
InitialUEMessage N s1ap.proc.imsg id-initialUEMessage
|
||||||
|
|
||||||
|
UplinkNASTransport N s1ap.proc.imsg id-uplinkNASTransport
|
||||||
|
|
||||||
|
NASNonDeliveryIndication N s1ap.proc.imsg id-NASNonDeliveryIndication
|
||||||
|
|
||||||
|
HandoverCancel N s1ap.proc.imsg id-HandoverCancel
|
||||||
|
HandoverCancelAcknowledge N s1ap.proc.sout id-HandoverCancel
|
||||||
|
|
||||||
|
Reset N s1ap.proc.imsg id-Reset
|
||||||
|
ResetAcknowledge N s1ap.proc.sout id-Reset
|
||||||
|
|
||||||
|
ErrorIndication N s1ap.proc.imsg id-ErrorIndication
|
||||||
|
|
||||||
|
S1SetupRequest N s1ap.proc.imsg id-S1Setup
|
||||||
|
S1SetupResponse N s1ap.proc.sout id-S1Setup
|
||||||
|
S1SetupFailure N s1ap.proc.uout id-S1Setup
|
||||||
|
#.END
|
Loading…
Reference in New Issue