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.

84 lines
3.1 KiB

  1. //+--------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. // Copyright (C) Microsoft Corporation, 1996 - 2001
  5. //
  6. // File: certadmd.idl
  7. //
  8. // Contents: Definition of DCOM Interface for Certificate Services
  9. //
  10. //---------------------------------------------------------------------------
  11. import "certbase.idl";
  12. import "oaidl.idl";
  13. // Interface ICertRequestD
  14. [
  15. object,
  16. uuid(d99e6e70-fc88-11d0-b498-00a0c90312f3),
  17. helpstring("ICertRequest DCOM Interface"),
  18. pointer_default(unique)
  19. ]
  20. interface ICertRequestD: IUnknown
  21. {
  22. HRESULT Request(
  23. [in] DWORD dwFlags, // CR_IN_*
  24. [in, string, unique] wchar_t const *pwszAuthority,
  25. [in, out, ref] DWORD *pdwRequestId,
  26. [out] DWORD *pdwDisposition, // CR_DISP_*
  27. [in, string, unique] wchar_t const *pwszAttributes,
  28. [in, ref] CERTTRANSBLOB const *pctbRequest, // request
  29. [out, ref] CERTTRANSBLOB *pctbCertChain, // PKCS7
  30. [out, ref] CERTTRANSBLOB *pctbEncodedCert, // cert
  31. [out, ref] CERTTRANSBLOB *pctbDispositionMessage);
  32. // Unicode string
  33. HRESULT GetCACert(
  34. [in] DWORD fchain, // GETCERT_*
  35. [in, string, unique] wchar_t const *pwszAuthority,
  36. [out, ref] CERTTRANSBLOB *pctbOut); // varies
  37. // this is a test function
  38. HRESULT Ping(
  39. [in, string, unique] wchar_t const *pwszAuthority);
  40. };
  41. // Interface ICertRequestD2
  42. [
  43. object,
  44. uuid(5422fd3a-d4b8-4cef-a12e-e87d4ca22e90),
  45. helpstring("ICertRequest2 DCOM Interface"),
  46. pointer_default(unique)
  47. ]
  48. interface ICertRequestD2: ICertRequestD
  49. {
  50. HRESULT Request2(
  51. [in, string, unique] wchar_t const *pwszAuthority,
  52. [in] DWORD dwFlags, // CR_IN_*
  53. [in, string, unique] wchar_t const *pwszSerialNumber, // OPTIONAL
  54. [in, out, ref] DWORD *pdwRequestId, // -1:use Serial
  55. [out] DWORD *pdwDisposition, // CR_DISP_*
  56. [in, string, unique] wchar_t const *pwszAttributes,
  57. [in, ref] CERTTRANSBLOB const *pctbRequest, // request
  58. [out, ref] CERTTRANSBLOB *pctbFullResponse, // CMC response
  59. [out, ref] CERTTRANSBLOB *pctbEncodedCert, // cert
  60. [out, ref] CERTTRANSBLOB *pctbDispositionMessage);
  61. // Unicode string
  62. HRESULT GetCAProperty(
  63. [in, string, unique] wchar_t const *pwszAuthority,
  64. [in] LONG PropId, // CR_PROP_*
  65. [in] LONG PropIndex,
  66. [in] LONG PropType, // PROPTYPE_*
  67. [out, ref] CERTTRANSBLOB *pctbPropertyValue); // varies
  68. HRESULT GetCAPropertyInfo(
  69. [in, string, unique] wchar_t const *pwszAuthority,
  70. [out] LONG *pcProperty,
  71. [out, ref] CERTTRANSBLOB *pctbPropInfo); // CATRANSPROP
  72. // this is a test function
  73. HRESULT Ping2(
  74. [in, string, unique] wchar_t const *pwszAuthority);
  75. };