//+--------------------------------------------------------------------------
//
// Microsoft Windows
// Copyright (C) Microsoft Corporation, 1996 - 1999
//
// File:        certpol.idl
//
// Contents:    IDL source for certpol.dll
//
//---------------------------------------------------------------------------

// This file will be processed by the MIDL tool to produce the type library
// (certpol.tlb) and marshalling code.

import "wtypes.idl";
import "certmod.idl";

//+--------------------------------------------------------------------------
// ICertPolicy class -- local COM interface
//+--------------------------------------------------------------------------

[
    object,
    uuid(38bb5a00-7636-11d0-b413-00a0c91bbf8c),
    dual,
    helpstring("ICertPolicy Interface"),
    pointer_default(unique)
]

interface ICertPolicy: IDispatch
{
    import "oaidl.idl";

    HRESULT Initialize(
		[in] BSTR const strConfig);

    HRESULT VerifyRequest(
		[in] BSTR const strConfig,
		[in] LONG Context,
		[in] LONG bNewRequest,
		[in] LONG Flags,
		[out, retval] LONG *pDisposition);

    HRESULT GetDescription(
		[out, retval] BSTR *pstrDescription);

    HRESULT ShutDown();
};


//+--------------------------------------------------------------------------
// ICertPolicy2 -- local COM interface
//+--------------------------------------------------------------------------

[
    object,
    uuid(3db4910e-8001-4bf1-aa1b-f43a808317a0),
    dual,
    helpstring("ICertPolicy2 Interface"),
    pointer_default(unique)
]

interface ICertPolicy2: ICertPolicy
{
    HRESULT GetManageModule(
		[out, retval] ICertManageModule **ppManageModule);
};
