1#if !defined(STUNMESSAGE_HXX)
10#define STUN_MAX_UNKNOWN_ATTRIBUTES 8
11#define TURN_MAX_XOR_PEER_ADDR 8
29 char* buf,
unsigned int bufLen);
45 void setErrorCode(
unsigned short errorCode,
const char* reason);
51 void setTurnData(
const char* data,
unsigned int len);
384 bool stunParseMessage(
char* buf,
unsigned int bufLen);
386 char* encode16(
char* buf,
uint16_t data);
387 char* encode32(
char* buf,
uint32_t data);
388 char* encode64(
char* buf,
const uint64_t data);
389 char* encode(
char* buf,
const char* data,
unsigned int length);
401 void computeHmac(
char*
hmac,
const char*
input,
int length,
const char* key,
int sizeKey);
403 void computeHmacSha256(
char*
hmac,
const char*
input,
int length,
const char* key,
int sizeKey);
#define TURN_MAX_XOR_PEER_ADDR
#define STUN_MAX_UNKNOWN_ATTRIBUTES
uint64_t mIceControlledTieBreaker
static const uint16_t AlternateServer
bool mHasTurnChannelNumber
static const uint8_t IPv4Family
define stun address families
static const uint16_t StunClassSuccessResponse
static const uint16_t SharedSecretMethod
static const uint16_t BindMethod
bool mHasTurnRequestedTransport
void createUsernameAndPassword()
uint64_t mIceControllingTieBreaker
StunAtrAddress mMappedAddress
static const uint8_t PropsNone
static const uint16_t UnknownAttribute
static const uint16_t TurnBandwidth
bool checkMessageIntegritySha256(const resip::Data &hmacKey)
static const uint16_t IceUseCandidate
void setTurnData(const char *data, unsigned int len)
void setPassword(const char *password)
uint16_t mMessageIntegritySha256MsgLength
static const uint16_t TurnDontFragment
void createHeader(uint16_t stunclass, uint16_t method)
static const uint16_t XorMappedAddress
StunAtrAddress mSecondaryAddress
const StunTuple & getLocalTuple() const
void getTupleFromUsername(StunTuple &tuple)
void generateShortTermPasswordForUsername(resip::Data &password)
void setIceUseCandidate()
static const uint16_t MessageIntegritySha256
bool mHasUnknownAttributes
static const uint16_t Realm
static const uint16_t SecondaryAddress
static const uint16_t TurnSendMethod
StunAtrUnknown mUnknownAttributes
uint64_t mTurnReservationToken
static const uint16_t Username
bool mHasTurnXorRelayedAddress
static const uint32_t ChangeIpFlag
uint8_t mTurnRequestedTransport
StunAtrUnknown mUnknownRequiredAttributes
void applyXorToAddress(const StunAtrAddress &in, StunAtrAddress &out)
uint16_t mMessageIntegrityMsgLength
static const uint16_t XorMappedAddress_old
static const uint16_t TurnReservationToken
const StunTuple & getRemoteTuple() const
uint16_t mTurnRequestedAddressFamily
static const uint16_t TurnEvenPort
static const uint16_t StunClassErrorResponse
StunAtrAddress mChangedAddress
static const uint16_t TurnCreatePermissionMethod
void setRealm(const char *realm)
static const uint16_t TurnXorRelayedAddress
unsigned int stunEncodeFramedMessage(char *buf, unsigned int bufLen)
static const uint16_t IcePriority
void setUsername(const char *username)
static const uint16_t TurnData
static const uint16_t Software
uint16_t mTurnChannelNumber
static const uint16_t StunClassRequest
static const uint16_t ChangeRequest
StunAtrAddress mTurnXorPeerAddress[TURN_MAX_XOR_PEER_ADDR]
void calculateHmacKey(resip::Data &hmacKey, const resip::Data &longtermAuthenticationPassword)
static const uint16_t TurnAllocateMethod
StunAtrAddress mReflectedFrom
static const uint16_t SourceAddress
StunAtrAddress mXorMappedAddress
bool mHasTurnRequestedAddressFamily
bool checkMessageIntegrity(const resip::Data &hmacKey)
bool mHasSecondaryAddress
void setSoftware(const char *software)
static const uint32_t ChangePortFlag
void setErrorCode(unsigned short errorCode, const char *reason)
bool mHasMessageIntegritySha256
static const uint16_t MessageIntegrity
static const uint16_t TurnLifetime
static const uint32_t RequestedTransportTcp
StunAtrAddress mAlternateServer
static const uint16_t Fingerprint
StunAtrIntegritySha256 mMessageIntegritySha256
StunMessage & operator=(const StunMessage &rhs)
static const uint16_t Password
uint32_t mTurnConnectStat
static const uint16_t ErrorCode
bool mHasMessageIntegrity
StunAtrAddress mResponseAddress
static const uint16_t TurnChannelNumber
static const uint16_t TurnDataMethod
static const uint16_t TurnRequestedTransport
StunAtrIntegrity mMessageIntegrity
static const uint16_t TurnXorPeerAddress
static void setStunAtrAddressFromTuple(StunAtrAddress &address, const StunTuple &tuple)
bool mHasTurnDontFragment
static const uint8_t IPv6Family
static const uint32_t StunMagicCookie
int mCntTurnXorPeerAddress
static const uint8_t PropsPortEven
bool mHasTurnReservationToken
unsigned int stunEncodeMessage(char *buf, unsigned int bufLen)
static const uint16_t TurnConnectStat
void calculateHmacKeyForHa1(resip::Data &hmacKey, const resip::Data &ha1)
static const uint16_t MappedAddress
void setNonce(const char *nonce)
static const uint16_t TurnRefreshMethod
static const uint16_t ReflectedFrom
static const uint16_t IceControlled
static const uint8_t PropsPortPair
static const uint16_t IceControlling
static const uint16_t Nonce
static const uint16_t TurnRequestedAddressFamily
static const uint32_t RequestedTransportUdp
void setIcePriority(uint32_t priority)
StunAtrAddress mTurnXorRelayedAddress
static const uint16_t TurnChannelBindMethod
StunAtrAddress mSourceAddress
static const uint16_t ResponseAddress
static const uint16_t ChangedAddress
TurnAtrEvenPort mTurnEvenPort
static const uint16_t StunClassIndication
bool mHasXorMappedAddress
static void setTupleFromStunAtrAddress(StunTuple &tuple, const StunAtrAddress &address)
An alternative to std::string, encapsulates an arbitrary buffer of bytes.
This file is used to handle compatibility fixes/tweaks so reSIProcate can function on multiple platfo...
bool operator==(const UInt128 &lhs, const UInt128 &rhs)
bool operator<(const UInt128 &lhs, const UInt128 &rhs)
EncodeStream & operator<<(EncodeStream &strm, const UInt128 &r)
unsigned __int64 uint64_t
UInt128 magicCookieAndTid