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.
 
 
 
 
 
 

56 lines
1.3 KiB

///////////////////////////////////////////////////////////////////////////////
//
// Copyright (c) Microsoft Corporation
//
// SYNOPSIS
//
// Declares the class RadiusExtensionPoint
//
///////////////////////////////////////////////////////////////////////////////
#ifndef EXTENSIONPOINT_H
#define EXTENSIONPOINT_H
#pragma once
#include "authif.h"
class RadiusExtension;
class RadiusExtensionPoint
{
public:
RadiusExtensionPoint() throw ();
~RadiusExtensionPoint() throw ();
// Returns true if no extensions are registered for this point.
bool IsEmpty() const throw ();
// Loads the specified extension DLLs.
DWORD Load(RADIUS_EXTENSION_POINT whichDlls) throw ();
// Process a request.
void Process(RADIUS_EXTENSION_CONTROL_BLOCK* ecb) const throw ();
// Unloads the extension DLLs.
void Clear() throw ();
private:
// Determines if an extension should only be loaded under NT4.
static bool IsNT4Only(const wchar_t* path) throw ();
const wchar_t* name;
RadiusExtension* begin;
RadiusExtension* end;
// Not implemented.
RadiusExtensionPoint(const RadiusExtensionPoint&);
RadiusExtensionPoint& operator=(const RadiusExtensionPoint&);
};
inline bool RadiusExtensionPoint::IsEmpty() const throw ()
{
return begin == end;
}
#endif // EXTENSIONPOINT_H