RUA ASN.1 Rewrite to avoid information object classes
If we avoid using Information Object Classes in the IE definitions (which are only used for Extension Containers), then we can compile the ASN.1 source using Lev Walkin's asn1c.daniel/wip
parent
4f119e58e9
commit
ba404f9e48
|
@ -16,16 +16,17 @@ IMPORTS
|
|||
maxNrOfErrors
|
||||
FROM RUA-Constants
|
||||
|
||||
maxProtocolExtensions,
|
||||
Criticality,
|
||||
ProcedureCode,
|
||||
ProtocolIE-ID,
|
||||
TriggeringMessage
|
||||
FROM RUA-CommonDataTypes
|
||||
|
||||
ProtocolExtensionContainer{},
|
||||
RUA-PROTOCOL-EXTENSION
|
||||
FROM RUA-Containers;
|
||||
IE
|
||||
FROM RUA-PDU;
|
||||
|
||||
IE-Extensions ::= SEQUENCE (SIZE (1..maxProtocolExtensions)) OF IE
|
||||
|
||||
CN-DomainIndicator ::= ENUMERATED {
|
||||
cs-domain,
|
||||
|
@ -160,7 +161,7 @@ CriticalityDiagnostics ::= SEQUENCE {
|
|||
triggeringMessage TriggeringMessage OPTIONAL,
|
||||
procedureCriticality Criticality OPTIONAL,
|
||||
iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL,
|
||||
iE-Extensions ProtocolExtensionContainer { {CriticalityDiagnostics-ExtIEs} } OPTIONAL,
|
||||
iE-Extensions IE-Extensions OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
|
@ -169,19 +170,10 @@ CriticalityDiagnostics-IE-List ::= SEQUENCE (SIZE (1..maxNrOfErrors)) OF
|
|||
iECriticality Criticality,
|
||||
iE-ID ProtocolIE-ID,
|
||||
typeOfError TypeOfError,
|
||||
iE-Extensions ProtocolExtensionContainer { {CriticalityDiagnostics-IE-List-ExtIEs} } OPTIONAL,
|
||||
iE-Extensions IE-Extensions OPTIONAL,
|
||||
...
|
||||
}
|
||||
|
||||
CriticalityDiagnostics-IE-List-ExtIEs RUA-PROTOCOL-EXTENSION ::= {
|
||||
...
|
||||
}
|
||||
|
||||
CriticalityDiagnostics-ExtIEs RUA-PROTOCOL-EXTENSION ::= {
|
||||
...
|
||||
}
|
||||
|
||||
|
||||
TypeOfError ::= ENUMERATED {
|
||||
not-understood,
|
||||
missing,
|
||||
|
|
|
@ -0,0 +1,51 @@
|
|||
RUA-PDU {
|
||||
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
|
||||
umts-Access (20) modules (3) rua(5) version1 (1) rUA-PDU (255) }
|
||||
|
||||
DEFINITIONS AUTOMATIC TAGS ::=
|
||||
|
||||
BEGIN
|
||||
|
||||
IMPORTS
|
||||
Criticality,
|
||||
ProcedureCode,
|
||||
ProtocolIE-ID
|
||||
|
||||
FROM RUA-CommonDataTypes
|
||||
|
||||
maxProtocolIEs
|
||||
|
||||
FROM RUAP-Constants;
|
||||
|
||||
RUA-PDU ::= CHOICE {
|
||||
initiatingMessage InitiatingMessage,
|
||||
successfulOutcome SuccessfulOutcome,
|
||||
unsuccessfulOutcome UnsuccessfulOutcome,
|
||||
...
|
||||
}
|
||||
|
||||
InitiatingMessage ::= SEQUENCE {
|
||||
procedureCode ProcedureCode,
|
||||
criticality Criticality,
|
||||
value ANY
|
||||
}
|
||||
|
||||
SuccessfulOutcome ::= SEQUENCE {
|
||||
procedureCode ProcedureCode,
|
||||
criticality Criticality,
|
||||
value ANY
|
||||
}
|
||||
|
||||
UnsuccessfulOutcome ::= SEQUENCE {
|
||||
procedureCode ProcedureCode,
|
||||
criticality Criticality,
|
||||
value ANY
|
||||
}
|
||||
|
||||
IE ::= SEQUENCE {
|
||||
id ProtocolIE-ID,
|
||||
criticality Criticality,
|
||||
value ANY
|
||||
}
|
||||
|
||||
END
|
|
@ -0,0 +1,6 @@
|
|||
MOD=RUA
|
||||
|
||||
ASNS=../$(MOD)-CommonDataTypes.asn ../$(MOD)-Constants.asn ../$(MOD)-IEs.asn ../$(MOD)-PDU.asn
|
||||
|
||||
all: $(ASNS)
|
||||
asn1c -gen-PER -fnative-types -fskeletons-copy $^
|
Loading…
Reference in New Issue