Revert "TODO epan/dissectors/asn1/kerberos/packet-kerberos-template.c new GSS flags"
[wireshark-sm.git] / epan / dissectors / asn1 / m2ap / M2AP-Containers.asn
blob1be565830eb4f22a5a071c6e427f36dece4ce68b
1 -- 3GPP TS 36.443 V17.0.1 (2022-04)
2 -- **************************************************************
3 --
4 -- Container definitions
5 --
6 -- **************************************************************
8 M2AP-Containers {
9 itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
10 eps-Access (21) modules (3) m2ap (4) version1 (1) m2ap-Containers (5)  }
12 DEFINITIONS AUTOMATIC TAGS ::=
14 BEGIN
16 -- **************************************************************
18 -- IE parameter types from other modules.
20 -- **************************************************************
22 IMPORTS
23         maxPrivateIEs,
24         maxProtocolExtensions,
25         maxProtocolIEs,
26         Criticality,
27         Presence,
28         PrivateIE-ID,
29         ProtocolIE-ID
30 FROM M2AP-CommonDataTypes;
32 -- **************************************************************
34 -- Class Definition for Protocol Ies
36 -- **************************************************************
38 M2AP-PROTOCOL-IES ::= CLASS {
39         &id                             ProtocolIE-ID                   UNIQUE,
40         &criticality    Criticality,
41         &Value,
42         &presence               Presence
44 WITH SYNTAX {
45         ID                              &id
46         CRITICALITY             &criticality
47         TYPE                    &Value
48         PRESENCE                &presence
51 -- **************************************************************
53 -- Class Definition for Protocol Ies
55 -- **************************************************************
57 M2AP-PROTOCOL-IES-PAIR ::= CLASS {
58         &id                                             ProtocolIE-ID           UNIQUE,
59         &firstCriticality               Criticality,
60         &FirstValue,
61         &secondCriticality              Criticality,
62         &SecondValue,
63         &presence                               Presence
65 WITH SYNTAX {
66         ID                                              &id
67         FIRST CRITICALITY               &firstCriticality
68         FIRST TYPE                              &FirstValue
69         SECOND CRITICALITY              &secondCriticality
70         SECOND TYPE                             &SecondValue
71         PRESENCE                                &presence
74 -- **************************************************************
76 -- Class Definition for Protocol Extensions
78 -- **************************************************************
80 M2AP-PROTOCOL-EXTENSION ::= CLASS {
81         &id                                     ProtocolIE-ID           UNIQUE,
82         &criticality            Criticality,
83         &Extension,
84         &presence                       Presence
86 WITH SYNTAX {
87         ID                                      &id
88         CRITICALITY                     &criticality
89         EXTENSION                       &Extension
90         PRESENCE                        &presence
93 -- **************************************************************
95 -- Class Definition for Private Ies
97 -- **************************************************************
99 M2AP-PRIVATE-IES ::= CLASS {
100         &id                                     PrivateIE-ID,
101         &criticality            Criticality,
102         &Value,
103         &presence                       Presence
105 WITH SYNTAX {
106         ID                                      &id
107         CRITICALITY                     &criticality
108         TYPE                            &Value
109         PRESENCE                        &presence
112 -- **************************************************************
114 -- Container for Protocol Ies
116 -- **************************************************************
118 ProtocolIE-Container {M2AP-PROTOCOL-IES : IesSetParam} ::=
119         SEQUENCE (SIZE (0..maxProtocolIEs)) OF
120         ProtocolIE-Field {{IesSetParam}}
122 ProtocolIE-Single-Container {M2AP-PROTOCOL-IES : IesSetParam} ::=
123         ProtocolIE-Field {{IesSetParam}}
125 ProtocolIE-Field {M2AP-PROTOCOL-IES : IesSetParam} ::= SEQUENCE {
126         id                              M2AP-PROTOCOL-IES.&id                                   ({IesSetParam}),
127         criticality             M2AP-PROTOCOL-IES.&criticality                  ({IesSetParam}{@id}),
128         value                   M2AP-PROTOCOL-IES.&Value                                ({IesSetParam}{@id})
131 -- **************************************************************
133 -- Container for Protocol IE Pairs
135 -- **************************************************************
137 ProtocolIE-ContainerPair {M2AP-PROTOCOL-IES-PAIR : IesSetParam} ::=
138         SEQUENCE (SIZE (0..maxProtocolIEs)) OF
139         ProtocolIE-FieldPair {{IesSetParam}}
141 ProtocolIE-FieldPair {M2AP-PROTOCOL-IES-PAIR : IesSetParam} ::= SEQUENCE {
142         id                                      M2AP-PROTOCOL-IES-PAIR.&id                                      ({IesSetParam}),
143         firstCriticality        M2AP-PROTOCOL-IES-PAIR.&firstCriticality        ({IesSetParam}{@id}),
144         firstValue                      M2AP-PROTOCOL-IES-PAIR.&FirstValue                      ({IesSetParam}{@id}),
145         secondCriticality       M2AP-PROTOCOL-IES-PAIR.&secondCriticality       ({IesSetParam}{@id}),
146         secondValue                     M2AP-PROTOCOL-IES-PAIR.&SecondValue                     ({IesSetParam}{@id})
149 -- **************************************************************
151 -- Container Lists for Protocol IE Containers
153 -- **************************************************************
155 ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, M2AP-PROTOCOL-IES : IesSetParam} ::=
156         SEQUENCE (SIZE (lowerBound..upperBound)) OF
157         ProtocolIE-Container {{IesSetParam}}
159 ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, M2AP-PROTOCOL-IES-PAIR : IesSetParam} ::=
160         SEQUENCE (SIZE (lowerBound..upperBound)) OF
161         ProtocolIE-ContainerPair {{IesSetParam}}
163 -- **************************************************************
165 -- Container for Protocol Extensions
167 -- **************************************************************
169 ProtocolExtensionContainer {M2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
170         SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
171         ProtocolExtensionField {{ExtensionSetParam}}
173 ProtocolExtensionField {M2AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE {
174         id                                      M2AP-PROTOCOL-EXTENSION.&id                             ({ExtensionSetParam}),
175         criticality                     M2AP-PROTOCOL-EXTENSION.&criticality    ({ExtensionSetParam}{@id}),
176         extensionValue          M2AP-PROTOCOL-EXTENSION.&Extension              ({ExtensionSetParam}{@id})
179 -- **************************************************************
181 -- Container for Private Ies
183 -- **************************************************************
185 PrivateIE-Container {M2AP-PRIVATE-IES : IesSetParam} ::=
186         SEQUENCE (SIZE (1..maxPrivateIEs)) OF
187         PrivateIE-Field {{IesSetParam}}
189 PrivateIE-Field {M2AP-PRIVATE-IES : IesSetParam} ::= SEQUENCE {
190         id                              M2AP-PRIVATE-IES.&id                    ({IesSetParam}),
191         criticality             M2AP-PRIVATE-IES.&criticality   ({IesSetParam}{@id}),
192         value                   M2AP-PRIVATE-IES.&Value                 ({IesSetParam}{@id})