RANAP 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.
This commit is contained in:
Harald Welte 2015-08-30 17:46:03 +02:00
parent 355d9513c0
commit 4f119e58e9
3 changed files with 159 additions and 566 deletions

File diff suppressed because it is too large Load Diff

58
asn1/ranap/RANAP-PDU.asn Normal file
View File

@ -0,0 +1,58 @@
RANAP-PDU {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
umts-Access (20) modules (3) ranap(0) version1 (1) ranap-PDU (255) }
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
IMPORTS
Criticality,
ProcedureCode,
ProtocolIE-ID
FROM RANAP-CommonDataTypes
maxProtocolIEs
FROM RANAP-Constants;
RANAP-PDU ::= CHOICE {
initiatingMessage InitiatingMessage,
successfulOutcome SuccessfulOutcome,
unsuccessfulOutcome UnsuccessfulOutcome,
outcome Outcome,
...
}
InitiatingMessage ::= SEQUENCE {
procedureCode ProcedureCode,
criticality Criticality,
value ANY
}
SuccessfulOutcome ::= SEQUENCE {
procedureCode ProcedureCode,
criticality Criticality,
value ANY
}
UnsuccessfulOutcome ::= SEQUENCE {
procedureCode ProcedureCode,
criticality Criticality,
value ANY
}
Outcome ::= SEQUENCE {
procedureCode ProcedureCode,
criticality Criticality,
value ANY
}
IE ::= SEQUENCE {
id ProtocolIE-ID,
criticality Criticality,
value ANY
}
END

View File

@ -0,0 +1,6 @@
MOD=RANAP
ASNS=../$(MOD)-CommonDataTypes.asn ../$(MOD)-Constants.asn ../$(MOD)-IEs.asn ../$(MOD)-PDU.asn
all: $(ASNS)
asn1c -gen-PER -fnative-types -fskeletons-copy $^