Commit 7b28d5bb authored by mullers's avatar mullers
Browse files

Start of LibSIP V2.0.0.

LibSIP V2.0.0 will introduce type changes on request from STF160 which mean that there is NO backwards compatibility between V2.0.0 and v1.7.0 
parent 5c03ff12
Loading
Loading
Loading
Loading
+150 −0
Original line number Diff line number Diff line
module XSDAUX {//MRO
	/* 0.anySimpleType */
	type anytype anySimpleType;

	/* 1.string */
	type charstring string;

	/* 2.boolean */
	type integer bitXSD (1, 0) ;
	
	type union booleanXSD {
		bitXSD bit, boolean bool
	}

	/* 3.decimal */
	type float decimal;

	/* 4.float */
	type float floatXSD;

	/* 5.double */
	type float double;

	/* 6.duration */
	type charstring duration;

	/* 7.dateTime */
	type charstring dateTime;

	/* 8.time */
	type charstring time;

	/* 9.date */
	type charstring date;

	/* 10.gYearMonth */
	type charstring gYearMonth;

	/* 11.gYear */
	type charstring gYear;

	/* 12.gMonthDay */
	type charstring gMonthDay;

	/* 13.gDay */
	type charstring gDay;

	/* 14.gMonth */
	type charstring gMonth;

	/* 15.hexBinary */
	type hexstring hexBinary;

	/* 16.base64Binary */
	type charstring base64Binary;

	/* 17.anyURI */
	type charstring anyURI;

	/* 18.QName */
	type charstring QName;

	/* 19.NOTATION */
	type charstring NOTATION;

	/* 20.normalizedString */
	type charstring normalizedString;

	/* 21.token */
	type charstring token;

	/* 22.language */
	type charstring languageXSD;

	/* 23.NMTOKEN */
	type charstring NMTOKEN;

	/* 24.NMTOKENS */
	type set of charstring NMTOKENS;

	/* 25.Name */
	type charstring Name;

	/* 27.NCName */
	type charstring NCName;

	/* 28.ID */
	type charstring ID;

	/* 29.IDREFS */
	type set of charstring IDREFS;

	/* 30.ENTITY */
	type charstring ENTITY;

	/* 31.ENTITIES */
	type set of charstring ENTITIES;

	/* 32.nonPositiveInteger */
	type integer nonPositiveInteger (- infinity .. 0) ;

	/* 33.negativeInteger */
	type integer negativeInteger (- infinity .. - 1) ;

	/* 34.long */
//	type integer long (- 9223372036854775808 .. 9223372036854775807) ;//MRO

	/* 35.int */
	type integer int (- 2147483648 .. 2147483647) ;

	/* 36.short */
	type integer short (- 32768 .. 32767) ;

	/* 37.byte */
	type integer byte (- 128 .. 127) ;

	/* 38.nonNegativeInteger */
	type integer nonNegativeInteger (0 .. infinity) ;

	/* 39.unsignedLong */
	type integer unsignedLong (0 .. 18446744073709551615) ;//MRO

	/* 40.unsignedInt */
	type integer unsignedInt (0 .. 4294967295) ;

	/* 41.unsignedShort */
	type integer unsignedShort (0 .. 65535) ;

	/* 42.unsignedByte */
	type integer unsignedByte (0 .. 255) ;

	/* 43.positiveInteger */
	type integer positiveInteger (1 .. infinity) ;

	/* 44.integer */
	type integer integerXSD;

	/* 45.anyAttributes */
	type record of record {
		charstring name, 
		charstring val
	} anyAttributes;

