sabp: fixup SABP ASN.1 to avoid IOC (which are not supported by our toolchain)

Change-Id: I8211bc334b325e8950edcd769917f164a65591ba
diff --git a/asn1/sabp/SABP-IEs.asn b/asn1/sabp/SABP-IEs.asn
index e21e007..0efd14e 100644
--- a/asn1/sabp/SABP-IEs.asn
+++ b/asn1/sabp/SABP-IEs.asn
@@ -12,6 +12,7 @@
  maxNrOfErrors,
  maxnoofSAI,
  maxNrOfLevels,
+ maxProtocolExtensions,
  id-MessageStructure,
  id-TypeOfError
 FROM SABP-Constants
@@ -20,9 +21,11 @@
  TriggeringMessage,
  ProtocolIE-ID
 FROM SABP-CommonDataTypes
- ProtocolExtensionContainer{},
- SABP-PROTOCOL-EXTENSION
-FROM SABP-Containers;
+ IE
+FROM SABP-PDU;
+
+IE-Extensions ::= SEQUENCE (SIZE (1..maxProtocolExtensions)) OF IE
+
 -- A
 Available-Bandwidth ::= INTEGER (0..20480)
 -- bits/sec
@@ -66,7 +69,7 @@
  triggeringMessage TriggeringMessage OPTIONAL,
  procedureCriticality Criticality OPTIONAL,
  iEsCriticalityDiagnostics CriticalityDiagnostics-IE-List OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { {CriticalityDiagnostics-ExtIEs} } OPTIONAL,
+ iE-Extensions IE-Extensions OPTIONAL,
  ...
 }
 CriticalityDiagnostics-ExtIEs SABP-PROTOCOL-EXTENSION ::= {
@@ -77,19 +80,19 @@
  iECriticality Criticality,
  iE-ID ProtocolIE-ID,
  repetitionNumber RepetitionNumber0 OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { {CriticalityDiagnostics-IE-List-ExtIEs} } OPTIONAL,
+ iE-Extensions IE-Extensions OPTIONAL,
  ...
  }
 CriticalityDiagnostics-IE-List-ExtIEs SABP-PROTOCOL-EXTENSION ::= {
- { ID id-MessageStructure CRITICALITY ignore EXTENSION MessageStructure PRESENCE optional }|
- { ID id-TypeOfError CRITICALITY ignore EXTENSION TypeOfError PRESENCE mandatory },
+ -- { ID id-MessageStructure CRITICALITY ignore EXTENSION MessageStructure PRESENCE optional }|
+ -- { ID id-TypeOfError CRITICALITY ignore EXTENSION TypeOfError PRESENCE mandatory },
  ...
 }
 MessageStructure ::= SEQUENCE (SIZE (1..maxNrOfLevels)) OF
  SEQUENCE {
  iE-ID ProtocolIE-ID,
  repetitionNumber RepetitionNumber1 OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { {MessageStructure-ExtIEs} } OPTIONAL,
+ iE-Extensions IE-Extensions OPTIONAL,
  ...
  }
 MessageStructure-ExtIEs SABP-PROTOCOL-EXTENSION ::= {
@@ -103,7 +106,7 @@
 Failure-List-Item ::= SEQUENCE {
  service-area-identifier Service-Area-Identifier,
  cause Cause,
- iE-Extensions ProtocolExtensionContainer { {FailureListItemIE-ExtIEs} } OPTIONAL,
+ iE-Extensions IE-Extensions OPTIONAL,
  ...
 }
 FailureListItemIE-ExtIEs SABP-PROTOCOL-EXTENSION ::= {
@@ -125,7 +128,7 @@
  service-area-identifier Service-Area-Identifier,
  number-of-broadcasts-completed INTEGER (0..65535),
  number-of-broadcasts-completed-info Number-Of-Broadcasts-Completed-Info OPTIONAL,
- iE-Extensions ProtocolExtensionContainer { {NoOfBroadcastsCompletedListItemIE-ExtIEs} } OPTIONAL,
+ iE-Extensions IE-Extensions OPTIONAL,
  ...
 }
 NoOfBroadcastsCompletedListItemIE-ExtIEs SABP-PROTOCOL-EXTENSION ::= {
@@ -153,7 +156,7 @@
 Radio-Resource-Loading-List-Item ::= SEQUENCE {
  service-area-identifier Service-Area-Identifier,
  available-bandwidth Available-Bandwidth,
- iE-Extensions ProtocolExtensionContainer { {RadioResourceLoadingListItemIE-ExtIEs} } OPTIONAL,
+ iE-Extensions IE-Extensions OPTIONAL,
  ...
 }
 RadioResourceLoadingListItemIE-ExtIEs SABP-PROTOCOL-EXTENSION ::= {
diff --git a/asn1/sabp/SABP-PDU.asn b/asn1/sabp/SABP-PDU.asn
new file mode 100644
index 0000000..becb238
--- /dev/null
+++ b/asn1/sabp/SABP-PDU.asn
@@ -0,0 +1,141 @@
+SABP-PDU {
+itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) 
+umts-Access (20) modules (3) sabp(3) version1 (1) sabp-PDU (255) }
+
+DEFINITIONS AUTOMATIC TAGS ::=
+
+BEGIN
+
+IMPORTS
+    maxProtocolIEs
+FROM SABP-Constants
+
+    Criticality,
+    ProcedureCode,
+    ProtocolIE-ID
+FROM SABP-CommonDataTypes;
+
+SABP-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
+}
+
+
+Write-Replace ::= SEQUENCE {
+    write-Replace-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Write-Replace-Complete ::= SEQUENCE {
+    write-Replace-Complete-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Write-Replace-Failure ::= SEQUENCE {
+    write-Replace-Failure-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Kill ::= SEQUENCE {
+    kill-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Kill-Complete ::= SEQUENCE {
+    kill-Complete-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Kill-Failure ::= SEQUENCE {
+    kill-Failure-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Load-Query ::= SEQUENCE {
+    load-Query-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Load-Query-Complete ::= SEQUENCE {
+    load-Query-Complete-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Load-Query-Failure ::= SEQUENCE {
+    load-Query-Failure-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Message-Status-Query ::= SEQUENCE {
+    message-Status-Query-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Message-Status-Query-Complete ::= SEQUENCE {
+    message-Status-Query-Complete-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Message-Status-Query-Failure ::= SEQUENCE {
+    message-Status-Query-Failure-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Reset ::= SEQUENCE {
+    reset-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Reset-Complete ::= SEQUENCE {
+    reset-Complete-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Reset-Failure ::= SEQUENCE {
+    reset-Failure-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Restart ::= SEQUENCE {
+    restart-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Failure ::= SEQUENCE {
+    failure-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+Error-Indication ::= SEQUENCE {
+    error-Indication-ies SEQUENCE (SIZE (0..maxProtocolIEs)) OF IE,
+    ...
+}
+
+
+IE ::= SEQUENCE {
+    id ProtocolIE-ID,
+    criticality Criticality,
+    value ANY
+}
+
+END