From 5bd8e8819599e4c0dd666ed8a6517e48aa96bdd2 Mon Sep 17 00:00:00 2001 From: Pau Espin Pedrol Date: Wed, 31 Aug 2022 13:32:40 +0200 Subject: [PATCH] Osmux_Emulation: Add DATA port Similar to what's already present in RTPEM_Emulation, this allows tests to retrieve the Osmux messages received. Related: OS#5987 Change-Id: Id9aa3a0a02ef5a5e39b4df8a1c165f35255829ab --- library/OSMUX_Emulation.ttcn | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/library/OSMUX_Emulation.ttcn b/library/OSMUX_Emulation.ttcn index 10338d275..c6999ded9 100644 --- a/library/OSMUX_Emulation.ttcn +++ b/library/OSMUX_Emulation.ttcn @@ -67,6 +67,8 @@ type component OSMUX_Emulation_CT { /* user-facing port for controlling the binding */ port OsmuxEM_CTRL_PT CTRL; + /* user-facing port for sniffing Osmux frames */ + port OsmuxEM_DATA_PT DATA; /* configurable by user, should be fixed */ var OsmuxemConfig g_cfg := c_OsmuxemDefaultCfg; @@ -190,6 +192,10 @@ type port OsmuxEM_CTRL_PT procedure { OsmuxEM_stats_get, OsmuxEM_register_rxhandle, OsmuxEM_register_txhandle; } with { extension "internal" }; +type port OsmuxEM_DATA_PT message { + inout OSMUX_PDU; +} with { extension "internal" }; + function f_osmuxem_bind(OsmuxEM_CTRL_PT pt, in HostName local_host, inout PortNumber local_port) { pt.call(OsmuxEM_bind:{local_host, local_port}) { [] pt.getreply(OsmuxEM_bind:{local_host, ?}) -> param (local_port) {}; @@ -556,6 +562,9 @@ function f_main() runs on OSMUX_Emulation_CT if (ispresent(g_cfg.rx_fixed_payload) and rx_osmux.msg.osmux_amr.data != payload_truncated) { g_stat.num_pkts_rx_err_payload := g_stat.num_pkts_rx_err_payload + 1; } + if (DATA.checkstate("Connected")) { + DATA.send(rx_osmux.msg); + } } /* process received Osmux Dummy if receiver enabled */ [g_rx_enabled] OSMUX.receive(tr_osmux_dummy) -> value rx_osmux {