	/* 46. anyType */
	/**
	 * This is to represent elements without a given type
	 */
	type record anyType {
	}
}
+65 −0
Original line number Diff line number Diff line
/****************************************************************************/
/* $Id$             */
/*                                                                          */
/*   (c) 2009  Universite de Rennes 1                                       */
/*                                                                          */
/* Contributors:                                                            */
/*  - Anthony BAIRE                                                         */
/*                                                                          */
/* Contact address: <t3devkit@irisa.fr>                                     */
/*                                                                          */
/*                                                                          */
/* This file is part of application examples provided along with T3DevKit,  */
/* a free toolkit for building TTCN-3 tests.                                */
/*                                                                          */
/* This software is governed by the CeCILL-B license under French law and   */
/* abiding by the rules of distribution of free software.  You can  use,    */
/* modify and/or redistribute the software under the terms of the CeCILL-B  */
/* license as circulated by CEA, CNRS and INRIA at the following URL        */
/* "http://www.cecill.info".                                                */
/*                                                                          */
/* As a counterpart to the access to the source code and  rights to copy,   */
/* modify and redistribute granted by the license, users are provided only  */
/* with a limited warranty  and the software's author,  the holder of the   */
/* economic rights,  and the successive licensors  have only  limited       */
/* liability.                                                               */
/*                                                                          */
/* In this respect, the user's attention is drawn to the risks associated   */
/* with loading,  using,  modifying and/or developing or reproducing the    */
/* software by the user in light of its specific status of free software,   */
/* that may mean  that it is complicated to manipulate,  and  that  also    */
/* therefore means  that it is reserved for developers  and  experienced    */
/* professionals having in-depth computer knowledge. Users are therefore    */
/* encouraged to load and test the software's suitability as regards their  */
/* requirements in conditions enabling the security of their systems and/or */ 
/* data to be ensured and,  more generally, to use and operate it in the    */
/* same conditions as regards security.                                     */
/*                                                                          */
/* The fact that you are presently reading this means that you have had     */
/* knowledge of the CeCILL-B license and that you accept its terms.         */
/****************************************************************************/
#include "EchoPort.h"
using namespace t3devlib;

EchoPort::EchoPort (PortId& id) :
	Port (id)
{ 
}

EchoPort::~EchoPort() 
{
}

bool EchoPort::Map (const PortId& connected_port_id) 
{ 
  return true; 
} 
 
bool EchoPort::Unmap (const PortId& connected_port_id) 
{ 
  return true; 
}

bool EchoPort::Send (const ComponentId& from,const Bitstring& msg) {
  return EnqueueMsg (from, msg); 
}
+61 −0
Original line number Diff line number Diff line
/****************************************************************************/
/* $Id$             */
/*                                                                          */
/*   (c) 2009  Universite de Rennes 1                                       */
/*                                                                          */
/* Contributors:                                                            */
/*  - Anthony BAIRE                                                         */
/*                                                                          */
/* Contact address: <t3devkit@irisa.fr>                                     */
/*                                                                          */
/*                                                                          */
/* This file is part of application examples provided along with T3DevKit,  */
/* a free toolkit for building TTCN-3 tests.                                */
/*                                                                          */
/* This software is governed by the CeCILL-B license under French law and   */
/* abiding by the rules of distribution of free software.  You can  use,    */
/* modify and/or redistribute the software under the terms of the CeCILL-B  */
/* license as circulated by CEA, CNRS and INRIA at the following URL        */
/* "http://www.cecill.info".                                                */
/*                                                                          */
/* As a counterpart to the access to the source code and  rights to copy,   */
/* modify and redistribute granted by the license, users are provided only  */
/* with a limited warranty  and the software's author,  the holder of the   */
/* economic rights,  and the successive licensors  have only  limited       */
/* liability.                                                               */
/*                                                                          */
/* In this respect, the user's attention is drawn to the risks associated   */
/* with loading,  using,  modifying and/or developing or reproducing the    */
/* software by the user in light of its specific status of free software,   */
/* that may mean  that it is complicated to manipulate,  and  that  also    */
/* therefore means  that it is reserved for developers  and  experienced    */
/* professionals having in-depth computer knowledge. Users are therefore    */
/* encouraged to load and test the software's suitability as regards their  */
/* requirements in conditions enabling the security of their systems and/or */ 
/* data to be ensured and,  more generally, to use and operate it in the    */
/* same conditions as regards security.                                     */
/*                                                                          */
/* The fact that you are presently reading this means that you have had     */
/* knowledge of the CeCILL-B license and that you accept its terms.         */
/****************************************************************************/
#ifndef EchoPort_h
#define EchoPort_h

