Commit 675beb4e authored by Andreas Liebig's avatar Andreas Liebig
Browse files

Merge branch 'master' of forge.etsi.org:emergency-communications/NG112

parents 4a2cb107 cb106365
Loading
Loading
Loading
Loading
+12 −0
Original line number Diff line number Diff line
@@ -15,4 +15,16 @@
		<nature>org.eclipse.titan.designer.core.TITANNature</nature>
		<nature>org.eclipse.titan.log.viewer.TitanLogProject</nature>
	</natures>
	<linkedResources>
		<link>
			<name>ccsrc/Protocols/Tcp/Abstract_Socket.cc</name>
			<type>1</type>
			<location>C:/Users/yann/Documents/wireshark/cygwin64/home/yann/frameworks/titan/titan.core/performance_test/SIPApplibPerfTest/src/Abstract_Socket.cc</location>
		</link>
		<link>
			<name>ccsrc/Protocols/Tcp/Abstract_Socket.hh</name>
			<type>1</type>
			<location>C:/Users/yann/Documents/wireshark/cygwin64/home/yann/frameworks/titan/titan.core/performance_test/SIPApplibPerfTest/src/Abstract_Socket.hh</location>
		</link>
	</linkedResources>
</projectDescription>
+19 −3
Original line number Diff line number Diff line
NG112
# NG112

## Introduction
This repositories contains the test specifications and test adapter code.

Contact information
## Contact information
Email at cti_support at etsi dot org

License
## License
Unless specified otherwise, the content of this repository and the files contained are released under the ETSI Software License.
See the attached LICENSE file or visit
https://forge.etsi.org/etsi-software-license

