H323GatekeeperListener Class Reference

#include <gkserver.h>

Inheritance diagram for H323GatekeeperListener:

H225_RAS H323Transactor List of all members.

Public Member Functions

Construction
 H323GatekeeperListener (H323EndPoint &endpoint, H323GatekeeperServer &server, const PString &gatekeeperIdentifier, H323Transport *transport=NULL)
 ~H323GatekeeperListener ()
Operations
BOOL UnregistrationRequest (const H323RegisteredEndPoint &ep, unsigned reason)
BOOL DisengageRequest (const H323GatekeeperCall &call, unsigned reason)
virtual BOOL InfoRequest (H323RegisteredEndPoint &ep, H323GatekeeperCall *call=NULL)
virtual BOOL ServiceControlIndication (H323RegisteredEndPoint &ep, const H323ServiceControlSession &session, H323GatekeeperCall *call=NULL)
Operation callbacks
virtual H323GatekeeperRequest::Response OnDiscovery (H323GatekeeperGRQ &request)
virtual H323GatekeeperRequest::Response OnRegistration (H323GatekeeperRRQ &request)
virtual H323GatekeeperRequest::Response OnUnregistration (H323GatekeeperURQ &request)
virtual H323GatekeeperRequest::Response OnAdmission (H323GatekeeperARQ &request)
virtual H323GatekeeperRequest::Response OnDisengage (H323GatekeeperDRQ &request)
virtual H323GatekeeperRequest::Response OnBandwidth (H323GatekeeperBRQ &request)
virtual H323GatekeeperRequest::Response OnLocation (H323GatekeeperLRQ &request)
virtual H323GatekeeperRequest::Response OnInfoResponse (H323GatekeeperIRR &request)
Low level protocol callbacks
BOOL OnReceiveGatekeeperRequest (const H323RasPDU &, const H225_GatekeeperRequest &)
BOOL OnReceiveRegistrationRequest (const H323RasPDU &, const H225_RegistrationRequest &)
BOOL OnReceiveUnregistrationRequest (const H323RasPDU &, const H225_UnregistrationRequest &)
BOOL OnReceiveUnregistrationConfirm (const H225_UnregistrationConfirm &)
BOOL OnReceiveUnregistrationReject (const H225_UnregistrationReject &)
BOOL OnReceiveAdmissionRequest (const H323RasPDU &, const H225_AdmissionRequest &)
BOOL OnReceiveBandwidthRequest (const H323RasPDU &, const H225_BandwidthRequest &)
BOOL OnReceiveBandwidthConfirm (const H225_BandwidthConfirm &)
BOOL OnReceiveBandwidthReject (const H225_BandwidthReject &)
BOOL OnReceiveDisengageRequest (const H323RasPDU &, const H225_DisengageRequest &)
BOOL OnReceiveDisengageConfirm (const H225_DisengageConfirm &)
BOOL OnReceiveDisengageReject (const H225_DisengageReject &)
BOOL OnReceiveLocationRequest (const H323RasPDU &, const H225_LocationRequest &)
BOOL OnReceiveInfoRequestResponse (const H323RasPDU &, const H225_InfoRequestResponse &)
BOOL OnReceiveResourcesAvailableConfirm (const H225_ResourcesAvailableConfirm &)
BOOL OnSendFeatureSet (unsigned, H225_FeatureSet &features) const
void OnReceiveFeatureSet (unsigned, const H225_FeatureSet &features) const
Member access
H323GatekeeperServerGetGatekeeper () const

Protected Attributes

H323GatekeeperServergatekeeper

Detailed Description

This class embodies the low level H.225.0 RAS protocol on gatekeepers. One or more instances of this class may be used to access a single H323GatekeeperServer instance. Thus specific interfaces could be set up to receive UDP packets, all operating as the same gatekeeper.

Definition at line 1243 of file gkserver.h.


Constructor & Destructor Documentation

H323GatekeeperListener::H323GatekeeperListener ( H323EndPoint endpoint,
H323GatekeeperServer server,
const PString &  gatekeeperIdentifier,
H323Transport transport = NULL 
)

Create a new gatekeeper listener.

Parameters:
endpoint  Local endpoint
server  Database for gatekeeper
gatekeeperIdentifier  Name of this gatekeeper
transport  Transport over which gatekeepers communicates.

Definition at line 2702 of file gkserver.cxx.

References H323Transport::AcceptFromAny, H225_RAS::gatekeeperIdentifier, H323Transport::SetPromiscuous(), and H323Transactor::transport.

H323GatekeeperListener::~H323GatekeeperListener (  ) 

Destroy gatekeeper listener.

Definition at line 2717 of file gkserver.cxx.

References H323Transactor::StopChannel().


Member Function Documentation

BOOL H323GatekeeperListener::UnregistrationRequest ( const H323RegisteredEndPoint ep,
unsigned  reason 
)

Send a UnregistrationRequest (URQ) to endpoint.

Definition at line 2928 of file gkserver.cxx.