#include <t3devlib/t3devlib.h>

	
class EchoPort : public t3devlib::Port
{
public:
	EchoPort (t3devlib::PortId& id);
	~EchoPort();
		
protected:
	bool Map (const t3devlib::PortId& port_id);
	bool Unmap (const t3devlib::PortId& port_id);
	bool Send (const t3devlib::ComponentId& from, const t3devlib::Bitstring& msg);
		
};


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

#T3DK_TTCN_SOURCES	= ../../ttcn/LibSip_SIPTypesAndValues.ttcn ../../ttcn/LibSip_SDPTypes.ttcn
T3DK_TTCN_SOURCES	= $(wildcard ../validation/*.ttcn)

T3DK_ROOT_MODULE	= TestExecution

T3DK_C_SOURCES		= $(wildcard *.c)

T3DK_CXX_SOURCES	= $(wildcard *.cpp)

T3DK_CDGEN_HEADER	= codec.h

T3DK_CODETS		= sip_codets.cpp

T3DK_LIBS		= -lboost_regex$(if $(shell uname -o | grep Cygwin),-gcc-mt,)

CPPFLAGS		= -I.

CC			= gcc

CXX			= g++

CFLAGS			= -g 

CXXFLAGS		= -g

include $(shell t3devkit-config --mk)
+67 −0
Original line number Diff line number Diff line
#ifndef  CODEC_INC
#define  CODEC_INC
#include <t3devlib/t3devlib.h>

namespace t3devlib {
namespace gen {

typedef t3devlib::Charstring CallidString;
typedef t3devlib::Charstring ContentCoding;
typedef t3devlib::Charstring	DeltaSec;	// an external operation can handle this field
typedef t3devlib::Charstring LanguageTag;
typedef t3devlib::Charstring OptionTag;
typedef t3devlib::Charstring ServerVal;
typedef t3devlib::Charstring PAssertedServiceValue;
typedef t3devlib::Charstring PrivacyValue;
typedef t3devlib::Charstring EventType;
typedef t3devlib::Charstring SubState;
typedef t3devlib::Charstring PMediaAuthValue; //HEXDIG "0"-"9", "A"-"F"
typedef t3devlib::Charstring Raw;

// ! subtype of structured types !
#define SDP_contact_tel SDP_contact
#define SDP_contact_email SDP_contact
#define PAssertedIDValue Addr_Union
#define PPreferredIDValue Addr_Union

typedef t3devlib::Undef XmlBody;


// enumerated types
class FieldName : public t3devlib::Enum
{
private:
	static const char* msFields[];
public:
	FieldName() : Enum (msFields) {}

	const char* GetModuleName() const { return "LibSip_SIPTypesAndValues"; }
	const char* GetTypeName() const   { return "FieldName"; }

	void Encode (Buffer& buffer) throw (EncodeError);
	void Decode (Buffer& buffer) throw (DecodeError);
};

// enumerated types
class Method : public t3devlib::Enum
{
private:
	static const char* msSipMethods[];
	static const char* msMethodValues[];
public:
	Method() : Enum (msSipMethods) {}

	const char* GetModuleName() const { return "LibSip_SIPTypesAndValues"; }
	const char* GetTypeName() const   { return "Method"; }

	void Encode (Buffer& buffer) throw (EncodeError);
	void Decode (Buffer& buffer) throw (DecodeError);
};

// additional attributes
#define DEFINITIONS_Addr_Union()	int mPosition;

}} //namespaces

#endif   // ----- #ifndef CODEC_INC  -----
Loading