From af763aaef5d066a369de5db17a4de34cd35c39e8 Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Thu, 12 Mar 2020 20:00:48 +0100 Subject: [PATCH] Fix/complete the partial GTPv2_CodecPort we already had Change-Id: Idb9f492863d31e9decffeb0d71215fe581fdd4bb --- library/GTPv2_CodecPort.ttcn | 4 +- library/GTPv2_CodecPort_CtrlFunct.ttcn | 43 +++++++++++++++++++ library/GTPv2_CodecPort_CtrlFunctDef.cc | 55 +++++++++++++++++++++++++ 3 files changed, 100 insertions(+), 2 deletions(-) create mode 100644 library/GTPv2_CodecPort_CtrlFunct.ttcn create mode 100644 library/GTPv2_CodecPort_CtrlFunctDef.cc diff --git a/library/GTPv2_CodecPort.ttcn b/library/GTPv2_CodecPort.ttcn index 1f08f1932..e9cf57e89 100644 --- a/library/GTPv2_CodecPort.ttcn +++ b/library/GTPv2_CodecPort.ttcn @@ -12,13 +12,13 @@ module GTPv2_CodecPort { import from IPL4asp_PortType all; import from IPL4asp_Types all; - import from GTPv2C_Types all; + import from GTPv2_Types all; /* identifies a remote peer (sender or receiver) */ type record GtpPeer { ConnectionId connId, HostName remName, - PortNumber remPort + IPL4asp_Types.PortNumber remPort } /* Decoded GTP2C (Control Plane), used in send and receive direction */ diff --git a/library/GTPv2_CodecPort_CtrlFunct.ttcn b/library/GTPv2_CodecPort_CtrlFunct.ttcn new file mode 100644 index 000000000..d68ea518d --- /dev/null +++ b/library/GTPv2_CodecPort_CtrlFunct.ttcn @@ -0,0 +1,43 @@ +module GTPv2_CodecPort_CtrlFunct { + + import from GTPv2_CodecPort all; + import from IPL4asp_Types all; + + external function f_IPL4_listen( + inout GTPv2C_PT portRef, + in HostName locName, + in PortNumber locPort, + in ProtoTuple proto, + in OptionList options := {} + ) return Result; + + external function f_IPL4_connect( + inout GTPv2C_PT portRef, + in HostName remName, + in PortNumber remPort, + in HostName locName, + in PortNumber locPort, + in ConnectionId connId, + in ProtoTuple proto, + in OptionList options := {} + ) return Result; + + external function f_IPL4_close( + inout GTPv2C_PT portRef, + in ConnectionId id, + in ProtoTuple proto := { unspecified := {} } + ) return Result; + + external function f_IPL4_setUserData( + inout GTPv2C_PT portRef, + in ConnectionId id, + in UserData userData + ) return Result; + + external function f_IPL4_getUserData( + inout GTPv2C_PT portRef, + in ConnectionId id, + out UserData userData + ) return Result; + +} diff --git a/library/GTPv2_CodecPort_CtrlFunctDef.cc b/library/GTPv2_CodecPort_CtrlFunctDef.cc new file mode 100644 index 000000000..6a68cae16 --- /dev/null +++ b/library/GTPv2_CodecPort_CtrlFunctDef.cc @@ -0,0 +1,55 @@ +#include "IPL4asp_PortType.hh" +#include "IPL4asp_PT.hh" +#include "GTPv2_CodecPort.hh" + +namespace GTPv2__CodecPort__CtrlFunct { + + IPL4asp__Types::Result f__IPL4__listen( + GTPv2__CodecPort::GTPv2C__PT& portRef, + const IPL4asp__Types::HostName& locName, + const IPL4asp__Types::PortNumber& locPort, + const IPL4asp__Types::ProtoTuple& proto, + const IPL4asp__Types::OptionList& options) + { + return f__IPL4__PROVIDER__listen(portRef, locName, locPort, proto, options); + } + + IPL4asp__Types::Result f__IPL4__connect( + GTPv2__CodecPort::GTPv2C__PT& portRef, + const IPL4asp__Types::HostName& remName, + const IPL4asp__Types::PortNumber& remPort, + const IPL4asp__Types::HostName& locName, + const IPL4asp__Types::PortNumber& locPort, + const IPL4asp__Types::ConnectionId& connId, + const IPL4asp__Types::ProtoTuple& proto, + const IPL4asp__Types::OptionList& options) + { + return f__IPL4__PROVIDER__connect(portRef, remName, remPort, + locName, locPort, connId, proto, options); + } + + IPL4asp__Types::Result f__IPL4__close( + GTPv2__CodecPort::GTPv2C__PT& portRef, + const IPL4asp__Types::ConnectionId& connId, + const IPL4asp__Types::ProtoTuple& proto) + { + return f__IPL4__PROVIDER__close(portRef, connId, proto); + } + + IPL4asp__Types::Result f__IPL4__setUserData( + GTPv2__CodecPort::GTPv2C__PT& portRef, + const IPL4asp__Types::ConnectionId& connId, + const IPL4asp__Types::UserData& userData) + { + return f__IPL4__PROVIDER__setUserData(portRef, connId, userData); + } + + IPL4asp__Types::Result f__IPL4__getUserData( + GTPv2__CodecPort::GTPv2C__PT& portRef, + const IPL4asp__Types::ConnectionId& connId, + IPL4asp__Types::UserData& userData) + { + return f__IPL4__PROVIDER__getUserData(portRef, connId, userData); + } + +}