laforge submitted this change.

View Change


Approvals: osmith: Looks good to me, but someone else must approve Jenkins Builder: Verified laforge: Looks good to me, approved
RSL_Emulation: allow RSL_DchanHdlr sandbox escape for both roles

This feature was initially added in 1470fc668 for the RSL_Emulation_CT
operating in the BTS role. In a subsequent patch I also need to escape
the sandbox, but in my case the RSL_Emulation_CT is playing the BSC role.

Change-Id: I42557f85d3e5e7ef7147a87293f5dd1716884534
Related: 1470fc668 "allow ASP_RSL_UD on MSC_ConnHdlr RSL"
Related: SYS#6655
---
M library/RSL_Emulation.ttcn
1 file changed, 25 insertions(+), 3 deletions(-)

diff --git a/library/RSL_Emulation.ttcn b/library/RSL_Emulation.ttcn
index effe83b..891e565 100644
--- a/library/RSL_Emulation.ttcn
+++ b/library/RSL_Emulation.ttcn
@@ -651,15 +651,22 @@
cid := f_cid_by_comp_ref(vc_conn);
IPA_PT.send(ts_ASP_RSL_UD(rx_rsl_msg, ConnectionTable[cid].stream_id));
}
- [bts_role] CLIENT_PT.receive(tr_ASP_RSL_UD(?, sid := ?)) -> value rx_rsl {
- IPA_PT.send(ts_ASP_RSL_UD(rx_rsl.rsl, rx_rsl.streamId));
- }
[not bts_role] CLIENT_PT.receive(tr_RSL_MsgType(?)) -> value rx_rsl_msg sender vc_conn {
cid := f_cid_by_comp_ref(vc_conn);
conn_id := f_trx_conn_map_resolve(ConnectionTable[cid].stream_id);
IPA_PT.send(ts_ASP_RSL_UD(rx_rsl_msg, ConnectionTable[cid].stream_id, conn_id));
}

+ /* allow the RSL_DchanHdlr components to "escape the sandbox" by sending RSL messages
+ * to other transceivers than they're bound to (determined by rx_rsl.streamId) */
+ [bts_role] CLIENT_PT.receive(tr_ASP_RSL_UD(?, sid := ?)) -> value rx_rsl {
+ IPA_PT.send(ts_ASP_RSL_UD(rx_rsl.rsl, rx_rsl.streamId));
+ }
+ [not bts_role] CLIENT_PT.receive(tr_ASP_RSL_UD(?, sid := ?)) -> value rx_rsl {
+ conn_id := f_trx_conn_map_resolve(rx_rsl.streamId);
+ IPA_PT.send(ts_ASP_RSL_UD(rx_rsl.rsl, rx_rsl.streamId, conn_id));
+ }
+
/* RSL message from MTC */
[bts_role] CCHAN_PT.receive(tr_ASP_RSL_UD(?, sid := ?)) -> value rx_rsl {
IPA_PT.send(ts_ASP_RSL_UD(rx_rsl.rsl, rx_rsl.streamId));

To view, visit change 35086. To unsubscribe, or for help writing mail filters, visit settings.

Gerrit-Project: osmo-ttcn3-hacks
Gerrit-Branch: master
Gerrit-Change-Id: I42557f85d3e5e7ef7147a87293f5dd1716884534
Gerrit-Change-Number: 35086
Gerrit-PatchSet: 1
Gerrit-Owner: fixeria <vyanitskiy@sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: laforge <laforge@osmocom.org>
Gerrit-Reviewer: osmith <osmith@sysmocom.de>
Gerrit-MessageType: merged