## Standard links
- Next Generation 112 Long Term Definition, accessible [here](http://www.eena.org/uploads/gallery/files/pdf/2013-03-15-eena_ng_longtermdefinitionupdated.pdf)

## RFC links
- RFC 5222 - LoST: A Location-to-Service Translation Protocol, accessible [here](https://tools.ietf.org/html/rfc5222)
- RFC 5985 - HELD, accessible [here](https://tools.ietf.org/html/rfc5985)
- RFC 6155 - Use of Device Identity in HTTP-Enabled Location Delivery (HELD), accessible [here](https://tools.ietf.org/html/rfc6155)
- RFC 3863 - Presence Information Data Format (PIDF), accessible [here](https://tools.ietf.org/html/rfc3863)
- RFC 4119 - A Presence-based GEOPRIV Location Object Format, accessible [here](https://tools.ietf.org/html/rfc4119)
- RFC 5139 - Revised Civic Location Format for Presence Information Data Format Location Object (PIDF-LO), accessible [here](https://tools.ietf.org/html/rfc5139)
- RFC 7459 - Representation of Uncertainty and Confidence in the Presence Information Data Format Location Object (PIDF-LO), accessible [here](https://tools.ietf.org/html/rfc7459)

NOTE All draft can be found in the 'IETF XML Registry', accessible [here](https://www.iana.org/assignments/xml-registry/xml-registry.xhtml)

STF549_ng112.tpd

0 → 100644
+464 −0

File added.

Preview size limit exceeded, changes collapsed.

+28 −0
Original line number Diff line number Diff line

#include "LibItsHttp_MessageBodyTypes.hh"

#include "http_codec.hh"

#include "loggers.hh"

namespace LibItsHttp__EncdecDeclarations {

    BITSTRING fx__enc__http__message(const LibItsHttp__TypesAndValues::HttpMessage& p) {
      loggers::get_instance().log_msg(">>> fx__enc__http__message: ", (const Base_Type&)p);

        OCTETSTRING os;
        http_codec codec;
        codec.encode(p, os);

        return oct2bit(os);
    }
    INTEGER fx__dec__http__message(BITSTRING& pdu, LibItsHttp__TypesAndValues::HttpMessage& p) {
        loggers::get_instance().log_msg(">>> fx__dec__http__message: ", pdu);

        OCTETSTRING os = bit2oct(pdu);
        http_codec codec;
        codec.decode(os, p);

        return 0;
    }
} // End of namespace LibItsHttp__EncdecDeclarations
+119 −0
Original line number Diff line number Diff line

#include "LibSip_EncdecDeclarations.hh"
#include "LibSip_XMLTypes.hh"

#include "sip_codec_register_request.hh"
#include "sip_codec_invite_request.hh"

#include "loggers.hh"

namespace LibSip__EncdecDeclarations {

  BITSTRING fx__enc__Request(const LibSip__SIPTypesAndValues::Request& p) {
    loggers::get_instance().log_msg(">>> fx__enc__Request: ", p);

    float duration;
    std::string tag("fx__enc__Request");
    loggers::get_instance().set_start_time(tag);

    OCTETSTRING os;
    sip_codec_request codec;
    if (codec.encode(p, os) == -1) {
      loggers::get_instance().warning("fx__enc__Request -1 result code was returned");
      return int2bit(0, 1);
    }
    loggers::get_instance().set_stop_time(tag, duration);
    
    return oct2bit(os);
  }
  
  BITSTRING fx__enc__REGISTER__Request(const LibSip__SIPTypesAndValues::REGISTER__Request& p) {
    loggers::get_instance().log_msg(">>> fx__enc__REGISTER__Request: ", p);

    float duration;
    std::string tag("fx__enc__REGISTER__Request");
    loggers::get_instance().set_start_time(tag);

    OCTETSTRING os;
    sip_codec_register_request codec;
    if (codec.encode(p, os) == -1) {
      loggers::get_instance().warning("fx__enc__REGISTER__Request: -1 result code was returned");
      return int2bit(0, 1);
    }
    loggers::get_instance().set_stop_time(tag, duration);
    
    return oct2bit(os);
  }
  
  BITSTRING fx__enc__INVITE__Request(const LibSip__SIPTypesAndValues::INVITE__Request& p) {
    loggers::get_instance().log_msg(">>> fx__enc__INVITE__Request: ", p);

    float duration;
    std::string tag("fx__enc__INVITE__Request");
    loggers::get_instance().set_start_time(tag);

    OCTETSTRING os;
    sip_codec_invite_request codec;
    if (codec.encode(p, os) == -1) {
      loggers::get_instance().warning("fx__enc__INVITE__Request: -1 result code was returned");
      return int2bit(0, 1);
    }
    loggers::get_instance().set_stop_time(tag, duration);
    
    return oct2bit(os);
  }
  
  BITSTRING fx__enc__OPTIONS__Request(const LibSip__SIPTypesAndValues::OPTIONS__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__BYE__Request(const LibSip__SIPTypesAndValues::BYE__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__CANCEL__Request(const LibSip__SIPTypesAndValues::CANCEL__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__ACK__Request(const LibSip__SIPTypesAndValues::ACK__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__PRACK__Request(const LibSip__SIPTypesAndValues::PRACK__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__NOTIFY__Request(const LibSip__SIPTypesAndValues::NOTIFY__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__SUBSCRIBE__Request(const LibSip__SIPTypesAndValues::SUBSCRIBE__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__PUBLISH__Request(const LibSip__SIPTypesAndValues::PUBLISH__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__UPDATE__Request(const LibSip__SIPTypesAndValues::UPDATE__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__REFER__Request(const LibSip__SIPTypesAndValues::REFER__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__MESSAGE__Request(const LibSip__SIPTypesAndValues::MESSAGE__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__INFO__Request(const LibSip__SIPTypesAndValues::INFO__Request& p) { return BITSTRING(); }
  BITSTRING fx__enc__Response(const LibSip__SIPTypesAndValues::Response& p) { return BITSTRING(); }
  BITSTRING fx__enc__Raw(const CHARSTRING& p) { return BITSTRING(); }
  BITSTRING fx__enc__SMS(const LibSip__SimpleMsgSummaryTypes::SimpleMsgSummary& pdu) { return BITSTRING(); }
  BITSTRING fx__enc__MessageBody(const LibSip__MessageBodyTypes::MessageBody& pdu) { return BITSTRING(); }
  INTEGER fx__dec__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::Request& p) { return INTEGER(0); }

  INTEGER fx__dec__REGISTER__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::REGISTER__Request& p) {
    loggers::get_instance().log_msg(">>> fx__dec__REGISTER__Request: ", pdu);

    OCTETSTRING os = bit2oct(pdu);
    sip_codec_register_request codec;
    codec.decode(os, p);

    return 0;
  }

  INTEGER fx__dec__INVITE__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::INVITE__Request& p) {
    loggers::get_instance().log_msg(">>> fx__dec__INVITE__Request: ", pdu);

    OCTETSTRING os = bit2oct(pdu);
    sip_codec_invite_request codec;
    codec.decode(os, p);

    return 0;
  }
  
  INTEGER fx__dec__OPTIONS__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::OPTIONS__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__BYE__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::BYE__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__CANCEL__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::CANCEL__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__ACK__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::ACK__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__PRACK__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::PRACK__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__NOTIFY__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::NOTIFY__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__SUBSCRIBE__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::SUBSCRIBE__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__PUBLISH__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::PUBLISH__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__UPDATE__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::UPDATE__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__REFER__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::REFER__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__MESSAGE__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::MESSAGE__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__INFO__Request(BITSTRING& pdu, LibSip__SIPTypesAndValues::INFO__Request& p) { return INTEGER(0); }
  INTEGER fx__dec__Response(BITSTRING& pdu, LibSip__SIPTypesAndValues::Response& p) { return INTEGER(0); }
  INTEGER fx__dec__SMS(BITSTRING& pdu, LibSip__SimpleMsgSummaryTypes::SimpleMsgSummary& p) { return INTEGER(0); }
  INTEGER fx__dec__MessageBody(BITSTRING& pdu, LibSip__MessageBodyTypes::MessageBody& p) { return INTEGER(0); }
} // End of namespace LibSip__EncdecDeclarations
Loading