pespin has uploaded this change for review. (
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/35604?usp=email )
Change subject: GSUP_Types: Add missing message_class to EPDGTunnel* messages
......................................................................
GSUP_Types: Add missing message_class to EPDGTunnel* messages
Related: OS#6091
Change-Id: Ib7d6156402645867cadc8d3e0ffdd07247a1abd2
---
M library/GSUP_Types.ttcn
1 file changed, 69 insertions(+), 20 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-ttcn3-hacks refs/changes/04/35604/1
diff --git a/library/GSUP_Types.ttcn b/library/GSUP_Types.ttcn
index dbf3fd4..e938c65 100644
--- a/library/GSUP_Types.ttcn
+++ b/library/GSUP_Types.ttcn
@@ -693,29 +693,57 @@
/* EPDG Tunnel */
-template (value) GSUP_PDU ts_GSUP_EPDGTunnel_REQ(hexstring imsi, GSUP_CnDomain dom :=
OSMO_GSUP_CN_DOMAIN_PS,
- template (omit) octetstring source_name := omit) :=
- ts_GSUP(OSMO_GSUP_MSGT_EPDG_TUNNEL_REQUEST, f_gen_ts_ies(imsi, dom := dom,
- source_name := source_name));//HERE
+template (value) GSUP_PDU ts_GSUP_EPDGTunnel_REQ(hexstring imsi,
+ GSUP_Message_Class message_class := OSMO_GSUP_MESSAGE_CLASS_IPSEC_EPDG,
+ GSUP_CnDomain dom := OSMO_GSUP_CN_DOMAIN_PS,
+ template (omit) octetstring source_name := omit) :=
+ ts_GSUP(OSMO_GSUP_MSGT_EPDG_TUNNEL_REQUEST, f_gen_ts_ies(imsi,
+ message_class := message_class,
+ dom := dom,
+ source_name := source_name));
-template (present) GSUP_PDU tr_GSUP_EPDGTunnel_REQ(template (present) hexstring imsi :=
?) :=
- tr_GSUP_IMSI(OSMO_GSUP_MSGT_EPDG_TUNNEL_REQUEST, imsi);
+template (present) GSUP_PDU tr_GSUP_EPDGTunnel_REQ(template (present) hexstring imsi :=
?,
+ template (present) GSUP_Message_Class message_class :=
OSMO_GSUP_MESSAGE_CLASS_IPSEC_EPDG) :=
+ tr_GSUP(OSMO_GSUP_MSGT_EPDG_TUNNEL_REQUEST,
+ f_gen_tr_ies(imsi,
+ message_class := message_class));
-template (value) GSUP_PDU ts_GSUP_EPDGTunnel_RES(hexstring imsi, octetstring
destination_name := ''O) :=
- ts_GSUP(OSMO_GSUP_MSGT_EPDG_TUNNEL_RESULT, { valueof(ts_GSUP_IE_IMSI(imsi)),
- valueof(ts_GSUP_IE_Destination_Name(destination_name))});
-template (present) GSUP_PDU tr_GSUP_EPDGTunnel_RES(template (present) hexstring imsi,
template octetstring destination_name := omit) :=
- tr_GSUP(OSMO_GSUP_MSGT_EPDG_TUNNEL_RESULT, f_gen_tr_ies(imsi, destination_name :=
destination_name));
+template (value) GSUP_PDU ts_GSUP_EPDGTunnel_RES(hexstring imsi,
+ GSUP_Message_Class message_class := OSMO_GSUP_MESSAGE_CLASS_IPSEC_EPDG,
+ octetstring destination_name := ''O) :=
+ ts_GSUP(OSMO_GSUP_MSGT_EPDG_TUNNEL_RESULT, {
+ valueof(ts_GSUP_IE_IMSI(imsi)),
+ valueof(ts_GSUP_IE_Message_Class(message_class)),
+ valueof(ts_GSUP_IE_Destination_Name(destination_name))
+ });
-template (value) GSUP_PDU ts_GSUP_EPDGTunnel_ERR(hexstring imsi, integer cause) :=
+template (present) GSUP_PDU tr_GSUP_EPDGTunnel_RES(template (present) hexstring imsi,
+ template (present) GSUP_Message_Class message_class :=
OSMO_GSUP_MESSAGE_CLASS_IPSEC_EPDG,
+ template octetstring destination_name := omit) :=
+ tr_GSUP(OSMO_GSUP_MSGT_EPDG_TUNNEL_RESULT,
+ f_gen_tr_ies(imsi,
+ message_class := message_class,
+ destination_name := destination_name));
+
+template (value) GSUP_PDU ts_GSUP_EPDGTunnel_ERR(hexstring imsi,
+ GSUP_Message_Class message_class := OSMO_GSUP_MESSAGE_CLASS_IPSEC_EPDG,
+ integer cause := 0) :=
ts_GSUP(OSMO_GSUP_MSGT_EPDG_TUNNEL_ERROR, {
- valueof(ts_GSUP_IE_IMSI(imsi)), valueof(ts_GSUP_IE_Cause(cause)) });
+ valueof(ts_GSUP_IE_IMSI(imsi)),
+ valueof(ts_GSUP_IE_Message_Class(message_class)),
+ valueof(ts_GSUP_IE_Cause(cause))
+ });
-template (present) GSUP_PDU tr_GSUP_EPDGTunnel_ERR(template (present) hexstring imsi,
template (present) integer cause := ?,
- template octetstring destination_name := omit) :=
+template (present) GSUP_PDU tr_GSUP_EPDGTunnel_ERR(template (present) hexstring imsi,
+ template (present) GSUP_Message_Class message_class :=
OSMO_GSUP_MESSAGE_CLASS_IPSEC_EPDG,
+ template (present) integer cause := ?,
+ template octetstring destination_name := omit) :=
tr_GSUP(OSMO_GSUP_MSGT_EPDG_TUNNEL_ERROR,
- f_gen_tr_ies(imsi, cause := cause, destination_name := destination_name));
+ f_gen_tr_ies(imsi,
+ message_class := message_class,
+ cause := cause,
+ destination_name := destination_name));
template (value) GSUP_IE ts_GSUP_IE_CancelType(GSUP_CancelType ctype) := {
@@ -1391,15 +1419,20 @@
}
private function f_gen_ts_ies(hexstring imsi,
- template hexstring imei := omit,
- template GSUP_CnDomain dom := omit,
- template octetstring source_name := omit,
- template octetstring destination_name := omit
+ template (omit) GSUP_Message_Class message_class := omit,
+ template (omit) hexstring imei := omit,
+ template (omit) GSUP_CnDomain dom := omit,
+ template (omit) octetstring source_name := omit,
+ template (omit) octetstring destination_name := omit
) return GSUP_IEs {
var GSUP_IEs ies := {
valueof(ts_GSUP_IE_IMSI(imsi))
};
+ if (isvalue(message_class)) {
+ ies := ies & { valueof(ts_GSUP_IE_Message_Class(valueof(message_class))) };
+ }
+
if (isvalue(dom)) {
ies := ies & { valueof(ts_GSUP_IE_CnDomain(dom)) };
}
@@ -1420,6 +1453,7 @@
}
private function f_gen_tr_ies(template hexstring imsi,
+ template GSUP_Message_Class message_class := omit,
template integer cause := omit,
template hexstring msisdn := omit,
template GSUP_IMEIResult imei_result := omit,
@@ -1431,6 +1465,11 @@
};
var integer idx := 1;
+ if (isvalue(message_class)) {
+ ies[idx] := tr_GSUP_IE_Message_Class(message_class);
+ idx := idx + 1;
+ }
+
if (isvalue(cause)) {
ies[idx] := tr_GSUP_IE_Cause(cause);
idx := idx + 1;
--
To view, visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/35604?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: Ib7d6156402645867cadc8d3e0ffdd07247a1abd2
Gerrit-Change-Number: 35604
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-MessageType: newchange