RUA: Add missing RUA-PDU-Contents.asn and RUA-PDU-Descriptions.asn

daniel/wip
Harald Welte 2015-08-29 12:32:02 +02:00
parent 8f2fb0cca5
commit 511365b056
2 changed files with 361 additions and 0 deletions

View File

@ -0,0 +1,195 @@
-- **************************************************************
--
-- PDU definitions for RUA.
--
-- **************************************************************
RUA-PDU-Contents {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
umts-Access (20) modules (3) rua(5) version1 (1) rUA-PDU-Contents (1) }
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************
IMPORTS
Cause,
CriticalityDiagnostics,
Context-ID,
CN-DomainIndicator,
CSGMembershipStatus,
IntraDomainNasNodeSelector,
RANAP-Message,
Establishment-Cause
FROM RUA-IEs
ProtocolExtensionContainer{},
ProtocolIE-ContainerList{},
ProtocolIE-Container{},
ProtocolIE-Single-Container{},
PrivateIE-Container{},
RUA-PRIVATE-IES,
RUA-PROTOCOL-EXTENSION,
RUA-PROTOCOL-IES
FROM RUA-Containers
id-Cause,
id-CriticalityDiagnostics,
id-Context-ID,
id-CN-DomainIndicator,
id-CSGMembershipStatus,
id-RANAP-Message,
id-IntraDomainNasNodeSelector,
id-Establishment-Cause
FROM RUA-Constants;
-- **************************************************************
--
-- Connect
--
-- **************************************************************
Connect ::= SEQUENCE {
protocolIEs ProtocolIE-Container { {ConnectIEs} },
protocolExtensions ProtocolExtensionContainer { {ConnectExtensions} } OPTIONAL,
...
}
ConnectIEs RUA-PROTOCOL-IES ::= {
{ ID id-CN-DomainIndicator CRITICALITY reject TYPE CN-DomainIndicator PRESENCE mandatory } |
{ ID id-Context-ID CRITICALITY reject TYPE Context-ID PRESENCE mandatory } |
{ ID id-IntraDomainNasNodeSelector CRITICALITY ignore TYPE IntraDomainNasNodeSelector PRESENCE optional } |
{ ID id-Establishment-Cause CRITICALITY reject TYPE Establishment-Cause PRESENCE mandatory } |
{ ID id-RANAP-Message CRITICALITY reject TYPE RANAP-Message PRESENCE mandatory },
...
}
ConnectExtensions RUA-PROTOCOL-EXTENSION ::= {
{ ID id-CSGMembershipStatus CRITICALITY ignore EXTENSION CSGMembershipStatus PRESENCE optional },
...
}
-- **************************************************************
--
-- Direct Transfer
--
-- **************************************************************
DirectTransfer ::= SEQUENCE {
protocolIEs ProtocolIE-Container { {DirectTransferIEs} },
protocolExtensions ProtocolExtensionContainer { {DirectTransferExtensions} } OPTIONAL,
...
}
DirectTransferIEs RUA-PROTOCOL-IES ::= {
{ ID id-CN-DomainIndicator CRITICALITY reject TYPE CN-DomainIndicator PRESENCE mandatory } |
{ ID id-Context-ID CRITICALITY reject TYPE Context-ID PRESENCE mandatory } |
{ ID id-RANAP-Message CRITICALITY reject TYPE RANAP-Message PRESENCE mandatory },
...
}
DirectTransferExtensions RUA-PROTOCOL-EXTENSION ::= {
...
}
-- **************************************************************
--
-- Disconnect
--
-- **************************************************************
Disconnect ::= SEQUENCE {
protocolIEs ProtocolIE-Container { {DisconnectIEs} },
protocolExtensions ProtocolExtensionContainer { {DisconnectExtensions} } OPTIONAL,
...
}
DisconnectIEs RUA-PROTOCOL-IES ::= {
{ ID id-CN-DomainIndicator CRITICALITY reject TYPE CN-DomainIndicator PRESENCE mandatory } |
{ ID id-Context-ID CRITICALITY reject TYPE Context-ID PRESENCE mandatory } |
{ ID id-Cause CRITICALITY reject TYPE Cause PRESENCE mandatory } |
{ ID id-RANAP-Message CRITICALITY reject TYPE RANAP-Message PRESENCE conditional },
-- RANAP message shall be included if Cause value is "normal"
...
}
DisconnectExtensions RUA-PROTOCOL-EXTENSION ::= {
...
}
-- **************************************************************
--
-- Connectionless Transfer
--
-- **************************************************************
ConnectionlessTransfer ::= SEQUENCE {
protocolIEs ProtocolIE-Container { {ConnectionlessTransferIEs} },
protocolExtensions ProtocolExtensionContainer { {ConnectionlessTransferExtensions} } OPTIONAL,
...
}
ConnectionlessTransferIEs RUA-PROTOCOL-IES ::= {
{ ID id-RANAP-Message CRITICALITY reject TYPE RANAP-Message PRESENCE mandatory },
...
}
ConnectionlessTransferExtensions RUA-PROTOCOL-EXTENSION ::= {
...
}
-- **************************************************************
--
-- ERROR INDICATION
--
-- **************************************************************
ErrorIndication ::= SEQUENCE {
protocolIEs ProtocolIE-Container { {ErrorIndicationIEs} },
protocolExtensions ProtocolExtensionContainer { {ErrorIndicationExtensions} } OPTIONAL,
...
}
ErrorIndicationIEs RUA-PROTOCOL-IES ::= {
{ ID id-Cause CRITICALITY ignore TYPE Cause PRESENCE mandatory } |
{ ID id-CriticalityDiagnostics CRITICALITY ignore TYPE CriticalityDiagnostics PRESENCE optional },
...
}
ErrorIndicationExtensions RUA-PROTOCOL-EXTENSION ::= {
...
}
-- **************************************************************
--
-- PRIVATE MESSAGE
--
-- **************************************************************
PrivateMessage ::= SEQUENCE {
privateIEs PrivateIE-Container {{PrivateMessage-IEs}},
...
}
PrivateMessage-IEs RUA-PRIVATE-IES ::= {
...
}
END

