116 lines
2.7 KiB
C
116 lines
2.7 KiB
C
|
||
//=============================================================================
|
||
// MODULE: clusnet.c
|
||
//
|
||
// Description:
|
||
//
|
||
// DLL master file for the Bloodhound Parser DLL for the
|
||
// Cluster Network Protocol suite.
|
||
//
|
||
// Modification History
|
||
//
|
||
// Mike Massa 03/21/97 Created
|
||
//=============================================================================
|
||
|
||
#include "precomp.h"
|
||
#pragma hdrstop
|
||
|
||
|
||
//=============================================================================
|
||
// Protocol entry points.
|
||
//=============================================================================
|
||
|
||
ENTRYPOINTS CnpEntryPoints =
|
||
{
|
||
CnpRegister,
|
||
CnpDeregister,
|
||
CnpRecognizeFrame,
|
||
CnpAttachProperties,
|
||
CnpFormatProperties
|
||
};
|
||
|
||
HPROTOCOL hCnp = NULL;
|
||
|
||
|
||
ENTRYPOINTS CdpEntryPoints =
|
||
{
|
||
CdpRegister,
|
||
CdpDeregister,
|
||
CdpRecognizeFrame,
|
||
CdpAttachProperties,
|
||
CdpFormatProperties
|
||
};
|
||
|
||
HPROTOCOL hCdp = NULL;
|
||
|
||
|
||
ENTRYPOINTS CcmpEntryPoints =
|
||
{
|
||
CcmpRegister,
|
||
CcmpDeregister,
|
||
CcmpRecognizeFrame,
|
||
CcmpAttachProperties,
|
||
CcmpFormatProperties
|
||
};
|
||
|
||
HPROTOCOL hCcmp = NULL;
|
||
|
||
|
||
ENTRYPOINTS RGPEntryPoints =
|
||
{
|
||
RGPRegister,
|
||
RGPDeregister,
|
||
RGPRecognizeFrame,
|
||
RGPAttachProperties,
|
||
RGPFormatProperties
|
||
};
|
||
|
||
HPROTOCOL hRGP = NULL;
|
||
|
||
DWORD Attached = 0;
|
||
|
||
//=============================================================================
|
||
// FUNCTION: DLLEntry()
|
||
//
|
||
// Modification History
|
||
//
|
||
// Steve Hiskey 07/07/94 Created
|
||
//=============================================================================
|
||
|
||
BOOL WINAPI DLLEntry(HANDLE hInstance, ULONG Command, LPVOID Reserved)
|
||
{
|
||
//=========================================================================
|
||
// If we are loading!
|
||
//=========================================================================
|
||
|
||
if ( Command == DLL_PROCESS_ATTACH )
|
||
{
|
||
if ( Attached++ == 0 )
|
||
{
|
||
hCnp = CreateProtocol("CNP", &CnpEntryPoints, ENTRYPOINTS_SIZE);
|
||
hCdp = CreateProtocol("CDP", &CdpEntryPoints, ENTRYPOINTS_SIZE);
|
||
hCcmp = CreateProtocol("CCMP", &CcmpEntryPoints, ENTRYPOINTS_SIZE);
|
||
hRGP = CreateProtocol("RGP", &RGPEntryPoints, ENTRYPOINTS_SIZE);
|
||
}
|
||
}
|
||
|
||
//=========================================================================
|
||
// If we are unloading!
|
||
//=========================================================================
|
||
|
||
if ( Command == DLL_PROCESS_DETACH )
|
||
{
|
||
if ( --Attached == 0 )
|
||
{
|
||
DestroyProtocol(hCnp);
|
||
DestroyProtocol(hCdp);
|
||
DestroyProtocol(hCcmp);
|
||
DestroyProtocol(hRGP);
|
||
}
|
||
}
|
||
|
||
return TRUE; //... Bloodhound parsers ALWAYS return TRUE.
|
||
}
|
||
|
||
|