CertAdm.Idl
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:3k
源码类别:

模拟服务器

开发平台:

C/C++

  1. //+--------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1996 - 1999
  5. //
  6. // File:        certadm.idl
  7. //
  8. // Contents:    IDL source for certadm.dll
  9. //
  10. //---------------------------------------------------------------------------
  11. // This file will be processed by the MIDL tool to produce the type library
  12. // (certadm.tlb) and marshalling code.
  13. import "wtypes.idl";
  14. import "certview.idl";
  15. //+--------------------------------------------------------------------------
  16. // ICertAdmin::IsValidCertificate() returned Disposition:
  17. const LONG CA_DISP_INCOMPLETE = 0x00000000; // call did not complete
  18. const LONG CA_DISP_ERROR = 0x00000001; // call failed
  19. const LONG CA_DISP_REVOKED = 0x00000002; // cert revoked
  20. const LONG CA_DISP_VALID = 0x00000003; // cert still valid
  21. const LONG CA_DISP_INVALID = 0x00000004; // cert never issued
  22. const LONG CA_DISP_UNDER_SUBMISSION =   0x00000005; // taken under submission
  23. //+--------------------------------------------------------------------------
  24. // ICertAdmin class -- local COM interface, implementation uses DCOM
  25. //+--------------------------------------------------------------------------
  26. [
  27.     object,
  28.     uuid(34df6950-7fb6-11d0-8817-00a0c903b83c),
  29.     dual,
  30.     helpstring("ICertAdmin Interface"),
  31.     pointer_default(unique)
  32. ]
  33. interface ICertAdmin: IDispatch
  34. {
  35.     import "oaidl.idl";
  36.     HRESULT IsValidCertificate(
  37. [in] BSTR const strConfig,
  38. [in] BSTR const strSerialNumber,
  39. [out, retval] LONG *pDisposition);
  40.     HRESULT GetRevocationReason(
  41. [out, retval] LONG *pReason);
  42.     HRESULT RevokeCertificate(
  43. [in] BSTR const strConfig,
  44. [in] BSTR const strSerialNumber,
  45. [in] LONG Reason,
  46. [in] DATE Date);
  47.     HRESULT SetRequestAttributes(
  48. [in] BSTR const strConfig,
  49. [in] LONG RequestId,
  50. [in] BSTR const strAttributes);
  51.     HRESULT SetCertificateExtension(
  52. [in] BSTR const strConfig,
  53. [in] LONG RequestId,
  54. [in] BSTR const strExtensionName,
  55. [in] LONG Type,
  56. [in] LONG Flags,
  57. [in] VARIANT const *pvarValue);
  58.     HRESULT DenyRequest(
  59. [in] BSTR const strConfig,
  60. [in] LONG RequestId);
  61.     HRESULT ResubmitRequest(
  62. [in] BSTR const strConfig,
  63. [in] LONG RequestId,
  64. [out, retval] LONG *pDisposition);
  65.     HRESULT PublishCRL(
  66. [in] BSTR const strConfig,
  67. [in] DATE Date);
  68.     // See certcli.idl/certcli.h for CR_OUT_* Flags.
  69.     HRESULT GetCRL(
  70. [in] BSTR const strConfig,
  71. [in] LONG Flags,
  72. [out, retval] BSTR *pstrCRL);
  73.     HRESULT ImportCertificate(
  74.         [in] BSTR const strConfig,
  75.         [in] BSTR const strCertificate,
  76.         [in] LONG Flags,
  77.         [out, retval] LONG *pRequestID);
  78. };
  79. //+--------------------------------------------------------------------------
  80. // certadm Type library
  81. //+--------------------------------------------------------------------------
  82. [
  83.     uuid(35de99a0-7fb6-11d0-8817-00a0c903b83c),
  84.     version(1.0),
  85.     helpstring("CertAdm 1.0 Type Library")
  86. ]
  87. library CERTADMINLib
  88. {
  89.     importlib("stdole2.tlb");
  90.     [
  91. uuid(37eabaf0-7fb6-11d0-8817-00a0c903b83c),
  92. helpstring("CertAdmin Class")
  93.     ]
  94.     coclass CCertAdmin
  95.     {
  96. [default] interface ICertAdmin;
  97.     };
  98.     [
  99. uuid(a12d0f7a-1e84-11d1-9bd6-00c04fb683fa),
  100. helpstring("CertView Class")
  101.     ]
  102.     coclass CCertView
  103.     {
  104. [default] interface ICertView;
  105.     };
  106. };