windows-nt/Source/XPSP1/NT/net/ias/idl/iasradius.idl
2020-09-26 16:20:57 +08:00

133 lines
3.3 KiB
Plaintext

//#--------------------------------------------------------------
//
// File: radius.idl
//
// Synopsis: this is the IDL File for RADIUS Protocol Component
//
// History: 11/11/97 MKarki Created
//
// Copyright (C) 1997-98 Microsoft Corporation
// All rights reserved.
//
//----------------------------------------------------------------
import "oaidl.idl";
import "ocidl.idl";
import "iaspolcy.idl";
import "iascomp.idl";
import "sdoias.idl";
//////////
// Events that trigger PerfMon/SNMP counters.
//////////
typedef enum {
IAS_EVENT_RADIUS_AUTH_INVALID_CLIENT = 0x10001L,
IAS_EVENT_RADIUS_AUTH_ACCESS_REQUEST,
IAS_EVENT_RADIUS_AUTH_DUP_ACCESS_REQUEST,
IAS_EVENT_RADIUS_AUTH_ACCESS_ACCEPT,
IAS_EVENT_RADIUS_AUTH_ACCESS_REJECT,
IAS_EVENT_RADIUS_AUTH_ACCESS_CHALLENGE,
IAS_EVENT_RADIUS_AUTH_MALFORMED_PACKET,
IAS_EVENT_RADIUS_AUTH_BAD_AUTHENTICATOR,
IAS_EVENT_RADIUS_AUTH_DROPPED_PACKET,
IAS_EVENT_RADIUS_AUTH_UNKNOWN_TYPE,
IAS_EVENT_RADIUS_ACCT_INVALID_CLIENT,
IAS_EVENT_RADIUS_ACCT_DROPPED_PACKET,
IAS_EVENT_RADIUS_ACCT_REQUEST,
IAS_EVENT_RADIUS_ACCT_DUP_REQUEST,
IAS_EVENT_RADIUS_ACCT_RESPONSE,
IAS_EVENT_RADIUS_ACCT_BAD_AUTHENTICATOR,
IAS_EVENT_RADIUS_ACCT_MALFORMED_PACKET,
IAS_EVENT_RADIUS_ACCT_NO_RECORD,
IAS_EVENT_RADIUS_ACCT_UNKNOWN_TYPE
} IAS_EVENT_RADIUS;
[
object,
uuid(6BC09893-0CE6-11D1-BAAE-00C04FC2E20D),
dual,
helpstring("IComponentNotify Interface"),
pointer_default(unique)
]
interface IComponentNotify : IDispatch
{
[helpstring("method OnStart")]
HRESULT OnStart();
[helpstring("method OnStop")]
HRESULT OnStop();
};
[
object,
uuid(6BC096D9-0CE6-11D1-BAAE-00C04FC2E20D),
helpstring("IIasClient Interface"),
pointer_default(unique)
]
interface IIasClient : IUnknown
{
[helpstring("method GetAddress")]
HRESULT GetAddress (
[out] DWORD *pdwAddress
);
[helpstring("method NeedSignatureCheck")]
HRESULT NeedSignatureCheck (
[out] BOOL *pbNeedCheck
);
[helpstring("method GetVendorType")]
HRESULT GetVendorType (
[out] LONG *plVendorType
);
[local, helpstring("method GetClientNameW")]
LPCWSTR GetClientNameW();
[helpstring("method GetSecret")]
HRESULT GetSecret (
[out] BYTE *pbySecret,
[in,out] DWORD *pdwSecretSize
);
[helpstring("method Init")]
HRESULT Init (
[in] ISdo *pISdo
);
[helpstring("method ResolveAddress")]
HRESULT ResolveAddress ();
};
[
uuid(6BC09890-0CE6-11D1-BAAE-00C04FC2E20D),
version(1.0),
helpstring(" IAS RADIUS Protocol 1.0 Type Library")
]
library IASRadiusLib
{
importlib("stdole2.tlb");
[
uuid(6BC09894-0CE6-11D1-BAAE-00C04FC2E20D),
helpstring("IAS RADIUS Protocol Class")
]
coclass RadiusProtocol
{
[default] interface IIasComponent;
interface IRequestSource;
interface IPersistPropertyBag2;
};
[
uuid(6BC096DA-0CE6-11D1-BAAE-00C04FC2E20D),
helpstring("IAS Client Class")
]
coclass CClient
{
[default] interface IIasClient;
};
};