pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-ttcn3-hacks/+/40471?usp=email )
Change subject: IPA_Emulation.ttcn: Add call to support dis/enabling CCM management ......................................................................
IPA_Emulation.ttcn: Add call to support dis/enabling CCM management
This allows eg. a user to let the Emulation do the inital handshake, and then pass control of eg. IPA PING/PONG messages directly to the user afterwards.
Change-Id: If68e0ba36c3a56f021dd50aadf2156ddc696b816 --- M library/IPA_Emulation.ttcnpp 1 file changed, 13 insertions(+), 0 deletions(-)
Approvals: pespin: Looks good to me, approved laforge: Looks good to me, but someone else must approve fixeria: Looks good to me, but someone else must approve Jenkins Builder: Verified
diff --git a/library/IPA_Emulation.ttcnpp b/library/IPA_Emulation.ttcnpp index 07fefe5..2df598a 100644 --- a/library/IPA_Emulation.ttcnpp +++ b/library/IPA_Emulation.ttcnpp @@ -291,8 +291,10 @@ };
signature IPA_CFG_disconnect(inout IPL4asp_Types.Result res); +signature IPA_CFG_chg_ccm_enabled(in boolean res); type port IPA_CFG_PT procedure { inout IPA_CFG_disconnect; + inout IPA_CFG_chg_ccm_enabled; } with { extension "internal" };
function f_ipa_cfg_disconnect(IPA_CFG_PT pt, inout IPL4asp_Types.Result res) { @@ -300,6 +302,11 @@ [] pt.getreply(IPA_CFG_disconnect:{?}) -> param (res) {}; } } +function f_ipa_cfg_chg_ccm_enabled(IPA_CFG_PT pt, boolean ccm_enabled) { + pt.call(IPA_CFG_chg_ccm_enabled:{ccm_enabled}) { + [] pt.getreply(IPA_CFG_chg_ccm_enabled:{ccm_enabled}); + } +}
/* Function to use to connect as client to a remote IPA Server */ function f_connect(charstring remote_host, IPL4asp_Types.PortNumber remote_port, @@ -701,6 +708,7 @@ var octetstring payload; var ASP_IPA_Unitdata ipa_ud; var IPL4asp_Types.Result res; + var boolean cfg_chg_ccm_enabled; #ifdef IPA_EMULATION_CTRL var CtrlMessage ctrl_msg; #endif @@ -934,6 +942,11 @@ CFG_PORT.reply(IPA_CFG_disconnect:{res}); }
+ [] CFG_PORT.getcall(IPA_CFG_chg_ccm_enabled:{?})-> param(cfg_chg_ccm_enabled) { + g_ccm_enabled := cfg_chg_ccm_enabled; + CFG_PORT.reply(IPA_CFG_chg_ccm_enabled:{cfg_chg_ccm_enabled}); + } + } } }