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.

530 lines
16 KiB

  1. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  2. /* File created by MIDL compiler version 6.00.0361 */
  3. /* Compiler settings for iaccess.idl:
  4. Oicf, W1, Zp8, env=Win32 (32b run)
  5. protocol : dce , ms_ext, c_ext, robust
  6. error checks: allocation ref bounds_check enum stub_data
  7. VC __declspec() decoration level:
  8. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  9. DECLSPEC_UUID(), MIDL_INTERFACE()
  10. */
  11. //@@MIDL_FILE_HEADING( )
  12. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  13. /* verify that the <rpcndr.h> version is high enough to compile this file*/
  14. #ifndef __REQUIRED_RPCNDR_H_VERSION__
  15. #define __REQUIRED_RPCNDR_H_VERSION__ 475
  16. #endif
  17. #include "rpc.h"
  18. #include "rpcndr.h"
  19. #ifndef __RPCNDR_H_VERSION__
  20. #error this stub requires an updated version of <rpcndr.h>
  21. #endif // __RPCNDR_H_VERSION__
  22. #ifndef COM_NO_WINDOWS_H
  23. #include "windows.h"
  24. #include "ole2.h"
  25. #endif /*COM_NO_WINDOWS_H*/
  26. #ifndef __iaccess_h__
  27. #define __iaccess_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __IAccessControl_FWD_DEFINED__
  33. #define __IAccessControl_FWD_DEFINED__
  34. typedef interface IAccessControl IAccessControl;
  35. #endif /* __IAccessControl_FWD_DEFINED__ */
  36. #ifndef __IAuditControl_FWD_DEFINED__
  37. #define __IAuditControl_FWD_DEFINED__
  38. typedef interface IAuditControl IAuditControl;
  39. #endif /* __IAuditControl_FWD_DEFINED__ */
  40. /* header files for imported files */
  41. #include "unknwn.h"
  42. #include "accctrl.h"
  43. #ifdef __cplusplus
  44. extern "C"{
  45. #endif
  46. void * __RPC_USER MIDL_user_allocate(size_t);
  47. void __RPC_USER MIDL_user_free( void * );
  48. /* interface __MIDL_itf_iaccess_0000 */
  49. /* [local] */
  50. //+-------------------------------------------------------------------------
  51. //
  52. // Microsoft Windows
  53. // Copyright (c) Microsoft Corporation. All rights reserved.
  54. //
  55. //--------------------------------------------------------------------------
  56. #if ( _MSC_VER >= 1020 )
  57. #pragma once
  58. #endif
  59. typedef /* [allocate] */ PACTRL_ACCESSW PACTRL_ACCESSW_ALLOCATE_ALL_NODES;
  60. typedef /* [allocate] */ PACTRL_AUDITW PACTRL_AUDITW_ALLOCATE_ALL_NODES;
  61. extern RPC_IF_HANDLE __MIDL_itf_iaccess_0000_v0_0_c_ifspec;
  62. extern RPC_IF_HANDLE __MIDL_itf_iaccess_0000_v0_0_s_ifspec;
  63. #ifndef __IAccessControl_INTERFACE_DEFINED__
  64. #define __IAccessControl_INTERFACE_DEFINED__
  65. /* interface IAccessControl */
  66. /* [unique][uuid][object] */
  67. EXTERN_C const IID IID_IAccessControl;
  68. #if defined(__cplusplus) && !defined(CINTERFACE)
  69. MIDL_INTERFACE("EEDD23E0-8410-11CE-A1C3-08002B2B8D8F")
  70. IAccessControl : public IUnknown
  71. {
  72. public:
  73. virtual HRESULT STDMETHODCALLTYPE GrantAccessRights(
  74. /* [in] */ PACTRL_ACCESSW pAccessList) = 0;
  75. virtual HRESULT STDMETHODCALLTYPE SetAccessRights(
  76. /* [in] */ PACTRL_ACCESSW pAccessList) = 0;
  77. virtual HRESULT STDMETHODCALLTYPE SetOwner(
  78. /* [in] */ PTRUSTEEW pOwner,
  79. /* [in] */ PTRUSTEEW pGroup) = 0;
  80. virtual HRESULT STDMETHODCALLTYPE RevokeAccessRights(
  81. /* [in] */ LPWSTR lpProperty,
  82. /* [in] */ ULONG cTrustees,
  83. /* [size_is][in] */ TRUSTEEW prgTrustees[ ]) = 0;
  84. virtual HRESULT STDMETHODCALLTYPE GetAllAccessRights(
  85. /* [in] */ LPWSTR lpProperty,
  86. /* [out] */ PACTRL_ACCESSW_ALLOCATE_ALL_NODES *ppAccessList,
  87. /* [out] */ PTRUSTEEW *ppOwner,
  88. /* [out] */ PTRUSTEEW *ppGroup) = 0;
  89. virtual HRESULT STDMETHODCALLTYPE IsAccessAllowed(
  90. /* [in] */ PTRUSTEEW pTrustee,
  91. /* [in] */ LPWSTR lpProperty,
  92. /* [in] */ ACCESS_RIGHTS AccessRights,
  93. /* [out] */ BOOL *pfAccessAllowed) = 0;
  94. };
  95. #else /* C style interface */
  96. typedef struct IAccessControlVtbl
  97. {
  98. BEGIN_INTERFACE
  99. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  100. IAccessControl * This,
  101. /* [in] */ REFIID riid,
  102. /* [iid_is][out] */ void **ppvObject);
  103. ULONG ( STDMETHODCALLTYPE *AddRef )(
  104. IAccessControl * This);
  105. ULONG ( STDMETHODCALLTYPE *Release )(
  106. IAccessControl * This);
  107. HRESULT ( STDMETHODCALLTYPE *GrantAccessRights )(
  108. IAccessControl * This,
  109. /* [in] */ PACTRL_ACCESSW pAccessList);
  110. HRESULT ( STDMETHODCALLTYPE *SetAccessRights )(
  111. IAccessControl * This,
  112. /* [in] */ PACTRL_ACCESSW pAccessList);
  113. HRESULT ( STDMETHODCALLTYPE *SetOwner )(
  114. IAccessControl * This,
  115. /* [in] */ PTRUSTEEW pOwner,
  116. /* [in] */ PTRUSTEEW pGroup);
  117. HRESULT ( STDMETHODCALLTYPE *RevokeAccessRights )(
  118. IAccessControl * This,
  119. /* [in] */ LPWSTR lpProperty,
  120. /* [in] */ ULONG cTrustees,
  121. /* [size_is][in] */ TRUSTEEW prgTrustees[ ]);
  122. HRESULT ( STDMETHODCALLTYPE *GetAllAccessRights )(
  123. IAccessControl * This,
  124. /* [in] */ LPWSTR lpProperty,
  125. /* [out] */ PACTRL_ACCESSW_ALLOCATE_ALL_NODES *ppAccessList,
  126. /* [out] */ PTRUSTEEW *ppOwner,
  127. /* [out] */ PTRUSTEEW *ppGroup);
  128. HRESULT ( STDMETHODCALLTYPE *IsAccessAllowed )(
  129. IAccessControl * This,
  130. /* [in] */ PTRUSTEEW pTrustee,
  131. /* [in] */ LPWSTR lpProperty,
  132. /* [in] */ ACCESS_RIGHTS AccessRights,
  133. /* [out] */ BOOL *pfAccessAllowed);
  134. END_INTERFACE
  135. } IAccessControlVtbl;
  136. interface IAccessControl
  137. {
  138. CONST_VTBL struct IAccessControlVtbl *lpVtbl;
  139. };
  140. #ifdef COBJMACROS
  141. #define IAccessControl_QueryInterface(This,riid,ppvObject) \
  142. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  143. #define IAccessControl_AddRef(This) \
  144. (This)->lpVtbl -> AddRef(This)
  145. #define IAccessControl_Release(This) \
  146. (This)->lpVtbl -> Release(This)
  147. #define IAccessControl_GrantAccessRights(This,pAccessList) \
  148. (This)->lpVtbl -> GrantAccessRights(This,pAccessList)
  149. #define IAccessControl_SetAccessRights(This,pAccessList) \
  150. (This)->lpVtbl -> SetAccessRights(This,pAccessList)
  151. #define IAccessControl_SetOwner(This,pOwner,pGroup) \
  152. (This)->lpVtbl -> SetOwner(This,pOwner,pGroup)
  153. #define IAccessControl_RevokeAccessRights(This,lpProperty,cTrustees,prgTrustees) \
  154. (This)->lpVtbl -> RevokeAccessRights(This,lpProperty,cTrustees,prgTrustees)
  155. #define IAccessControl_GetAllAccessRights(This,lpProperty,ppAccessList,ppOwner,ppGroup) \
  156. (This)->lpVtbl -> GetAllAccessRights(This,lpProperty,ppAccessList,ppOwner,ppGroup)
  157. #define IAccessControl_IsAccessAllowed(This,pTrustee,lpProperty,AccessRights,pfAccessAllowed) \
  158. (This)->lpVtbl -> IsAccessAllowed(This,pTrustee,lpProperty,AccessRights,pfAccessAllowed)
  159. #endif /* COBJMACROS */
  160. #endif /* C style interface */
  161. HRESULT STDMETHODCALLTYPE IAccessControl_GrantAccessRights_Proxy(
  162. IAccessControl * This,
  163. /* [in] */ PACTRL_ACCESSW pAccessList);
  164. void __RPC_STUB IAccessControl_GrantAccessRights_Stub(
  165. IRpcStubBuffer *This,
  166. IRpcChannelBuffer *_pRpcChannelBuffer,
  167. PRPC_MESSAGE _pRpcMessage,
  168. DWORD *_pdwStubPhase);
  169. HRESULT STDMETHODCALLTYPE IAccessControl_SetAccessRights_Proxy(
  170. IAccessControl * This,
  171. /* [in] */ PACTRL_ACCESSW pAccessList);
  172. void __RPC_STUB IAccessControl_SetAccessRights_Stub(
  173. IRpcStubBuffer *This,
  174. IRpcChannelBuffer *_pRpcChannelBuffer,
  175. PRPC_MESSAGE _pRpcMessage,
  176. DWORD *_pdwStubPhase);
  177. HRESULT STDMETHODCALLTYPE IAccessControl_SetOwner_Proxy(
  178. IAccessControl * This,
  179. /* [in] */ PTRUSTEEW pOwner,
  180. /* [in] */ PTRUSTEEW pGroup);
  181. void __RPC_STUB IAccessControl_SetOwner_Stub(
  182. IRpcStubBuffer *This,
  183. IRpcChannelBuffer *_pRpcChannelBuffer,
  184. PRPC_MESSAGE _pRpcMessage,
  185. DWORD *_pdwStubPhase);
  186. HRESULT STDMETHODCALLTYPE IAccessControl_RevokeAccessRights_Proxy(
  187. IAccessControl * This,
  188. /* [in] */ LPWSTR lpProperty,
  189. /* [in] */ ULONG cTrustees,
  190. /* [size_is][in] */ TRUSTEEW prgTrustees[ ]);
  191. void __RPC_STUB IAccessControl_RevokeAccessRights_Stub(
  192. IRpcStubBuffer *This,
  193. IRpcChannelBuffer *_pRpcChannelBuffer,
  194. PRPC_MESSAGE _pRpcMessage,
  195. DWORD *_pdwStubPhase);
  196. HRESULT STDMETHODCALLTYPE IAccessControl_GetAllAccessRights_Proxy(
  197. IAccessControl * This,
  198. /* [in] */ LPWSTR lpProperty,
  199. /* [out] */ PACTRL_ACCESSW_ALLOCATE_ALL_NODES *ppAccessList,
  200. /* [out] */ PTRUSTEEW *ppOwner,
  201. /* [out] */ PTRUSTEEW *ppGroup);
  202. void __RPC_STUB IAccessControl_GetAllAccessRights_Stub(
  203. IRpcStubBuffer *This,
  204. IRpcChannelBuffer *_pRpcChannelBuffer,
  205. PRPC_MESSAGE _pRpcMessage,
  206. DWORD *_pdwStubPhase);
  207. HRESULT STDMETHODCALLTYPE IAccessControl_IsAccessAllowed_Proxy(
  208. IAccessControl * This,
  209. /* [in] */ PTRUSTEEW pTrustee,
  210. /* [in] */ LPWSTR lpProperty,
  211. /* [in] */ ACCESS_RIGHTS AccessRights,
  212. /* [out] */ BOOL *pfAccessAllowed);
  213. void __RPC_STUB IAccessControl_IsAccessAllowed_Stub(
  214. IRpcStubBuffer *This,
  215. IRpcChannelBuffer *_pRpcChannelBuffer,
  216. PRPC_MESSAGE _pRpcMessage,
  217. DWORD *_pdwStubPhase);
  218. #endif /* __IAccessControl_INTERFACE_DEFINED__ */
  219. /* interface __MIDL_itf_iaccess_0010 */
  220. /* [local] */
  221. extern RPC_IF_HANDLE __MIDL_itf_iaccess_0010_v0_0_c_ifspec;
  222. extern RPC_IF_HANDLE __MIDL_itf_iaccess_0010_v0_0_s_ifspec;
  223. #ifndef __IAuditControl_INTERFACE_DEFINED__
  224. #define __IAuditControl_INTERFACE_DEFINED__
  225. /* interface IAuditControl */
  226. /* [unique][uuid][object] */
  227. EXTERN_C const IID IID_IAuditControl;
  228. #if defined(__cplusplus) && !defined(CINTERFACE)
  229. MIDL_INTERFACE("1da6292f-bc66-11ce-aae3-00aa004c2737")
  230. IAuditControl : public IUnknown
  231. {
  232. public:
  233. virtual HRESULT STDMETHODCALLTYPE GrantAuditRights(
  234. /* [in] */ PACTRL_AUDITW pAuditList) = 0;
  235. virtual HRESULT STDMETHODCALLTYPE SetAuditRights(
  236. /* [in] */ PACTRL_AUDITW pAuditList) = 0;
  237. virtual HRESULT STDMETHODCALLTYPE RevokeAuditRights(
  238. /* [in] */ LPWSTR lpProperty,
  239. /* [in] */ ULONG cTrustees,
  240. /* [size_is][in] */ TRUSTEEW prgTrustees[ ]) = 0;
  241. virtual HRESULT STDMETHODCALLTYPE GetAllAuditRights(
  242. /* [in] */ LPWSTR lpProperty,
  243. /* [out] */ PACTRL_AUDITW *ppAuditList) = 0;
  244. virtual HRESULT STDMETHODCALLTYPE IsAccessAudited(
  245. /* [in] */ PTRUSTEEW pTrustee,
  246. /* [in] */ ACCESS_RIGHTS AuditRights,
  247. /* [out] */ BOOL *pfAccessAudited) = 0;
  248. };
  249. #else /* C style interface */
  250. typedef struct IAuditControlVtbl
  251. {
  252. BEGIN_INTERFACE
  253. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  254. IAuditControl * This,
  255. /* [in] */ REFIID riid,
  256. /* [iid_is][out] */ void **ppvObject);
  257. ULONG ( STDMETHODCALLTYPE *AddRef )(
  258. IAuditControl * This);
  259. ULONG ( STDMETHODCALLTYPE *Release )(
  260. IAuditControl * This);
  261. HRESULT ( STDMETHODCALLTYPE *GrantAuditRights )(
  262. IAuditControl * This,
  263. /* [in] */ PACTRL_AUDITW pAuditList);
  264. HRESULT ( STDMETHODCALLTYPE *SetAuditRights )(
  265. IAuditControl * This,
  266. /* [in] */ PACTRL_AUDITW pAuditList);
  267. HRESULT ( STDMETHODCALLTYPE *RevokeAuditRights )(
  268. IAuditControl * This,
  269. /* [in] */ LPWSTR lpProperty,
  270. /* [in] */ ULONG cTrustees,
  271. /* [size_is][in] */ TRUSTEEW prgTrustees[ ]);
  272. HRESULT ( STDMETHODCALLTYPE *GetAllAuditRights )(
  273. IAuditControl * This,
  274. /* [in] */ LPWSTR lpProperty,
  275. /* [out] */ PACTRL_AUDITW *ppAuditList);
  276. HRESULT ( STDMETHODCALLTYPE *IsAccessAudited )(
  277. IAuditControl * This,
  278. /* [in] */ PTRUSTEEW pTrustee,
  279. /* [in] */ ACCESS_RIGHTS AuditRights,
  280. /* [out] */ BOOL *pfAccessAudited);
  281. END_INTERFACE
  282. } IAuditControlVtbl;
  283. interface IAuditControl
  284. {
  285. CONST_VTBL struct IAuditControlVtbl *lpVtbl;
  286. };
  287. #ifdef COBJMACROS
  288. #define IAuditControl_QueryInterface(This,riid,ppvObject) \
  289. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  290. #define IAuditControl_AddRef(This) \
  291. (This)->lpVtbl -> AddRef(This)
  292. #define IAuditControl_Release(This) \
  293. (This)->lpVtbl -> Release(This)
  294. #define IAuditControl_GrantAuditRights(This,pAuditList) \
  295. (This)->lpVtbl -> GrantAuditRights(This,pAuditList)
  296. #define IAuditControl_SetAuditRights(This,pAuditList) \
  297. (This)->lpVtbl -> SetAuditRights(This,pAuditList)
  298. #define IAuditControl_RevokeAuditRights(This,lpProperty,cTrustees,prgTrustees) \
  299. (This)->lpVtbl -> RevokeAuditRights(This,lpProperty,cTrustees,prgTrustees)
  300. #define IAuditControl_GetAllAuditRights(This,lpProperty,ppAuditList) \
  301. (This)->lpVtbl -> GetAllAuditRights(This,lpProperty,ppAuditList)
  302. #define IAuditControl_IsAccessAudited(This,pTrustee,AuditRights,pfAccessAudited) \
  303. (This)->lpVtbl -> IsAccessAudited(This,pTrustee,AuditRights,pfAccessAudited)
  304. #endif /* COBJMACROS */
  305. #endif /* C style interface */
  306. HRESULT STDMETHODCALLTYPE IAuditControl_GrantAuditRights_Proxy(
  307. IAuditControl * This,
  308. /* [in] */ PACTRL_AUDITW pAuditList);
  309. void __RPC_STUB IAuditControl_GrantAuditRights_Stub(
  310. IRpcStubBuffer *This,
  311. IRpcChannelBuffer *_pRpcChannelBuffer,
  312. PRPC_MESSAGE _pRpcMessage,
  313. DWORD *_pdwStubPhase);
  314. HRESULT STDMETHODCALLTYPE IAuditControl_SetAuditRights_Proxy(
  315. IAuditControl * This,
  316. /* [in] */ PACTRL_AUDITW pAuditList);
  317. void __RPC_STUB IAuditControl_SetAuditRights_Stub(
  318. IRpcStubBuffer *This,
  319. IRpcChannelBuffer *_pRpcChannelBuffer,
  320. PRPC_MESSAGE _pRpcMessage,
  321. DWORD *_pdwStubPhase);
  322. HRESULT STDMETHODCALLTYPE IAuditControl_RevokeAuditRights_Proxy(
  323. IAuditControl * This,
  324. /* [in] */ LPWSTR lpProperty,
  325. /* [in] */ ULONG cTrustees,
  326. /* [size_is][in] */ TRUSTEEW prgTrustees[ ]);
  327. void __RPC_STUB IAuditControl_RevokeAuditRights_Stub(
  328. IRpcStubBuffer *This,
  329. IRpcChannelBuffer *_pRpcChannelBuffer,
  330. PRPC_MESSAGE _pRpcMessage,
  331. DWORD *_pdwStubPhase);
  332. HRESULT STDMETHODCALLTYPE IAuditControl_GetAllAuditRights_Proxy(
  333. IAuditControl * This,
  334. /* [in] */ LPWSTR lpProperty,
  335. /* [out] */ PACTRL_AUDITW *ppAuditList);
  336. void __RPC_STUB IAuditControl_GetAllAuditRights_Stub(
  337. IRpcStubBuffer *This,
  338. IRpcChannelBuffer *_pRpcChannelBuffer,
  339. PRPC_MESSAGE _pRpcMessage,
  340. DWORD *_pdwStubPhase);
  341. HRESULT STDMETHODCALLTYPE IAuditControl_IsAccessAudited_Proxy(
  342. IAuditControl * This,
  343. /* [in] */ PTRUSTEEW pTrustee,
  344. /* [in] */ ACCESS_RIGHTS AuditRights,
  345. /* [out] */ BOOL *pfAccessAudited);
  346. void __RPC_STUB IAuditControl_IsAccessAudited_Stub(
  347. IRpcStubBuffer *This,
  348. IRpcChannelBuffer *_pRpcChannelBuffer,
  349. PRPC_MESSAGE _pRpcMessage,
  350. DWORD *_pdwStubPhase);
  351. #endif /* __IAuditControl_INTERFACE_DEFINED__ */
  352. /* Additional Prototypes for ALL interfaces */
  353. /* end of Additional Prototypes */
  354. #ifdef __cplusplus
  355. }
  356. #endif
  357. #endif