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.

139 lines
4.2 KiB

  1. // netseccore.idl : IDL source for sceprov.dll
  2. //
  3. // This file will be processed by the MIDL tool to
  4. // produce the type library (IPSecProvLib.tlb) and marshalling code.
  5. import "oaidl.idl";
  6. import "ocidl.idl";
  7. import "wbemcli.idl";
  8. interface IWbemServices;
  9. interface IWbemObjectSink;
  10. interface IWbemContext;
  11. #define _MIDL_USE_GUIDDEF_
  12. [
  13. object,
  14. uuid(fc42bc86-9d41-4fe7-88cd-011158296c45),
  15. helpstring("SCE Provider Path Parser Interface"),
  16. pointer_default(unique)
  17. ]
  18. interface IIPSecPathParser : IUnknown
  19. {
  20. HRESULT ParsePath([in, string] LPCWSTR strObjectPath);
  21. };
  22. [
  23. object,
  24. uuid(100e7383-87e6-4063-b216-7610fb4ef88b),
  25. helpstring("SCE Provider Query Parser Interface"),
  26. pointer_default(unique)
  27. ]
  28. interface IIPSecQueryParser : IUnknown
  29. {
  30. HRESULT ParseQuery([in, string] LPCWSTR strQuery, [in, string] LPCWSTR strQueryingPropName);
  31. HRESULT GetClassCount([out] DWORD* pdwCount);
  32. HRESULT GetClassName([in] int iIndex, [out] BSTR* pbstrClassName);
  33. HRESULT GetQueryingPropertyValueCount([out] DWORD* pdwCount);
  34. HRESULT GetQueryingPropertyValue([in] int iIndex, [out] BSTR *pbstrStorePath);
  35. };
  36. [
  37. object,
  38. uuid(42919391-e883-41f0-945a-5177b5d1ab33),
  39. helpstring("SCE Provider Key Chain Interface"),
  40. pointer_default(unique)
  41. ]
  42. interface IIPSecKeyChain : IUnknown
  43. {
  44. HRESULT GetNamespace([out] BSTR* pbstrNamespace);
  45. HRESULT GetClassName([out] BSTR* pbstrClassName);
  46. HRESULT GetKeyPropertyCount([out] DWORD* pCount);
  47. HRESULT GetKeyPropertyValue([in, string] LPCWSTR pszKeyPropName, [out] VARIANT* pvarValue);
  48. HRESULT GetKeyPropertyValueByIndex([in] DWORD dwIndex, [out] BSTR* pbstrKeyPropName, [out] VARIANT* pvarValue);
  49. };
  50. [
  51. object,
  52. uuid(92dd37e6-33a9-4aed-8473-3b52d387a6ef),
  53. helpstring("IPSec Class Object Interface"),
  54. pointer_default(unique)
  55. ]
  56. interface IIPSecObjectImpl : IUnknown
  57. {
  58. HRESULT QueryInstance([in, string] LPCWSTR pszQuery, [in] IWbemContext *pCtx, [in] IWbemObjectSink *pSink);
  59. HRESULT DeleteInstance([in] IWbemContext *pCtx, [in] IWbemObjectSink *pSink);
  60. HRESULT ExecuteMethod([in] BSTR bstrMethod, [in] IWbemContext *pCtx, [in] IWbemObjectSink *pSink);
  61. HRESULT PutInstance([in] IWbemClassObject *pInst, [in] IWbemContext *pCtx, [in] IWbemObjectSink *pSink);
  62. HRESULT GetInstance([in] IWbemContext *pCtx, [in] IWbemObjectSink *pSink);
  63. };
  64. [
  65. object,
  66. uuid(5078db4a-1e63-4caa-aa5e-3b40c8266cb2),
  67. helpstring("Network Security Provider Scripting Interface"),
  68. dual,
  69. pointer_default(unique)
  70. ]
  71. interface INetSecProvMgr : IDispatch
  72. {
  73. [propget, id(1)] HRESULT RandomPortLower([out, retval] long * plLower);
  74. [propget, id(2)] HRESULT RandomPortUpper([out, retval] long * plUpper);
  75. [id(5), helpstring("method ExecuteQuery")] HRESULT ExecuteQuery([in] BSTR bstrNamespace, [in] BSTR bstrQuery, [in] BSTR bstrDelimiter, [in] BSTR bstrPropName, [out, retval] BSTR * pbstrResult);
  76. [id(6), helpstring("method GetProperty")] HRESULT GetProperty([in] BSTR bstrNamespace, [in] BSTR bstrObjectPath, [in] BSTR bstrPropName, [out, retval] VARIANT * pvarValue);
  77. };
  78. [
  79. uuid(02b1ea4a-3616-461a-b27a-b51ea5f58a43),
  80. version(1.0),
  81. helpstring("Network Security WMI Provider for SCE 1.0 Type Library")
  82. ]
  83. library NetSecProvLib
  84. {
  85. importlib("stdole32.tlb");
  86. importlib("stdole2.tlb");
  87. [
  88. uuid(da63cc36-ade4-456c-893c-3006074fa73c),
  89. helpstring("Network Security WMI Provider for SCE")
  90. ]
  91. coclass NetSecProv
  92. {
  93. [default] interface IWbemServices;
  94. };
  95. [
  96. uuid(6bd5adac-69a3-4d65-9bfc-e56f82603a3a),
  97. helpstring("Network Security Provider Manager")
  98. ]
  99. coclass NetSecProvMgr
  100. {
  101. [default] interface INetSecProvMgr;
  102. };
  103. [
  104. uuid(317b99c6-d844-46e9-9b0d-be6378590165),
  105. helpstring("SCE Path Parser Class")
  106. ]
  107. coclass IPSecPathParser
  108. {
  109. [default] interface IIPSecPathParser;
  110. };
  111. [
  112. uuid(cd924154-e7d2-4c8d-a4c8-087b2dcf4bec),
  113. helpstring("SCE Query Parser Class")
  114. ]
  115. coclass IPSecQueryParser
  116. {
  117. [default] interface IIPSecQueryParser;
  118. };
  119. };