Leaked source code of windows server 2003
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.
|
|
//#--------------------------------------------------------------
//
// File: iasradius.cpp
//
// Synopsis: this is the main Source File for the UDP
// Protocol DLL
//
//
// History: 8/18/97 MKarki Created
//
// Copyright (C) 1997-98 Microsoft Corporation
// All rights reserved.
//
//----------------------------------------------------------------
//
// Note: Proxy/Stub Information
// To build a separate proxy/stub DLL,
// run nmake -f radprotops.mk in the project directory.
#include "radcommon.h"
#include "controller.h"
#include "proxy.h"
#include <newop.cpp>
CComModule _Module;
BEGIN_OBJECT_MAP(ObjectMap) OBJECT_ENTRY(__uuidof(RadiusProtocol), CController) OBJECT_ENTRY(__uuidof(RadiusProxy), IASRequestHandlerObject< RadiusProxy >) OBJECT_ENTRY(__uuidof(CClient), CClient) END_OBJECT_MAP()
//++--------------------------------------------------------------
//
// Function: DllMain
//
// Synopsis: Disabling thread calls
//
// Arguments: [in] HINSTANCE - module handle
// [in] DWORD - reason for call
// reserved
//
// Returns: BOOL - sucess/failure
//
//
// History: MKarki Created 8/20/97
//
//----------------------------------------------------------------
extern "C" BOOL WINAPI DllMain( HINSTANCE hInstance, DWORD dwReason, LPVOID lpReserved ) {
if (dwReason == DLL_PROCESS_ATTACH) { _Module.Init(ObjectMap, hInstance); DisableThreadLibraryCalls(hInstance); } else if (dwReason == DLL_PROCESS_DETACH) { _Module.Term(); }
return (TRUE);
} // end of DllMain method
//++--------------------------------------------------------------
//
// Function: DllCanUnloadNow
//
// Synopsis: Used to determine if the DLL can be unloaded
//
// Arguments: NONE
//
// Returns: HRESULT
//
//
// History: MKarki Created 8/20/97
//
//----------------------------------------------------------------
STDAPI DllCanUnloadNow( VOID ) { return (_Module.GetLockCount()==0) ? S_OK : S_FALSE;
} // end of DllCanUnloadNow method
//++--------------------------------------------------------------
//
// Function: DllGetClassObject
//
// Synopsis: Returns a class factory to create an object
// of the requested type
//
// Arguments: [in] REFCLSID
// [in] REFIID
// [out] LPVOID - class factory
//
//
// Returns: HRESULT
//
//
// History: MKarki Created 8/20/97
//
//----------------------------------------------------------------
STDAPI DllGetClassObject( REFCLSID rclsid, REFIID riid, LPVOID* ppv ) { return (_Module.GetClassObject(rclsid, riid, ppv));
} // end of DllGetClassObject method
//++--------------------------------------------------------------
//
// Function: DllRegisterServer
//
// Synopsis: Add entries to the system registry
//
// Arguments: NONE
//
// Returns: HRESULT
//
//
// History: MKarki Created 8/20/97
//
//----------------------------------------------------------------
STDAPI DllRegisterServer( VOID ) { //
// registers object, typelib and all interfaces in typelib
//
return (_Module.RegisterServer(TRUE));
} // end of DllRegisterServer method
//++--------------------------------------------------------------
//
// Function: DllUnregisterServer
//
// Synopsis: Removes entries from the system registry
//
// Arguments: NONE
//
// Returns: HRESULT
//
//
// History: MKarki Created 8/20/97
//
//----------------------------------------------------------------
STDAPI DllUnregisterServer( VOID ) { _Module.UnregisterServer(); return (S_OK);
} // end of DllUnregisterServer method
#include <atlimpl.cpp>
|