pespin has submitted this change. (
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38538?usp=email )
Change subject: RAN_Emulation: Introduce field ranap_connect_ind_auto_res
......................................................................
RAN_Emulation: Introduce field ranap_connect_ind_auto_res
This field allows skipping automatic response of the connect_ind, hence
allowing ConnHdlr to totally skip it, delay it, or generate a CREF by
means of sending RAN_Conn_Prim:MSC_CONN_PRIM_DISC_REQ to RAN_Emulation,
as per ITU Q.711 Figure 8.
Change-Id: I5a69990e3a0839dd3c25c7dc66e6bcf66123fbff
---
M hnbgw/HNBGW_Tests.ttcn
M library/RAN_Emulation.ttcnpp
M msc/BSC_ConnectionHandler.ttcn
M sgsn/SGSN_Tests.ttcn
4 files changed, 10 insertions(+), 2 deletions(-)
Approvals:
laforge: Looks good to me, but someone else must approve
Jenkins Builder: Verified
fixeria: Looks good to me, approved
diff --git a/hnbgw/HNBGW_Tests.ttcn b/hnbgw/HNBGW_Tests.ttcn
index 30e624f..4ab5a90 100644
--- a/hnbgw/HNBGW_Tests.ttcn
+++ b/hnbgw/HNBGW_Tests.ttcn
@@ -232,6 +232,7 @@
const RanOps MSC_RanOps := {
ranap_create_cb := refers(RAN_Emulation.RanapExpectedCreateCallback),
ranap_unitdata_cb := refers(MSC_UnitdataCallback),
+ ranap_connect_ind_auto_res := true,
ps_domain := false,
decode_dtap := false,
role_ms := false,
diff --git a/library/RAN_Emulation.ttcnpp b/library/RAN_Emulation.ttcnpp
index fbe921d..c221c72 100644
--- a/library/RAN_Emulation.ttcnpp
+++ b/library/RAN_Emulation.ttcnpp
@@ -734,6 +734,9 @@
#ifdef RAN_EMULATION_RANAP
RanapCreateCallback ranap_create_cb optional,
RanapUnitdataCallback ranap_unitdata_cb optional,
+ /* Set to false if want to handle response to RANAP_N_CONNECT_ind.
+ * This is useful to eg. trigger SCCP CREF. */
+ boolean ranap_connect_ind_auto_res,
boolean ps_domain,
#endif
boolean decode_dtap,
@@ -1000,8 +1003,10 @@
/* Notify client that we received an SCCP CR without user data */
CLIENT.send(ts_RANAP_Conn_Req(rconn_ind.callingAddress, rconn_ind.calledAddress,
omit));
}
- /* confirm connection establishment */
- RANAP.send(ts_RANAP_CONNECT_res(rconn_ind.connectionId, omit));
+ if (g_ran_ops.ranap_connect_ind_auto_res) {
+ /* confirm connection establishment */
+ RANAP.send(ts_RANAP_CONNECT_res(rconn_ind.connectionId, omit));
+ }
}
/* SCCP -> Client: connection-oriented data in existing connection */
[] RANAP.receive(RANAP_N_DATA_ind:?) -> value rdata_ind {
diff --git a/msc/BSC_ConnectionHandler.ttcn b/msc/BSC_ConnectionHandler.ttcn
index 467f387..e436117 100644
--- a/msc/BSC_ConnectionHandler.ttcn
+++ b/msc/BSC_ConnectionHandler.ttcn
@@ -273,6 +273,7 @@
unitdata_cb := refers(BscUnitdataCallback),
ranap_create_cb := refers(RAN_Emulation.RanapExpectedCreateCallback),
ranap_unitdata_cb := refers(RncUnitdataCallback),
+ ranap_connect_ind_auto_res := true,
ps_domain := false,
decode_dtap := true,
role_ms := true,
diff --git a/sgsn/SGSN_Tests.ttcn b/sgsn/SGSN_Tests.ttcn
index 1099798..0f5da29 100644
--- a/sgsn/SGSN_Tests.ttcn
+++ b/sgsn/SGSN_Tests.ttcn
@@ -437,6 +437,7 @@
const RanOps RNC_RanOps := {
ranap_create_cb := refers(RAN_Emulation.RanapExpectedCreateCallback),
ranap_unitdata_cb := refers(RncUnitdataCallback),
+ ranap_connect_ind_auto_res := true,
ps_domain := true,
decode_dtap := true,
role_ms := true,
--
To view, visit
https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/38538?usp=email
To unsubscribe, or for help writing mail filters, visit
https://gerrit.osmocom.org/settings?usp=email
Gerrit-MessageType: merged
Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I5a69990e3a0839dd3c25c7dc66e6bcf66123fbff
Gerrit-Change-Number: 38538
Gerrit-PatchSet: 2
Gerrit-Owner: pespin <pespin(a)sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: fixeria <vyanitskiy(a)sysmocom.de>
Gerrit-Reviewer: laforge <laforge(a)osmocom.org>
Gerrit-Reviewer: pespin <pespin(a)sysmocom.de>