View File

@ -0,0 +1,166 @@
-- **************************************************************
--
-- Elementary Procedure definitions
--
-- **************************************************************
RUA-PDU-Descriptions {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
umts-Access (20) modules (3) rua(5) version1 (1) rUA-PDU-Descriptions (0)}
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************
IMPORTS
Criticality,
ProcedureCode
FROM RUA-CommonDataTypes
Connect,
DirectTransfer,
Disconnect,
ConnectionlessTransfer,
ErrorIndication,
PrivateMessage
FROM RUA-PDU-Contents
id-Connect,
id-DirectTransfer,
id-Disconnect,
id-ConnectionlessTransfer,
id-ErrorIndication,
id-privateMessage
FROM RUA-Constants;
-- **************************************************************
--
-- Interface Elementary Procedure Class
--
-- **************************************************************
RUA-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 definitions
--
-- **************************************************************
RUA-PDU ::= CHOICE {
initiatingMessage InitiatingMessage,
successfulOutcome SuccessfulOutcome,
unsuccessfulOutcome UnsuccessfulOutcome,
...
}
InitiatingMessage ::= SEQUENCE {
procedureCode RUA-ELEMENTARY-PROCEDURE.&procedureCode ({RUA-ELEMENTARY-PROCEDURES}),
criticality RUA-ELEMENTARY-PROCEDURE.&criticality ({RUA-ELEMENTARY-PROCEDURES}{@procedureCode}),
value RUA-ELEMENTARY-PROCEDURE.&InitiatingMessage ({RUA-ELEMENTARY-PROCEDURES}{@procedureCode})
}
SuccessfulOutcome ::= SEQUENCE {
procedureCode RUA-ELEMENTARY-PROCEDURE.&procedureCode ({RUA-ELEMENTARY-PROCEDURES}),
criticality RUA-ELEMENTARY-PROCEDURE.&criticality ({RUA-ELEMENTARY-PROCEDURES}{@procedureCode}),
value RUA-ELEMENTARY-PROCEDURE.&SuccessfulOutcome ({RUA-ELEMENTARY-PROCEDURES}{@procedureCode})
}
UnsuccessfulOutcome ::= SEQUENCE {
procedureCode RUA-ELEMENTARY-PROCEDURE.&procedureCode ({RUA-ELEMENTARY-PROCEDURES}),
criticality RUA-ELEMENTARY-PROCEDURE.&criticality ({RUA-ELEMENTARY-PROCEDURES}{@procedureCode}),
value RUA-ELEMENTARY-PROCEDURE.&UnsuccessfulOutcome ({RUA-ELEMENTARY-PROCEDURES}{@procedureCode})
}
-- **************************************************************
--
-- Interface Elementary Procedure List
--
-- **************************************************************
RUA-ELEMENTARY-PROCEDURES RUA-ELEMENTARY-PROCEDURE ::= {
RUA-ELEMENTARY-PROCEDURES-CLASS-1 |
RUA-ELEMENTARY-PROCEDURES-CLASS-2 ,
...
}
RUA-ELEMENTARY-PROCEDURES-CLASS-1 RUA-ELEMENTARY-PROCEDURE ::= {
...
}
RUA-ELEMENTARY-PROCEDURES-CLASS-2 RUA-ELEMENTARY-PROCEDURE ::= {
connectionRequest |
directTransfer |
disconnectRequest |
connectionlessTransfer |
errorIndication |
privateMessage,
...
}
-- **************************************************************
--
-- Interface Elementary Procedures
--
-- **************************************************************
connectionRequest RUA-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE Connect
PROCEDURE CODE id-Connect
CRITICALITY ignore
}
directTransfer RUA-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE DirectTransfer
PROCEDURE CODE id-DirectTransfer
CRITICALITY ignore
}
disconnectRequest RUA-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE Disconnect
PROCEDURE CODE id-Disconnect
CRITICALITY ignore
}
connectionlessTransfer RUA-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE ConnectionlessTransfer
PROCEDURE CODE id-ConnectionlessTransfer
CRITICALITY ignore
}
errorIndication RUA-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE ErrorIndication
PROCEDURE CODE id-ErrorIndication
CRITICALITY ignore
}
privateMessage RUA-ELEMENTARY-PROCEDURE ::= {
INITIATING MESSAGE PrivateMessage
PROCEDURE CODE id-privateMessage
CRITICALITY ignore
}
END