add RUA asn.1 syntax from 3GPP TS 25.468 V12.1.0 (2014-12)
parent
a97e436ce5
commit
b1c6a2c3ef
|
@ -0,0 +1,46 @@
|
|||
-- **************************************************************
|
||||
--
|
||||
-- Common definitions
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
RUA-CommonDataTypes {
|
||||
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
|
||||
umts-Access (20) modules (3) rua(5) version1 (1) rUA-CommonDataTypes (3) }
|
||||
|
||||
DEFINITIONS AUTOMATIC TAGS ::=
|
||||
|
||||
BEGIN
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Extension constants
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
maxPrivateIEs INTEGER ::= 65535
|
||||
maxProtocolExtensions INTEGER ::= 65535
|
||||
maxProtocolIEs INTEGER ::= 65535
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Common Data Types
|
||||
--
|
||||
-- **************************************************************
|
||||
Criticality ::= ENUMERATED { reject, ignore, notify }
|
||||
|
||||
Presence ::= ENUMERATED { optional, conditional, mandatory }
|
||||
|
||||
|
||||
ProcedureCode ::= INTEGER (0..255)
|
||||
|
||||
PrivateIE-ID ::= CHOICE {
|
||||
local INTEGER (0..65535),
|
||||
global OBJECT IDENTIFIER
|
||||
}
|
||||
|
||||
ProtocolIE-ID ::= INTEGER (0..maxProtocolIEs)
|
||||
|
||||
TriggeringMessage ::= ENUMERATED { initiating-message, successful-outcome, unsuccessful-outcome }
|
||||
|
||||
END
|
|
@ -0,0 +1,55 @@
|
|||
-- **************************************************************
|
||||
--
|
||||
-- Constant definitions
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
RUA-Constants {
|
||||
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
|
||||
umts-Access (20) modules (3) rua(5) version1 (1) rUA-Constants (4) }
|
||||
|
||||
DEFINITIONS AUTOMATIC TAGS ::=
|
||||
|
||||
BEGIN
|
||||
|
||||
IMPORTS
|
||||
ProcedureCode,
|
||||
ProtocolIE-ID
|
||||
FROM RUA-CommonDataTypes;
|
||||
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Elementary Procedures
|
||||
--
|
||||
id-Connect ProcedureCode ::= 1
|
||||
id-DirectTransfer ProcedureCode ::= 2
|
||||
id-Disconnect ProcedureCode ::= 3
|
||||
id-ConnectionlessTransfer ProcedureCode ::= 4
|
||||
id-ErrorIndication ProcedureCode ::= 5
|
||||
id-privateMessage ProcedureCode ::= 6
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Lists
|
||||
--
|
||||
-- **************************************************************
|
||||
maxNrOfErrors INTEGER ::= 256
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- IEs
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
id-Cause ProtocolIE-ID ::= 1
|
||||
id-CriticalityDiagnostics ProtocolIE-ID ::= 2
|
||||
id-Context-ID ProtocolIE-ID ::= 3
|
||||
id-RANAP-Message ProtocolIE-ID ::= 4
|
||||
id-IntraDomainNasNodeSelector ProtocolIE-ID ::= 5
|
||||
id-Establishment-Cause ProtocolIE-ID ::= 6
|
||||
id-CN-DomainIndicator ProtocolIE-ID ::= 7
|
||||
id-CSGMembershipStatus ProtocolIE-ID ::= 9
|
||||
|
||||
|
||||
END
|
|
@ -0,0 +1,153 @@
|
|||
-- **************************************************************
|
||||
--
|
||||
-- Container definitions
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
RUA-Containers {
|
||||
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
|
||||
umts-Access (20) modules (3) rua(5) version1 (1) rUA-Containers (5) }
|
||||
|
||||
DEFINITIONS AUTOMATIC TAGS ::=
|
||||
|
||||
BEGIN
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- IE parameter types from other modules.
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
IMPORTS
|
||||
Criticality,
|
||||
Presence,
|
||||
PrivateIE-ID,
|
||||
ProtocolIE-ID,
|
||||
maxPrivateIEs,
|
||||
maxProtocolExtensions,
|
||||
maxProtocolIEs
|
||||
FROM RUA-CommonDataTypes;
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Class Definition for Private IEs
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
RUA-PRIVATE-IES ::= CLASS {
|
||||
&id PrivateIE-ID,
|
||||
&criticality Criticality,
|
||||
&Value,
|
||||
&presence Presence
|
||||
}
|
||||
WITH SYNTAX {
|
||||
ID &id
|
||||
CRITICALITY &criticality
|
||||
TYPE &Value
|
||||
PRESENCE &presence
|
||||
}
|
||||
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Class Definition for Protocol IEs
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
RUA-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 Extensions
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
RUA-PROTOCOL-EXTENSION ::= CLASS {
|
||||
&id ProtocolIE-ID UNIQUE,
|
||||
&criticality Criticality,
|
||||
&Extension,
|
||||
&presence Presence
|
||||
}
|
||||
WITH SYNTAX {
|
||||
ID &id
|
||||
CRITICALITY &criticality
|
||||
EXTENSION &Extension
|
||||
PRESENCE &presence
|
||||
}
|
||||
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Container for Protocol IEs
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
ProtocolIE-Container {RUA-PROTOCOL-IES : IEsSetParam} ::=
|
||||
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
|
||||
ProtocolIE-Field {{IEsSetParam}}
|
||||
|
||||
ProtocolIE-Single-Container {RUA-PROTOCOL-IES : IEsSetParam} ::=
|
||||
ProtocolIE-Field {{IEsSetParam}}
|
||||
|
||||
ProtocolIE-Field {RUA-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE {
|
||||
id RUA-PROTOCOL-IES.&id ({IEsSetParam}),
|
||||
criticality RUA-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}),
|
||||
value RUA-PROTOCOL-IES.&Value ({IEsSetParam}{@id})
|
||||
}
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Container Lists for Protocol IE Containers
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, RUA-PROTOCOL-IES : IEsSetParam} ::=
|
||||
SEQUENCE (SIZE (lowerBound..upperBound)) OF
|
||||
ProtocolIE-Container {{IEsSetParam}}
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Container for Protocol Extensions
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
ProtocolExtensionContainer {RUA-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
|
||||
SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
|
||||
ProtocolExtensionField {{ExtensionSetParam}}
|
||||
|
||||
ProtocolExtensionField {RUA-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE {
|
||||
id RUA-PROTOCOL-EXTENSION.&id ({ExtensionSetParam}),
|
||||
criticality RUA-PROTOCOL-EXTENSION.&criticality ({ExtensionSetParam}{@id}),
|
||||
extensionValue RUA-PROTOCOL-EXTENSION.&Extension ({ExtensionSetParam}{@id})
|
||||
}
|
||||
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Container for Private IEs
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
PrivateIE-Container {RUA-PRIVATE-IES : IEsSetParam } ::=
|
||||
SEQUENCE (SIZE (1.. maxPrivateIEs)) OF
|
||||
PrivateIE-Field {{IEsSetParam}}
|
||||
|
||||
PrivateIE-Field {RUA-PRIVATE-IES : IEsSetParam} ::= SEQUENCE {
|
||||
id RUA-PRIVATE-IES.&id ({IEsSetParam}),
|
||||
criticality RUA-PRIVATE-IES.&criticality ({IEsSetParam}{@id}),
|
||||
value RUA-PRIVATE-IES.&Value ({IEsSetParam}{@id})
|
||||
}
|
||||
|
||||
|
||||
END
|
|
@ -0,0 +1,191 @@
|
|||
-- **************************************************************
|
||||
--
|
||||
-- Information Element Definitions
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
RUA-IEs {
|
||||
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
|
||||
umts-Access (20) modules (3) rua(5) version1 (1) rUA-IEs (2) }
|
||||
|
||||
DEFINITIONS AUTOMATIC TAGS ::=
|
||||
|
||||
BEGIN
|
||||
|
||||
IMPORTS
|
||||
maxNrOfErrors
|
||||
FROM RUA-Constants
|
||||
|
||||
Criticality,
|
||||
ProcedureCode,
|
||||
ProtocolIE-ID,
|
||||
TriggeringMessage
|
||||
FROM RUA-CommonDataTypes
|
||||
|
||||
ProtocolExtensionContainer{},
|
||||
RUA-PROTOCOL-EXTENSION
|
||||
FROM RUA-Containers;
|
||||
|
||||
|
||||
CN-DomainIndicator ::= ENUMERATED {
|
||||
cs-domain,
|
||||
ps-domain
|
||||
}
|
||||
|
||||
CSGMembershipStatus ::= ENUMERATED {
|
||||
member,
|
||||
non-member,
|
||||
...
|
||||
}
|
||||
|
||||
Establishment-Cause ::= ENUMERATED {
|
||||
emergency-call,
|
||||
normal-call,
|
||||
...
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Context-ID ::= BIT STRING (SIZE(24))
|
||||
|
||||
IntraDomainNasNodeSelector ::= SEQUENCE {
|
||||
version CHOICE {
|
||||
release99 SEQUENCE {
|
||||
cn-Type CHOICE {
|
||||
gsm-Map-IDNNS Gsm-map-IDNNS,
|
||||
ansi-41-IDNNS Ansi-41-IDNNS
|
||||
}
|
||||
},
|
||||
later SEQUENCE {
|
||||
futurecoding BIT STRING (SIZE (15))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Gsm-map-IDNNS ::= SEQUENCE {
|
||||
routingbasis CHOICE {
|
||||
localPTMSI SEQUENCE {
|
||||
routingparameter RoutingParameter
|
||||
},
|
||||
tMSIofsamePLMN SEQUENCE {
|
||||
routingparameter RoutingParameter
|
||||
},
|
||||
tMSIofdifferentPLMN SEQUENCE {
|
||||
routingparameter RoutingParameter
|
||||
},
|
||||
iMSIresponsetopaging SEQUENCE {
|
||||
routingparameter RoutingParameter
|
||||
},
|
||||
iMSIcauseUEinitiatedEvent SEQUENCE {
|
||||
routingparameter RoutingParameter
|
||||
},
|
||||
iMEI SEQUENCE {
|
||||
routingparameter RoutingParameter
|
||||
},
|
||||
spare2 SEQUENCE {
|
||||
routingparameter RoutingParameter
|
||||
},
|
||||
spare1 SEQUENCE {
|
||||
routingparameter RoutingParameter
|
||||
}
|
||||
},
|
||||
-- dummy is not used in this version of the specification and
|
||||
-- it should be ignored by the receiver.
|
||||
dummy BOOLEAN
|
||||
}
|
||||
|
||||
|
||||
Ansi-41-IDNNS ::= BIT STRING (SIZE (14))
|
||||
|
||||
RANAP-Message ::= OCTET STRING
|
||||
|
||||
RoutingParameter ::= BIT STRING (SIZE (10))
|
||||
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- Cause IE
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
Cause ::= CHOICE {
|
||||
radioNetwork CauseRadioNetwork,
|
||||
transport CauseTransport,
|
||||
protocol CauseProtocol,
|
||||
misc CauseMisc,
|
||||
...
|
||||
}
|
||||
CauseRadioNetwork ::= ENUMERATED {
|
||||
normal,
|
||||
connect-failed,
|
||||
network-release,
|
||||
unspecified,
|
||||
...
|
||||
}
|
||||
CauseTransport ::= ENUMERATED {
|
||||
transport-resource-unavailable,
|
||||
unspecified,
|
||||
...
|
||||
}
|
||||
|
||||
CauseProtocol ::= ENUMERATED {
|
||||
transfer-syntax-error,
|
||||
abstract-syntax-error-reject,
|
||||
abstract-syntax-error-ignore-and-notify,
|
||||
message-not-compatible-with-receiver-state,
|
||||
semantic-error,
|
||||
unspecified,
|
||||
abstract-syntax-error-falsely-constructed-message,
|
||||
...
|
||||
}
|
||||
|
||||
CauseMisc ::= ENUMERATED {
|
||||
processing-overload,
|
||||
hardware-failure,
|
||||
o-and-m-intervention,
|
||||
unspecified,
|
||||
...
|
||||
}
|
||||
|
||||
-- **************************************************************
|
||||
--
|
||||
-- CriticalityDiagnostics
|
||||
--
|
||||
-- **************************************************************
|
||||
|
||||
CriticalityDiagnostics ::= SEQUENCE {
|
||||
procedureCode ProcedureCode OPTIONAL,
|
||||
triggeringMessage TriggeringMessage OPTIONAL,
|
||||
procedureCriticality Criticality OPTIONAL,
|
||||
iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL,
|
||||
iE-Extensions ProtocolExtensionContainer { {CriticalityDiagnostics-ExtIEs} } OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE (1..maxNrOfErrors)) OF
|
||||
SEQUENCE {
|
||||
iECriticality Criticality,
|
||||
iE-ID ProtocolIE-ID,
|
||||
typeOfError TypeOfError,
|
||||
iE-Extensions ProtocolExtensionContainer { {CriticalityDiagnostics-IE-List-ExtIEs} } OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
CriticalityDiagnostics-IE-List-ExtIEs RUA-PROTOCOL-EXTENSION ::= {
|
||||
...
|
||||
}
|
||||
|
||||
CriticalityDiagnostics-ExtIEs RUA-PROTOCOL-EXTENSION ::= {
|
||||
...
|
||||
}
|
||||
|
||||
|
||||
TypeOfError ::= ENUMERATED {
|
||||
not-understood,
|
||||
missing,
|
||||
...
|
||||
}
|
||||
|
||||
END
|
Loading…
Reference in New Issue