sipxportlib  Version 3.3
Public Member Functions | Static Public Member Functions | Protected Member Functions | List of all members
TurnMessage Class Reference

#include <TurnMessage.h>

Inheritance diagram for TurnMessage:
Inheritance graph
[legend]
Collaboration diagram for TurnMessage:
Collaboration graph
[legend]

Public Member Functions

 TurnMessage (TurnMessage *pRequest=NULL, bool bLegacyMode=true)
 
virtual ~TurnMessage ()
 
virtual void reset ()
 
virtual bool encodeBody (char *pBuf, size_t nBufLength, size_t &nBytesUsed)
 
void setLifetime (uint32_t secs)
 
void setBandwidth (uint32_t rKBPS)
 
void setDestinationAddress (const char *szIp, uint16_t port)
 
void setTurnRemoteAddress (const char *szIp, uint16_t port)
 
void setData (const char *pData, uint16_t nLength)
 
void setRelayAddress (const char *szIp, uint16_t port)
 
void setRequestedTransport (TURN_TRANSPORT_TYPE transportType)
 
void setRequestedIp (const char *szIp, uint16_t port)
 
bool getLifetime (uint32_t &rSecs)
 
bool getBandwidth (uint32_t &rKBPS)
 
bool getDestinationAddress (char *szIp, uint16_t &rPort)
 
bool getTurnRemoteAddress (char *szIp, uint16_t &rPort)
 
bool getData (char *&rpData, uint16_t &nLength)
 
bool getRelayAddress (char *szIp, uint16_t &rPort)
 
bool getRequestedTransport (TURN_TRANSPORT_TYPE &rTransportType)
 
bool getRequestedIp (char *szIp, uint16_t &rPort)
 
virtual bool validateMessageType (uint16_t type)
 
virtual bool isRequestOrNonErrorResponse ()
 
- Public Member Functions inherited from StunMessage
 StunMessage (StunMessage *pRequest=NULL, bool bLegacyMode=true)
 
virtual ~StunMessage ()
 
virtual bool parse (const char *pBuf, size_t nBufLength)
 
virtual bool encode (char *pBuf, size_t nBufLength, size_t &nActualLength)
 
void setMagicId (STUN_MAGIC_ID &rMagicId)
 
void setTransactionId (STUN_TRANSACTION_ID &rTransactionId)
 
void allocTransactionId ()
 
void setType (uint16_t type)
 
void setMappedAddress (const char *szIp, const uint16_t port)
 
void setResponseAddress (const char *szIp, const uint16_t port)
 
void setChangePort (const bool bChange)
 
void setChangeIp (const bool bChange)
 
void setSourceAddress (const char *szIp, const uint16_t port)
 
void setChangedAddress (const char *szIp, const uint16_t port)
 
void setUsername (const char *szUsername)
 
void setPassword (const char *szPassword)
 
void setRealm (const char *szRealm)
 
void setNonce (const char *szNonce)
 
void setError (const uint16_t code, const char *szReason)
 
void addUnknownAttribute (uint16_t attributeId)
 
void setReflectedFrom (const char *szIp, const uint16_t port)
 
void setServer (const char *szServer)
 
void setRequestXorOnly ()
 
void setSendXorOnly ()
 
void setIncludeMessageIntegrity (bool bInclude)
 
void setIncludeFingerPrint (bool bInclude)
 
void setAltServer (const char *szIp, uint16_t port)
 
void getMagicId (STUN_MAGIC_ID *pMagicId)
 
void getTransactionId (STUN_TRANSACTION_ID *pTransactionId)
 
uint16_t getType ()
 
bool getMappedAddress (char *szIp, uint16_t &rPort)
 
bool getResponseAddress (char *szIp, uint16_t &rPort)
 
bool getChangePort ()
 
bool getChangeIp ()
 
bool getSourceAddress (char *szIp, uint16_t &rPort)
 
bool getChangedAddress (char *szIp, uint16_t &rPort)
 
bool getUsername (char *szUsername)
 
bool getPassword (char *szPassword)
 
bool getRealm (char *szRealm)
 
bool getNonce (char *szNonce)
 
bool getMessageIntegrity (char *cMessageIntegrity)
 
bool getError (uint16_t &rCode, char *szReason)
 
bool getUnknownAttributes (uint16_t *pList, size_t nMaxItems, size_t &nActualItems)
 
bool getReflectedFrom (char *szIp, uint16_t &rPort)
 
bool getServer (char *szServer)
 
bool getUnknownParsedAttributes (uint16_t *pList, size_t nMaxItems, size_t &nActualItems)
 
bool getRequestXorOnly ()
 
bool getAltServer (char *szIp, uint16_t &rPort)
 
bool getFingerPrint (bool &bValid)
 
virtual bool isMessageIntegrityValid (const char *cPassword, size_t nPassword)
 
virtual bool isFingerPrintValid ()
 

Static Public Member Functions

static bool isTurnMessage (const char *pBuf, uint16_t nBufLength, bool *pbDataIndication=NULL)
 
- Static Public Member Functions inherited from StunMessage
static bool isStunMessage (const char *pBuf, uint16_t nBufLength)
 
static bool isFingerPrintValid (const char *pBuf, uint16_t nBufLength, bool bMissingOk)
 

Protected Member Functions

virtual bool parseAttribute (STUN_ATTRIBUTE_HEADER *pHeader, char *pBuf)
 
