blob: d4e4a0c5f952f6748acb69ab66677bf9c21816ff [file] [log] [blame]
Pau Espin Pedrolb54acca2021-11-22 20:35:44 +01001/* RUA Templates in TTCN-3
2 * (C) 2021 Pau Espin Pedrol <pespin@sysmocom.de>
3 * All rights reserved.
4 *
5 * Released under the terms of GNU General Public License, Version 2 or
6 * (at your option) any later version.
7 *
8 * SPDX-License-Identifier: GPL-2.0-or-later
9 */
10
11module RUA_Templates {
12
13import from RUA_IEs all;
14import from RUA_CommonDataTypes all;
15import from RUA_Constants all;
16import from RUA_Containers all;
17import from RUA_PDU_Contents all;
18import from RUA_PDU_Descriptions all;
19
Pau Espin Pedrolecd12252021-12-13 18:58:31 +010020/*********************************************************************************
21 * 3GPP TS 25.468
22 *********************************************************************************/
Pau Espin Pedrolb54acca2021-11-22 20:35:44 +010023
Pau Espin Pedrolecd12252021-12-13 18:58:31 +010024template (value) Cause ts_RUA_Cause(template (value) CauseRadioNetwork c) := {
25 radioNetwork := c
Pau Espin Pedrolb54acca2021-11-22 20:35:44 +010026}
Pau Espin Pedrolecd12252021-12-13 18:58:31 +010027
28/* 9.1.3 CONNECT */
29template (present) RUA_PDU
30tr_RUA_Connect(template (present) CN_DomainIndicator domain := ?,
31 template (present) bitstring context_id := ?,
32 template (present) Establishment_Cause est_cause := ?,
33 template (present) octetstring ranap_msg := ?) := {
34 initiatingMessage := {
35 procedureCode := id_Connect,
36 criticality := reject,
37 value_ := {
38 connect_ := {
39 protocolIEs := {
40 {
41 id := 7,
42 criticality := reject,
43 value_ := { cN_DomainIndicator := domain }
44 }, {
45 id := 3,
46 criticality := reject,
47 value_ := { context_ID := context_id }
48 }, {
49 id := 6,
50 criticality := reject,
51 value_ := { establishment_Cause := est_cause }
52 }, {
53 id := 4,
54 criticality := reject,
55 value_ := {
56 rANAP_Message := ranap_msg
57 }
58 }
59 },
60 protocolExtensions := omit
61 }
62 }
63 }
64}
65
66/* 9.1.4 DIRECT TRANSFER */
67template (value) RUA_PDU
68ts_RUA_DirectTransfer(template (value) CN_DomainIndicator domain,
69 template (value) bitstring context_id,
70 template (value) octetstring ranap_msg) := {
71 initiatingMessage := {
72 procedureCode := id_DirectTransfer,
73 criticality := reject,
74 value_ := {
75 directTransfer := {
76 protocolIEs := {
77 {
78 id := 7,
79 criticality := reject,
80 value_ := { cN_DomainIndicator := domain }
81 }, {
82 id := 3,
83 criticality := reject,
84 value_ := { context_ID := context_id }
85 }, {
86 id := 4,
87 criticality := reject,
88 value_ := { rANAP_Message := ranap_msg }
89 }
90 },
91 protocolExtensions := omit
92 }
93 }
94 }
95}
96template (present) RUA_PDU
97tr_RUA_DirectTransfer(template (present) CN_DomainIndicator domain := ?,
98 template (present) bitstring context_id := ?,
99 template (present) octetstring ranap_msg := ?) := {
100 initiatingMessage := {
101 procedureCode := id_DirectTransfer,
102 criticality := reject,
103 value_ := {
104 directTransfer := {
105 protocolIEs := {
106 {
107 id := 7,
108 criticality := reject,
109 value_ := { cN_DomainIndicator := domain }
110 }, {
111 id := 3,
112 criticality := reject,
113 value_ := { context_ID := context_id }
114 }, {
115 id := 4,
116 criticality := reject,
117 value_ := { rANAP_Message := ranap_msg }
118 }
119 },
120 protocolExtensions := omit
121 }
122 }
123 }
124}
125
126/* 9.1.5 DISCONNECT */
127template (present) RUA_PDU
128tr_RUA_Disconnect(template (present) CN_DomainIndicator domain := ?,
129 template (present) bitstring context_id := ?,
130 template (present) Cause cause := ?,
131 template (present) octetstring ranap_msg := ?) := {
132 initiatingMessage := {
133 procedureCode := 3,
134 criticality := reject,
135 value_ := {
136 disconnect_ := {
137 protocolIEs := {
138 {
139 id := 7,
140 criticality := reject,
141 value_ := { cN_DomainIndicator := domain }
142 }, {
143 id := 3,
144 criticality := reject,
145 value_ := { context_ID := context_id }
146 }, {
147 id := 1,
148 criticality := reject,
149 value_ := { cause := cause }
150 }, {
151 id := 4,
152 criticality := reject,
153 value_ := { rANAP_Message := ranap_msg }
154 }
155 },
156 protocolExtensions := omit
157 }
158 }
159 }
160}
161
162/* 9.1.6 CONNECTIONLESS TRANSFER */
163template (value) RUA_PDU
164ts_RUA_ConnectionlessTransfer(template (value) octetstring ranap_msg) := {
165 initiatingMessage := {
166 procedureCode := id_ConnectionlessTransfer,
167 criticality := reject,
168 value_ := {
169 connectionlessTransfer := {
170 protocolIEs := {
171 {
172 id := 4,
173 criticality := reject,
174 value_ := { rANAP_Message := ranap_msg }
175 }
176 },
177 protocolExtensions := omit
178 }
179 }
180 }
181}
182};