Stun Server  Compliant with the latest RFCs including 5389, 5769, and 5780
discover the local host's own external IP address
CStunRequestHandler Class Reference

#include <messagehandler.h>

Collaboration diagram for CStunRequestHandler:

Static Public Member Functions

static HRESULT ProcessRequest (const StunMessageIn &msgIn, StunMessageOut &msgOut, TransportAddressSet *pAddressSet, IStunAuth *pAuth)
 

Private Member Functions

 CStunRequestHandler ()
 
HRESULT ProcessBindingRequest ()
 
void BuildErrorResponse ()
 
HRESULT ValidateAuth ()
 
HRESULT ProcessRequestImpl ()
 
bool HasAddress (SocketRole role)
 
bool IsIPAddressZeroOrInvalid (SocketRole role)
 

Private Attributes

IStunAuth_pAuth
 
TransportAddressSet_pAddrSet
 
const StunMessageIn_pMsgIn
 
StunMessageOut_pMsgOut
 
StunMessageIntegrity _integrity
 
StunErrorCode _error
 
bool _fRequestHasResponsePort
 
StunTransactionId _transid
 
bool _fLegacyMode
 

Detailed Description

Definition at line 75 of file messagehandler.h.

Constructor & Destructor Documentation

CStunRequestHandler::CStunRequestHandler ( )
private

Definition at line 24 of file messagehandler.cpp.

Member Function Documentation

void CStunRequestHandler::BuildErrorResponse ( )
private

Definition at line 159 of file messagehandler.cpp.

bool CStunRequestHandler::HasAddress ( SocketRole  role)
private

Definition at line 455 of file messagehandler.cpp.

bool CStunRequestHandler::IsIPAddressZeroOrInvalid ( SocketRole  role)
private

Definition at line 460 of file messagehandler.cpp.

HRESULT CStunRequestHandler::ProcessBindingRequest ( )
private

Definition at line 202 of file messagehandler.cpp.

HRESULT CStunRequestHandler::ProcessRequest ( const StunMessageIn msgIn,
StunMessageOut msgOut,
TransportAddressSet pAddressSet,
IStunAuth pAuth 
)
static

Definition at line 39 of file messagehandler.cpp.

HRESULT CStunRequestHandler::ProcessRequestImpl ( )
private

Definition at line 77 of file messagehandler.cpp.

HRESULT CStunRequestHandler::ValidateAuth ( )
private

Definition at line 366 of file messagehandler.cpp.

Member Data Documentation

StunErrorCode CStunRequestHandler::_error
private

Definition at line 96 of file messagehandler.h.

bool CStunRequestHandler::_fLegacyMode
private

Definition at line 100 of file messagehandler.h.

bool CStunRequestHandler::_fRequestHasResponsePort
private

Definition at line 98 of file messagehandler.h.

StunMessageIntegrity CStunRequestHandler::_integrity
private

Definition at line 95 of file messagehandler.h.

TransportAddressSet* CStunRequestHandler::_pAddrSet
private

Definition at line 90 of file messagehandler.h.

IStunAuth* CStunRequestHandler::_pAuth
private

Definition at line 89 of file messagehandler.h.

const StunMessageIn* CStunRequestHandler::_pMsgIn
private

Definition at line 91 of file messagehandler.h.

StunMessageOut* CStunRequestHandler::_pMsgOut
private

Definition at line 92 of file messagehandler.h.

StunTransactionId CStunRequestHandler::_transid
private

Definition at line 99 of file messagehandler.h.


The documentation for this class was generated from the following files: