h501pdu.h
Go to the documentation of this file.
/*
* h501pdu.h
*
* H.501 protocol handler
*
* Open H323 Library
*
* Copyright (c) 2003 Equivalence Pty. 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 H323 Library.
*
* The Initial Developer of the Original Code is Equivalence Pty. Ltd.
*
* Contributor(s): ______________________________________.
*
* $Revision: 21293 $
* $Author: rjongbloed $
* $Date: 2008-10-12 18:24:41 -0500 (Sun, 12 Oct 2008) $
*/
#ifndef OPAL_H323_H501PDU_H
#define OPAL_H323_H501PDU_H
#ifdef P_USE_PRAGMA
#pragma interface
#endif
#include <opal/buildopts.h>
#if OPAL_H501
#include <ptlib/sockets.h>
#include <h323/transaddr.h>
#include <h323/h323trans.h>
#include <asn/h501.h>
class H323_AnnexG;
class H501PDU : public H501_Message, public H323TransactionPDU
{
PCLASSINFO(H501PDU, H501_Message);
public:
H501PDU();
// overrides from PObject
virtual PObject * Clone() const;
// overrides from H323TransactionPDU
virtual PASN_Object & GetPDU();
virtual PASN_Choice & GetChoice();
virtual const PASN_Object & GetPDU() const;
virtual const PASN_Choice & GetChoice() const;
virtual unsigned GetSequenceNumber() const;
virtual unsigned GetRequestInProgressDelay() const;
#if PTRACING
virtual const char * GetProtocolName() const;
#endif
virtual H323TransactionPDU * ClonePDU() const;
virtual void DeletePDU();
// new functions
H501_ServiceRequest & BuildServiceRequest (unsigned seqnum, const H323TransportAddressArray & reply);
H501_ServiceConfirmation & BuildServiceConfirmation (unsigned seqnum);
H501_ServiceRejection & BuildServiceRejection (unsigned seqnum, unsigned reason);
H501_ServiceRelease & BuildServiceRelease (unsigned seqnum);
H501_DescriptorRequest & BuildDescriptorRequest (unsigned seqnum, const H323TransportAddressArray & reply);
H501_DescriptorConfirmation & BuildDescriptorConfirmation (unsigned seqnum);
H501_DescriptorRejection & BuildDescriptorRejection (unsigned seqnum, unsigned reason);
H501_DescriptorIDRequest & BuildDescriptorIDRequest (unsigned seqnum, const H323TransportAddressArray & reply);
H501_DescriptorIDConfirmation & BuildDescriptorIDConfirmation (unsigned seqnum);
H501_DescriptorIDRejection & BuildDescriptorIDRejection (unsigned seqnum, unsigned reason);
H501_DescriptorUpdate & BuildDescriptorUpdate (unsigned seqnum, const H323TransportAddressArray & reply);
H501_DescriptorUpdateAck & BuildDescriptorUpdateAck (unsigned seqnum);
H501_AccessRequest & BuildAccessRequest (unsigned seqnum, const H323TransportAddressArray & reply);
H501_AccessConfirmation & BuildAccessConfirmation (unsigned seqnum);
H501_AccessRejection & BuildAccessRejection (unsigned seqnum, int reason);
H501_RequestInProgress & BuildRequestInProgress (unsigned seqnum, unsigned delay);
H501_NonStandardRequest & BuildNonStandardRequest (unsigned seqnum, const H323TransportAddressArray & reply);
H501_NonStandardConfirmation & BuildNonStandardConfirmation (unsigned seqnum);
H501_NonStandardRejection & BuildNonStandardRejection (unsigned seqnum, unsigned reason);
H501_UnknownMessageResponse & BuildUnknownMessageResponse (unsigned seqnum);
H501_UsageRequest & BuildUsageRequest (unsigned seqnum, const H323TransportAddressArray & reply);
H501_UsageConfirmation & BuildUsageConfirmation (unsigned seqnum);
H501_UsageIndicationConfirmation & BuildUsageIndicationConfirmation (unsigned seqnum);
H501_UsageIndicationRejection & BuildUsageIndicationRejection (unsigned seqnum, unsigned reason);
H501_UsageRejection & BuildUsageRejection (unsigned seqnum);
H501_ValidationRequest & BuildValidationRequest (unsigned seqnum, const H323TransportAddressArray & reply);
H501_ValidationConfirmation & BuildValidationConfirmation (unsigned seqnum);
H501_ValidationRejection & BuildValidationRejection (unsigned seqnum, unsigned reason);
H501_AuthenticationRequest & BuildAuthenticationRequest (unsigned seqnum, const H323TransportAddressArray & reply);
H501_AuthenticationConfirmation & BuildAuthenticationConfirmation (unsigned seqnum);
H501_AuthenticationRejection & BuildAuthenticationRejection (unsigned seqnum, unsigned reason);
protected:
void BuildRequest(unsigned tag, unsigned seqnum, const H323TransportAddressArray & replyAddr);
void BuildPDU(unsigned tag, unsigned seqnum);
};
#endif // OPAL_H501
#endif // OPAL_H323_H501PDU_H
H501PDU::BuildUsageRequest
H501_UsageRequest & BuildUsageRequest(unsigned seqnum, const H323TransportAddressArray &reply)
H501PDU::Clone
virtual PObject * Clone() const
H501PDU::BuildAuthenticationRejection
H501_AuthenticationRejection & BuildAuthenticationRejection(unsigned seqnum, unsigned reason)
H501PDU::BuildRequestInProgress
H501_RequestInProgress & BuildRequestInProgress(unsigned seqnum, unsigned delay)
H323TransportAddressArray
H323TransportAddressArray(const OpalTransportAddress &address)
Definition: transaddr.h:97
H501PDU::BuildNonStandardRejection
H501_NonStandardRejection & BuildNonStandardRejection(unsigned seqnum, unsigned reason)
H323_AnnexG
Definition: h323annexg.h:52
H501PDU::BuildAccessRequest
H501_AccessRequest & BuildAccessRequest(unsigned seqnum, const H323TransportAddressArray &reply)
buildopts.h
H501PDU::BuildAccessConfirmation
H501_AccessConfirmation & BuildAccessConfirmation(unsigned seqnum)
H501PDU::BuildDescriptorUpdate
H501_DescriptorUpdate & BuildDescriptorUpdate(unsigned seqnum, const H323TransportAddressArray &reply)
H501PDU::GetSequenceNumber
virtual unsigned GetSequenceNumber() const
H501PDU::BuildDescriptorIDConfirmation
H501_DescriptorIDConfirmation & BuildDescriptorIDConfirmation(unsigned seqnum)
H501PDU::H501PDU
H501PDU()
H501PDU::BuildUsageIndicationRejection
H501_UsageIndicationRejection & BuildUsageIndicationRejection(unsigned seqnum, unsigned reason)
H501PDU::BuildValidationRejection
H501_ValidationRejection & BuildValidationRejection(unsigned seqnum, unsigned reason)
H501PDU::BuildNonStandardConfirmation
H501_NonStandardConfirmation & BuildNonStandardConfirmation(unsigned seqnum)
H501PDU::GetRequestInProgressDelay
virtual unsigned GetRequestInProgressDelay() const
H501PDU::BuildValidationConfirmation
H501_ValidationConfirmation & BuildValidationConfirmation(unsigned seqnum)
H501PDU::BuildDescriptorIDRejection
H501_DescriptorIDRejection & BuildDescriptorIDRejection(unsigned seqnum, unsigned reason)
h323trans.h
H501PDU::BuildServiceConfirmation
H501_ServiceConfirmation & BuildServiceConfirmation(unsigned seqnum)
H501PDU::BuildServiceRequest
H501_ServiceRequest & BuildServiceRequest(unsigned seqnum, const H323TransportAddressArray &reply)
H501PDU::ClonePDU
virtual H323TransactionPDU * ClonePDU() const
H501PDU::BuildAuthenticationRequest
H501_AuthenticationRequest & BuildAuthenticationRequest(unsigned seqnum, const H323TransportAddressArray &reply)
H501PDU::BuildUnknownMessageResponse
H501_UnknownMessageResponse & BuildUnknownMessageResponse(unsigned seqnum)
H501PDU::BuildDescriptorUpdateAck
H501_DescriptorUpdateAck & BuildDescriptorUpdateAck(unsigned seqnum)
H501PDU::GetPDU
virtual PASN_Object & GetPDU()
H501PDU::BuildNonStandardRequest
H501_NonStandardRequest & BuildNonStandardRequest(unsigned seqnum, const H323TransportAddressArray &reply)
H501PDU::BuildUsageConfirmation
H501_UsageConfirmation & BuildUsageConfirmation(unsigned seqnum)
H501PDU::DeletePDU
virtual void DeletePDU()
H501PDU::BuildDescriptorRejection
H501_DescriptorRejection & BuildDescriptorRejection(unsigned seqnum, unsigned reason)
H501PDU::BuildUsageRejection
H501_UsageRejection & BuildUsageRejection(unsigned seqnum)
H501PDU::BuildUsageIndicationConfirmation
H501_UsageIndicationConfirmation & BuildUsageIndicationConfirmation(unsigned seqnum)
H323TransactionPDU
Definition: h323trans.h:51
H501PDU
Definition: h501pdu.h:54
H501PDU::BuildAuthenticationConfirmation
H501_AuthenticationConfirmation & BuildAuthenticationConfirmation(unsigned seqnum)
H501PDU::BuildAccessRejection
H501_AccessRejection & BuildAccessRejection(unsigned seqnum, int reason)
H501PDU::BuildDescriptorIDRequest
H501_DescriptorIDRequest & BuildDescriptorIDRequest(unsigned seqnum, const H323TransportAddressArray &reply)
H501PDU::BuildValidationRequest
H501_ValidationRequest & BuildValidationRequest(unsigned seqnum, const H323TransportAddressArray &reply)
transaddr.h
H501PDU::BuildPDU
void BuildPDU(unsigned tag, unsigned seqnum)
H501PDU::BuildServiceRejection
H501_ServiceRejection & BuildServiceRejection(unsigned seqnum, unsigned reason)
H501PDU::BuildDescriptorConfirmation
H501_DescriptorConfirmation & BuildDescriptorConfirmation(unsigned seqnum)
H501PDU::BuildDescriptorRequest
H501_DescriptorRequest & BuildDescriptorRequest(unsigned seqnum, const H323TransportAddressArray &reply)
H501PDU::BuildRequest
void BuildRequest(unsigned tag, unsigned seqnum, const H323TransportAddressArray &replyAddr)
H501PDU::BuildServiceRelease
H501_ServiceRelease & BuildServiceRelease(unsigned seqnum)
H501PDU::GetChoice
virtual PASN_Choice & GetChoice()