References H225_UnregistrationRequest::e_endpointIdentifier, H225_UnregistrationRequest::e_gatekeeperIdentifier, H225_RAS::gatekeeperIdentifier, H323RegisteredEndPoint::GetAuthenticators(), H323RegisteredEndPoint::GetIdentifier(), H323Transactor::GetNextSequenceNumber(), H323RegisteredEndPoint::GetRASAddresses(), H323RegisteredEndPoint::GetSignalAddress(), H323RegisteredEndPoint::GetSignalAddressCount(), H323Transactor::MakeRequest(), and H323TransportAddress::SetPDU().

Referenced by H323RegisteredEndPoint::Unregister().

BOOL H323GatekeeperListener::DisengageRequest ( const H323GatekeeperCall call,
unsigned  reason 
)

Send a DisengageRequest (DRQ) to endpoint.

Definition at line 2952 of file gkserver.cxx.

References H323GatekeeperCall::AddCallCreditServiceControl(), H225_DisengageRequest::e_gatekeeperIdentifier, H225_DisengageRequest::e_serviceControl, H225_RAS::gatekeeperIdentifier, H323RegisteredEndPoint::GetAuthenticators(), H323GatekeeperCall::GetCallIdentifier(), H323GatekeeperCall::GetCallReference(), H323GatekeeperCall::GetConferenceIdentifier(), H323GatekeeperCall::GetEndPoint(), H323RegisteredEndPoint::GetIdentifier(), H323Transactor::GetNextSequenceNumber(), H323RegisteredEndPoint::GetRASAddresses(), H323GatekeeperCall::IsAnsweringCall(), and H323Transactor::MakeRequest().

Referenced by H323GatekeeperCall::Disengage().

BOOL H323GatekeeperListener::InfoRequest ( H323RegisteredEndPoint ep,
H323GatekeeperCall call = NULL 
) [virtual]

Send an InfoRequest (IRQ) to endpoint.

Definition at line 3119 of file gkserver.cxx.

References H323RegisteredEndPoint::GetAuthenticators(), H323GatekeeperCall::GetCallIdentifier(), H323GatekeeperCall::GetCallReference(), H323Transactor::GetNextSequenceNumber(), H323RegisteredEndPoint::GetRASAddresses(), and H323Transactor::MakeRequest().

Referenced by H323GatekeeperCall::OnHeartbeat(), and H323RegisteredEndPoint::OnTimeToLive().

virtual BOOL H323GatekeeperListener::ServiceControlIndication ( H323RegisteredEndPoint ep,
const H323ServiceControlSession session,
H323GatekeeperCall call = NULL 
) [virtual]

Send an ServiceControlIndication (SCI) to endpoint.

H323GatekeeperRequest::Response H323GatekeeperListener::OnDiscovery ( H323GatekeeperGRQ request  )  [virtual]

Handle a discovery GRQ PDU. The default behaviour does some checks and calls the gatekeeper server instances function of the same name.

Definition at line 2724 of file gkserver.cxx.

References H323GatekeeperRequest::CheckGatekeeperIdentifier(), H225_GatekeeperRejectReason::e_invalidRevision, H323Transactor::endpoint, gatekeeper, H323GatekeeperGRQ::gcf, H323TransportAddress::GetIpAndPort(), H323Transport::GetLocalAddress(), H323GatekeeperGRQ::grq, H323EndPoint::InternalTranslateTCPAddress(), H225_GatekeeperRequest::m_protocolIdentifier, H225_GatekeeperConfirm::m_rasAddress, H225_GatekeeperRequest::m_rasAddress, H323GatekeeperServer::OnDiscovery(), H323Transaction::Reject, H323TransportAddress::SetPDU(), H323GatekeeperGRQ::SetRejectReason(), H323EndPoint::TranslateTCPPort(), and H323Transactor::transport.

Referenced by H323GatekeeperGRQ::OnHandlePDU().

H323GatekeeperRequest::Response H323GatekeeperListener::OnRegistration ( H323GatekeeperRRQ request  )  [virtual]

Handle a registration RRQ PDU. The default behaviour does some checks and calls the gatekeeper server instances function of the same name.

Definition at line 2770 of file gkserver.cxx.

References H323GatekeeperRequest::CheckGatekeeperIdentifier(), H323Transaction::Confirm, H225_RegistrationRequest::e_endpointIdentifier, H225_RegistrationRejectReason::e_invalidRevision, H323GatekeeperRequest::endpoint, H323GatekeeperServer::FindEndPointByIdentifier(), gatekeeper, H225_RAS::gatekeeperIdentifier, H225_RegistrationRequest::m_endpointIdentifier, H225_RegistrationRequest::m_keepAlive, H225_RegistrationRequest::m_protocolIdentifier, H323GatekeeperServer::OnRegistration(), H323Transaction::Reject, H323GatekeeperRRQ::rrq, and H323GatekeeperRRQ::SetRejectReason().

Referenced by H323GatekeeperRRQ::OnHandlePDU().

H323GatekeeperRequest::Response H323GatekeeperListener::OnUnregistration ( H323GatekeeperURQ request  )  [virtual]

