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.

1621 lines
50 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 certcli.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 __certcli_h__
  27. #define __certcli_h__
  28. #if defined(_MSC_VER) && (_MSC_VER >= 1020)
  29. #pragma once
  30. #endif
  31. /* Forward Declarations */
  32. #ifndef __ICertGetConfig_FWD_DEFINED__
  33. #define __ICertGetConfig_FWD_DEFINED__
  34. typedef interface ICertGetConfig ICertGetConfig;
  35. #endif /* __ICertGetConfig_FWD_DEFINED__ */
  36. #ifndef __ICertConfig_FWD_DEFINED__
  37. #define __ICertConfig_FWD_DEFINED__
  38. typedef interface ICertConfig ICertConfig;
  39. #endif /* __ICertConfig_FWD_DEFINED__ */
  40. #ifndef __ICertConfig2_FWD_DEFINED__
  41. #define __ICertConfig2_FWD_DEFINED__
  42. typedef interface ICertConfig2 ICertConfig2;
  43. #endif /* __ICertConfig2_FWD_DEFINED__ */
  44. #ifndef __ICertRequest_FWD_DEFINED__
  45. #define __ICertRequest_FWD_DEFINED__
  46. typedef interface ICertRequest ICertRequest;
  47. #endif /* __ICertRequest_FWD_DEFINED__ */
  48. #ifndef __ICertRequest2_FWD_DEFINED__
  49. #define __ICertRequest2_FWD_DEFINED__
  50. typedef interface ICertRequest2 ICertRequest2;
  51. #endif /* __ICertRequest2_FWD_DEFINED__ */
  52. #ifndef __CCertGetConfig_FWD_DEFINED__
  53. #define __CCertGetConfig_FWD_DEFINED__
  54. #ifdef __cplusplus
  55. typedef class CCertGetConfig CCertGetConfig;
  56. #else
  57. typedef struct CCertGetConfig CCertGetConfig;
  58. #endif /* __cplusplus */
  59. #endif /* __CCertGetConfig_FWD_DEFINED__ */
  60. #ifndef __CCertConfig_FWD_DEFINED__
  61. #define __CCertConfig_FWD_DEFINED__
  62. #ifdef __cplusplus
  63. typedef class CCertConfig CCertConfig;
  64. #else
  65. typedef struct CCertConfig CCertConfig;
  66. #endif /* __cplusplus */
  67. #endif /* __CCertConfig_FWD_DEFINED__ */
  68. #ifndef __CCertRequest_FWD_DEFINED__
  69. #define __CCertRequest_FWD_DEFINED__
  70. #ifdef __cplusplus
  71. typedef class CCertRequest CCertRequest;
  72. #else
  73. typedef struct CCertRequest CCertRequest;
  74. #endif /* __cplusplus */
  75. #endif /* __CCertRequest_FWD_DEFINED__ */
  76. #ifndef __CCertServerPolicy_FWD_DEFINED__
  77. #define __CCertServerPolicy_FWD_DEFINED__
  78. #ifdef __cplusplus
  79. typedef class CCertServerPolicy CCertServerPolicy;
  80. #else
  81. typedef struct CCertServerPolicy CCertServerPolicy;
  82. #endif /* __cplusplus */
  83. #endif /* __CCertServerPolicy_FWD_DEFINED__ */
  84. #ifndef __CCertServerExit_FWD_DEFINED__
  85. #define __CCertServerExit_FWD_DEFINED__
  86. #ifdef __cplusplus
  87. typedef class CCertServerExit CCertServerExit;
  88. #else
  89. typedef struct CCertServerExit CCertServerExit;
  90. #endif /* __cplusplus */
  91. #endif /* __CCertServerExit_FWD_DEFINED__ */
  92. /* header files for imported files */
  93. #include "wtypes.h"
  94. #include "certif.h"
  95. #ifdef __cplusplus
  96. extern "C"{
  97. #endif
  98. void * __RPC_USER MIDL_user_allocate(size_t);
  99. void __RPC_USER MIDL_user_free( void * );
  100. #ifndef __ICertGetConfig_INTERFACE_DEFINED__
  101. #define __ICertGetConfig_INTERFACE_DEFINED__
  102. /* interface ICertGetConfig */
  103. /* [unique][helpstring][dual][uuid][object] */
  104. EXTERN_C const IID IID_ICertGetConfig;
  105. #if defined(__cplusplus) && !defined(CINTERFACE)
  106. MIDL_INTERFACE("c7ea09c0-ce17-11d0-8833-00a0c903b83c")
  107. ICertGetConfig : public IDispatch
  108. {
  109. public:
  110. virtual HRESULT STDMETHODCALLTYPE GetConfig(
  111. /* [in] */ LONG Flags,
  112. /* [retval][out] */ BSTR *pstrOut) = 0;
  113. };
  114. #else /* C style interface */
  115. typedef struct ICertGetConfigVtbl
  116. {
  117. BEGIN_INTERFACE
  118. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  119. ICertGetConfig * This,
  120. /* [in] */ REFIID riid,
  121. /* [iid_is][out] */ void **ppvObject);
  122. ULONG ( STDMETHODCALLTYPE *AddRef )(
  123. ICertGetConfig * This);
  124. ULONG ( STDMETHODCALLTYPE *Release )(
  125. ICertGetConfig * This);
  126. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  127. ICertGetConfig * This,
  128. /* [out] */ UINT *pctinfo);
  129. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  130. ICertGetConfig * This,
  131. /* [in] */ UINT iTInfo,
  132. /* [in] */ LCID lcid,
  133. /* [out] */ ITypeInfo **ppTInfo);
  134. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  135. ICertGetConfig * This,
  136. /* [in] */ REFIID riid,
  137. /* [size_is][in] */ LPOLESTR *rgszNames,
  138. /* [in] */ UINT cNames,
  139. /* [in] */ LCID lcid,
  140. /* [size_is][out] */ DISPID *rgDispId);
  141. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  142. ICertGetConfig * This,
  143. /* [in] */ DISPID dispIdMember,
  144. /* [in] */ REFIID riid,
  145. /* [in] */ LCID lcid,
  146. /* [in] */ WORD wFlags,
  147. /* [out][in] */ DISPPARAMS *pDispParams,
  148. /* [out] */ VARIANT *pVarResult,
  149. /* [out] */ EXCEPINFO *pExcepInfo,
  150. /* [out] */ UINT *puArgErr);
  151. HRESULT ( STDMETHODCALLTYPE *GetConfig )(
  152. ICertGetConfig * This,
  153. /* [in] */ LONG Flags,
  154. /* [retval][out] */ BSTR *pstrOut);
  155. END_INTERFACE
  156. } ICertGetConfigVtbl;
  157. interface ICertGetConfig
  158. {
  159. CONST_VTBL struct ICertGetConfigVtbl *lpVtbl;
  160. };
  161. #ifdef COBJMACROS
  162. #define ICertGetConfig_QueryInterface(This,riid,ppvObject) \
  163. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  164. #define ICertGetConfig_AddRef(This) \
  165. (This)->lpVtbl -> AddRef(This)
  166. #define ICertGetConfig_Release(This) \
  167. (This)->lpVtbl -> Release(This)
  168. #define ICertGetConfig_GetTypeInfoCount(This,pctinfo) \
  169. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  170. #define ICertGetConfig_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  171. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  172. #define ICertGetConfig_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  173. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  174. #define ICertGetConfig_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  175. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  176. #define ICertGetConfig_GetConfig(This,Flags,pstrOut) \
  177. (This)->lpVtbl -> GetConfig(This,Flags,pstrOut)
  178. #endif /* COBJMACROS */
  179. #endif /* C style interface */
  180. HRESULT STDMETHODCALLTYPE ICertGetConfig_GetConfig_Proxy(
  181. ICertGetConfig * This,
  182. /* [in] */ LONG Flags,
  183. /* [retval][out] */ BSTR *pstrOut);
  184. void __RPC_STUB ICertGetConfig_GetConfig_Stub(
  185. IRpcStubBuffer *This,
  186. IRpcChannelBuffer *_pRpcChannelBuffer,
  187. PRPC_MESSAGE _pRpcMessage,
  188. DWORD *_pdwStubPhase);
  189. #endif /* __ICertGetConfig_INTERFACE_DEFINED__ */
  190. /* interface __MIDL_itf_certcli_0122 */
  191. /* [local] */
  192. #define wszCONFIG_COMMONNAME L"CommonName"
  193. #define wszCONFIG_ORGUNIT L"OrgUnit"
  194. #define wszCONFIG_ORGANIZATION L"Organization"
  195. #define wszCONFIG_LOCALITY L"Locality"
  196. #define wszCONFIG_STATE L"State"
  197. #define wszCONFIG_COUNTRY L"Country"
  198. #define wszCONFIG_CONFIG L"Config"
  199. #define wszCONFIG_EXCHANGECERTIFICATE L"ExchangeCertificate"
  200. #define wszCONFIG_SIGNATURECERTIFICATE L"SignatureCertificate"
  201. #define wszCONFIG_DESCRIPTION L"Description"
  202. #define wszCONFIG_COMMENT L"Comment" // obsolete: use Description
  203. #define wszCONFIG_SERVER L"Server"
  204. #define wszCONFIG_AUTHORITY L"Authority"
  205. #define wszCONFIG_SANITIZEDNAME L"SanitizedName"
  206. #define wszCONFIG_SHORTNAME L"ShortName"
  207. #define wszCONFIG_SANITIZEDSHORTNAME L"SanitizedShortName"
  208. #define wszCONFIG_FLAGS L"Flags"
  209. #define CAIF_DSENTRY ( 0x1 )
  210. #define CAIF_SHAREDFOLDERENTRY ( 0x2 )
  211. #define CAIF_REGISTRY ( 0x4 )
  212. #define CAIF_LOCAL ( 0x8 )
  213. #define CAIF_REGISTRYPARENT ( 0x10 )
  214. extern RPC_IF_HANDLE __MIDL_itf_certcli_0122_v0_0_c_ifspec;
  215. extern RPC_IF_HANDLE __MIDL_itf_certcli_0122_v0_0_s_ifspec;
  216. #ifndef __ICertConfig_INTERFACE_DEFINED__
  217. #define __ICertConfig_INTERFACE_DEFINED__
  218. /* interface ICertConfig */
  219. /* [unique][helpstring][dual][uuid][object] */
  220. EXTERN_C const IID IID_ICertConfig;
  221. #if defined(__cplusplus) && !defined(CINTERFACE)
  222. MIDL_INTERFACE("372fce34-4324-11d0-8810-00a0c903b83c")
  223. ICertConfig : public IDispatch
  224. {
  225. public:
  226. virtual HRESULT STDMETHODCALLTYPE Reset(
  227. /* [in] */ LONG Index,
  228. /* [retval][out] */ LONG *pCount) = 0;
  229. virtual HRESULT STDMETHODCALLTYPE Next(
  230. /* [retval][out] */ LONG *pIndex) = 0;
  231. virtual HRESULT STDMETHODCALLTYPE GetField(
  232. /* [in] */ const BSTR strFieldName,
  233. /* [retval][out] */ BSTR *pstrOut) = 0;
  234. virtual HRESULT STDMETHODCALLTYPE GetConfig(
  235. /* [in] */ LONG Flags,
  236. /* [retval][out] */ BSTR *pstrOut) = 0;
  237. };
  238. #else /* C style interface */
  239. typedef struct ICertConfigVtbl
  240. {
  241. BEGIN_INTERFACE
  242. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  243. ICertConfig * This,
  244. /* [in] */ REFIID riid,
  245. /* [iid_is][out] */ void **ppvObject);
  246. ULONG ( STDMETHODCALLTYPE *AddRef )(
  247. ICertConfig * This);
  248. ULONG ( STDMETHODCALLTYPE *Release )(
  249. ICertConfig * This);
  250. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  251. ICertConfig * This,
  252. /* [out] */ UINT *pctinfo);
  253. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  254. ICertConfig * This,
  255. /* [in] */ UINT iTInfo,
  256. /* [in] */ LCID lcid,
  257. /* [out] */ ITypeInfo **ppTInfo);
  258. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  259. ICertConfig * This,
  260. /* [in] */ REFIID riid,
  261. /* [size_is][in] */ LPOLESTR *rgszNames,
  262. /* [in] */ UINT cNames,
  263. /* [in] */ LCID lcid,
  264. /* [size_is][out] */ DISPID *rgDispId);
  265. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  266. ICertConfig * This,
  267. /* [in] */ DISPID dispIdMember,
  268. /* [in] */ REFIID riid,
  269. /* [in] */ LCID lcid,
  270. /* [in] */ WORD wFlags,
  271. /* [out][in] */ DISPPARAMS *pDispParams,
  272. /* [out] */ VARIANT *pVarResult,
  273. /* [out] */ EXCEPINFO *pExcepInfo,
  274. /* [out] */ UINT *puArgErr);
  275. HRESULT ( STDMETHODCALLTYPE *Reset )(
  276. ICertConfig * This,
  277. /* [in] */ LONG Index,
  278. /* [retval][out] */ LONG *pCount);
  279. HRESULT ( STDMETHODCALLTYPE *Next )(
  280. ICertConfig * This,
  281. /* [retval][out] */ LONG *pIndex);
  282. HRESULT ( STDMETHODCALLTYPE *GetField )(
  283. ICertConfig * This,
  284. /* [in] */ const BSTR strFieldName,
  285. /* [retval][out] */ BSTR *pstrOut);
  286. HRESULT ( STDMETHODCALLTYPE *GetConfig )(
  287. ICertConfig * This,
  288. /* [in] */ LONG Flags,
  289. /* [retval][out] */ BSTR *pstrOut);
  290. END_INTERFACE
  291. } ICertConfigVtbl;
  292. interface ICertConfig
  293. {
  294. CONST_VTBL struct ICertConfigVtbl *lpVtbl;
  295. };
  296. #ifdef COBJMACROS
  297. #define ICertConfig_QueryInterface(This,riid,ppvObject) \
  298. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  299. #define ICertConfig_AddRef(This) \
  300. (This)->lpVtbl -> AddRef(This)
  301. #define ICertConfig_Release(This) \
  302. (This)->lpVtbl -> Release(This)
  303. #define ICertConfig_GetTypeInfoCount(This,pctinfo) \
  304. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  305. #define ICertConfig_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  306. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  307. #define ICertConfig_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  308. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  309. #define ICertConfig_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  310. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  311. #define ICertConfig_Reset(This,Index,pCount) \
  312. (This)->lpVtbl -> Reset(This,Index,pCount)
  313. #define ICertConfig_Next(This,pIndex) \
  314. (This)->lpVtbl -> Next(This,pIndex)
  315. #define ICertConfig_GetField(This,strFieldName,pstrOut) \
  316. (This)->lpVtbl -> GetField(This,strFieldName,pstrOut)
  317. #define ICertConfig_GetConfig(This,Flags,pstrOut) \
  318. (This)->lpVtbl -> GetConfig(This,Flags,pstrOut)
  319. #endif /* COBJMACROS */
  320. #endif /* C style interface */
  321. HRESULT STDMETHODCALLTYPE ICertConfig_Reset_Proxy(
  322. ICertConfig * This,
  323. /* [in] */ LONG Index,
  324. /* [retval][out] */ LONG *pCount);
  325. void __RPC_STUB ICertConfig_Reset_Stub(
  326. IRpcStubBuffer *This,
  327. IRpcChannelBuffer *_pRpcChannelBuffer,
  328. PRPC_MESSAGE _pRpcMessage,
  329. DWORD *_pdwStubPhase);
  330. HRESULT STDMETHODCALLTYPE ICertConfig_Next_Proxy(
  331. ICertConfig * This,
  332. /* [retval][out] */ LONG *pIndex);
  333. void __RPC_STUB ICertConfig_Next_Stub(
  334. IRpcStubBuffer *This,
  335. IRpcChannelBuffer *_pRpcChannelBuffer,
  336. PRPC_MESSAGE _pRpcMessage,
  337. DWORD *_pdwStubPhase);
  338. HRESULT STDMETHODCALLTYPE ICertConfig_GetField_Proxy(
  339. ICertConfig * This,
  340. /* [in] */ const BSTR strFieldName,
  341. /* [retval][out] */ BSTR *pstrOut);
  342. void __RPC_STUB ICertConfig_GetField_Stub(
  343. IRpcStubBuffer *This,
  344. IRpcChannelBuffer *_pRpcChannelBuffer,
  345. PRPC_MESSAGE _pRpcMessage,
  346. DWORD *_pdwStubPhase);
  347. HRESULT STDMETHODCALLTYPE ICertConfig_GetConfig_Proxy(
  348. ICertConfig * This,
  349. /* [in] */ LONG Flags,
  350. /* [retval][out] */ BSTR *pstrOut);
  351. void __RPC_STUB ICertConfig_GetConfig_Stub(
  352. IRpcStubBuffer *This,
  353. IRpcChannelBuffer *_pRpcChannelBuffer,
  354. PRPC_MESSAGE _pRpcMessage,
  355. DWORD *_pdwStubPhase);
  356. #endif /* __ICertConfig_INTERFACE_DEFINED__ */
  357. #ifndef __ICertConfig2_INTERFACE_DEFINED__
  358. #define __ICertConfig2_INTERFACE_DEFINED__
  359. /* interface ICertConfig2 */
  360. /* [unique][helpstring][dual][uuid][object] */
  361. EXTERN_C const IID IID_ICertConfig2;
  362. #if defined(__cplusplus) && !defined(CINTERFACE)
  363. MIDL_INTERFACE("7a18edde-7e78-4163-8ded-78e2c9cee924")
  364. ICertConfig2 : public ICertConfig
  365. {
  366. public:
  367. virtual HRESULT STDMETHODCALLTYPE SetSharedFolder(
  368. /* [in] */ const BSTR strSharedFolder) = 0;
  369. };
  370. #else /* C style interface */
  371. typedef struct ICertConfig2Vtbl
  372. {
  373. BEGIN_INTERFACE
  374. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  375. ICertConfig2 * This,
  376. /* [in] */ REFIID riid,
  377. /* [iid_is][out] */ void **ppvObject);
  378. ULONG ( STDMETHODCALLTYPE *AddRef )(
  379. ICertConfig2 * This);
  380. ULONG ( STDMETHODCALLTYPE *Release )(
  381. ICertConfig2 * This);
  382. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  383. ICertConfig2 * This,
  384. /* [out] */ UINT *pctinfo);
  385. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  386. ICertConfig2 * This,
  387. /* [in] */ UINT iTInfo,
  388. /* [in] */ LCID lcid,
  389. /* [out] */ ITypeInfo **ppTInfo);
  390. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  391. ICertConfig2 * This,
  392. /* [in] */ REFIID riid,
  393. /* [size_is][in] */ LPOLESTR *rgszNames,
  394. /* [in] */ UINT cNames,
  395. /* [in] */ LCID lcid,
  396. /* [size_is][out] */ DISPID *rgDispId);
  397. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  398. ICertConfig2 * This,
  399. /* [in] */ DISPID dispIdMember,
  400. /* [in] */ REFIID riid,
  401. /* [in] */ LCID lcid,
  402. /* [in] */ WORD wFlags,
  403. /* [out][in] */ DISPPARAMS *pDispParams,
  404. /* [out] */ VARIANT *pVarResult,
  405. /* [out] */ EXCEPINFO *pExcepInfo,
  406. /* [out] */ UINT *puArgErr);
  407. HRESULT ( STDMETHODCALLTYPE *Reset )(
  408. ICertConfig2 * This,
  409. /* [in] */ LONG Index,
  410. /* [retval][out] */ LONG *pCount);
  411. HRESULT ( STDMETHODCALLTYPE *Next )(
  412. ICertConfig2 * This,
  413. /* [retval][out] */ LONG *pIndex);
  414. HRESULT ( STDMETHODCALLTYPE *GetField )(
  415. ICertConfig2 * This,
  416. /* [in] */ const BSTR strFieldName,
  417. /* [retval][out] */ BSTR *pstrOut);
  418. HRESULT ( STDMETHODCALLTYPE *GetConfig )(
  419. ICertConfig2 * This,
  420. /* [in] */ LONG Flags,
  421. /* [retval][out] */ BSTR *pstrOut);
  422. HRESULT ( STDMETHODCALLTYPE *SetSharedFolder )(
  423. ICertConfig2 * This,
  424. /* [in] */ const BSTR strSharedFolder);
  425. END_INTERFACE
  426. } ICertConfig2Vtbl;
  427. interface ICertConfig2
  428. {
  429. CONST_VTBL struct ICertConfig2Vtbl *lpVtbl;
  430. };
  431. #ifdef COBJMACROS
  432. #define ICertConfig2_QueryInterface(This,riid,ppvObject) \
  433. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  434. #define ICertConfig2_AddRef(This) \
  435. (This)->lpVtbl -> AddRef(This)
  436. #define ICertConfig2_Release(This) \
  437. (This)->lpVtbl -> Release(This)
  438. #define ICertConfig2_GetTypeInfoCount(This,pctinfo) \
  439. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  440. #define ICertConfig2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  441. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  442. #define ICertConfig2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  443. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  444. #define ICertConfig2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  445. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  446. #define ICertConfig2_Reset(This,Index,pCount) \
  447. (This)->lpVtbl -> Reset(This,Index,pCount)
  448. #define ICertConfig2_Next(This,pIndex) \
  449. (This)->lpVtbl -> Next(This,pIndex)
  450. #define ICertConfig2_GetField(This,strFieldName,pstrOut) \
  451. (This)->lpVtbl -> GetField(This,strFieldName,pstrOut)
  452. #define ICertConfig2_GetConfig(This,Flags,pstrOut) \
  453. (This)->lpVtbl -> GetConfig(This,Flags,pstrOut)
  454. #define ICertConfig2_SetSharedFolder(This,strSharedFolder) \
  455. (This)->lpVtbl -> SetSharedFolder(This,strSharedFolder)
  456. #endif /* COBJMACROS */
  457. #endif /* C style interface */
  458. HRESULT STDMETHODCALLTYPE ICertConfig2_SetSharedFolder_Proxy(
  459. ICertConfig2 * This,
  460. /* [in] */ const BSTR strSharedFolder);
  461. void __RPC_STUB ICertConfig2_SetSharedFolder_Stub(
  462. IRpcStubBuffer *This,
  463. IRpcChannelBuffer *_pRpcChannelBuffer,
  464. PRPC_MESSAGE _pRpcMessage,
  465. DWORD *_pdwStubPhase);
  466. #endif /* __ICertConfig2_INTERFACE_DEFINED__ */
  467. /* interface __MIDL_itf_certcli_0124 */
  468. /* [local] */
  469. #define CR_IN_BASE64HEADER ( 0 )
  470. #define CR_IN_BASE64 ( 0x1 )
  471. #define CR_IN_BINARY ( 0x2 )
  472. #define CR_IN_ENCODEANY ( 0xff )
  473. #define CR_IN_ENCODEMASK ( 0xff )
  474. #define CR_IN_FORMATANY ( 0 )
  475. #define CR_IN_PKCS10 ( 0x100 )
  476. #define CR_IN_KEYGEN ( 0x200 )
  477. #define CR_IN_PKCS7 ( 0x300 )
  478. #define CR_IN_CMC ( 0x400 )
  479. #define CR_IN_FORMATMASK ( 0xff00 )
  480. #define CR_IN_RPC ( 0x20000 )
  481. #define CR_IN_FULLRESPONSE ( 0x40000 )
  482. #define CR_IN_CRLS ( 0x80000 )
  483. #define CC_DEFAULTCONFIG ( 0 )
  484. #define CC_UIPICKCONFIG ( 0x1 )
  485. #define CC_FIRSTCONFIG ( 0x2 )
  486. #define CC_LOCALCONFIG ( 0x3 )
  487. #define CC_LOCALACTIVECONFIG ( 0x4 )
  488. #define CC_UIPICKCONFIGSKIPLOCALCA ( 0x5 )
  489. #define CR_DISP_INCOMPLETE ( 0 )
  490. #define CR_DISP_ERROR ( 0x1 )
  491. #define CR_DISP_DENIED ( 0x2 )
  492. #define CR_DISP_ISSUED ( 0x3 )
  493. #define CR_DISP_ISSUED_OUT_OF_BAND ( 0x4 )
  494. #define CR_DISP_UNDER_SUBMISSION ( 0x5 )
  495. #define CR_DISP_REVOKED ( 0x6 )
  496. #define CR_OUT_BASE64HEADER ( 0 )
  497. #define CR_OUT_BASE64 ( 0x1 )
  498. #define CR_OUT_BINARY ( 0x2 )
  499. #define CR_OUT_ENCODEMASK ( 0xff )
  500. #define CR_OUT_CHAIN ( 0x100 )
  501. #define CR_OUT_CRLS ( 0x200 )
  502. #define CR_GEMT_HRESULT_STRING ( 0x1 )
  503. #define CR_PROP_NONE 0 // Invalid
  504. #define CR_PROP_FILEVERSION 1 // String
  505. #define CR_PROP_PRODUCTVERSION 2 // String
  506. #define CR_PROP_EXITCOUNT 3 // Long
  507. // CR_PROP_EXITCOUNT Elements:
  508. #define CR_PROP_EXITDESCRIPTION 4 // String, Indexed
  509. #define CR_PROP_POLICYDESCRIPTION 5 // String
  510. #define CR_PROP_CANAME 6 // String
  511. #define CR_PROP_SANITIZEDCANAME 7 // String
  512. #define CR_PROP_SHAREDFOLDER 8 // String
  513. #define CR_PROP_PARENTCA 9 // String
  514. #define CR_PROP_CATYPE 10 // Long
  515. #define CR_PROP_CASIGCERTCOUNT 11 // Long
  516. // CR_PROP_CASIGCERTCOUNT Elements:
  517. #define CR_PROP_CASIGCERT 12 // Binary, Indexed
  518. // CR_PROP_CASIGCERTCOUNT Elements:
  519. #define CR_PROP_CASIGCERTCHAIN 13 // Binary, Indexed
  520. #define CR_PROP_CAXCHGCERTCOUNT 14 // Long
  521. // CR_PROP_CAXCHGCERTCOUNT Elements:
  522. #define CR_PROP_CAXCHGCERT 15 // Binary, Indexed
  523. // CR_PROP_CAXCHGCERTCOUNT Elements:
  524. #define CR_PROP_CAXCHGCERTCHAIN 16 // Binary, Indexed
  525. // CR_PROP_CASIGCERTCOUNT Elements:
  526. // Fetch only if CR_PROP_CRLSTATE[i] == CA_DISP_VALID
  527. // May also be available if CR_PROP_CRLSTATE[i] == CA_DISP_INVALID
  528. #define CR_PROP_BASECRL 17 // Binary, Indexed
  529. // CR_PROP_CASIGCERTCOUNT Elements:
  530. // Fetch only if Delta CRLs enabled && CR_PROP_CRLSTATE[i] == CA_DISP_VALID
  531. // May also be available if CR_PROP_CRLSTATE[i] == CA_DISP_INVALID
  532. #define CR_PROP_DELTACRL 18 // Binary, Indexed
  533. // CR_PROP_CASIGCERTCOUNT Elements:
  534. #define CR_PROP_CACERTSTATE 19 // Long, Indexed
  535. // CR_PROP_CASIGCERTCOUNT Elements:
  536. #define CR_PROP_CRLSTATE 20 // Long, Indexed
  537. #define CR_PROP_CAPROPIDMAX 21 // Long
  538. #define CR_PROP_DNSNAME 22 // String
  539. #define CR_PROP_ROLESEPARATIONENABLED 23 // Long
  540. #define CR_PROP_KRACERTUSEDCOUNT 24 // Long
  541. #define CR_PROP_KRACERTCOUNT 25 // Long
  542. // CR_PROP_KRACERTCOUNT Elements:
  543. #define CR_PROP_KRACERT 26 // Binary, Indexed
  544. // CR_PROP_KRACERTCOUNT Elements:
  545. #define CR_PROP_KRACERTSTATE 27 // Long, Indexed
  546. #define CR_PROP_ADVANCEDSERVER 28 // Long
  547. #define CR_PROP_TEMPLATES 29 // String
  548. // CR_PROP_CASIGCERTCOUNT Elements:
  549. // Fetch only if CR_PROP_CRLSTATE[i] == CA_DISP_VALID
  550. #define CR_PROP_BASECRLPUBLISHSTATUS 30 // Long, Indexed
  551. // CR_PROP_CASIGCERTCOUNT Elements:
  552. // Fetch only if Delta CRLs enabled && CR_PROP_CRLSTATE[i] == CA_DISP_VALID
  553. #define CR_PROP_DELTACRLPUBLISHSTATUS 31 // Long, Indexed
  554. // CR_PROP_CASIGCERTCOUNT Elements:
  555. #define CR_PROP_CASIGCERTCRLCHAIN 32 // Binary, Indexed
  556. // CR_PROP_CAXCHGCERTCOUNT Elements:
  557. #define CR_PROP_CAXCHGCERTCRLCHAIN 33 // Binary, Indexed
  558. // CR_PROP_CASIGCERTCOUNT Elements:
  559. #define CR_PROP_CACERTSTATUSCODE 34 // Long, Indexed
  560. // CR_PROP_CASIGCERTCOUNT Elements:
  561. #define CR_PROP_CAFORWARDCROSSCERT 35 // Binary, Indexed
  562. // CR_PROP_CASIGCERTCOUNT Elements:
  563. #define CR_PROP_CABACKWARDCROSSCERT 36 // Binary, Indexed
  564. // CR_PROP_CASIGCERTCOUNT Elements:
  565. #define CR_PROP_CAFORWARDCROSSCERTSTATE 37 // Long, Indexed
  566. // CR_PROP_CASIGCERTCOUNT Elements:
  567. #define CR_PROP_CABACKWARDCROSSCERTSTATE 38 // Long, Indexed
  568. // CR_PROP_CASIGCERTCOUNT Elements:
  569. #define CR_PROP_CACERTVERSION 39 // Long, Indexed
  570. #define CR_PROP_SANITIZEDCASHORTNAME 40 // String
  571. #define FR_PROP_NONE 0 // Invalid
  572. #define FR_PROP_FULLRESPONSE 1 // Binary
  573. #define FR_PROP_STATUSINFOCOUNT 2 // Long
  574. // FR_PROP_STATUSINFOCOUNT Elements:
  575. #define FR_PROP_BODYPARTSTRING 3 // String, Indexed
  576. // FR_PROP_STATUSINFOCOUNT Elements:
  577. #define FR_PROP_STATUS 4 // Long, Indexed
  578. // FR_PROP_STATUSINFOCOUNT Elements:
  579. #define FR_PROP_STATUSSTRING 5 // String, Indexed
  580. // FR_PROP_STATUSINFOCOUNT Elements:
  581. #define FR_PROP_OTHERINFOCHOICE 6 // Long, Indexed
  582. // FR_PROP_STATUSINFOCOUNT Elements:
  583. #define FR_PROP_FAILINFO 7 // Long, Indexed
  584. // FR_PROP_STATUSINFOCOUNT Elements:
  585. #define FR_PROP_PENDINFOTOKEN 8 // Binary, Indexed
  586. // FR_PROP_STATUSINFOCOUNT Elements:
  587. #define FR_PROP_PENDINFOTIME 9 // Date, Indexed
  588. // FR_PROP_STATUSINFOCOUNT Elements:
  589. #define FR_PROP_ISSUEDCERTIFICATEHASH 10 // Binary, Indexed
  590. // FR_PROP_STATUSINFOCOUNT Elements:
  591. #define FR_PROP_ISSUEDCERTIFICATE 11 // Binary, Indexed
  592. // FR_PROP_STATUSINFOCOUNT Elements:
  593. #define FR_PROP_ISSUEDCERTIFICATECHAIN 12 // Binary, Indexed
  594. // FR_PROP_STATUSINFOCOUNT Elements:
  595. #define FR_PROP_ISSUEDCERTIFICATECRLCHAIN 13 // Binary, Indexed
  596. // FR_PROP_STATUSINFOCOUNT Elements:
  597. #define FR_PROP_ENCRYPTEDKEYHASH 14 // Binary, Indexed
  598. #define FR_PROP_FULLRESPONSENOPKCS7 15 // Binary
  599. extern RPC_IF_HANDLE __MIDL_itf_certcli_0124_v0_0_c_ifspec;
  600. extern RPC_IF_HANDLE __MIDL_itf_certcli_0124_v0_0_s_ifspec;
  601. #ifndef __ICertRequest_INTERFACE_DEFINED__
  602. #define __ICertRequest_INTERFACE_DEFINED__
  603. /* interface ICertRequest */
  604. /* [unique][helpstring][dual][uuid][object] */
  605. EXTERN_C const IID IID_ICertRequest;
  606. #if defined(__cplusplus) && !defined(CINTERFACE)
  607. MIDL_INTERFACE("014e4840-5523-11d0-8812-00a0c903b83c")
  608. ICertRequest : public IDispatch
  609. {
  610. public:
  611. virtual HRESULT STDMETHODCALLTYPE Submit(
  612. /* [in] */ LONG Flags,
  613. /* [in] */ const BSTR strRequest,
  614. /* [in] */ const BSTR strAttributes,
  615. /* [in] */ const BSTR strConfig,
  616. /* [retval][out] */ LONG *pDisposition) = 0;
  617. virtual HRESULT STDMETHODCALLTYPE RetrievePending(
  618. /* [in] */ LONG RequestId,
  619. /* [in] */ const BSTR strConfig,
  620. /* [retval][out] */ LONG *pDisposition) = 0;
  621. virtual HRESULT STDMETHODCALLTYPE GetLastStatus(
  622. /* [retval][out] */ LONG *pStatus) = 0;
  623. virtual HRESULT STDMETHODCALLTYPE GetRequestId(
  624. /* [retval][out] */ LONG *pRequestId) = 0;
  625. virtual HRESULT STDMETHODCALLTYPE GetDispositionMessage(
  626. /* [retval][out] */ BSTR *pstrDispositionMessage) = 0;
  627. virtual HRESULT STDMETHODCALLTYPE GetCACertificate(
  628. /* [in] */ LONG fExchangeCertificate,
  629. /* [in] */ const BSTR strConfig,
  630. /* [in] */ LONG Flags,
  631. /* [retval][out] */ BSTR *pstrCertificate) = 0;
  632. virtual HRESULT STDMETHODCALLTYPE GetCertificate(
  633. /* [in] */ LONG Flags,
  634. /* [retval][out] */ BSTR *pstrCertificate) = 0;
  635. };
  636. #else /* C style interface */
  637. typedef struct ICertRequestVtbl
  638. {
  639. BEGIN_INTERFACE
  640. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  641. ICertRequest * This,
  642. /* [in] */ REFIID riid,
  643. /* [iid_is][out] */ void **ppvObject);
  644. ULONG ( STDMETHODCALLTYPE *AddRef )(
  645. ICertRequest * This);
  646. ULONG ( STDMETHODCALLTYPE *Release )(
  647. ICertRequest * This);
  648. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  649. ICertRequest * This,
  650. /* [out] */ UINT *pctinfo);
  651. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  652. ICertRequest * This,
  653. /* [in] */ UINT iTInfo,
  654. /* [in] */ LCID lcid,
  655. /* [out] */ ITypeInfo **ppTInfo);
  656. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  657. ICertRequest * This,
  658. /* [in] */ REFIID riid,
  659. /* [size_is][in] */ LPOLESTR *rgszNames,
  660. /* [in] */ UINT cNames,
  661. /* [in] */ LCID lcid,
  662. /* [size_is][out] */ DISPID *rgDispId);
  663. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  664. ICertRequest * This,
  665. /* [in] */ DISPID dispIdMember,
  666. /* [in] */ REFIID riid,
  667. /* [in] */ LCID lcid,
  668. /* [in] */ WORD wFlags,
  669. /* [out][in] */ DISPPARAMS *pDispParams,
  670. /* [out] */ VARIANT *pVarResult,
  671. /* [out] */ EXCEPINFO *pExcepInfo,
  672. /* [out] */ UINT *puArgErr);
  673. HRESULT ( STDMETHODCALLTYPE *Submit )(
  674. ICertRequest * This,
  675. /* [in] */ LONG Flags,
  676. /* [in] */ const BSTR strRequest,
  677. /* [in] */ const BSTR strAttributes,
  678. /* [in] */ const BSTR strConfig,
  679. /* [retval][out] */ LONG *pDisposition);
  680. HRESULT ( STDMETHODCALLTYPE *RetrievePending )(
  681. ICertRequest * This,
  682. /* [in] */ LONG RequestId,
  683. /* [in] */ const BSTR strConfig,
  684. /* [retval][out] */ LONG *pDisposition);
  685. HRESULT ( STDMETHODCALLTYPE *GetLastStatus )(
  686. ICertRequest * This,
  687. /* [retval][out] */ LONG *pStatus);
  688. HRESULT ( STDMETHODCALLTYPE *GetRequestId )(
  689. ICertRequest * This,
  690. /* [retval][out] */ LONG *pRequestId);
  691. HRESULT ( STDMETHODCALLTYPE *GetDispositionMessage )(
  692. ICertRequest * This,
  693. /* [retval][out] */ BSTR *pstrDispositionMessage);
  694. HRESULT ( STDMETHODCALLTYPE *GetCACertificate )(
  695. ICertRequest * This,
  696. /* [in] */ LONG fExchangeCertificate,
  697. /* [in] */ const BSTR strConfig,
  698. /* [in] */ LONG Flags,
  699. /* [retval][out] */ BSTR *pstrCertificate);
  700. HRESULT ( STDMETHODCALLTYPE *GetCertificate )(
  701. ICertRequest * This,
  702. /* [in] */ LONG Flags,
  703. /* [retval][out] */ BSTR *pstrCertificate);
  704. END_INTERFACE
  705. } ICertRequestVtbl;
  706. interface ICertRequest
  707. {
  708. CONST_VTBL struct ICertRequestVtbl *lpVtbl;
  709. };
  710. #ifdef COBJMACROS
  711. #define ICertRequest_QueryInterface(This,riid,ppvObject) \
  712. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  713. #define ICertRequest_AddRef(This) \
  714. (This)->lpVtbl -> AddRef(This)
  715. #define ICertRequest_Release(This) \
  716. (This)->lpVtbl -> Release(This)
  717. #define ICertRequest_GetTypeInfoCount(This,pctinfo) \
  718. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  719. #define ICertRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  720. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  721. #define ICertRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  722. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  723. #define ICertRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  724. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  725. #define ICertRequest_Submit(This,Flags,strRequest,strAttributes,strConfig,pDisposition) \
  726. (This)->lpVtbl -> Submit(This,Flags,strRequest,strAttributes,strConfig,pDisposition)
  727. #define ICertRequest_RetrievePending(This,RequestId,strConfig,pDisposition) \
  728. (This)->lpVtbl -> RetrievePending(This,RequestId,strConfig,pDisposition)
  729. #define ICertRequest_GetLastStatus(This,pStatus) \
  730. (This)->lpVtbl -> GetLastStatus(This,pStatus)
  731. #define ICertRequest_GetRequestId(This,pRequestId) \
  732. (This)->lpVtbl -> GetRequestId(This,pRequestId)
  733. #define ICertRequest_GetDispositionMessage(This,pstrDispositionMessage) \
  734. (This)->lpVtbl -> GetDispositionMessage(This,pstrDispositionMessage)
  735. #define ICertRequest_GetCACertificate(This,fExchangeCertificate,strConfig,Flags,pstrCertificate) \
  736. (This)->lpVtbl -> GetCACertificate(This,fExchangeCertificate,strConfig,Flags,pstrCertificate)
  737. #define ICertRequest_GetCertificate(This,Flags,pstrCertificate) \
  738. (This)->lpVtbl -> GetCertificate(This,Flags,pstrCertificate)
  739. #endif /* COBJMACROS */
  740. #endif /* C style interface */
  741. HRESULT STDMETHODCALLTYPE ICertRequest_Submit_Proxy(
  742. ICertRequest * This,
  743. /* [in] */ LONG Flags,
  744. /* [in] */ const BSTR strRequest,
  745. /* [in] */ const BSTR strAttributes,
  746. /* [in] */ const BSTR strConfig,
  747. /* [retval][out] */ LONG *pDisposition);
  748. void __RPC_STUB ICertRequest_Submit_Stub(
  749. IRpcStubBuffer *This,
  750. IRpcChannelBuffer *_pRpcChannelBuffer,
  751. PRPC_MESSAGE _pRpcMessage,
  752. DWORD *_pdwStubPhase);
  753. HRESULT STDMETHODCALLTYPE ICertRequest_RetrievePending_Proxy(
  754. ICertRequest * This,
  755. /* [in] */ LONG RequestId,
  756. /* [in] */ const BSTR strConfig,
  757. /* [retval][out] */ LONG *pDisposition);
  758. void __RPC_STUB ICertRequest_RetrievePending_Stub(
  759. IRpcStubBuffer *This,
  760. IRpcChannelBuffer *_pRpcChannelBuffer,
  761. PRPC_MESSAGE _pRpcMessage,
  762. DWORD *_pdwStubPhase);
  763. HRESULT STDMETHODCALLTYPE ICertRequest_GetLastStatus_Proxy(
  764. ICertRequest * This,
  765. /* [retval][out] */ LONG *pStatus);
  766. void __RPC_STUB ICertRequest_GetLastStatus_Stub(
  767. IRpcStubBuffer *This,
  768. IRpcChannelBuffer *_pRpcChannelBuffer,
  769. PRPC_MESSAGE _pRpcMessage,
  770. DWORD *_pdwStubPhase);
  771. HRESULT STDMETHODCALLTYPE ICertRequest_GetRequestId_Proxy(
  772. ICertRequest * This,
  773. /* [retval][out] */ LONG *pRequestId);
  774. void __RPC_STUB ICertRequest_GetRequestId_Stub(
  775. IRpcStubBuffer *This,
  776. IRpcChannelBuffer *_pRpcChannelBuffer,
  777. PRPC_MESSAGE _pRpcMessage,
  778. DWORD *_pdwStubPhase);
  779. HRESULT STDMETHODCALLTYPE ICertRequest_GetDispositionMessage_Proxy(
  780. ICertRequest * This,
  781. /* [retval][out] */ BSTR *pstrDispositionMessage);
  782. void __RPC_STUB ICertRequest_GetDispositionMessage_Stub(
  783. IRpcStubBuffer *This,
  784. IRpcChannelBuffer *_pRpcChannelBuffer,
  785. PRPC_MESSAGE _pRpcMessage,
  786. DWORD *_pdwStubPhase);
  787. HRESULT STDMETHODCALLTYPE ICertRequest_GetCACertificate_Proxy(
  788. ICertRequest * This,
  789. /* [in] */ LONG fExchangeCertificate,
  790. /* [in] */ const BSTR strConfig,
  791. /* [in] */ LONG Flags,
  792. /* [retval][out] */ BSTR *pstrCertificate);
  793. void __RPC_STUB ICertRequest_GetCACertificate_Stub(
  794. IRpcStubBuffer *This,
  795. IRpcChannelBuffer *_pRpcChannelBuffer,
  796. PRPC_MESSAGE _pRpcMessage,
  797. DWORD *_pdwStubPhase);
  798. HRESULT STDMETHODCALLTYPE ICertRequest_GetCertificate_Proxy(
  799. ICertRequest * This,
  800. /* [in] */ LONG Flags,
  801. /* [retval][out] */ BSTR *pstrCertificate);
  802. void __RPC_STUB ICertRequest_GetCertificate_Stub(
  803. IRpcStubBuffer *This,
  804. IRpcChannelBuffer *_pRpcChannelBuffer,
  805. PRPC_MESSAGE _pRpcMessage,
  806. DWORD *_pdwStubPhase);
  807. #endif /* __ICertRequest_INTERFACE_DEFINED__ */
  808. #ifndef __ICertRequest2_INTERFACE_DEFINED__
  809. #define __ICertRequest2_INTERFACE_DEFINED__
  810. /* interface ICertRequest2 */
  811. /* [unique][helpstring][dual][uuid][object] */
  812. EXTERN_C const IID IID_ICertRequest2;
  813. #if defined(__cplusplus) && !defined(CINTERFACE)
  814. MIDL_INTERFACE("a4772988-4a85-4fa9-824e-b5cf5c16405a")
  815. ICertRequest2 : public ICertRequest
  816. {
  817. public:
  818. virtual HRESULT STDMETHODCALLTYPE GetIssuedCertificate(
  819. /* [in] */ const BSTR strConfig,
  820. /* [in] */ LONG RequestId,
  821. /* [in] */ const BSTR strSerialNumber,
  822. /* [retval][out] */ LONG *pDisposition) = 0;
  823. virtual HRESULT STDMETHODCALLTYPE GetErrorMessageText(
  824. /* [in] */ LONG hrMessage,
  825. /* [in] */ LONG Flags,
  826. /* [retval][out] */ BSTR *pstrErrorMessageText) = 0;
  827. virtual HRESULT STDMETHODCALLTYPE GetCAProperty(
  828. /* [in] */ const BSTR strConfig,
  829. /* [in] */ LONG PropId,
  830. /* [in] */ LONG PropIndex,
  831. /* [in] */ LONG PropType,
  832. /* [in] */ LONG Flags,
  833. /* [retval][out] */ VARIANT *pvarPropertyValue) = 0;
  834. virtual HRESULT STDMETHODCALLTYPE GetCAPropertyFlags(
  835. /* [in] */ const BSTR strConfig,
  836. /* [in] */ LONG PropId,
  837. /* [retval][out] */ LONG *pPropFlags) = 0;
  838. virtual HRESULT STDMETHODCALLTYPE GetCAPropertyDisplayName(
  839. /* [in] */ const BSTR strConfig,
  840. /* [in] */ LONG PropId,
  841. /* [retval][out] */ BSTR *pstrDisplayName) = 0;
  842. virtual HRESULT STDMETHODCALLTYPE GetFullResponseProperty(
  843. /* [in] */ LONG PropId,
  844. /* [in] */ LONG PropIndex,
  845. /* [in] */ LONG PropType,
  846. /* [in] */ LONG Flags,
  847. /* [retval][out] */ VARIANT *pvarPropertyValue) = 0;
  848. };
  849. #else /* C style interface */
  850. typedef struct ICertRequest2Vtbl
  851. {
  852. BEGIN_INTERFACE
  853. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  854. ICertRequest2 * This,
  855. /* [in] */ REFIID riid,
  856. /* [iid_is][out] */ void **ppvObject);
  857. ULONG ( STDMETHODCALLTYPE *AddRef )(
  858. ICertRequest2 * This);
  859. ULONG ( STDMETHODCALLTYPE *Release )(
  860. ICertRequest2 * This);
  861. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  862. ICertRequest2 * This,
  863. /* [out] */ UINT *pctinfo);
  864. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  865. ICertRequest2 * This,
  866. /* [in] */ UINT iTInfo,
  867. /* [in] */ LCID lcid,
  868. /* [out] */ ITypeInfo **ppTInfo);
  869. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  870. ICertRequest2 * This,
  871. /* [in] */ REFIID riid,
  872. /* [size_is][in] */ LPOLESTR *rgszNames,
  873. /* [in] */ UINT cNames,
  874. /* [in] */ LCID lcid,
  875. /* [size_is][out] */ DISPID *rgDispId);
  876. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  877. ICertRequest2 * This,
  878. /* [in] */ DISPID dispIdMember,
  879. /* [in] */ REFIID riid,
  880. /* [in] */ LCID lcid,
  881. /* [in] */ WORD wFlags,
  882. /* [out][in] */ DISPPARAMS *pDispParams,
  883. /* [out] */ VARIANT *pVarResult,
  884. /* [out] */ EXCEPINFO *pExcepInfo,
  885. /* [out] */ UINT *puArgErr);
  886. HRESULT ( STDMETHODCALLTYPE *Submit )(
  887. ICertRequest2 * This,
  888. /* [in] */ LONG Flags,
  889. /* [in] */ const BSTR strRequest,
  890. /* [in] */ const BSTR strAttributes,
  891. /* [in] */ const BSTR strConfig,
  892. /* [retval][out] */ LONG *pDisposition);
  893. HRESULT ( STDMETHODCALLTYPE *RetrievePending )(
  894. ICertRequest2 * This,
  895. /* [in] */ LONG RequestId,
  896. /* [in] */ const BSTR strConfig,
  897. /* [retval][out] */ LONG *pDisposition);
  898. HRESULT ( STDMETHODCALLTYPE *GetLastStatus )(
  899. ICertRequest2 * This,
  900. /* [retval][out] */ LONG *pStatus);
  901. HRESULT ( STDMETHODCALLTYPE *GetRequestId )(
  902. ICertRequest2 * This,
  903. /* [retval][out] */ LONG *pRequestId);
  904. HRESULT ( STDMETHODCALLTYPE *GetDispositionMessage )(
  905. ICertRequest2 * This,
  906. /* [retval][out] */ BSTR *pstrDispositionMessage);
  907. HRESULT ( STDMETHODCALLTYPE *GetCACertificate )(
  908. ICertRequest2 * This,
  909. /* [in] */ LONG fExchangeCertificate,
  910. /* [in] */ const BSTR strConfig,
  911. /* [in] */ LONG Flags,
  912. /* [retval][out] */ BSTR *pstrCertificate);
  913. HRESULT ( STDMETHODCALLTYPE *GetCertificate )(
  914. ICertRequest2 * This,
  915. /* [in] */ LONG Flags,
  916. /* [retval][out] */ BSTR *pstrCertificate);
  917. HRESULT ( STDMETHODCALLTYPE *GetIssuedCertificate )(
  918. ICertRequest2 * This,
  919. /* [in] */ const BSTR strConfig,
  920. /* [in] */ LONG RequestId,
  921. /* [in] */ const BSTR strSerialNumber,
  922. /* [retval][out] */ LONG *pDisposition);
  923. HRESULT ( STDMETHODCALLTYPE *GetErrorMessageText )(
  924. ICertRequest2 * This,
  925. /* [in] */ LONG hrMessage,
  926. /* [in] */ LONG Flags,
  927. /* [retval][out] */ BSTR *pstrErrorMessageText);
  928. HRESULT ( STDMETHODCALLTYPE *GetCAProperty )(
  929. ICertRequest2 * This,
  930. /* [in] */ const BSTR strConfig,
  931. /* [in] */ LONG PropId,
  932. /* [in] */ LONG PropIndex,
  933. /* [in] */ LONG PropType,
  934. /* [in] */ LONG Flags,
  935. /* [retval][out] */ VARIANT *pvarPropertyValue);
  936. HRESULT ( STDMETHODCALLTYPE *GetCAPropertyFlags )(
  937. ICertRequest2 * This,
  938. /* [in] */ const BSTR strConfig,
  939. /* [in] */ LONG PropId,
  940. /* [retval][out] */ LONG *pPropFlags);
  941. HRESULT ( STDMETHODCALLTYPE *GetCAPropertyDisplayName )(
  942. ICertRequest2 * This,
  943. /* [in] */ const BSTR strConfig,
  944. /* [in] */ LONG PropId,
  945. /* [retval][out] */ BSTR *pstrDisplayName);
  946. HRESULT ( STDMETHODCALLTYPE *GetFullResponseProperty )(
  947. ICertRequest2 * This,
  948. /* [in] */ LONG PropId,
  949. /* [in] */ LONG PropIndex,
  950. /* [in] */ LONG PropType,
  951. /* [in] */ LONG Flags,
  952. /* [retval][out] */ VARIANT *pvarPropertyValue);
  953. END_INTERFACE
  954. } ICertRequest2Vtbl;
  955. interface ICertRequest2
  956. {
  957. CONST_VTBL struct ICertRequest2Vtbl *lpVtbl;
  958. };
  959. #ifdef COBJMACROS
  960. #define ICertRequest2_QueryInterface(This,riid,ppvObject) \
  961. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  962. #define ICertRequest2_AddRef(This) \
  963. (This)->lpVtbl -> AddRef(This)
  964. #define ICertRequest2_Release(This) \
  965. (This)->lpVtbl -> Release(This)
  966. #define ICertRequest2_GetTypeInfoCount(This,pctinfo) \
  967. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  968. #define ICertRequest2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  969. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  970. #define ICertRequest2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  971. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  972. #define ICertRequest2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  973. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  974. #define ICertRequest2_Submit(This,Flags,strRequest,strAttributes,strConfig,pDisposition) \
  975. (This)->lpVtbl -> Submit(This,Flags,strRequest,strAttributes,strConfig,pDisposition)
  976. #define ICertRequest2_RetrievePending(This,RequestId,strConfig,pDisposition) \
  977. (This)->lpVtbl -> RetrievePending(This,RequestId,strConfig,pDisposition)
  978. #define ICertRequest2_GetLastStatus(This,pStatus) \
  979. (This)->lpVtbl -> GetLastStatus(This,pStatus)
  980. #define ICertRequest2_GetRequestId(This,pRequestId) \
  981. (This)->lpVtbl -> GetRequestId(This,pRequestId)
  982. #define ICertRequest2_GetDispositionMessage(This,pstrDispositionMessage) \
  983. (This)->lpVtbl -> GetDispositionMessage(This,pstrDispositionMessage)
  984. #define ICertRequest2_GetCACertificate(This,fExchangeCertificate,strConfig,Flags,pstrCertificate) \
  985. (This)->lpVtbl -> GetCACertificate(This,fExchangeCertificate,strConfig,Flags,pstrCertificate)
  986. #define ICertRequest2_GetCertificate(This,Flags,pstrCertificate) \
  987. (This)->lpVtbl -> GetCertificate(This,Flags,pstrCertificate)
  988. #define ICertRequest2_GetIssuedCertificate(This,strConfig,RequestId,strSerialNumber,pDisposition) \
  989. (This)->lpVtbl -> GetIssuedCertificate(This,strConfig,RequestId,strSerialNumber,pDisposition)
  990. #define ICertRequest2_GetErrorMessageText(This,hrMessage,Flags,pstrErrorMessageText) \
  991. (This)->lpVtbl -> GetErrorMessageText(This,hrMessage,Flags,pstrErrorMessageText)
  992. #define ICertRequest2_GetCAProperty(This,strConfig,PropId,PropIndex,PropType,Flags,pvarPropertyValue) \
  993. (This)->lpVtbl -> GetCAProperty(This,strConfig,PropId,PropIndex,PropType,Flags,pvarPropertyValue)
  994. #define ICertRequest2_GetCAPropertyFlags(This,strConfig,PropId,pPropFlags) \
  995. (This)->lpVtbl -> GetCAPropertyFlags(This,strConfig,PropId,pPropFlags)
  996. #define ICertRequest2_GetCAPropertyDisplayName(This,strConfig,PropId,pstrDisplayName) \
  997. (This)->lpVtbl -> GetCAPropertyDisplayName(This,strConfig,PropId,pstrDisplayName)
  998. #define ICertRequest2_GetFullResponseProperty(This,PropId,PropIndex,PropType,Flags,pvarPropertyValue) \
  999. (This)->lpVtbl -> GetFullResponseProperty(This,PropId,PropIndex,PropType,Flags,pvarPropertyValue)
  1000. #endif /* COBJMACROS */
  1001. #endif /* C style interface */
  1002. HRESULT STDMETHODCALLTYPE ICertRequest2_GetIssuedCertificate_Proxy(
  1003. ICertRequest2 * This,
  1004. /* [in] */ const BSTR strConfig,
  1005. /* [in] */ LONG RequestId,
  1006. /* [in] */ const BSTR strSerialNumber,
  1007. /* [retval][out] */ LONG *pDisposition);
  1008. void __RPC_STUB ICertRequest2_GetIssuedCertificate_Stub(
  1009. IRpcStubBuffer *This,
  1010. IRpcChannelBuffer *_pRpcChannelBuffer,
  1011. PRPC_MESSAGE _pRpcMessage,
  1012. DWORD *_pdwStubPhase);
  1013. HRESULT STDMETHODCALLTYPE ICertRequest2_GetErrorMessageText_Proxy(
  1014. ICertRequest2 * This,
  1015. /* [in] */ LONG hrMessage,
  1016. /* [in] */ LONG Flags,
  1017. /* [retval][out] */ BSTR *pstrErrorMessageText);
  1018. void __RPC_STUB ICertRequest2_GetErrorMessageText_Stub(
  1019. IRpcStubBuffer *This,
  1020. IRpcChannelBuffer *_pRpcChannelBuffer,
  1021. PRPC_MESSAGE _pRpcMessage,
  1022. DWORD *_pdwStubPhase);
  1023. HRESULT STDMETHODCALLTYPE ICertRequest2_GetCAProperty_Proxy(
  1024. ICertRequest2 * This,
  1025. /* [in] */ const BSTR strConfig,
  1026. /* [in] */ LONG PropId,
  1027. /* [in] */ LONG PropIndex,
  1028. /* [in] */ LONG PropType,
  1029. /* [in] */ LONG Flags,
  1030. /* [retval][out] */ VARIANT *pvarPropertyValue);
  1031. void __RPC_STUB ICertRequest2_GetCAProperty_Stub(
  1032. IRpcStubBuffer *This,
  1033. IRpcChannelBuffer *_pRpcChannelBuffer,
  1034. PRPC_MESSAGE _pRpcMessage,
  1035. DWORD *_pdwStubPhase);
  1036. HRESULT STDMETHODCALLTYPE ICertRequest2_GetCAPropertyFlags_Proxy(
  1037. ICertRequest2 * This,
  1038. /* [in] */ const BSTR strConfig,
  1039. /* [in] */ LONG PropId,
  1040. /* [retval][out] */ LONG *pPropFlags);
  1041. void __RPC_STUB ICertRequest2_GetCAPropertyFlags_Stub(
  1042. IRpcStubBuffer *This,
  1043. IRpcChannelBuffer *_pRpcChannelBuffer,
  1044. PRPC_MESSAGE _pRpcMessage,
  1045. DWORD *_pdwStubPhase);
  1046. HRESULT STDMETHODCALLTYPE ICertRequest2_GetCAPropertyDisplayName_Proxy(
  1047. ICertRequest2 * This,
  1048. /* [in] */ const BSTR strConfig,
  1049. /* [in] */ LONG PropId,
  1050. /* [retval][out] */ BSTR *pstrDisplayName);
  1051. void __RPC_STUB ICertRequest2_GetCAPropertyDisplayName_Stub(
  1052. IRpcStubBuffer *This,
  1053. IRpcChannelBuffer *_pRpcChannelBuffer,
  1054. PRPC_MESSAGE _pRpcMessage,
  1055. DWORD *_pdwStubPhase);
  1056. HRESULT STDMETHODCALLTYPE ICertRequest2_GetFullResponseProperty_Proxy(
  1057. ICertRequest2 * This,
  1058. /* [in] */ LONG PropId,
  1059. /* [in] */ LONG PropIndex,
  1060. /* [in] */ LONG PropType,
  1061. /* [in] */ LONG Flags,
  1062. /* [retval][out] */ VARIANT *pvarPropertyValue);
  1063. void __RPC_STUB ICertRequest2_GetFullResponseProperty_Stub(
  1064. IRpcStubBuffer *This,
  1065. IRpcChannelBuffer *_pRpcChannelBuffer,
  1066. PRPC_MESSAGE _pRpcMessage,
  1067. DWORD *_pdwStubPhase);
  1068. #endif /* __ICertRequest2_INTERFACE_DEFINED__ */
  1069. #ifndef __CERTCLIENTLib_LIBRARY_DEFINED__
  1070. #define __CERTCLIENTLib_LIBRARY_DEFINED__
  1071. /* library CERTCLIENTLib */
  1072. /* [helpstring][version][uuid] */
  1073. EXTERN_C const IID LIBID_CERTCLIENTLib;
  1074. EXTERN_C const CLSID CLSID_CCertGetConfig;
  1075. #ifdef __cplusplus
  1076. class DECLSPEC_UUID("c6cc49b0-ce17-11d0-8833-00a0c903b83c")
  1077. CCertGetConfig;
  1078. #endif
  1079. EXTERN_C const CLSID CLSID_CCertConfig;
  1080. #ifdef __cplusplus
  1081. class DECLSPEC_UUID("372fce38-4324-11d0-8810-00a0c903b83c")
  1082. CCertConfig;
  1083. #endif
  1084. EXTERN_C const CLSID CLSID_CCertRequest;
  1085. #ifdef __cplusplus
  1086. class DECLSPEC_UUID("98aff3f0-5524-11d0-8812-00a0c903b83c")
  1087. CCertRequest;
  1088. #endif
  1089. EXTERN_C const CLSID CLSID_CCertServerPolicy;
  1090. #ifdef __cplusplus
  1091. class DECLSPEC_UUID("aa000926-ffbe-11cf-8800-00a0c903b83c")
  1092. CCertServerPolicy;
  1093. #endif
  1094. EXTERN_C const CLSID CLSID_CCertServerExit;
  1095. #ifdef __cplusplus
  1096. class DECLSPEC_UUID("4c4a5e40-732c-11d0-8816-00a0c903b83c")
  1097. CCertServerExit;
  1098. #endif
  1099. #endif /* __CERTCLIENTLib_LIBRARY_DEFINED__ */
  1100. /* Additional Prototypes for ALL interfaces */
  1101. unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  1102. unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  1103. unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
  1104. void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
  1105. unsigned long __RPC_USER VARIANT_UserSize( unsigned long *, unsigned long , VARIANT * );
  1106. unsigned char * __RPC_USER VARIANT_UserMarshal( unsigned long *, unsigned char *, VARIANT * );
  1107. unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * );
  1108. void __RPC_USER VARIANT_UserFree( unsigned long *, VARIANT * );
  1109. /* end of Additional Prototypes */
  1110. #ifdef __cplusplus
  1111. }
  1112. #endif
  1113. #endif