ies.h
Go to the documentation of this file.
/*
*
* Inter Asterisk Exchange 2
*
* The classes used to hold Information Elements.
*
* Open Phone Abstraction Library (OPAL)
*
* Copyright (c) 2005 Indranet Technologies Ltd.
*
* The contents of this file are subject to the Mozilla Public License
* Version 1.0 (the "License"); you may not use this file except in
* compliance with the License. You may obtain a copy of the License at
* http://www.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS IS"
* basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See
* the License for the specific language governing rights and limitations
* under the License.
*
* The Original Code is Open Phone Abstraction Library.
*
* The Initial Developer of the Original Code is Indranet Technologies Ltd.
*
* The author of this code is Derek J Smithies
*
* $Revision: 24625 $
* $Author: dereksmithies $
* $Date: 2010-08-08 17:41:30 -0500 (Sun, 08 Aug 2010) $
*/
#ifndef OPAL_IAX2_IES_H
#define OPAL_IAX2_IES_H
#ifndef _PTLIB_H
#include <ptlib.h>
#endif
#include <opal/buildopts.h>
#if OPAL_IAX2
#include <ptlib/sockets.h>
#include <iax2/iedata.h>
#ifdef P_USE_PRAGMA
#pragma interface
#endif
class IAX2Ie;
class IAX2Encryption;
class IAX2Ie : public PObject
{
PCLASSINFO(IAX2Ie, PObject);
public:
enum IAX2IeTypeCode {
ie_calledNumber = 1,
ie_callingNumber = 2,
ie_callingAni = 3,
ie_callingName = 4,
ie_calledContext = 5,
ie_userName = 6,
ie_password = 7,
ie_capability = 8,
ie_format = 9,
ie_language = 10,
ie_version = 11,
ie_adsicpe = 12,
ie_dnid = 13,
ie_authMethods = 14,
ie_challenge = 15,
ie_md5Result = 16,
ie_rsaResult = 17,
ie_apparentAddr = 18,
ie_refresh = 19,
ie_dpStatus = 20,
ie_callNo = 21,
ie_cause = 22,
ie_iaxUnknown = 23,
ie_msgCount = 24,
ie_autoAnswer = 25,
ie_musicOnHold = 26,
ie_transferId = 27,
ie_rdnis = 28,
ie_provisioning = 29,
ie_aesProvisioning = 30,
ie_dateTime = 31,
ie_deviceType = 32,
ie_serviceIdent = 33,
ie_firmwareVer = 34,
ie_fwBlockDesc = 35,
ie_fwBlockData = 36,
ie_provVer = 37,
ie_callingPres = 38,
ie_callingTon = 39,
ie_callingTns = 40,
ie_samplingRate = 41,
ie_causeCode = 42,
ie_encryption = 43,
ie_encKey = 44,
ie_codecPrefs = 45,
ie_recJitter = 46,
ie_recLoss = 47,
ie_recPackets = 48,
ie_recDelay = 49,
ie_recDropped = 50,
ie_recOoo = 51,
ie_variable = 52,
ie_ospToken = 53,
ie_callToken = 54,
ie_capability2 = 55,
ie_format2 = 56,
ie_countEntries
};
IAX2Ie();
virtual ~IAX2Ie() { };
static IAX2Ie *BuildInformationElement(BYTE _typeCode, BYTE length, BYTE *srcData);
virtual PBoolean IsValid() { return validData; }
virtual BYTE GetLengthOfData() { return 0; }
int GetBinarySize() { return 2 + GetLengthOfData(); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return 255; }
void SetData(int &/*newData*/) { PAssertAlways("Ie class cannnot set data value"); };
int ReadData() { PAssertAlways("Ie class cannot read the internal data value"); return 0; };
void WriteBinary(void *data, PINDEX & writeIndex);
virtual void StoreDataIn(IAX2IeData &/*res*/) { PAssertAlways(PUnimplementedFunction); }
protected:
virtual void WriteBinary(BYTE * /*data*/) { PAssertAlways(PUnimplementedFunction); }
PBoolean validData;
};
class IAX2IeInvalidElement : public IAX2Ie
{
PCLASSINFO(IAX2IeInvalidElement, IAX2Ie);
public:
IAX2IeInvalidElement() : IAX2Ie() {};
virtual BYTE GetlengthOfData() { return 0; }
virtual void PrintOn(ostream & str) const
{ str << "Invlalid Information Element" << endl; }
protected:
virtual void WriteBinary(BYTE * /*data*/) { }
};
class IAX2IeNone : public IAX2Ie
{
PCLASSINFO(IAX2IeNone, IAX2Ie);
IAX2IeNone(BYTE length, BYTE *srcData);
IAX2IeNone() : IAX2Ie() {}
virtual BYTE GetLengthOfData() { return 0; }
BYTE GetValue() { return 0; }
virtual void PrintOn(ostream & str) const;
void SetData(void * /*newData*/)
{ PAssertAlways("IeNone cannot set data"); }
int ReadData() { PAssertAlways("IeNone cannot read the internal data value"); return 0; }
protected:
virtual void WriteBinary(BYTE * /*data*/) { }
};
class IAX2IeByte : public IAX2Ie
{
PCLASSINFO(IAX2IeByte, IAX2Ie);
IAX2IeByte(BYTE length, BYTE *srcData);
IAX2IeByte(BYTE newValue) : IAX2Ie() { SetData(newValue); }
IAX2IeByte() : IAX2Ie() { }
virtual BYTE GetLengthOfData() { return sizeof(dataValue); }
virtual void PrintOn(ostream & str) const;
void SetData(BYTE newData) { dataValue = newData; validData = true; }
BYTE ReadData() { return dataValue; }
protected:
virtual void WriteBinary(BYTE *data) { data[0] = dataValue; }
BYTE dataValue;
};
class IAX2IeChar : public IAX2Ie
{
PCLASSINFO(IAX2IeChar, IAX2Ie);
IAX2IeChar(BYTE length, BYTE *srcData);
IAX2IeChar(char newValue) : IAX2Ie() { SetData(newValue); }
IAX2IeChar() : IAX2Ie() { }
virtual BYTE GetLengthOfData() { return sizeof(dataValue); }
virtual void PrintOn(ostream & str) const;
void SetData(char newData) { dataValue = newData; validData = true; }
char ReadData() { return dataValue; }
protected:
virtual void WriteBinary(BYTE *data) { data[0] = dataValue; }
char dataValue;
};
class IAX2IeShort : public IAX2Ie
{
PCLASSINFO(IAX2IeShort, IAX2Ie);
IAX2IeShort(BYTE length, BYTE *srcData);
IAX2IeShort(short newValue) : IAX2Ie() { SetData(newValue); }
IAX2IeShort() : IAX2Ie() { }
virtual BYTE GetLengthOfData() { return sizeof(dataValue); }
virtual void PrintOn(ostream & str) const;
void SetData(short newData) { dataValue = newData; validData = true; }
short ReadData() { return dataValue; }
protected:
virtual void WriteBinary(BYTE *data);
short dataValue;
};
class IAX2IeInt : public IAX2Ie
{
PCLASSINFO(IAX2IeInt, IAX2Ie);
IAX2IeInt(BYTE length, BYTE *srcData);
IAX2IeInt(int newValue) : IAX2Ie() { SetData(newValue); }
IAX2IeInt() : IAX2Ie() { }
virtual BYTE GetLengthOfData() { return sizeof(dataValue); }
virtual void PrintOn(ostream & str) const;
void SetData(int newData) { dataValue = newData; validData = true; }
int ReadData() { return dataValue; }
protected:
virtual void WriteBinary(BYTE *data);
int dataValue;
};
class IAX2IeUShort : public IAX2Ie
{
PCLASSINFO(IAX2IeUShort, IAX2Ie);
IAX2IeUShort(BYTE length, BYTE *srcData);
IAX2IeUShort(unsigned short newValue) : IAX2Ie() { SetData(newValue); }
IAX2IeUShort() : IAX2Ie() {}
virtual BYTE GetLengthOfData() { return sizeof(dataValue); }
virtual void PrintOn(ostream & str) const;
void SetData(unsigned short newData) { dataValue = newData; validData = true; }
unsigned short ReadData() { return dataValue; }
protected:
virtual void WriteBinary(BYTE *data);
unsigned short dataValue;
};
class IAX2IeUInt : public IAX2Ie
{
PCLASSINFO(IAX2IeUInt, IAX2Ie);
IAX2IeUInt(BYTE length, BYTE *srcData);
IAX2IeUInt() : IAX2Ie() {}
IAX2IeUInt(unsigned int newValue) { SetData(newValue); }
virtual BYTE GetLengthOfData() { return sizeof(dataValue); }
virtual void PrintOn(ostream & str) const;
void SetData(unsigned int &newData) { dataValue = newData; validData = true; }
unsigned int ReadData() { return dataValue; }
protected:
virtual void WriteBinary(BYTE *data);
unsigned int dataValue;
};
class IAX2IeString : public IAX2Ie
{
PCLASSINFO(IAX2IeString, IAX2Ie);
public:
IAX2IeString(BYTE length, BYTE *srcData);
IAX2IeString(const PString & newValue) : IAX2Ie() { SetData(newValue); }
IAX2IeString(const char * newValue) : IAX2Ie() { SetData(newValue); }
IAX2IeString() : IAX2Ie() {}
virtual BYTE GetLengthOfData();
void PrintOn(ostream & str) const;
void SetData(const PString & newData);
void SetData(const char * newData);
PString ReadData() { return dataValue; }
protected:
virtual void WriteBinary(BYTE *data);
PString dataValue;
};
class IAX2IeBinary : public IAX2Ie
{
PCLASSINFO(IAX2IeBinary, IAX2Ie);
public:
IAX2IeBinary(BYTE length, BYTE *srcData);
IAX2IeBinary(PBYTEArray newValue) : IAX2Ie() { SetData(newValue); }
IAX2IeBinary() : IAX2Ie() {}
virtual BYTE GetLengthOfData() { return (BYTE)dataValue.GetSize(); }
virtual void PrintOn(ostream & str) const;
void SetData(const PBYTEArray & newData);
void GetData(PBYTEArray & answer);
void CopyData(IAX2IeBinary *src);
protected:
virtual void WriteBinary(BYTE *data);
PBYTEArray dataValue;
};
class IAX2IeDateAndTime : public IAX2Ie
{
PCLASSINFO(IAX2IeDateAndTime, IAX2Ie);
public:
IAX2IeDateAndTime(BYTE length, BYTE *srcData);
IAX2IeDateAndTime(const PTime & newValue) : IAX2Ie() { SetData(newValue); }
IAX2IeDateAndTime() : IAX2Ie() {}
virtual void PrintOn(ostream & str) const;
virtual BYTE GetLengthOfData() { return 4; }
void SetData(const PTime & newData)
{ dataValue = newData; validData = true; }
PTime ReadData() { return dataValue; }
protected:
virtual void WriteBinary(BYTE *data);
PTime dataValue;
};
class IAX2IeBlockOfData : public IAX2Ie
{
PCLASSINFO(IAX2IeBlockOfData, IAX2Ie);
public:
IAX2IeBlockOfData(BYTE length, BYTE *srcData);
IAX2IeBlockOfData(const PBYTEArray & newData) : IAX2Ie() { SetData(newData); }
IAX2IeBlockOfData() : IAX2Ie() {}
virtual void PrintOn(ostream & str) const;
virtual BYTE GetLengthOfData() { return (BYTE)dataValue.GetSize(); }
void SetData(const PBYTEArray & newData)
{ dataValue = newData; validData = true; }
PBYTEArray ReadData() { return dataValue; }
protected:
virtual void WriteBinary(BYTE *data);
PBYTEArray dataValue;
};
class IAX2IeSockaddrIn : public IAX2Ie
{
PCLASSINFO(IAX2IeSockaddrIn, IAX2Ie);
public:
IAX2IeSockaddrIn(BYTE length, BYTE *srcData);
IAX2IeSockaddrIn(const PIPSocket::Address & addr, PINDEX port) : IAX2Ie()
{ SetData(addr, port); }
IAX2IeSockaddrIn() : IAX2Ie() {}
~IAX2IeSockaddrIn() { } ;
virtual void PrintOn(ostream & str) const;
virtual BYTE GetLengthOfData() { return sizeof(struct sockaddr_in); }
void SetData(const PIPSocket::Address & newAddr, PINDEX newPort)
{ dataValue = newAddr; portNumber = newPort; validData = true; }
PIPSocket::Address ReadData() { return dataValue; }
protected:
virtual void WriteBinary(BYTE *data);
PIPSocket::Address dataValue;
PINDEX portNumber;
};
class IAX2IeCalledNumber : public IAX2IeString
{
PCLASSINFO(IAX2IeCalledNumber, IAX2IeString);
public:
IAX2IeCalledNumber(BYTE length, BYTE *srcData)
: IAX2IeString(length, srcData) {};
IAX2IeCalledNumber(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_calledNumber; }
virtual void StoreDataIn(IAX2IeData &res) { res.calledNumber = dataValue; }
protected:
};
class IAX2IeCallingNumber : public IAX2IeString
{
PCLASSINFO(IAX2IeCallingNumber, IAX2IeString);
public:
IAX2IeCallingNumber(BYTE length, BYTE *srcData)
: IAX2IeString(length, srcData) { };
IAX2IeCallingNumber(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_callingNumber; }
virtual void StoreDataIn(IAX2IeData &res)
{ res.callingNumber = dataValue; }
protected:
};
class IAX2IeCallingAni : public IAX2IeString
{
PCLASSINFO(IAX2IeCallingAni, IAX2IeString);
public:
IAX2IeCallingAni(BYTE length, BYTE *srcData)
: IAX2IeString(length, srcData) { };
IAX2IeCallingAni(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_callingAni; }
virtual void StoreDataIn(IAX2IeData &res)
{ res.callingAni = dataValue; }
protected:
};
class IAX2IeCallingName : public IAX2IeString
{
PCLASSINFO(IAX2IeCallingName, IAX2IeString);
public:
IAX2IeCallingName(BYTE length, BYTE *srcData)
: IAX2IeString(length, srcData) { };
IAX2IeCallingName(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_callingName; }
virtual void StoreDataIn(IAX2IeData &res)
{ res.callingName = dataValue; }
protected:
};
class IAX2IeCalledContext : public IAX2IeString
{
PCLASSINFO(IAX2IeCalledContext, IAX2IeString);
public:
IAX2IeCalledContext(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
IAX2IeCalledContext(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_calledContext; }
virtual void StoreDataIn(IAX2IeData &res)
{ res.calledContext = dataValue; }
protected:
};
class IAX2IeUserName : public IAX2IeString
{
PCLASSINFO(IAX2IeUserName, IAX2IeString);
public:
IAX2IeUserName(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
IAX2IeUserName(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_userName; }
virtual void StoreDataIn(IAX2IeData &res) { res.userName = dataValue; }
protected:
};
class IAX2IePassword : public IAX2IeString
{
PCLASSINFO(IAX2IePassword, IAX2IeString);
public:
IAX2IePassword(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
IAX2IePassword(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_password; }
virtual void StoreDataIn(IAX2IeData &res) { res.password = dataValue; }
protected:
};
class IAX2IeCapability : public IAX2IeUInt
{
PCLASSINFO(IAX2IeCapability, IAX2IeUInt);
public:
IAX2IeCapability(BYTE length, BYTE *srcData) : IAX2IeUInt(length, srcData) { };
IAX2IeCapability(unsigned int newValue) : IAX2IeUInt(newValue) { }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_capability; }
virtual void StoreDataIn(IAX2IeData &res) { res.capability = dataValue; }
protected:
};
class IAX2IeFormat : public IAX2IeUInt
{
PCLASSINFO(IAX2IeFormat, IAX2IeUInt);
public:
IAX2IeFormat(BYTE length, BYTE *srcData) : IAX2IeUInt(length, srcData) { };
IAX2IeFormat(unsigned int newValue) : IAX2IeUInt(newValue) { }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_format; }
virtual void StoreDataIn(IAX2IeData &res) { res.format = dataValue; }
protected:
};
class IAX2IeLanguage : public IAX2IeString
{
PCLASSINFO(IAX2IeLanguage, IAX2IeString);
public:
IAX2IeLanguage(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
IAX2IeLanguage(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_language; }
virtual void StoreDataIn(IAX2IeData &res) { res.language = dataValue; }
protected:
};
class IAX2IeVersion : public IAX2IeShort
{
PCLASSINFO(IAX2IeVersion, IAX2IeShort);
public:
IAX2IeVersion(BYTE length, BYTE *srcData) : IAX2IeShort(length, srcData) { };
IAX2IeVersion() { dataValue = 2; validData = true; }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_version; }
virtual void StoreDataIn(IAX2IeData &res) { res.version = dataValue; }
protected:
};
class IAX2IeAdsicpe : public IAX2IeShort
{
PCLASSINFO(IAX2IeAdsicpe, IAX2IeShort);
public:
IAX2IeAdsicpe(BYTE length, BYTE *srcData) : IAX2IeShort(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_adsicpe; }
virtual void StoreDataIn(IAX2IeData &res) { res.adsicpe = dataValue; }
protected:
};
class IAX2IeDnid : public IAX2IeString
{
PCLASSINFO(IAX2IeDnid, IAX2IeString);
public:
IAX2IeDnid(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
IAX2IeDnid(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_dnid; }
virtual void StoreDataIn(IAX2IeData &res) { res.dnid = dataValue; }
protected:
};
class IAX2IeAuthMethods : public IAX2IeShort
{
PCLASSINFO(IAX2IeAuthMethods, IAX2IeShort);
public:
IAX2IeAuthMethods(BYTE length, BYTE *srcData) : IAX2IeShort(length, srcData) { };
IAX2IeAuthMethods(short newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_authMethods; }
virtual void StoreDataIn(IAX2IeData &res) { res.authMethods = dataValue; }
static PBoolean IsRsaAuthentication(short testValue) { return InternalIsRsa(testValue); }
static PBoolean IsMd5Authentication(short testValue) { return InternalIsMd5(testValue); }
static PBoolean IsPlainTextAuthentication(short testValue) { return InternalIsPlainText(testValue); }
PBoolean IsRsaAuthentication() { if (IsValid()) return InternalIsRsa(dataValue); else return false; }
PBoolean IsMd5Authentication() { if (IsValid()) return InternalIsMd5(dataValue); else return false; }
PBoolean IsPlainTextAuthentication() { if (IsValid()) return InternalIsPlainText(dataValue); else return false; }
protected:
static PBoolean InternalIsRsa(short testValue) { return testValue & 0x04; }
static PBoolean InternalIsMd5(short testValue) { return testValue & 0x02; }
static PBoolean InternalIsPlainText(short testValue) { return testValue & 0x01; }
};
class IAX2IeChallenge : public IAX2IeString
{
PCLASSINFO(IAX2IeChallenge, IAX2IeString);
public:
IAX2IeChallenge(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
IAX2IeChallenge(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_challenge; }
virtual void StoreDataIn(IAX2IeData &res) { res.challenge = dataValue; }
protected:
};
class IAX2IeMd5Result : public IAX2IeString
{
PCLASSINFO(IAX2IeMd5Result, IAX2IeString);
public:
IAX2IeMd5Result(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
IAX2IeMd5Result(const PString & newValue) { SetData(newValue); }
IAX2IeMd5Result(const PString & challenge, const PString & password);
IAX2IeMd5Result(IAX2Encryption & encryption);
void InitializeChallengePassword(const PString & newChallenge, const PString & newPassword);
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_md5Result; }
virtual void StoreDataIn(IAX2IeData &res) { res.md5Result = dataValue; }
PBYTEArray & GetDataBlock() { return dataBlock; }
protected:
PBYTEArray dataBlock;
};
class IAX2IeRsaResult : public IAX2IeString
{
PCLASSINFO(IAX2IeRsaResult, IAX2IeString);
public:
IAX2IeRsaResult(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
IAX2IeRsaResult(const PString & newValue) { SetData(newValue); }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_rsaResult; }
virtual void StoreDataIn(IAX2IeData &res) { res.rsaResult = dataValue; }
protected:
};
class IAX2IeApparentAddr : public IAX2IeSockaddrIn
{
PCLASSINFO(IAX2IeApparentAddr, IAX2IeSockaddrIn);
public:
IAX2IeApparentAddr(BYTE length, BYTE *srcData) : IAX2IeSockaddrIn(length, srcData) { };
~IAX2IeApparentAddr() { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_apparentAddr; }
virtual void StoreDataIn(IAX2IeData &res) { res.apparentAddr = dataValue; }
protected:
};
class IAX2IeRefresh : public IAX2IeShort
{
PCLASSINFO(IAX2IeRefresh, IAX2IeShort);
public:
IAX2IeRefresh(BYTE length, BYTE *srcData) : IAX2IeShort(length, srcData) { };
IAX2IeRefresh(short refreshTime) : IAX2IeShort(refreshTime) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_refresh; }
virtual void StoreDataIn(IAX2IeData &res) { res.refresh = dataValue; }
protected:
};
class IAX2IeDpStatus : public IAX2IeShort
{
PCLASSINFO(IAX2IeDpStatus, IAX2IeShort);
public:
IAX2IeDpStatus(BYTE length, BYTE *srcData) : IAX2IeShort(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_dpStatus; }
virtual void StoreDataIn(IAX2IeData &res) { res.dpStatus = dataValue; }
protected:
};
class IAX2IeCallNo : public IAX2IeShort
{
PCLASSINFO(IAX2IeCallNo, IAX2IeShort);
public:
IAX2IeCallNo(BYTE length, BYTE *srcData) : IAX2IeShort(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_callNo; }
virtual void StoreDataIn(IAX2IeData &res) { res.callNo = dataValue; }
protected:
};
class IAX2IeCause : public IAX2IeString
{
PCLASSINFO(IAX2IeCause, IAX2IeString);
public:
IAX2IeCause(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
IAX2IeCause(const PString & newValue) : IAX2IeString(newValue) { }
IAX2IeCause(const char *newValue) : IAX2IeString(newValue) { }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_cause; }
virtual void StoreDataIn(IAX2IeData &res) { res.cause = dataValue; }
protected:
};
class IAX2IeIaxUnknown : public IAX2IeByte
{
PCLASSINFO(IAX2IeIaxUnknown, IAX2IeByte);
public:
IAX2IeIaxUnknown(BYTE length, BYTE *srcData) : IAX2IeByte(length, srcData) { };
IAX2IeIaxUnknown(BYTE newValue) : IAX2IeByte(newValue) { }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_iaxUnknown; }
virtual void StoreDataIn(IAX2IeData &res) { res.iaxUnknown = dataValue; }
protected:
};
class IAX2IeMsgCount : public IAX2IeShort
{
PCLASSINFO(IAX2IeMsgCount, IAX2IeShort);
public:
IAX2IeMsgCount(BYTE length, BYTE *srcData) : IAX2IeShort(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_msgCount; }
virtual void StoreDataIn(IAX2IeData &res) { res.msgCount = dataValue; }
protected:
};
class IAX2IeAutoAnswer : public IAX2IeNone
{
PCLASSINFO(IAX2IeAutoAnswer, IAX2IeNone);
public:
IAX2IeAutoAnswer(BYTE length, BYTE *srcData) : IAX2IeNone(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_autoAnswer; }
virtual void StoreDataIn(IAX2IeData &res) { res.autoAnswer = true;; }
protected:
};
class IAX2IeMusicOnHold : public IAX2IeNone
{
PCLASSINFO(IAX2IeMusicOnHold, IAX2IeNone);
public:
IAX2IeMusicOnHold(BYTE length, BYTE *srcData) : IAX2IeNone(length, srcData) { };
IAX2IeMusicOnHold() : IAX2IeNone() { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_musicOnHold; }
virtual void StoreDataIn(IAX2IeData &res) { res.musicOnHold = true; }
protected:
};
class IAX2IeTransferId : public IAX2IeInt
{
PCLASSINFO(IAX2IeTransferId, IAX2IeInt);
public:
IAX2IeTransferId(BYTE length, BYTE *srcData) : IAX2IeInt(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_transferId; }
virtual void StoreDataIn(IAX2IeData &res) { res.transferId = dataValue; }
protected:
};
class IAX2IeRdnis : public IAX2IeString
{
PCLASSINFO(IAX2IeRdnis, IAX2IeString);
public:
IAX2IeRdnis(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_rdnis; }
virtual void StoreDataIn(IAX2IeData &res) { res.rdnis = dataValue; }
protected:
};
class IAX2IeProvisioning : public IAX2IeBlockOfData
{
PCLASSINFO(IAX2IeProvisioning, IAX2IeBlockOfData);
public:
IAX2IeProvisioning(BYTE length, BYTE *srcData) : IAX2IeBlockOfData (length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_provisioning; }
virtual void StoreDataIn(IAX2IeData &/*res*/) { }
protected:
};
class IAX2IeAesProvisioning : public IAX2IeNone
{
PCLASSINFO(IAX2IeAesProvisioning, IAX2IeNone);
public:
IAX2IeAesProvisioning(BYTE length, BYTE *srcData) : IAX2IeNone(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_aesProvisioning; }
virtual void StoreDataIn(IAX2IeData &/*res*/) { }
protected:
};
class IAX2IeDateTime : public IAX2IeDateAndTime
{
PCLASSINFO(IAX2IeDateTime, IAX2IeDateAndTime);
public:
IAX2IeDateTime(BYTE length, BYTE *srcData) : IAX2IeDateAndTime(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_dateTime; }
virtual void StoreDataIn(IAX2IeData &res) { res.dateTime = dataValue; }
protected:
};
class IAX2IeDeviceType : public IAX2IeString
{
PCLASSINFO(IAX2IeDeviceType, IAX2IeString);
public:
IAX2IeDeviceType(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_deviceType; }
virtual void StoreDataIn(IAX2IeData &res) { res.deviceType = dataValue; }
protected:
};
class IAX2IeServiceIdent : public IAX2IeString
{
PCLASSINFO(IAX2IeServiceIdent, IAX2IeString);
public:
IAX2IeServiceIdent(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_serviceIdent; }
virtual void StoreDataIn(IAX2IeData &res) { res.serviceIdent = dataValue; }
protected:
};
class IAX2IeFirmwareVer : public IAX2IeShort
{
PCLASSINFO(IAX2IeFirmwareVer, IAX2IeShort);
public:
IAX2IeFirmwareVer(BYTE length, BYTE *srcData) : IAX2IeShort(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_firmwareVer; }
virtual void StoreDataIn(IAX2IeData &res) { res.firmwareVer = dataValue; }
protected:
};
class IAX2IeFwBlockDesc : public IAX2IeUInt
{
PCLASSINFO(IAX2IeFwBlockDesc, IAX2IeUInt);
public:
IAX2IeFwBlockDesc(BYTE length, BYTE *srcData) : IAX2IeUInt(length, srcData) { };
IAX2IeFwBlockDesc(unsigned int newValue) : IAX2IeUInt(newValue) { }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_fwBlockDesc; }
virtual void StoreDataIn(IAX2IeData &res) { res.fwBlockDesc = dataValue; }
protected:
};
class IAX2IeFwBlockData : public IAX2IeBlockOfData
{
PCLASSINFO(IAX2IeFwBlockData, IAX2IeBlockOfData);
public:
IAX2IeFwBlockData(BYTE length, BYTE *srcData) : IAX2IeBlockOfData(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_fwBlockData; }
virtual void StoreDataIn(IAX2IeData &res) { res.fwBlockData = dataValue; }
protected:
};
class IAX2IeProvVer : public IAX2IeUInt
{
PCLASSINFO(IAX2IeProvVer, IAX2IeUInt);
public:
IAX2IeProvVer(BYTE length, BYTE *srcData) : IAX2IeUInt(length, srcData) { };
IAX2IeProvVer(unsigned int newValue) : IAX2IeUInt(newValue) { }
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_provVer; }
virtual void StoreDataIn(IAX2IeData &res) { res.provVer = dataValue; }
protected:
};
class IAX2IeCallingPres : public IAX2IeByte
{
PCLASSINFO(IAX2IeCallingPres, IAX2IeByte);
public:
IAX2IeCallingPres(BYTE length, BYTE *srcData) : IAX2IeByte(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_callingPres; }
virtual void StoreDataIn(IAX2IeData &res) { res.callingPres = dataValue; }
protected:
};
class IAX2IeCallingTon : public IAX2IeByte
{
PCLASSINFO(IAX2IeCallingTon, IAX2IeByte);
public:
IAX2IeCallingTon(BYTE length, BYTE *srcData) : IAX2IeByte(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_callingTon; }
virtual void StoreDataIn(IAX2IeData &res) { res.callingTon = dataValue; }
protected:
};
class IAX2IeCallingTns : public IAX2IeUShort
{
PCLASSINFO(IAX2IeCallingTns, IAX2IeUShort);
public:
IAX2IeCallingTns(BYTE length, BYTE *srcData) : IAX2IeUShort(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_callingTns; }
virtual void StoreDataIn(IAX2IeData &res) { res.callingTns = dataValue; }
protected:
};
class IAX2IeSamplingRate : public IAX2IeUShort
{
PCLASSINFO(IAX2IeSamplingRate, IAX2IeUShort);
public:
IAX2IeSamplingRate(BYTE length, BYTE *srcData) : IAX2IeUShort(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_samplingRate; }
virtual void StoreDataIn(IAX2IeData &res) { res.samplingRate = dataValue; }
protected:
};
class IAX2IeEncryption : public IAX2IeUShort
{
PCLASSINFO(IAX2IeEncryption, IAX2IeUShort);
public:
enum IAX2IeEncryptionMethod {
encryptAes128 = 1
};
IAX2IeEncryption(IAX2IeEncryptionMethod method = encryptAes128);
IAX2IeEncryption(BYTE length, BYTE *srcData) : IAX2IeUShort(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_encryption; }
virtual void StoreDataIn(IAX2IeData &res) { res.encryptionMethods = dataValue; }
protected:
};
class IAX2IeEncKey : public IAX2IeString
{
PCLASSINFO(IAX2IeEncKey, IAX2IeString);
public:
IAX2IeEncKey(BYTE length, BYTE *srcData) : IAX2IeString(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_encKey; }
virtual void StoreDataIn(IAX2IeData &res) { res.encKey = dataValue; }
protected:
};
class IAX2IeCodecPrefs : public IAX2IeByte
{
PCLASSINFO(IAX2IeCodecPrefs, IAX2IeByte);
public:
IAX2IeCodecPrefs(BYTE length, BYTE *srcData) : IAX2IeByte(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_codecPrefs; }
virtual void StoreDataIn(IAX2IeData &res) { res.codecPrefs = dataValue; }
protected:
};
class IAX2IeReceivedJitter : public IAX2IeUInt
{
PCLASSINFO(IAX2IeReceivedJitter, IAX2IeUInt);
public:
IAX2IeReceivedJitter(BYTE length, BYTE *srcData) : IAX2IeUInt(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_recJitter; }
virtual void StoreDataIn(IAX2IeData &res) { res.receivedJitter = dataValue; }
protected:
};
class IAX2IeReceivedLoss : public IAX2IeUInt
{
PCLASSINFO(IAX2IeReceivedLoss, IAX2IeUInt);
public:
IAX2IeReceivedLoss(BYTE length, BYTE *srcData) : IAX2IeUInt(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_recLoss; }
virtual void StoreDataIn(IAX2IeData &res) { res.receivedLoss = dataValue; }
protected:
};
class IAX2IeReceivedFrames : public IAX2IeUInt
{
PCLASSINFO(IAX2IeReceivedFrames, IAX2IeUInt);
public:
IAX2IeReceivedFrames(BYTE length, BYTE *srcData) : IAX2IeUInt(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_recPackets; }
virtual void StoreDataIn(IAX2IeData &res) { res.receivedPackets = dataValue; }
protected:
};
class IAX2IeReceivedDelay : public IAX2IeUShort
{
PCLASSINFO(IAX2IeReceivedDelay, IAX2IeUShort);
public:
IAX2IeReceivedDelay(BYTE length, BYTE *srcData) : IAX2IeUShort(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_recDelay; }
virtual void StoreDataIn(IAX2IeData &res) { res.receivedDelay = dataValue; }
protected:
};
class IAX2IeDroppedFrames : public IAX2IeUInt
{
PCLASSINFO(IAX2IeDroppedFrames, IAX2IeUInt);
public:
IAX2IeDroppedFrames(BYTE length, BYTE *srcData) : IAX2IeUInt(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_recDropped; }
virtual void StoreDataIn(IAX2IeData &res) { res.receivedDropped = dataValue; }
protected:
};
class IAX2IeReceivedOoo : public IAX2IeUInt
{
PCLASSINFO(IAX2IeReceivedOoo, IAX2IeUInt);
public:
IAX2IeReceivedOoo(BYTE length, BYTE *srcData) : IAX2IeUInt(length, srcData) { };
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_recOoo; }
virtual void StoreDataIn(IAX2IeData &res) { res.receivedOoo = dataValue; }
protected:
};
class IAX2IeCallToken : public IAX2IeBinary
{
PCLASSINFO(IAX2IeCallToken, IAX2IeBinary);
public:
IAX2IeCallToken(BYTE length, BYTE *srcData)
: IAX2IeBinary(length, srcData) { };
IAX2IeCallToken() : IAX2IeBinary(0, NULL) {};
virtual void PrintOn(ostream & str) const;
virtual BYTE GetKeyValue() const { return ie_callToken; }
virtual void StoreDataIn(IAX2IeData &res) { res.callToken = dataValue; }
static void InitialiseKey();
void WriteKeySequence(PIPSocket::Address & remoteAddress);
static PBoolean ValidKeySequence (IAX2IeCallToken & cf,
PIPSocket::Address & remote);
protected:
static PString ReportKeySequence(const PString & time, PIPSocket::Address & remote);
enum {
iKeyValue = 0x36,
oKeyValue = 0x5c,
blockSize = 64
};
static PString secretKey;
static BYTE iKeyPad[blockSize];
static BYTE oKeyPad[blockSize];
};
PDECLARE_LIST (IAX2IeList, IAX2Ie *)
#ifdef DOC_PLUS_PLUS
class IAX2IeList : public IAX2Ie *
{
#endif
public:
~IAX2IeList();
IAX2Ie *RemoveIeAt(PINDEX i);
IAX2Ie *RemoveLastIe();
void Initialise() { DisallowDeleteObjects(); }
void DeleteAt(PINDEX idex);
PBoolean Empty() const { return GetSize() == 0; }
PBoolean IsEmpty() const { return GetSize() == 0; }
void AppendIe(IAX2Ie *newMember) { Append(newMember);}
int GetBinaryDataSize() const;
IAX2Ie * GetIeAt(int i) const;
protected:
};
#endif // OPAL_IAX2
#endif // OPAL_IAX2_IES_H
/* The comment below is magic for those who use emacs to edit this file.
* With the comment below, the tab key does auto indent to 2 spaces.
*
* Local Variables:
* mode:c
* c-basic-offset:2
* End:
*/
IAX2IeData::callingTon
int callingTon
Definition: iedata.h:77
IAX2Ie::ie_iaxUnknown
Definition: ies.h:83
IAX2IeBinary::dataValue
PBYTEArray dataValue
Definition: ies.h:595
IAX2Ie::ie_capability
Definition: ies.h:68
IAX2Ie::ie_provisioning
Definition: ies.h:89
IAX2IeMsgCount::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeCalledNumber
Definition: ies.h:743
IAX2IeSockaddrIn::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeFormat::IAX2IeFormat
IAX2IeFormat(BYTE length, BYTE *srcData)
Definition: ies.h:974
IAX2IeEncKey::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1897
IAX2IeReceivedFrames::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeShort::dataValue
short dataValue
Definition: ies.h:365
IAX2IeShort
Definition: ies.h:327
IAX2IeList::DeleteAt
void DeleteAt(PINDEX idex)
IAX2IeRsaResult::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1246
IAX2IeCalledContext::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:879
IAX2Ie::ie_adsicpe
Definition: ies.h:72
IAX2IeSamplingRate::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1841
IAX2IeFwBlockDesc
Definition: ies.h:1678
IAX2Ie::ie_format
Definition: ies.h:69
IAX2IeData::challenge
PString challenge
Definition: iedata.h:93
IAX2IeChar
Definition: ies.h:283
IAX2IeReceivedJitter
Definition: ies.h:1932
IAX2IeData::transferId
unsigned int transferId
Definition: iedata.h:106
IAX2IeCause::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1378
IAX2IeDeviceType::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1619
IAX2Ie::ie_variable
Definition: ies.h:112
IAX2IeAdsicpe::IAX2IeAdsicpe
IAX2IeAdsicpe(BYTE length, BYTE *srcData)
Definition: ies.h:1055
IAX2IeEncryption::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1878
IAX2IeAuthMethods::IsPlainTextAuthentication
static PBoolean IsPlainTextAuthentication(short testValue)
Definition: ies.h:1129
IAX2IeReceivedLoss
Definition: ies.h:1956
IAX2IeAuthMethods::IsMd5Authentication
PBoolean IsMd5Authentication()
Definition: ies.h:1135
IAX2IeMd5Result::GetDataBlock
PBYTEArray & GetDataBlock()
Definition: ies.h:1215
IAX2IeCallToken::oKeyPad
static BYTE oKeyPad[blockSize]
Definition: ies.h:2141
IAX2Ie::ie_dateTime
Definition: ies.h:91
IAX2IeMd5Result::InitializeChallengePassword
void InitializeChallengePassword(const PString &newChallenge, const PString &newPassword)
IAX2IeAutoAnswer
Definition: ies.h:1435
IAX2IeServiceIdent::IAX2IeServiceIdent
IAX2IeServiceIdent(BYTE length, BYTE *srcData)
Definition: ies.h:1637
IAX2IeData::receivedLoss
unsigned int receivedLoss
Definition: iedata.h:118
IAX2IeRefresh::PrintOn
virtual void PrintOn(ostream &str) const
IAX2Ie::ie_callingName
Definition: ies.h:64
IAX2IeCallingPres::IAX2IeCallingPres
IAX2IeCallingPres(BYTE length, BYTE *srcData)
Definition: ies.h:1763
IAX2Ie::GetLengthOfData
virtual BYTE GetLengthOfData()
Definition: ies.h:139
IAX2IeBlockOfData::SetData
void SetData(const PBYTEArray &newData)
Definition: ies.h:673
IAX2IeData::fwBlockData
PBYTEArray fwBlockData
Definition: iedata.h:112
IAX2IeBinary::CopyData
void CopyData(IAX2IeBinary *src)
IAX2IeDateAndTime::dataValue
PTime dataValue
Definition: ies.h:641
IAX2IeReceivedDelay::IAX2IeReceivedDelay
IAX2IeReceivedDelay(BYTE length, BYTE *srcData)
Definition: ies.h:2011
IAX2IeRefresh::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1300
IAX2IeBinary::IAX2IeBinary
IAX2IeBinary()
Definition: ies.h:567
IAX2IeAuthMethods::IsMd5Authentication
static PBoolean IsMd5Authentication(short testValue)
Definition: ies.h:1126
IAX2IeReceivedDelay
Definition: ies.h:2004
IAX2IeBlockOfData::WriteBinary
virtual void WriteBinary(BYTE *data)
IAX2IeReceivedOoo::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeFwBlockData
Definition: ies.h:1705
IAX2IeAutoAnswer::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1448
IAX2IeAesProvisioning::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1571
IAX2IeReceivedOoo::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:2065
IAX2IeBlockOfData::ReadData
PBYTEArray ReadData()
Definition: ies.h:677
IAX2IeVersion
Definition: ies.h:1021
IAX2Ie::IAX2IeTypeCode
IAX2IeTypeCode
Definition: ies.h:60
IAX2IeDeviceType::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeCalledContext::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:874
IAX2Ie::ie_rdnis
Definition: ies.h:88
IAX2IeCallingAni::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:822
IAX2Ie::ie_recJitter
Definition: ies.h:106
IAX2IeChar::dataValue
char dataValue
Definition: ies.h:322
IAX2IeDpStatus::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeSockaddrIn::~IAX2IeSockaddrIn
~IAX2IeSockaddrIn()
Definition: ies.h:710
IAX2IeNone
Definition: ies.h:197
IAX2IeRsaResult::IAX2IeRsaResult
IAX2IeRsaResult(const PString &newValue)
Definition: ies.h:1235
IAX2IeData::format
unsigned int format
Definition: iedata.h:84
IAX2IeCallToken::blockSize
Definition: ies.h:2129
IAX2IeFwBlockData::PrintOn
virtual void PrintOn(ostream &str) const
IAX2Ie::ie_musicOnHold
Definition: ies.h:86
IAX2IeCause
Definition: ies.h:1354
buildopts.h
IAX2IeDateAndTime::IAX2IeDateAndTime
IAX2IeDateAndTime()
Definition: ies.h:617
IAX2IeProvisioning::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeIaxUnknown::IAX2IeIaxUnknown
IAX2IeIaxUnknown(BYTE newValue)
Definition: ies.h:1394
IAX2IeCalledNumber::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:760
IAX2IeLanguage::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1015
IAX2Ie::ie_callToken
Definition: ies.h:114
IAX2Ie::ie_calledNumber
Definition: ies.h:61
IAX2IeData::password
PString password
Definition: iedata.h:82
IAX2IeCallingNumber::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:788
IAX2IeDpStatus
Definition: ies.h:1306
IAX2IeString::GetLengthOfData
virtual BYTE GetLengthOfData()
IAX2IeRdnis::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1528
IAX2Ie::ie_recPackets
Definition: ies.h:108
IAX2IeSamplingRate::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1846
IAX2IeData::callToken
PBYTEArray callToken
Definition: iedata.h:123
IAX2IeCodecPrefs::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1921
IAX2IeSamplingRate
Definition: ies.h:1828
IAX2IeReceivedOoo::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:2070
IAX2IeCallingName
Definition: ies.h:829
IAX2IeProvisioning::StoreDataIn
virtual void StoreDataIn(IAX2IeData &)
Definition: ies.h:1552
IAX2IeShort::WriteBinary
virtual void WriteBinary(BYTE *data)
IAX2Ie::ie_version
Definition: ies.h:71
IAX2IeCallToken::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeFwBlockDesc::IAX2IeFwBlockDesc
IAX2IeFwBlockDesc(unsigned int newValue)
Definition: ies.h:1688
IAX2Ie::ie_apparentAddr
Definition: ies.h:78
IAX2IeByte::WriteBinary
virtual void WriteBinary(BYTE *data)
Definition: ies.h:275
IAX2IeVersion::IAX2IeVersion
IAX2IeVersion(BYTE length, BYTE *srcData)
Definition: ies.h:1028
IAX2IeAuthMethods::IsPlainTextAuthentication
PBoolean IsPlainTextAuthentication()
Definition: ies.h:1138
IAX2Ie::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeUserName::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:902
IAX2IeVersion::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeCallingPres::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1774
IAX2IeTransferId
Definition: ies.h:1486
IAX2IeCallingTns::IAX2IeCallingTns
IAX2IeCallingTns(BYTE length, BYTE *srcData)
Definition: ies.h:1811
IAX2Ie::ie_callingAni
Definition: ies.h:63
IAX2Ie::WriteBinary
virtual void WriteBinary(BYTE *)
Definition: ies.h:167
IAX2IeData::receivedJitter
unsigned int receivedJitter
Definition: iedata.h:117
IAX2IeEncryption::IAX2IeEncryptionMethod
IAX2IeEncryptionMethod
Definition: ies.h:1857
IAX2IeString::WriteBinary
virtual void WriteBinary(BYTE *data)
IAX2IeCallToken
Definition: ies.h:2082
IAX2IeIaxUnknown::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1400
IAX2IeAuthMethods::IsRsaAuthentication
static PBoolean IsRsaAuthentication(short testValue)
Definition: ies.h:1123
IAX2IeDnid
Definition: ies.h:1072
IAX2IeReceivedFrames::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1993
IAX2IeCallNo::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1343
IAX2IeCause::IAX2IeCause
IAX2IeCause(const char *newValue)
Definition: ies.h:1367
IAX2IeCallingTon::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeAuthMethods::InternalIsRsa
static PBoolean InternalIsRsa(short testValue)
Definition: ies.h:1143
IAX2IeAesProvisioning::StoreDataIn
virtual void StoreDataIn(IAX2IeData &)
Definition: ies.h:1576
IAX2IeCallToken::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:2104
IAX2IeCalledNumber::IAX2IeCalledNumber
IAX2IeCalledNumber(BYTE length, BYTE *srcData)
Definition: ies.h:750
IAX2IeProvVer::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeReceivedDelay::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:2017
IAX2IeFwBlockDesc::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1699
IAX2Ie::ie_fwBlockDesc
Definition: ies.h:95
IAX2IeCallToken::secretKey
static PString secretKey
Definition: ies.h:2134
IAX2IeAuthMethods::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1120
IAX2IeBlockOfData::IAX2IeBlockOfData
IAX2IeBlockOfData(const PBYTEArray &newData)
Definition: ies.h:658
IAX2IeRsaResult
Definition: ies.h:1225
IAX2IeBlockOfData::dataValue
PBYTEArray dataValue
Definition: ies.h:686
IAX2IeByte
Definition: ies.h:239
IAX2IeAdsicpe::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeReceivedJitter::PrintOn
virtual void PrintOn(ostream &str) const
IAX2Ie::ie_deviceType
Definition: ies.h:92
IAX2IeFirmwareVer::IAX2IeFirmwareVer
IAX2IeFirmwareVer(BYTE length, BYTE *srcData)
Definition: ies.h:1661
IAX2Ie::ie_recLoss
Definition: ies.h:107
IAX2IeData::version
int version
Definition: iedata.h:87
IAX2IeFormat::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeServiceIdent::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1643
IAX2IeMd5Result::dataBlock
PBYTEArray dataBlock
Definition: ies.h:1220
IAX2IeUserName::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:907
IAX2Ie::ie_challenge
Definition: ies.h:75
IAX2IeData::callingTns
int callingTns
Definition: iedata.h:78
IAX2IePassword::IAX2IePassword
IAX2IePassword(const PString &newValue)
Definition: ies.h:923
IAX2IeAutoAnswer::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeCause::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1373
IAX2IeDateAndTime
Definition: ies.h:601
IAX2Ie::ie_codecPrefs
Definition: ies.h:105
IAX2IeDroppedFrames
Definition: ies.h:2028
IAX2IeDateAndTime::IAX2IeDateAndTime
IAX2IeDateAndTime(const PTime &newValue)
Definition: ies.h:614
IAX2IeFwBlockData::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1723
IAX2Ie::ie_refresh
Definition: ies.h:79
IAX2IeDroppedFrames::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:2046
IAX2IeReceivedDelay::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:2022
IAX2IeDateTime::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1595
IAX2IeDroppedFrames::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeMusicOnHold::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeDroppedFrames::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:2041
IAX2IeUShort::dataValue
unsigned short dataValue
Definition: ies.h:450
IAX2IeMd5Result::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1206
IAX2IeVersion::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1042
IAX2IeCallingName::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeCallToken::WriteKeySequence
void WriteKeySequence(PIPSocket::Address &remoteAddress)
IAX2IeProvVer::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1745
IAX2IeRdnis
Definition: ies.h:1510
IAX2Ie::ie_userName
Definition: ies.h:66
IAX2Ie::ie_rsaResult
Definition: ies.h:77
IAX2IePassword::IAX2IePassword
IAX2IePassword(BYTE length, BYTE *srcData)
Definition: ies.h:920
IAX2IeSockaddrIn::IAX2IeSockaddrIn
IAX2IeSockaddrIn(const PIPSocket::Address &addr, PINDEX port)
Definition: ies.h:703
IAX2Ie::ie_callingPres
Definition: ies.h:98
IAX2IeTransferId::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1499
IAX2IeCallingAni::IAX2IeCallingAni
IAX2IeCallingAni(const PString &newValue)
Definition: ies.h:811
IAX2IeRefresh::IAX2IeRefresh
IAX2IeRefresh(BYTE length, BYTE *srcData)
Definition: ies.h:1286
IAX2IeFwBlockDesc::IAX2IeFwBlockDesc
IAX2IeFwBlockDesc(BYTE length, BYTE *srcData)
Definition: ies.h:1685
IAX2IeCapability::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:956
IAX2Ie::ie_callingTon
Definition: ies.h:99
IAX2IeTransferId::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeLanguage
Definition: ies.h:994
IAX2IePassword::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:934
IAX2IeRsaResult::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeMd5Result::PrintOn
virtual void PrintOn(ostream &str) const
IAX2Ie::ie_aesProvisioning
Definition: ies.h:90
IAX2Ie::ie_firmwareVer
Definition: ies.h:94
IAX2IeVersion::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1037
IAX2IeData::rdnis
PString rdnis
Definition: iedata.h:90
IAX2IeData::dateTime
PTime dateTime
Definition: iedata.h:107
IAX2IeBinary
Definition: ies.h:550
IAX2IeEncryption::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeLanguage::IAX2IeLanguage
IAX2IeLanguage(const PString &newValue)
Definition: ies.h:1004
IAX2Ie::ie_calledContext
Definition: ies.h:65
IAX2IeProvVer
Definition: ies.h:1729
IAX2IeFirmwareVer::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeString::SetData
void SetData(const PString &newData)
IAX2Ie::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:148
IAX2Ie::validData
PBoolean validData
Definition: ies.h:171
IAX2Ie::ie_causeCode
Definition: ies.h:102
IAX2IeMd5Result::IAX2IeMd5Result
IAX2IeMd5Result(const PString &newValue)
Definition: ies.h:1191
IAX2IeCallingTon::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1798
IAX2IeCallNo::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1348
IAX2IeSockaddrIn::SetData
void SetData(const PIPSocket::Address &newAddr, PINDEX newPort)
Definition: ies.h:722
IAX2IeEncKey::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1902
IAX2IeData::callingPres
int callingPres
Definition: iedata.h:79
IAX2IeString::IAX2IeString
IAX2IeString()
Definition: ies.h:517
IAX2Ie::ie_encKey
Definition: ies.h:104
IAX2IeTransferId::IAX2IeTransferId
IAX2IeTransferId(BYTE length, BYTE *srcData)
Definition: ies.h:1493
IAX2IeList::IsEmpty
PBoolean IsEmpty() const
Definition: ies.h:2176
IAX2IeCalledContext::IAX2IeCalledContext
IAX2IeCalledContext(const PString &newValue)
Definition: ies.h:868
IAX2IeCallToken::IAX2IeCallToken
IAX2IeCallToken()
Definition: ies.h:2093
IAX2IeData::authMethods
short authMethods
Definition: iedata.h:91
IAX2IeData::apparentAddr
PIPSocket::Address apparentAddr
Definition: iedata.h:96
IAX2IeEncKey::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeData
Definition: iedata.h:55
IAX2Ie::ie_cause
Definition: ies.h:82
IAX2IeDateTime::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeAdsicpe
Definition: ies.h:1048
IAX2IeFwBlockDesc::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeData::receivedDelay
unsigned short receivedDelay
Definition: iedata.h:120
IAX2Ie::ie_dnid
Definition: ies.h:73
IAX2IeRdnis::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1523
IAX2IeData::encKey
PString encKey
Definition: iedata.h:113
IAX2IeCallingNumber::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeApparentAddr::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1273
IAX2IeCallingName::IAX2IeCallingName
IAX2IeCallingName(BYTE length, BYTE *srcData)
Definition: ies.h:836
IAX2Ie::ie_md5Result
Definition: ies.h:76
IAX2Ie::ie_autoAnswer
Definition: ies.h:85
IAX2Ie::BuildInformationElement
static IAX2Ie * BuildInformationElement(BYTE _typeCode, BYTE length, BYTE *srcData)
IAX2IeList::RemoveIeAt
IAX2Ie * RemoveIeAt(PINDEX i)
IAX2IeList::~IAX2IeList
~IAX2IeList()
IAX2IeCapability::IAX2IeCapability
IAX2IeCapability(unsigned int newValue)
Definition: ies.h:950
IAX2IeCallingName::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:846
IAX2IeUInt::dataValue
unsigned int dataValue
Definition: ies.h:493
IAX2IeData::refresh
PINDEX refresh
Definition: iedata.h:97
IAX2IePassword::PrintOn
virtual void PrintOn(ostream &str) const
IAX2Ie::ReadData
int ReadData()
Definition: ies.h:154
IAX2IeAuthMethods::InternalIsPlainText
static PBoolean InternalIsPlainText(short testValue)
Definition: ies.h:1149
IAX2IeBlockOfData::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeCallNo::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeApparentAddr::IAX2IeApparentAddr
IAX2IeApparentAddr(BYTE length, BYTE *srcData)
Definition: ies.h:1259
IAX2IeUserName::IAX2IeUserName
IAX2IeUserName(BYTE length, BYTE *srcData)
Definition: ies.h:893
IAX2IeFwBlockDesc::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1694
IAX2IeSamplingRate::IAX2IeSamplingRate
IAX2IeSamplingRate(BYTE length, BYTE *srcData)
Definition: ies.h:1835
IAX2IeRsaResult::IAX2IeRsaResult
IAX2IeRsaResult(BYTE length, BYTE *srcData)
Definition: ies.h:1232
IAX2IeCapability
Definition: ies.h:940
IAX2IeAuthMethods::IsRsaAuthentication
PBoolean IsRsaAuthentication()
Definition: ies.h:1132
IAX2Ie::ie_authMethods
Definition: ies.h:74
IAX2Ie::ie_language
Definition: ies.h:70
IAX2IeCallToken::IAX2IeCallToken
IAX2IeCallToken(BYTE length, BYTE *srcData)
Definition: ies.h:2088
IAX2IeDeviceType::IAX2IeDeviceType
IAX2IeDeviceType(BYTE length, BYTE *srcData)
Definition: ies.h:1613
IAX2IeData::codecPrefs
PString codecPrefs
Definition: iedata.h:85
IAX2IeData::firmwareVer
int firmwareVer
Definition: iedata.h:110
IAX2IeProvVer::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1750
IAX2Ie::ie_recDropped
Definition: ies.h:110
IAX2IeEncryption::IAX2IeEncryption
IAX2IeEncryption(IAX2IeEncryptionMethod method=encryptAes128)
IAX2IeEncryption::IAX2IeEncryption
IAX2IeEncryption(BYTE length, BYTE *srcData)
Definition: ies.h:1867
IAX2IeUserName
Definition: ies.h:886
IAX2IeApparentAddr
Definition: ies.h:1252
IAX2IeCapability::IAX2IeCapability
IAX2IeCapability(BYTE length, BYTE *srcData)
Definition: ies.h:947
IAX2IeReceivedLoss::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1969
IAX2IeBinary::WriteBinary
virtual void WriteBinary(BYTE *data)
IAX2IeProvisioning::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1547
IAX2IeReceivedFrames
Definition: ies.h:1980
iedata.h
IAX2IeInvalidElement::IAX2IeInvalidElement
IAX2IeInvalidElement()
Definition: ies.h:180
IAX2IeProvVer::IAX2IeProvVer
IAX2IeProvVer(BYTE length, BYTE *srcData)
Definition: ies.h:1736
IAX2IeCallNo::IAX2IeCallNo
IAX2IeCallNo(BYTE length, BYTE *srcData)
Definition: ies.h:1337
IAX2IeFwBlockData::IAX2IeFwBlockData
IAX2IeFwBlockData(BYTE length, BYTE *srcData)
Definition: ies.h:1712
IAX2IeData::musicOnHold
int musicOnHold
Definition: iedata.h:105
IAX2IeChallenge::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeReceivedFrames::IAX2IeReceivedFrames
IAX2IeReceivedFrames(BYTE length, BYTE *srcData)
Definition: ies.h:1987
IAX2IeMd5Result
Definition: ies.h:1181
IAX2IeCallToken::InitialiseKey
static void InitialiseKey()
IAX2IeData::callNo
PINDEX callNo
Definition: iedata.h:99
IAX2Ie::ie_fwBlockData
Definition: ies.h:96
IAX2IeData::callingName
PString callingName
Definition: iedata.h:76
IAX2IeCalledContext::IAX2IeCalledContext
IAX2IeCalledContext(BYTE length, BYTE *srcData)
Definition: ies.h:865
IAX2IeCause::IAX2IeCause
IAX2IeCause(BYTE length, BYTE *srcData)
Definition: ies.h:1361
IAX2IeUserName::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeIaxUnknown::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1405
IAX2IeCodecPrefs
Definition: ies.h:1908
IAX2IeChallenge::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1175
IAX2IeProvVer::IAX2IeProvVer
IAX2IeProvVer(unsigned int newValue)
Definition: ies.h:1739
IAX2IeDeviceType
Definition: ies.h:1606
IAX2IeReceivedJitter::IAX2IeReceivedJitter
IAX2IeReceivedJitter(BYTE length, BYTE *srcData)
Definition: ies.h:1939
IAX2IeCallingPres::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeDnid::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1093
IAX2Ie::ie_transferId
Definition: ies.h:87
IAX2IeBlockOfData::GetLengthOfData
virtual BYTE GetLengthOfData()
Definition: ies.h:670
IAX2IeData::capability
unsigned int capability
Definition: iedata.h:83
IAX2IeCallToken::ReportKeySequence
static PString ReportKeySequence(const PString &time, PIPSocket::Address &remote)
IAX2IeInt::WriteBinary
virtual void WriteBinary(BYTE *data)
IAX2IeUShort::WriteBinary
virtual void WriteBinary(BYTE *data)
IAX2IeUInt::WriteBinary
virtual void WriteBinary(BYTE *data)
IAX2IeDroppedFrames::IAX2IeDroppedFrames
IAX2IeDroppedFrames(BYTE length, BYTE *srcData)
Definition: ies.h:2035
IAX2IeSockaddrIn::ReadData
PIPSocket::Address ReadData()
Definition: ies.h:726
IAX2IeCause::IAX2IeCause
IAX2IeCause(const PString &newValue)
Definition: ies.h:1364
IAX2IeCallingName::IAX2IeCallingName
IAX2IeCallingName(const PString &newValue)
Definition: ies.h:840
IAX2IeCallToken::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:2099
IAX2Ie::ie_callNo
Definition: ies.h:81
IAX2IeDnid::IAX2IeDnid
IAX2IeDnid(const PString &newValue)
Definition: ies.h:1082
IAX2IeDnid::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1088
IAX2IeCallingNumber::IAX2IeCallingNumber
IAX2IeCallingNumber(BYTE length, BYTE *srcData)
Definition: ies.h:778
IAX2Encryption
Definition: remote.h:345
IAX2IeBinary::GetData
void GetData(PBYTEArray &answer)
IAX2IeRefresh::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1295
IAX2IeCallingAni
Definition: ies.h:800
IAX2IeData::md5Result
PString md5Result
Definition: iedata.h:94
IAX2IeData::deviceType
PString deviceType
Definition: iedata.h:108
IAX2IeDateAndTime::WriteBinary
virtual void WriteBinary(BYTE *data)
IAX2Ie::ie_dpStatus
Definition: ies.h:80
IAX2IeAuthMethods
Definition: ies.h:1099
IAX2IeServiceIdent::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeEncryption::encryptAes128
Definition: ies.h:1858
IAX2Ie::~IAX2Ie
virtual ~IAX2Ie()
Definition: ies.h:127
IAX2IeMsgCount::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1424
IAX2IeFormat::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:988
IAX2IeBlockOfData
Definition: ies.h:645
IAX2Ie::ie_format2
Definition: ies.h:116
IAX2IeAuthMethods::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1115
IAX2IeCallingTon::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1793
IAX2IeAuthMethods::IAX2IeAuthMethods
IAX2IeAuthMethods(BYTE length, BYTE *srcData)
Definition: ies.h:1106
IAX2IeNone::WriteBinary
virtual void WriteBinary(BYTE *)
Definition: ies.h:234
IAX2IeReceivedLoss::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeSockaddrIn
Definition: ies.h:690
IAX2IePassword
Definition: ies.h:913
IAX2IeSamplingRate::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeAesProvisioning::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeAesProvisioning
Definition: ies.h:1558
IAX2Ie::StoreDataIn
virtual void StoreDataIn(IAX2IeData &)
Definition: ies.h:162
IAX2Ie::ie_ospToken
Definition: ies.h:113
IAX2IeCallingNumber::IAX2IeCallingNumber
IAX2IeCallingNumber(const PString &newValue)
Definition: ies.h:782
IAX2IeVersion::IAX2IeVersion
IAX2IeVersion()
Definition: ies.h:1031
IAX2IeMusicOnHold::IAX2IeMusicOnHold
IAX2IeMusicOnHold()
Definition: ies.h:1469
IAX2IeUserName::IAX2IeUserName
IAX2IeUserName(const PString &newValue)
Definition: ies.h:896
IAX2IeDeviceType::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1624
IAX2IeMsgCount
Definition: ies.h:1411
IAX2IeTransferId::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1504
IAX2IeIaxUnknown::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeList::GetIeAt
IAX2Ie * GetIeAt(int i) const
IAX2IeAutoAnswer::IAX2IeAutoAnswer
IAX2IeAutoAnswer(BYTE length, BYTE *srcData)
Definition: ies.h:1442
IAX2IeRdnis::IAX2IeRdnis
IAX2IeRdnis(BYTE length, BYTE *srcData)
Definition: ies.h:1517
IAX2Ie::WriteBinary
void WriteBinary(void *data, PINDEX &writeIndex)
IAX2IeCalledContext
Definition: ies.h:858
IAX2IeData::serviceIdent
PString serviceIdent
Definition: iedata.h:109
IAX2IeList::Initialise
void Initialise()
Definition: ies.h:2167
IAX2IeDateAndTime::ReadData
PTime ReadData()
Definition: ies.h:633
IAX2IeBinary::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeDpStatus::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1324
IAX2IeCallingAni::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeBinary::IAX2IeBinary
IAX2IeBinary(PBYTEArray newValue)
Definition: ies.h:564
IAX2IeInvalidElement::GetlengthOfData
virtual BYTE GetlengthOfData()
Definition: ies.h:184
IAX2IeReceivedLoss::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1974
IAX2IeDnid::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeCallingTns::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeMusicOnHold::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1480
IAX2Ie::IsValid
virtual PBoolean IsValid()
Definition: ies.h:136
IAX2Ie::IAX2Ie
IAX2Ie()
IAX2IeMusicOnHold::IAX2IeMusicOnHold
IAX2IeMusicOnHold(BYTE length, BYTE *srcData)
Definition: ies.h:1466
IAX2Ie::ie_encryption
Definition: ies.h:103
IAX2IeReceivedOoo
Definition: ies.h:2052
IAX2IeData::iaxUnknown
BYTE iaxUnknown
Definition: iedata.h:102
IAX2IeInvalidElement::PrintOn
virtual void PrintOn(ostream &str) const
Definition: ies.h:187
IAX2IeString::IAX2IeString
IAX2IeString(const PString &newValue)
Definition: ies.h:511
IAX2IeCallingTns::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1817
IAX2IeAdsicpe::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1061
IAX2IeAuthMethods::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeBinary::GetLengthOfData
virtual BYTE GetLengthOfData()
Definition: ies.h:573
IAX2IeString::dataValue
PString dataValue
Definition: ies.h:544
IAX2IeMsgCount::IAX2IeMsgCount
IAX2IeMsgCount(BYTE length, BYTE *srcData)
Definition: ies.h:1418
IAX2IeMusicOnHold::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1475
IAX2IeCallingTns
Definition: ies.h:1804
IAX2IeLanguage::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1010
IAX2Ie::SetData
void SetData(int &)
Definition: ies.h:151
IAX2IeFirmwareVer::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1667
IAX2IeFormat::IAX2IeFormat
IAX2IeFormat(unsigned int newValue)
Definition: ies.h:977
IAX2IeCalledNumber::IAX2IeCalledNumber
IAX2IeCalledNumber(const PString &newValue)
Definition: ies.h:754
IAX2IeData::adsicpe
PINDEX adsicpe
Definition: iedata.h:88
IAX2Ie::ie_recOoo
Definition: ies.h:111
IAX2IeCapability::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:961
IAX2Ie
Definition: ies.h:55
IAX2IeProvisioning::IAX2IeProvisioning
IAX2IeProvisioning(BYTE length, BYTE *srcData)
Definition: ies.h:1541
IAX2IeCallToken::iKeyPad
static BYTE iKeyPad[blockSize]
Definition: ies.h:2138
IAX2IeDateAndTime::GetLengthOfData
virtual BYTE GetLengthOfData()
Definition: ies.h:626
IAX2IeSockaddrIn::portNumber
PINDEX portNumber
Definition: ies.h:738
IAX2IeString::ReadData
PString ReadData()
Definition: ies.h:535
IAX2IeEncryption
Definition: ies.h:1852
IAX2IeCallingAni::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:817
IAX2IeFwBlockData::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1718
IAX2IeData::rsaResult
PString rsaResult
Definition: iedata.h:95
IAX2IeFirmwareVer::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1672
IAX2Ie::ie_provVer
Definition: ies.h:97
IAX2IeCallingName::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:851
IAX2IeString::PrintOn
void PrintOn(ostream &str) const
IAX2Ie::ie_capability2
Definition: ies.h:115
IAX2IeAesProvisioning::IAX2IeAesProvisioning
IAX2IeAesProvisioning(BYTE length, BYTE *srcData)
Definition: ies.h:1565
IAX2IeEncKey::IAX2IeEncKey
IAX2IeEncKey(BYTE length, BYTE *srcData)
Definition: ies.h:1891
IAX2IeFormat::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:983
IAX2IeData::calledNumber
PString calledNumber
Definition: iedata.h:73
IAX2IeServiceIdent::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1648
IAX2IeMd5Result::IAX2IeMd5Result
IAX2IeMd5Result(BYTE length, BYTE *srcData)
Definition: ies.h:1188
IAX2IeChallenge::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1170
IAX2IeReceivedLoss::IAX2IeReceivedLoss
IAX2IeReceivedLoss(BYTE length, BYTE *srcData)
Definition: ies.h:1963
IAX2IePassword::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:929
IAX2IeEncryption::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1873
IAX2IeCallToken::ValidKeySequence
static PBoolean ValidKeySequence(IAX2IeCallToken &cf, PIPSocket::Address &remote)
IAX2IeMsgCount::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1429
IAX2IeDateTime
Definition: ies.h:1582
IAX2IeDateAndTime::SetData
void SetData(const PTime &newData)
Definition: ies.h:629
IAX2IeData::dnid
PString dnid
Definition: iedata.h:89
IAX2IeCodecPrefs::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1926
IAX2IeData::dpStatus
PINDEX dpStatus
Definition: iedata.h:98
IAX2IeByte::dataValue
BYTE dataValue
Definition: ies.h:278
IAX2IeData::callingAni
PString callingAni
Definition: iedata.h:75
IAX2IeData::samplingRate
PINDEX samplingRate
Definition: iedata.h:115
IAX2Ie::ie_serviceIdent
Definition: ies.h:93
IAX2IeInvalidElement
Definition: ies.h:176
IAX2IeCodecPrefs::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeDateTime::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1600
IAX2IeReceivedDelay::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeFormat
Definition: ies.h:967
IAX2IeInvalidElement::WriteBinary
virtual void WriteBinary(BYTE *)
Definition: ies.h:193
IAX2IeData::language
PString language
Definition: iedata.h:86
IAX2IeData::calledContext
PString calledContext
Definition: iedata.h:80
IAX2IeList::GetBinaryDataSize
int GetBinaryDataSize() const
IAX2IeList::Empty
PBoolean Empty() const
Definition: ies.h:2173
IAX2IeData::receivedOoo
unsigned int receivedOoo
Definition: iedata.h:122
IAX2IeCallingPres
Definition: ies.h:1756
IAX2IeSockaddrIn::IAX2IeSockaddrIn
IAX2IeSockaddrIn()
Definition: ies.h:707
IAX2IeCallToken::iKeyValue
Definition: ies.h:2127
IAX2Ie::ie_callingTns
Definition: ies.h:100
IAX2IeAuthMethods::IAX2IeAuthMethods
IAX2IeAuthMethods(short newValue)
Definition: ies.h:1109
IAX2IeCallToken::oKeyValue
Definition: ies.h:2128
IAX2IeAuthMethods::InternalIsMd5
static PBoolean InternalIsMd5(short testValue)
Definition: ies.h:1146
IAX2IeApparentAddr::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeData::encryptionMethods
unsigned int encryptionMethods
Definition: iedata.h:92
IAX2IeCallingAni::IAX2IeCallingAni
IAX2IeCallingAni(BYTE length, BYTE *srcData)
Definition: ies.h:807
IAX2IeRdnis::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeMd5Result::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1211
IAX2IeList::RemoveLastIe
IAX2Ie * RemoveLastIe()
IAX2IeSockaddrIn::dataValue
PIPSocket::Address dataValue
Definition: ies.h:735
IAX2IeData::receivedPackets
unsigned int receivedPackets
Definition: iedata.h:119
IAX2IeRefresh::IAX2IeRefresh
IAX2IeRefresh(short refreshTime)
Definition: ies.h:1289
IAX2IeRsaResult::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1241
IAX2IeCallingNumber
Definition: ies.h:771
IAX2IeCause::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeData::cause
PString cause
Definition: iedata.h:100
IAX2IeCalledNumber::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:765
IAX2IeUShort
Definition: ies.h:412
IAX2Ie::ie_countEntries
Definition: ies.h:117
IAX2IeReceivedJitter::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1950
IAX2IeDateTime::IAX2IeDateTime
IAX2IeDateTime(BYTE length, BYTE *srcData)
Definition: ies.h:1589
IAX2IeCallingPres::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1769
IAX2IeSockaddrIn::GetLengthOfData
virtual BYTE GetLengthOfData()
Definition: ies.h:719
IAX2IeCodecPrefs::IAX2IeCodecPrefs
IAX2IeCodecPrefs(BYTE length, BYTE *srcData)
Definition: ies.h:1915
IAX2IeChallenge::IAX2IeChallenge
IAX2IeChallenge(BYTE length, BYTE *srcData)
Definition: ies.h:1161
IAX2IeCallingTon
Definition: ies.h:1780
IAX2IeString
Definition: ies.h:498
IAX2Ie::ie_password
Definition: ies.h:67
IAX2IeList::AppendIe
void AppendIe(IAX2Ie *newMember)
Definition: ies.h:2179
IAX2IeData::autoAnswer
int autoAnswer
Definition: iedata.h:104
IAX2IeRefresh
Definition: ies.h:1279
IAX2IeData::userName
PString userName
Definition: iedata.h:81
IAX2IeApparentAddr::~IAX2IeApparentAddr
~IAX2IeApparentAddr()
Definition: ies.h:1262
IAX2IeUInt
Definition: ies.h:454
IAX2Ie::ie_callingNumber
Definition: ies.h:62
IAX2IeLanguage::PrintOn
virtual void PrintOn(ostream &str) const
IAX2Ie::ie_msgCount
Definition: ies.h:84
IAX2IeCapability::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeData::provVer
unsigned int provVer
Definition: iedata.h:114
IAX2IeServiceIdent
Definition: ies.h:1630
IAX2IeAdsicpe::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1066
IAX2Ie::ie_recDelay
Definition: ies.h:109
IAX2IeIaxUnknown
Definition: ies.h:1384
IAX2IeString::IAX2IeString
IAX2IeString(const char *newValue)
Definition: ies.h:514
IAX2IeChallenge
Definition: ies.h:1154
IAX2IeMusicOnHold
Definition: ies.h:1459
IAX2IeDpStatus::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1319
IAX2IeChallenge::IAX2IeChallenge
IAX2IeChallenge(const PString &newValue)
Definition: ies.h:1164
IAX2IeCallingTon::IAX2IeCallingTon
IAX2IeCallingTon(BYTE length, BYTE *srcData)
Definition: ies.h:1787
IAX2IeBlockOfData::IAX2IeBlockOfData
IAX2IeBlockOfData()
Definition: ies.h:661
IAX2IeEncKey
Definition: ies.h:1884
IAX2IeCallingTns::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1822
IAX2IeData::msgCount
int msgCount
Definition: iedata.h:103
IAX2IeProvisioning
Definition: ies.h:1534
IAX2Ie::GetBinarySize
int GetBinarySize()
Definition: ies.h:142
IAX2IeList
Definition: ies.h:2149
IAX2IeInt::dataValue
int dataValue
Definition: ies.h:408
IAX2IeChar::WriteBinary
virtual void WriteBinary(BYTE *data)
Definition: ies.h:319
IAX2IeDnid::IAX2IeDnid
IAX2IeDnid(BYTE length, BYTE *srcData)
Definition: ies.h:1079
IAX2IeLanguage::IAX2IeLanguage
IAX2IeLanguage(BYTE length, BYTE *srcData)
Definition: ies.h:1001
IAX2IeAutoAnswer::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1453
IAX2IeReceivedFrames::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:1998
IAX2IeData::fwBlockDesc
unsigned int fwBlockDesc
Definition: iedata.h:111
IAX2IeFirmwareVer
Definition: ies.h:1654
IAX2IeDpStatus::IAX2IeDpStatus
IAX2IeDpStatus(BYTE length, BYTE *srcData)
Definition: ies.h:1313
IAX2IeData::receivedDropped
unsigned int receivedDropped
Definition: iedata.h:121
IAX2IeData::callingNumber
PString callingNumber
Definition: iedata.h:74
IAX2IeInt
Definition: ies.h:369
IAX2IeReceivedJitter::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1945
IAX2IeCalledNumber::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeCalledContext::PrintOn
virtual void PrintOn(ostream &str) const
IAX2IeApparentAddr::GetKeyValue
virtual BYTE GetKeyValue() const
Definition: ies.h:1268
IAX2IeCallNo
Definition: ies.h:1330
IAX2IeSockaddrIn::WriteBinary
virtual void WriteBinary(BYTE *data)
IAX2Ie::ie_samplingRate
Definition: ies.h:101
IAX2IeCallingNumber::StoreDataIn
virtual void StoreDataIn(IAX2IeData &res)
Definition: ies.h:793
IAX2IeReceivedOoo::IAX2IeReceivedOoo
IAX2IeReceivedOoo(BYTE length, BYTE *srcData)
Definition: ies.h:2059
IAX2IeBinary::SetData
void SetData(const PBYTEArray &newData)
IAX2IeIaxUnknown::IAX2IeIaxUnknown
IAX2IeIaxUnknown(BYTE length, BYTE *srcData)
Definition: ies.h:1391
IAX2IeDateAndTime::PrintOn
virtual void PrintOn(ostream &str) const