Source code of Windows XP (NT5)
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.

142 lines
4.1 KiB

  1. // CertObj.idl : IDL source for CertObj.dll
  2. //
  3. // This file will be processed by the MIDL tool to
  4. // produce the type library (CertObj.tlb) and marshalling code.
  5. import "oaidl.idl";
  6. import "ocidl.idl";
  7. [
  8. object,
  9. uuid(BD0C73BC-805B-4043-9C30-9A28D64DD7D2),
  10. dual,
  11. helpstring("IIISCertObj Interface"),
  12. pointer_default(unique)
  13. ]
  14. interface IIISCertObj : IDispatch
  15. {
  16. [propput, id(1), helpstring("property ServerName")]
  17. HRESULT ServerName([in] BSTR newVal);
  18. [propput, id(2), helpstring("property UserName")]
  19. HRESULT UserName([in] BSTR newVal);
  20. [propput, id(3), helpstring("property UserPassword")]
  21. HRESULT UserPassword([in] BSTR newVal);
  22. [propput, id(4), helpstring("property InstanceName")]
  23. HRESULT InstanceName([in] BSTR newVal);
  24. [id(5), local, helpstring("method IsInstalled")]
  25. HRESULT IsInstalled([out, retval] VARIANT_BOOL * retval);
  26. [id(6), hidden, helpstring("method IsInstalledRemote")]
  27. HRESULT IsInstalledRemote([out, retval] VARIANT_BOOL * retval);
  28. [id(7), local, helpstring("method IsExportable")]
  29. HRESULT IsExportable([out, retval] VARIANT_BOOL * retval);
  30. [id(8), hidden, helpstring("method IsExportableRemote")]
  31. HRESULT IsExportableRemote([out, retval] VARIANT_BOOL * retval);
  32. [id(9), local, helpstring("method GetCertInfo")]
  33. HRESULT GetCertInfo([out,retval] VARIANT * BinaryVariant);
  34. [id(10), hidden, helpstring("method GetCertInfoRemote")]
  35. HRESULT GetCertInfoRemote([out,retval] VARIANT * BinaryVariant);
  36. [id(11), local, helpstring("method Copy")]
  37. HRESULT Copy(
  38. [in] BOOL bAllowExport,
  39. [in] BSTR bstrDestinationServerName,
  40. [in] BSTR bstrDestinationServerInstance,
  41. [in,optional] VARIANT bstrDestinationServerUserName,
  42. [in,optional] VARIANT bstrDestinationServerPassword);
  43. [id(12), local, helpstring("method CopyToCertStore")]
  44. HRESULT CopyToCertStore(
  45. [in] BOOL bAllowExport,
  46. [in] BSTR bstrDestinationServerName,
  47. [in] VARIANT bstrDestinationServerUserName,
  48. [in] VARIANT bstrDestinationServerPassword,
  49. [out] VARIANT * BinaryVariant);
  50. [id(13), local, helpstring("method Move")]
  51. HRESULT Move(
  52. [in] BOOL bAllowExport,
  53. [in] BSTR bstrDestinationServerName,
  54. [in] BSTR bstrDestinationServerInstance,
  55. [in,optional] VARIANT bstrDestinationServerUserName,
  56. [in,optional] VARIANT bstrDestinationServerPassword);
  57. [id(14), local, helpstring("method RemoveCert")]
  58. HRESULT RemoveCert([in] BOOL bPrivateKey);
  59. [id(15), local, helpstring("method Import")]
  60. HRESULT Import(
  61. [in] BSTR FileName,
  62. [in] BSTR Password,
  63. [in] BOOL bAllowExport);
  64. [id(16), local, helpstring("method ImportToCertStore")]
  65. HRESULT ImportToCertStore(
  66. [in] BSTR FileName,
  67. [in] BSTR Password,
  68. [in] BOOL bAllowExport,
  69. [out,retval] VARIANT * BinaryVariant
  70. );
  71. [id(17), hidden, helpstring("method ImportFromBlob")]
  72. HRESULT ImportFromBlob(
  73. [in] BSTR InstanceName, [in] BSTR Password,
  74. [in] BOOL bInstallToMetabase,
  75. [in] BOOL bAllowExport,
  76. [in] DWORD pcbSize,
  77. [in,string,size_is(pcbSize)] char * pBlobBinary
  78. );
  79. [id(18), hidden, helpstring("method ImportFromBlob")]
  80. HRESULT ImportFromBlobGetHash(
  81. [in] BSTR InstanceName, [in] BSTR Password,
  82. [in] BOOL bInstallToMetabase,
  83. [in] BOOL bAllowExport,
  84. [in] DWORD pcbSize,
  85. [in,string,size_is(pcbSize)] char * pBlobBinary,
  86. [out] DWORD *pcbCertHashSize,
  87. [out] char ** pCertHash
  88. );
  89. [id(19), local, helpstring("method Export")]
  90. HRESULT Export(
  91. [in] BSTR FileName,
  92. [in] BSTR Password,
  93. [in] BOOL bPrivateKey,
  94. [in] BOOL bCertChain,
  95. [in] BOOL bRemoveCert);
  96. [id(20), hidden, helpstring("method ExportToBlob")]
  97. HRESULT ExportToBlob(
  98. [in] BSTR InstanceName,
  99. [in] BSTR Password,
  100. [in] BOOL bPrivateKey,
  101. [in] BOOL bCertChain,
  102. [in,out] DWORD *pcbSize,
  103. [in,out,string] char ** pBlobBinary);
  104. };
  105. [
  106. uuid(939CE595-0BB3-4F3F-A504-8CE81BDF4943),
  107. version(1.0),
  108. helpstring("IIS CertObj 1.0 Type Library")
  109. ]
  110. library CERTOBJLib
  111. {
  112. importlib("stdole2.tlb");
  113. [
  114. uuid(62B8CCBE-5A45-4372-8C4A-6A87DD3EDD60),
  115. helpstring("IIS CertObj")
  116. ]
  117. coclass IISCertObj
  118. {
  119. [default] interface IIISCertObj;
  120. };
  121. };