00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef OPAL_H323_H323ANNEXG_H
00028 #define OPAL_H323_H323ANNEXG_H
00029
00030 #ifdef P_USE_PRAGMA
00031 #pragma interface
00032 #endif
00033
00034 #include <opal/buildopts.h>
00035
00036 #if OPAL_H501
00037
00038 #include <h323/h323trans.h>
00039 #include <h323/h501pdu.h>
00040
00041
00042 class PASN_Sequence;
00043 class PASN_Choice;
00044
00045 class H323EndPoint;
00046
00047
00049
00052 class H323_AnnexG : public H323Transactor
00053 {
00054 PCLASSINFO(H323_AnnexG, H323Transactor);
00055 public:
00058 enum {
00059 DefaultUdpPort = 2099,
00060 DefaultTcpPort = 2099
00061 };
00062
00065 H323_AnnexG(
00066 H323EndPoint & endpoint,
00067 H323Transport * transport
00068 );
00069 H323_AnnexG(
00070 H323EndPoint & endpoint,
00071 const H323TransportAddress & addr
00072 );
00073
00076 ~H323_AnnexG();
00078
00083 void PrintOn(
00084 ostream & strm
00085 ) const;
00087
00092 virtual H323TransactionPDU * CreateTransactionPDU() const;
00093
00096 virtual PBoolean HandleTransaction(
00097 const PASN_Object & rawPDU
00098 );
00099
00102 virtual void OnSendingPDU(
00103 PASN_Object & rawPDU
00104 );
00106
00109 virtual PBoolean OnReceiveServiceRequest (const H501PDU & pdu, const H501_ServiceRequest & pduBody);
00110 virtual PBoolean OnReceiveServiceConfirmation (const H501PDU & pdu, const H501_ServiceConfirmation & pduBody);
00111 virtual PBoolean OnReceiveServiceRejection (const H501PDU & pdu, const H501_ServiceRejection & pduBody);
00112 virtual PBoolean OnReceiveServiceRelease (const H501PDU & pdu, const H501_ServiceRelease & pduBody);
00113 virtual PBoolean OnReceiveDescriptorRequest (const H501PDU & pdu, const H501_DescriptorRequest & pduBody);
00114 virtual PBoolean OnReceiveDescriptorConfirmation (const H501PDU & pdu, const H501_DescriptorConfirmation & pduBody);
00115 virtual PBoolean OnReceiveDescriptorRejection (const H501PDU & pdu, const H501_DescriptorRejection & pduBody);
00116 virtual PBoolean OnReceiveDescriptorIDRequest (const H501PDU & pdu, const H501_DescriptorIDRequest & pduBody);
00117 virtual PBoolean OnReceiveDescriptorIDConfirmation (const H501PDU & pdu, const H501_DescriptorIDConfirmation & pduBody);
00118 virtual PBoolean OnReceiveDescriptorIDRejection (const H501PDU & pdu, const H501_DescriptorIDRejection & pduBody);
00119 virtual PBoolean OnReceiveDescriptorUpdate (const H501PDU & pdu, const H501_DescriptorUpdate & pduBody);
00120 virtual PBoolean OnReceiveDescriptorUpdateACK (const H501PDU & pdu, const H501_DescriptorUpdateAck & pduBody);
00121 virtual PBoolean OnReceiveAccessRequest (const H501PDU & pdu, const H501_AccessRequest & pduBody);
00122 virtual PBoolean OnReceiveAccessConfirmation (const H501PDU & pdu, const H501_AccessConfirmation & pduBody);
00123 virtual PBoolean OnReceiveAccessRejection (const H501PDU & pdu, const H501_AccessRejection & pduBody);
00124 virtual PBoolean OnReceiveRequestInProgress (const H501PDU & pdu, const H501_RequestInProgress & pduBody);
00125 virtual PBoolean OnReceiveNonStandardRequest (const H501PDU & pdu, const H501_NonStandardRequest & pduBody);
00126 virtual PBoolean OnReceiveNonStandardConfirmation (const H501PDU & pdu, const H501_NonStandardConfirmation & pduBody);
00127 virtual PBoolean OnReceiveNonStandardRejection (const H501PDU & pdu, const H501_NonStandardRejection & pduBody);
00128 virtual PBoolean OnReceiveUnknownMessageResponse (const H501PDU & pdu, const H501_UnknownMessageResponse & pduBody);
00129 virtual PBoolean OnReceiveUsageRequest (const H501PDU & pdu, const H501_UsageRequest & pduBody);
00130 virtual PBoolean OnReceiveUsageConfirmation (const H501PDU & pdu, const H501_UsageConfirmation & pduBody);
00131 virtual PBoolean OnReceiveUsageIndicationConfirmation (const H501PDU & pdu, const H501_UsageIndicationConfirmation & pduBody);
00132 virtual PBoolean OnReceiveUsageIndicationRejection (const H501PDU & pdu, const H501_UsageIndicationRejection & pduBody);
00133 virtual PBoolean OnReceiveUsageRejection (const H501PDU & pdu, const H501_UsageRejection & pduBody);
00134 virtual PBoolean OnReceiveValidationRequest (const H501PDU & pdu, const H501_ValidationRequest & pduBody);
00135 virtual PBoolean OnReceiveValidationConfirmation (const H501PDU & pdu, const H501_ValidationConfirmation & pduBody);
00136 virtual PBoolean OnReceiveValidationRejection (const H501PDU & pdu, const H501_ValidationRejection & pduBody);
00137 virtual PBoolean OnReceiveAuthenticationRequest (const H501PDU & pdu, const H501_AuthenticationRequest & pduBody);
00138 virtual PBoolean OnReceiveAuthenticationConfirmation (const H501PDU & pdu, const H501_AuthenticationConfirmation & pduBody);
00139 virtual PBoolean OnReceiveAuthenticationRejection (const H501PDU & pdu, const H501_AuthenticationRejection & pduBody);
00140 virtual PBoolean OnReceiveUnknown(const H501PDU &);
00141
00142 protected:
00143 void Construct();
00144 };
00145
00146
00147 #endif // OPAL_H501
00148
00149 #endif // OPAL_H323_H323ANNEXG_H
00150
00151