Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

84 lines
2.0 KiB

// SecondaryControlChannel.h : Declaration of the CSecondaryControlChannel
#pragma once
#include "resource.h" // main symbols
/////////////////////////////////////////////////////////////////////////////
// CSecondaryControlChannel
class ATL_NO_VTABLE CSecondaryControlChannel :
public CComObjectRootEx<CComMultiThreadModel>,
public CComCoClass<CSecondaryControlChannel, &CLSID_SecondaryControlChannel>,
public ISecondaryControlChannel
{
public:
CSecondaryControlChannel()
{
m_HandleDynamicRedirect = NULL;
}
DECLARE_REGISTRY_RESOURCEID(IDR_SECONDARYCONTROLCHANNEL)
DECLARE_NOT_AGGREGATABLE(CSecondaryControlChannel)
BEGIN_COM_MAP(CSecondaryControlChannel)
COM_INTERFACE_ENTRY(ISecondaryControlChannel)
END_COM_MAP()
// ISecondaryControlChannel
public:
STDMETHODIMP Cancel();
STDMETHODIMP GetChannelProperties(
ALG_SECONDARY_CHANNEL_PROPERTIES ** ppProperties
);
STDMETHODIMP GetOriginalDestinationInformation(
ULONG ulSourceAddress,
USHORT usSourcePort,
ULONG * pulOriginalDestinationAddress,
USHORT * pusOriginalDestinationPort,
IAdapterInfo ** ppReceiveAdapter
);
//
// Methods
//
HRESULT CancelRedirects();
//
// Properties
//
ALG_SECONDARY_CHANNEL_PROPERTIES m_Properties;
// Cache original argument of the redirect
// Dynamic Redirect
HANDLE_PTR m_HandleDynamicRedirect;
// None dynamic redirect
ULONG m_ulDestinationAddress;
USHORT m_usDestinationPort;
ULONG m_ulSourceAddress;
USHORT m_usSourcePort;
ULONG m_ulNewDestinationAddress;
USHORT m_usNewDestinationPort;
ULONG m_ulNewSourceAddress;
USHORT m_usNewSourcePort;
};