Loading ccsrc/Protocols/Lost/lost_codec.cc +26 −0 Original line number Diff line number Diff line Loading @@ -24,10 +24,26 @@ int lost_codec::encode (const LibItsHttp__XmlMessageBodyTypes::XmlBody& msg, OCT const urn__ietf__params__xml__ns__lost1::FindService& find_service = msg.findServiceRequest(); loggers::get_instance().log_msg("lost_codec::encode: Process FindService", (const Base_Type&)find_service); find_service.encode(urn__ietf__params__xml__ns__lost1::FindService_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else if (msg.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_listServices)) { const urn__ietf__params__xml__ns__lost1::ListServices& list_services = msg.listServices(); loggers::get_instance().log_msg("lost_codec::encode: Process ListServices", (const Base_Type&)list_services); list_services.encode(urn__ietf__params__xml__ns__lost1::ListServices_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else if (msg.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_listServicesByLocation)) { const urn__ietf__params__xml__ns__lost1::ListServicesByLocation& list_services_by_location = msg.listServicesByLocation(); loggers::get_instance().log_msg("lost_codec::encode: Process ListServicesByLocation", (const Base_Type&)list_services_by_location); list_services_by_location.encode(urn__ietf__params__xml__ns__lost1::ListServicesByLocation_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else if (msg.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_findServiceResponse)) { const urn__ietf__params__xml__ns__lost1::FindServiceResponse& find_service_response = msg.findServiceResponse(); loggers::get_instance().log_msg("lost_codec::encode: Process FindServiceResponse", (const Base_Type&)find_service_response); find_service_response.encode(urn__ietf__params__xml__ns__lost1::FindServiceResponse_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else if (msg.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_listServicesResponse)) { const urn__ietf__params__xml__ns__lost1::ListServicesResponse& list_services_response = msg.listServicesResponse(); loggers::get_instance().log_msg("lost_codec::encode: Process ListServicesResponse", (const Base_Type&)list_services_response); list_services_response.encode(urn__ietf__params__xml__ns__lost1::ListServicesResponse_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else if (msg.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_listServicesByLocationResponse)) { const urn__ietf__params__xml__ns__lost1::ListServicesByLocationResponse& list_services_by_location_response = msg.listServicesByLocationResponse(); loggers::get_instance().log_msg("lost_codec::encode: Process ListServicesByLocationResponse", (const Base_Type&)list_services_by_location_response); list_services_by_location_response.encode(urn__ietf__params__xml__ns__lost1::ListServicesByLocationResponse_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else { loggers::get_instance().warning("lost_codec::encode: Unsupported variant"); return -1; Loading Loading @@ -83,6 +99,16 @@ int lost_codec::decode (const OCTETSTRING& p_data, LibItsHttp__XmlMessageBodyTyp urn__ietf__params__xml__ns__lost1::FindServiceResponse find_service_response; find_service_response.decode(urn__ietf__params__xml__ns__lost1::FindServiceResponse_descr_, decoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); msg.findServiceResponse() = find_service_response; } else if (it->second.find("<listServicesResponse") != std::string::npos) { loggers::get_instance().warning("lost_codec::decode: Process ListServicesResponse"); urn__ietf__params__xml__ns__lost1::ListServicesResponse list_services_response; list_services_response.decode(urn__ietf__params__xml__ns__lost1::ListServicesResponse_descr_, decoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); msg.listServicesResponse() = list_services_response; } else if (it->second.find("<listServicesByLocationResponse") != std::string::npos) { loggers::get_instance().warning("lost_codec::decode: Process ListServicesByLocationResponse"); urn__ietf__params__xml__ns__lost1::ListServicesByLocationResponse list_services_by_location_response; list_services_by_location_response.decode(urn__ietf__params__xml__ns__lost1::ListServicesByLocationResponse_descr_, decoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); msg.listServicesByLocationResponse() = list_services_by_location_response; } else if (it->second.find("<findService") != std::string::npos) { urn__ietf__params__xml__ns__lost1::FindService find_service; find_service.decode(urn__ietf__params__xml__ns__lost1::FindService_descr_, decoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); Loading ccsrc/Protocols/Sip/sip_codec_request.cc +1 −1 Original line number Diff line number Diff line Loading @@ -920,7 +920,7 @@ void sip_codec_request::decode_headers(const osip_message_t* p_sip_message, LibS headers.supported().set_to_omit(); } headers.timestamp().set_to_omit(); headers.timestamp__().set_to_omit(); headers.unsupported().set_to_omit(); headers.userToUser().set_to_omit(); headers.userAgent().set_to_omit(); Loading docker/Dockerfile +2 −1 Original line number Diff line number Diff line Loading @@ -95,7 +95,7 @@ RUN chown -R etsi /home/etsi/dev/STF549_Ng112/ && cd /home/etsi/dev/STF549_Ng112 USER etsi RUN cd /home/etsi/frameworks \ && git clone git://git.savannah.gnu.org/osip.git ./osip \ && git clone https://git.savannah.gnu.org/git/osip.git ./osip \ && cd osip \ && ./autogen.sh \ && ./configure --prefix=/home/etsi \ Loading @@ -110,6 +110,7 @@ RUN cd /home/etsi/frameworks \ && ls \ && cd /home/etsi/dev/STF549_Ng112/ttcn \ && git clone https://forge.etsi.org/gitlab/LIBS/LibSip.git ./LibSip \ && git clone https://forge.etsi.org/gitlab/LIBS/LibIms.git ./LibIms \ && git clone https://forge.etsi.org/gitlab/LIBS/LibCommon.git ./LibCommon \ && git clone -bSTF525 https://forge.etsi.org/gitlab/LIBS/LibIts ./LibIts \ && cd /home/etsi/dev/STF549_Ng112/ttcn/LibIts \ Loading docker/run-container.sh +3 −2 Original line number Diff line number Diff line Loading @@ -7,9 +7,10 @@ docker run stf549_ng112:latest "/bin/bash" \ -c "source /home/etsi/devenv.bash \ && /home/etsi/dev/STF549_Ng112/scripts/update_emcom_project.bash \ && cd /home/etsi/dev/STF549_Ng112/scripts \ && ./update_emcom_project.bash \ && cd /home/etsi/dev/etsi_emcom/src/AtsNg112/objs \ && ../bin/ng112.bash \ && ../bin/ng112_generate_makefile.bash \ && ../bin/run_all.bash" # That's all Floks Loading etc/AtsNg112/AtsNg112.cfg +19 −16 Original line number Diff line number Diff line [MODULE_PARAMETERS] # This section shall contain the values of all parameters that are defined in your TTCN-3 modules. # IUT roles LibNg112_Pics.PICS_LIS_IUT := false; LibNg112_Pics.PICS_ECRF_IUT := false; LibNg112_Pics.PICS_ESRP_IUT := true; LibCommon_Time.PX_TAC := 30.0 #LibItsHttp_Pics.PICS_HEADER_HOST := "lis.gridgears.io" # Used for LIS LibItsHttp_Pics.PICS_HEADER_HOST := "ecrf.gridgears.io" # Used for ECRF #LibItsHttp_Pics.PICS_HEADER_HOST := "ptsv2.com" LibNg112_Pics.PICS_LIS_URI := "/api"; LibNg112_Pics.PICS_ECRF_URI := "/api"; #LibItsHttp_Pics.PICS_HEADER_CONTENT_TYPE := "application/held+xml;charset=utf-8"; LibItsHttp_Pics.PICS_HEADER_CONTENT_TYPE := "application/lost+xml;charset=utf-8"; #LibNg112_Pics.PICS_HTTP_GET_REQUEST := false LibNg112_Pixits.PX_DEVICE_URI_TEL := "<uri>+331234567890</uri>" # Position location #LibNg112_Pixits.PX_DEVICE_URI_TEL := "<uri>+331234567891</uri>" # Circle location #LibNg112_Pixits.PX_DEVICE_URI_TEL := "<uri>+331234567892</uri>" # Civic location #LibNg112_Pixits.PX_DEVICE_URI_TEL := "<uri>+331234567893</uri>" # Civic location LibNg112_Pixits.PX_DEVICE_NUMBER_POINT := { 43.616891, 7.053179 } LibNg112_Pixits.PX_CIRCLE_POS := { 43.617174, 7.05275 } LibNg112_Pixits.PX_CIRCLE_RADIUS := 15.000 #LibNg112_Pics.PICS_HTTP_POST_REQUEST := false [LOGGING] # In this section you can specify the name of the log file and the classes of events Loading @@ -44,10 +40,8 @@ LogEventTypes:= Yes #system.httpPort.params := "HTTP(codecs=lost:lost_codec;held:held_codec)/TCP(debug=1,server=lis.gridgears.io,use_ssl=1)" # ECRF system.httpPort.params := "HTTP(codecs=lost:lost_codec;held:held_codec)/TCP(debug=1,server=ecrf.gridgears.io,use_ssl=1)" # Test #system.httpPort.params := "HTTP(codecs=lost:lost_codec;held:held_codec)/TCP(debug=1,server=ptsv2.com,port=80,use_ssl=0)" #system.SIPP.params := "SIP/UDP(dst_ip=192.168.1.250,dst_port=5060,src_ip=192.168.1.253,src_port=5060)/ETH(mac_src=080027d2b658,mac_dst=90fd61e61902,eth_type=0800)/PCAP(mac_src=080027d2b658,nic=eth1,filter=and udp port 12345)" # SIP system.SIPP.params := "SIP/UDP(dst_ip=127.0.0.1,dst_port=5060,src_ip=10.10.33.253,src_port=5060)" [DEFINE] # In this section you can create macro definitions, Loading Loading @@ -85,7 +79,16 @@ system.httpPort.params := "HTTP(codecs=lost:lost_codec;held:held_codec)/TCP(debu #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_02 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_03 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_04 AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_05 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_05 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_06 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_07 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_08 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_09 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_10 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_11 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_12 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_13 AtsNg112_TestControl.control [GROUPS] # In this section you can specify groups of hosts. These groups can be used inside the Loading Loading
ccsrc/Protocols/Lost/lost_codec.cc +26 −0 Original line number Diff line number Diff line Loading @@ -24,10 +24,26 @@ int lost_codec::encode (const LibItsHttp__XmlMessageBodyTypes::XmlBody& msg, OCT const urn__ietf__params__xml__ns__lost1::FindService& find_service = msg.findServiceRequest(); loggers::get_instance().log_msg("lost_codec::encode: Process FindService", (const Base_Type&)find_service); find_service.encode(urn__ietf__params__xml__ns__lost1::FindService_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else if (msg.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_listServices)) { const urn__ietf__params__xml__ns__lost1::ListServices& list_services = msg.listServices(); loggers::get_instance().log_msg("lost_codec::encode: Process ListServices", (const Base_Type&)list_services); list_services.encode(urn__ietf__params__xml__ns__lost1::ListServices_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else if (msg.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_listServicesByLocation)) { const urn__ietf__params__xml__ns__lost1::ListServicesByLocation& list_services_by_location = msg.listServicesByLocation(); loggers::get_instance().log_msg("lost_codec::encode: Process ListServicesByLocation", (const Base_Type&)list_services_by_location); list_services_by_location.encode(urn__ietf__params__xml__ns__lost1::ListServicesByLocation_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else if (msg.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_findServiceResponse)) { const urn__ietf__params__xml__ns__lost1::FindServiceResponse& find_service_response = msg.findServiceResponse(); loggers::get_instance().log_msg("lost_codec::encode: Process FindServiceResponse", (const Base_Type&)find_service_response); find_service_response.encode(urn__ietf__params__xml__ns__lost1::FindServiceResponse_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else if (msg.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_listServicesResponse)) { const urn__ietf__params__xml__ns__lost1::ListServicesResponse& list_services_response = msg.listServicesResponse(); loggers::get_instance().log_msg("lost_codec::encode: Process ListServicesResponse", (const Base_Type&)list_services_response); list_services_response.encode(urn__ietf__params__xml__ns__lost1::ListServicesResponse_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else if (msg.ischosen(LibItsHttp__XmlMessageBodyTypes::XmlBody::ALT_listServicesByLocationResponse)) { const urn__ietf__params__xml__ns__lost1::ListServicesByLocationResponse& list_services_by_location_response = msg.listServicesByLocationResponse(); loggers::get_instance().log_msg("lost_codec::encode: Process ListServicesByLocationResponse", (const Base_Type&)list_services_by_location_response); list_services_by_location_response.encode(urn__ietf__params__xml__ns__lost1::ListServicesByLocationResponse_descr_, encoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); } else { loggers::get_instance().warning("lost_codec::encode: Unsupported variant"); return -1; Loading Loading @@ -83,6 +99,16 @@ int lost_codec::decode (const OCTETSTRING& p_data, LibItsHttp__XmlMessageBodyTyp urn__ietf__params__xml__ns__lost1::FindServiceResponse find_service_response; find_service_response.decode(urn__ietf__params__xml__ns__lost1::FindServiceResponse_descr_, decoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); msg.findServiceResponse() = find_service_response; } else if (it->second.find("<listServicesResponse") != std::string::npos) { loggers::get_instance().warning("lost_codec::decode: Process ListServicesResponse"); urn__ietf__params__xml__ns__lost1::ListServicesResponse list_services_response; list_services_response.decode(urn__ietf__params__xml__ns__lost1::ListServicesResponse_descr_, decoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); msg.listServicesResponse() = list_services_response; } else if (it->second.find("<listServicesByLocationResponse") != std::string::npos) { loggers::get_instance().warning("lost_codec::decode: Process ListServicesByLocationResponse"); urn__ietf__params__xml__ns__lost1::ListServicesByLocationResponse list_services_by_location_response; list_services_by_location_response.decode(urn__ietf__params__xml__ns__lost1::ListServicesByLocationResponse_descr_, decoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); msg.listServicesByLocationResponse() = list_services_by_location_response; } else if (it->second.find("<findService") != std::string::npos) { urn__ietf__params__xml__ns__lost1::FindService find_service; find_service.decode(urn__ietf__params__xml__ns__lost1::FindService_descr_, decoding_buffer, TTCN_EncDec::CT_XER, XER_EXTENDED); Loading
ccsrc/Protocols/Sip/sip_codec_request.cc +1 −1 Original line number Diff line number Diff line Loading @@ -920,7 +920,7 @@ void sip_codec_request::decode_headers(const osip_message_t* p_sip_message, LibS headers.supported().set_to_omit(); } headers.timestamp().set_to_omit(); headers.timestamp__().set_to_omit(); headers.unsupported().set_to_omit(); headers.userToUser().set_to_omit(); headers.userAgent().set_to_omit(); Loading
docker/Dockerfile +2 −1 Original line number Diff line number Diff line Loading @@ -95,7 +95,7 @@ RUN chown -R etsi /home/etsi/dev/STF549_Ng112/ && cd /home/etsi/dev/STF549_Ng112 USER etsi RUN cd /home/etsi/frameworks \ && git clone git://git.savannah.gnu.org/osip.git ./osip \ && git clone https://git.savannah.gnu.org/git/osip.git ./osip \ && cd osip \ && ./autogen.sh \ && ./configure --prefix=/home/etsi \ Loading @@ -110,6 +110,7 @@ RUN cd /home/etsi/frameworks \ && ls \ && cd /home/etsi/dev/STF549_Ng112/ttcn \ && git clone https://forge.etsi.org/gitlab/LIBS/LibSip.git ./LibSip \ && git clone https://forge.etsi.org/gitlab/LIBS/LibIms.git ./LibIms \ && git clone https://forge.etsi.org/gitlab/LIBS/LibCommon.git ./LibCommon \ && git clone -bSTF525 https://forge.etsi.org/gitlab/LIBS/LibIts ./LibIts \ && cd /home/etsi/dev/STF549_Ng112/ttcn/LibIts \ Loading
docker/run-container.sh +3 −2 Original line number Diff line number Diff line Loading @@ -7,9 +7,10 @@ docker run stf549_ng112:latest "/bin/bash" \ -c "source /home/etsi/devenv.bash \ && /home/etsi/dev/STF549_Ng112/scripts/update_emcom_project.bash \ && cd /home/etsi/dev/STF549_Ng112/scripts \ && ./update_emcom_project.bash \ && cd /home/etsi/dev/etsi_emcom/src/AtsNg112/objs \ && ../bin/ng112.bash \ && ../bin/ng112_generate_makefile.bash \ && ../bin/run_all.bash" # That's all Floks Loading
etc/AtsNg112/AtsNg112.cfg +19 −16 Original line number Diff line number Diff line [MODULE_PARAMETERS] # This section shall contain the values of all parameters that are defined in your TTCN-3 modules. # IUT roles LibNg112_Pics.PICS_LIS_IUT := false; LibNg112_Pics.PICS_ECRF_IUT := false; LibNg112_Pics.PICS_ESRP_IUT := true; LibCommon_Time.PX_TAC := 30.0 #LibItsHttp_Pics.PICS_HEADER_HOST := "lis.gridgears.io" # Used for LIS LibItsHttp_Pics.PICS_HEADER_HOST := "ecrf.gridgears.io" # Used for ECRF #LibItsHttp_Pics.PICS_HEADER_HOST := "ptsv2.com" LibNg112_Pics.PICS_LIS_URI := "/api"; LibNg112_Pics.PICS_ECRF_URI := "/api"; #LibItsHttp_Pics.PICS_HEADER_CONTENT_TYPE := "application/held+xml;charset=utf-8"; LibItsHttp_Pics.PICS_HEADER_CONTENT_TYPE := "application/lost+xml;charset=utf-8"; #LibNg112_Pics.PICS_HTTP_GET_REQUEST := false LibNg112_Pixits.PX_DEVICE_URI_TEL := "<uri>+331234567890</uri>" # Position location #LibNg112_Pixits.PX_DEVICE_URI_TEL := "<uri>+331234567891</uri>" # Circle location #LibNg112_Pixits.PX_DEVICE_URI_TEL := "<uri>+331234567892</uri>" # Civic location #LibNg112_Pixits.PX_DEVICE_URI_TEL := "<uri>+331234567893</uri>" # Civic location LibNg112_Pixits.PX_DEVICE_NUMBER_POINT := { 43.616891, 7.053179 } LibNg112_Pixits.PX_CIRCLE_POS := { 43.617174, 7.05275 } LibNg112_Pixits.PX_CIRCLE_RADIUS := 15.000 #LibNg112_Pics.PICS_HTTP_POST_REQUEST := false [LOGGING] # In this section you can specify the name of the log file and the classes of events Loading @@ -44,10 +40,8 @@ LogEventTypes:= Yes #system.httpPort.params := "HTTP(codecs=lost:lost_codec;held:held_codec)/TCP(debug=1,server=lis.gridgears.io,use_ssl=1)" # ECRF system.httpPort.params := "HTTP(codecs=lost:lost_codec;held:held_codec)/TCP(debug=1,server=ecrf.gridgears.io,use_ssl=1)" # Test #system.httpPort.params := "HTTP(codecs=lost:lost_codec;held:held_codec)/TCP(debug=1,server=ptsv2.com,port=80,use_ssl=0)" #system.SIPP.params := "SIP/UDP(dst_ip=192.168.1.250,dst_port=5060,src_ip=192.168.1.253,src_port=5060)/ETH(mac_src=080027d2b658,mac_dst=90fd61e61902,eth_type=0800)/PCAP(mac_src=080027d2b658,nic=eth1,filter=and udp port 12345)" # SIP system.SIPP.params := "SIP/UDP(dst_ip=127.0.0.1,dst_port=5060,src_ip=10.10.33.253,src_port=5060)" [DEFINE] # In this section you can create macro definitions, Loading Loading @@ -85,7 +79,16 @@ system.httpPort.params := "HTTP(codecs=lost:lost_codec;held:held_codec)/TCP(debu #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_02 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_03 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_04 AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_05 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_05 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_06 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_07 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_08 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_09 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_10 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_11 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_12 #AtsNg112_TestCases.TC_ECRF_HTTP_POST_BV_13 AtsNg112_TestControl.control [GROUPS] # In this section you can specify groups of hosts. These groups can be used inside the Loading