bool encodeAttributeLong (uint16_t type, uint32_t value, char *&pBuf, size_t &nBytesLeft)
 
bool encodeAttributeRaw (uint16_t type, const char *cBuf, size_t length, char *&pBuf, size_t &nBytesLeft)
 
- Protected Member Functions inherited from StunMessage
bool encodeByte (char c, char *&pBuf, size_t &nBytesLeft)
 
bool encodeShort (uint16_t value, char *&pBuf, size_t &nBytesLeft)
 
bool encodeLong (uint32_t value, char *&pBuf, size_t &nBytesLeft)
 
bool encodeRaw (const char *cRaw, size_t length, char *&pBuf, size_t &nBytesLeft)
 
bool encodeHeader (STUN_MESSAGE_HEADER *pHeader, char *&pBuf, size_t &nBytesLeft)
 
bool encodeAttributeHeader (int16_t type, int16_t length, char *&pBuf, size_t &nBytesLeft)
 
bool encodeAttributeAddress (uint16_t type, STUN_ATTRIBUTE_ADDRESS *pAddress, char *&pBuf, size_t &nBytesLeft)
 
bool encodeXorAttributeAddress (uint16_t type, STUN_ATTRIBUTE_ADDRESS *pAddress, char *&pBuf, size_t &nBytesLeft)
 
bool encodeString (uint16_t type, const char *szString, char *&pBuf, size_t &nBytesLeft)
 
bool encodeAttributeError (STUN_ATTRIBUTE_ERROR *pError, char *&pBuf, size_t &nBytesLeft)
 
bool encodeAttributesUnknown (STUN_ATTRIBUTE_UNKNOWN *pAttributes, char *&pBuf, size_t &nBytesLeft)
 
bool parseAddressAttribute (char *pBuf, size_t nLength, STUN_ATTRIBUTE_ADDRESS *pAddress)
 
bool parseXorAddressAttribute (char *pBuf, size_t nLength, STUN_ATTRIBUTE_ADDRESS *pAddress)
 
bool parseShortAttribute (char *pBuf, size_t nLength, uint16_t *pShort)
 
bool parseLongAttribute (char *pBuf, size_t nLength, uint32_t *pLong)
 
bool parseStringAttribute (char *pBuf, size_t nLength, char *pString)
 
bool parseRawAttribute (char *pBuf, size_t nLength, char *pDest, size_t nDest)
 
bool parseErrorAttribute (char *pBuf, size_t nLength, STUN_ATTRIBUTE_ERROR *pError)
 
bool parseUnknownAttribute (char *pBuf, size_t nLength, STUN_ATTRIBUTE_UNKNOWN *pAttributes)
 

Additional Inherited Members

- Static Protected Member Functions inherited from StunMessage
static void calculateHmacSha1 (const char *pDataIn, size_t nDataIn, const char *pKey, size_t nKey, char results[20])
 

Constructor & Destructor Documentation

TurnMessage ( TurnMessage pRequest = NULL,
bool  bLegacyMode = true 
)

Default constructor

~TurnMessage ( )
virtual

Destructor

Member Function Documentation

void reset ( void  )
virtual

Reimplemented from StunMessage.

bool encodeBody ( char *  pBuf,
size_t  nBufLength,
size_t &  nBytesUsed 
)
virtual

Reimplemented from StunMessage.

void setLifetime ( uint32_t  secs)
void setBandwidth ( uint32_t  rKBPS)
void setDestinationAddress ( const char *  szIp,
uint16_t  port 
)

deprecated

void setTurnRemoteAddress ( const char *  szIp,
uint16_t  port 
)
void setData ( const char *  pData,
uint16_t  nLength 
)
void setRelayAddress ( const char *  szIp,
uint16_t  port 
)
void setRequestedTransport ( TURN_TRANSPORT_TYPE  transportType)
void setRequestedIp ( const char *  szIp,
uint16_t  port 
)
bool getLifetime ( uint32_t rSecs)
bool getBandwidth ( uint32_t rKBPS)
bool getDestinationAddress ( char *  szIp,
uint16_t rPort 
)

deprecated

bool getTurnRemoteAddress ( char *  szIp,
uint16_t rPort 
)
bool getData ( char *&  rpData,
uint16_t nLength 
)
bool getRelayAddress ( char *  szIp,
uint16_t rPort 
)
bool getRequestedTransport ( TURN_TRANSPORT_TYPE rTransportType)
bool getRequestedIp ( char *  szIp,
uint16_t rPort 
)
bool validateMessageType ( uint16_t  type)
virtual

Reimplemented from StunMessage.

bool isTurnMessage ( const char *  pBuf,
uint16_t  nBufLength,
bool *  pbDataIndication = NULL 
)
static
bool isRequestOrNonErrorResponse ( )
virtual

Reimplemented from StunMessage.

bool parseAttribute ( STUN_ATTRIBUTE_HEADER pHeader,
char *  pBuf 
)
protectedvirtual

Reimplemented from StunMessage.

bool encodeAttributeLong ( uint16_t  type,
uint32_t  value,
char *&  pBuf,
size_t &  nBytesLeft 
)
protected
bool encodeAttributeRaw ( uint16_t  type,
const char *  cBuf,
size_t  length,
char *&  pBuf,
size_t &  nBytesLeft 
)
protected