Handle an unregistration URQ PDU. The default behaviour does some checks and calls the gatekeeper server instances function of the same name.

Definition at line 2820 of file gkserver.cxx.

References H225_UnregistrationRequest::e_endpointIdentifier, H225_UnregRejectReason::e_notCurrentlyRegistered, H323GatekeeperRequest::endpoint, H323GatekeeperServer::FindEndPointByIdentifier(), H323GatekeeperServer::FindEndPointBySignalAddresses(), gatekeeper, H225_UnregistrationRequest::m_callSignalAddress, H225_UnregistrationRequest::m_endpointIdentifier, H323GatekeeperServer::OnUnregistration(), H323Transaction::Reject, H323GatekeeperURQ::SetRejectReason(), and H323GatekeeperURQ::urq.

Referenced by H323GatekeeperURQ::OnHandlePDU().

H323GatekeeperRequest::Response H323GatekeeperListener::OnAdmission ( H323GatekeeperARQ request  )  [virtual]

Handle an admission ARQ PDU. The default behaviour does some checks and calls the gatekeeper server instances function of the same name.

Definition at line 2874 of file gkserver.cxx.

References H323GatekeeperARQ::acf, H323GatekeeperARQ::alternateSecurityID, H323GatekeeperRequest::CheckCryptoTokens(), H323GatekeeperRequest::CheckGatekeeperIdentifier(), H323Transaction::Confirm, H225_CallModel::e_gatekeeperRouted, gatekeeper, H323GatekeeperServer::GetAdmissionRequestAuthentication(), H323GatekeeperRequest::GetRegisteredEndPoint(), H225_AdmissionConfirm::m_callModel, H225_AdmissionConfirm::m_destCallSignalAddress, H323GatekeeperServer::OnAdmission(), H323Transaction::Reject, and H323Transactor::SetUpCallSignalAddresses().

Referenced by H323GatekeeperARQ::OnHandlePDU().

H323GatekeeperRequest::Response H323GatekeeperListener::OnDisengage ( H323GatekeeperDRQ request  )  [virtual]

Handle a disengage DRQ PDU. The default behaviour does some checks and calls the gatekeeper server instances function of the same name.

Definition at line 2982 of file gkserver.cxx.

References H323GatekeeperRequest::CheckCryptoTokens(), H323GatekeeperRequest::CheckGatekeeperIdentifier(), gatekeeper, H323GatekeeperRequest::GetRegisteredEndPoint(), H323GatekeeperServer::OnDisengage(), and H323Transaction::Reject.

Referenced by H323GatekeeperDRQ::OnHandlePDU().

H323GatekeeperRequest::Response H323GatekeeperListener::OnBandwidth ( H323GatekeeperBRQ request  )  [virtual]

Handle a bandwidth BRQ PDU. The default behaviour does some checks and calls the gatekeeper server instances function of the same name.

Definition at line 3034 of file gkserver.cxx.

References H323GatekeeperRequest::CheckCryptoTokens(), H323GatekeeperRequest::CheckGatekeeperIdentifier(), gatekeeper, H323GatekeeperRequest::GetRegisteredEndPoint(), H323GatekeeperServer::OnBandwidth(), and H323Transaction::Reject.

Referenced by H323GatekeeperBRQ::OnHandlePDU().

H323GatekeeperRequest::Response H323GatekeeperListener::OnLocation ( H323GatekeeperLRQ request  )  [virtual]

Handle a location LRQ PDU. The default behaviour does some checks and calls the gatekeeper server instances function of the same name.

Definition at line 3086 of file gkserver.cxx.

References H323GatekeeperRequest::CheckCryptoTokens(), H323GatekeeperRequest::CheckGatekeeperIdentifier(), H225_LocationRequest::e_endpointIdentifier, gatekeeper, H323GatekeeperRequest::GetRegisteredEndPoint(), H323GatekeeperLRQ::lcf, H323GatekeeperLRQ::lrq, H225_LocationConfirm::m_rasAddress, H323GatekeeperServer::OnLocation(), H323Transaction::Reject, H323Transport::SetUpTransportPDU(), and H323Transactor::transport.

Referenced by H323GatekeeperLRQ::OnHandlePDU().

H323GatekeeperRequest::Response H323GatekeeperListener::OnInfoResponse ( H323GatekeeperIRR request  )  [virtual]

Handle an info request response IRR PDU. The default behaviour does some checks and calls the gatekeeper server instances function of the same name.

Definition at line 3166 of file gkserver.cxx.

References H323GatekeeperRequest::CheckCryptoTokens(), gatekeeper, H323GatekeeperRequest::GetRegisteredEndPoint(), H323Transaction::Ignore, H323GatekeeperIRR::irr, H225_InfoRequestResponse::m_unsolicited, H323GatekeeperServer::OnInfoResponse(), and H323Transaction::Reject.

Referenced by H323GatekeeperIRR::OnHandlePDU().


The documentation for this class was generated from the following files:
Generated on Thu Oct 25 13:45:27 2007 for h323plus by  doxygen 1.5.2