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.

1533 lines
46 KiB

  1. #pragma warning( disable: 4049 ) /* more than 64k source lines */
  2. /* this ALWAYS GENERATED file contains the definitions for the interfaces */
  3. /* File created by MIDL compiler version 6.00.0347 */
  4. /* Compiler settings for certcli.idl:
  5. Oicf, W1, Zp8, env=Win32 (32b run)
  6. protocol : dce , ms_ext, c_ext, robust
  7. error checks: allocation ref bounds_check enum stub_data
  8. VC __declspec() decoration level:
  9. __declspec(uuid()), __declspec(selectany), __declspec(novtable)
  10. DECLSPEC_UUID(), MIDL_INTERFACE()
  11. */
  12. //@@MIDL_FILE_HEADING( )
  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_0118 */
  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_0118_v0_0_c_ifspec;
  215. extern RPC_IF_HANDLE __MIDL_itf_certcli_0118_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_0120 */
  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 CR_DISP_INCOMPLETE ( 0 )
  489. #define CR_DISP_ERROR ( 0x1 )
  490. #define CR_DISP_DENIED ( 0x2 )
  491. #define CR_DISP_ISSUED ( 0x3 )
  492. #define CR_DISP_ISSUED_OUT_OF_BAND ( 0x4 )
  493. #define CR_DISP_UNDER_SUBMISSION ( 0x5 )
  494. #define CR_DISP_REVOKED ( 0x6 )
  495. #define CR_OUT_BASE64HEADER ( 0 )
  496. #define CR_OUT_BASE64 ( 0x1 )
  497. #define CR_OUT_BINARY ( 0x2 )
  498. #define CR_OUT_ENCODEMASK ( 0xff )
  499. #define CR_OUT_CHAIN ( 0x100 )
  500. #define CR_OUT_CRLS ( 0x200 )
  501. #define CR_GEMT_HRESULT_STRING ( 0x1 )
  502. #define CR_PROP_NONE 0 // Invalid
  503. #define CR_PROP_FILEVERSION 1 // String
  504. #define CR_PROP_PRODUCTVERSION 2 // String
  505. #define CR_PROP_EXITCOUNT 3 // Long
  506. #define CR_PROP_EXITDESCRIPTION 4 // String, Indexed
  507. #define CR_PROP_POLICYDESCRIPTION 5 // String
  508. #define CR_PROP_CANAME 6 // String
  509. #define CR_PROP_SANITIZEDCANAME 7 // String
  510. #define CR_PROP_SHAREDFOLDER 8 // String
  511. #define CR_PROP_PARENTCA 9 // String
  512. #define CR_PROP_CATYPE 10 // Long
  513. #define CR_PROP_CASIGCERTCOUNT 11 // Long
  514. #define CR_PROP_CASIGCERT 12 // Binary, Indexed
  515. #define CR_PROP_CASIGCERTCHAIN 13 // Binary, Indexed
  516. #define CR_PROP_CAXCHGCERTCOUNT 14 // Long
  517. #define CR_PROP_CAXCHGCERT 15 // Binary, Indexed
  518. #define CR_PROP_CAXCHGCERTCHAIN 16 // Binary, Indexed
  519. #define CR_PROP_BASECRL 17 // Binary, Indexed
  520. #define CR_PROP_DELTACRL 18 // Binary, Indexed
  521. #define CR_PROP_CACERTSTATE 19 // Long, Indexed
  522. #define CR_PROP_CRLSTATE 20 // Long, Indexed
  523. #define CR_PROP_CAPROPIDMAX 21 // Long
  524. #define CR_PROP_DNSNAME 22 // String
  525. #define CR_PROP_ROLESEPARATIONENABLED 23 // Long
  526. #define CR_PROP_KRACERTUSEDCOUNT 24 // Long
  527. #define CR_PROP_KRACERTCOUNT 25 // Long
  528. #define CR_PROP_KRACERT 26 // Binary, Indexed
  529. #define CR_PROP_KRACERTSTATE 27 // Long, Indexed
  530. #define CR_PROP_ADVANCEDSERVER 28 // Long
  531. #define CR_PROP_TEMPLATES 29 // String
  532. #define CR_PROP_BASECRLPUBLISHSTATUS 30 // Long, Indexed
  533. #define CR_PROP_DELTACRLPUBLISHSTATUS 31 // Long, Indexed
  534. #define CR_PROP_CASIGCERTCRLCHAIN 32 // Binary, Indexed
  535. #define CR_PROP_CAXCHGCERTCRLCHAIN 33 // Binary, Indexed
  536. #define CR_PROP_CACERTSTATUSCODE 34 // Long, Indexed
  537. #define FR_PROP_NONE 0 // Invalid
  538. #define FR_PROP_FULLRESPONSE 1 // Binary
  539. #define FR_PROP_STATUSINFOCOUNT 2 // Long
  540. #define FR_PROP_BODYPARTSTRING 3 // String, Indexed
  541. #define FR_PROP_STATUS 4 // Long, Indexed
  542. #define FR_PROP_STATUSSTRING 5 // String, Indexed
  543. #define FR_PROP_OTHERINFOCHOICE 6 // Long, Indexed
  544. #define FR_PROP_FAILINFO 7 // Long, Indexed
  545. #define FR_PROP_PENDINFOTOKEN 8 // Binary, Indexed
  546. #define FR_PROP_PENDINFOTIME 9 // Date, Indexed
  547. #define FR_PROP_ISSUEDCERTIFICATEHASH 10 // Binary, Indexed
  548. #define FR_PROP_ISSUEDCERTIFICATE 11 // Binary, Indexed
  549. #define FR_PROP_ISSUEDCERTIFICATECHAIN 12 // Binary, Indexed
  550. #define FR_PROP_ISSUEDCERTIFICATECRLCHAIN 13 // Binary, Indexed
  551. #define FR_PROP_ENCRYPTEDKEYHASH 14 // Binary, Indexed
  552. #define FR_PROP_FULLRESPONSENOPKCS7 15 // Binary
  553. extern RPC_IF_HANDLE __MIDL_itf_certcli_0120_v0_0_c_ifspec;
  554. extern RPC_IF_HANDLE __MIDL_itf_certcli_0120_v0_0_s_ifspec;
  555. #ifndef __ICertRequest_INTERFACE_DEFINED__
  556. #define __ICertRequest_INTERFACE_DEFINED__
  557. /* interface ICertRequest */
  558. /* [unique][helpstring][dual][uuid][object] */
  559. EXTERN_C const IID IID_ICertRequest;
  560. #if defined(__cplusplus) && !defined(CINTERFACE)
  561. MIDL_INTERFACE("014e4840-5523-11d0-8812-00a0c903b83c")
  562. ICertRequest : public IDispatch
  563. {
  564. public:
  565. virtual HRESULT STDMETHODCALLTYPE Submit(
  566. /* [in] */ LONG Flags,
  567. /* [in] */ const BSTR strRequest,
  568. /* [in] */ const BSTR strAttributes,
  569. /* [in] */ const BSTR strConfig,
  570. /* [retval][out] */ LONG *pDisposition) = 0;
  571. virtual HRESULT STDMETHODCALLTYPE RetrievePending(
  572. /* [in] */ LONG RequestId,
  573. /* [in] */ const BSTR strConfig,
  574. /* [retval][out] */ LONG *pDisposition) = 0;
  575. virtual HRESULT STDMETHODCALLTYPE GetLastStatus(
  576. /* [retval][out] */ LONG *pStatus) = 0;
  577. virtual HRESULT STDMETHODCALLTYPE GetRequestId(
  578. /* [retval][out] */ LONG *pRequestId) = 0;
  579. virtual HRESULT STDMETHODCALLTYPE GetDispositionMessage(
  580. /* [retval][out] */ BSTR *pstrDispositionMessage) = 0;
  581. virtual HRESULT STDMETHODCALLTYPE GetCACertificate(
  582. /* [in] */ LONG fExchangeCertificate,
  583. /* [in] */ const BSTR strConfig,
  584. /* [in] */ LONG Flags,
  585. /* [retval][out] */ BSTR *pstrCertificate) = 0;
  586. virtual HRESULT STDMETHODCALLTYPE GetCertificate(
  587. /* [in] */ LONG Flags,
  588. /* [retval][out] */ BSTR *pstrCertificate) = 0;
  589. };
  590. #else /* C style interface */
  591. typedef struct ICertRequestVtbl
  592. {
  593. BEGIN_INTERFACE
  594. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  595. ICertRequest * This,
  596. /* [in] */ REFIID riid,
  597. /* [iid_is][out] */ void **ppvObject);
  598. ULONG ( STDMETHODCALLTYPE *AddRef )(
  599. ICertRequest * This);
  600. ULONG ( STDMETHODCALLTYPE *Release )(
  601. ICertRequest * This);
  602. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  603. ICertRequest * This,
  604. /* [out] */ UINT *pctinfo);
  605. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  606. ICertRequest * This,
  607. /* [in] */ UINT iTInfo,
  608. /* [in] */ LCID lcid,
  609. /* [out] */ ITypeInfo **ppTInfo);
  610. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  611. ICertRequest * This,
  612. /* [in] */ REFIID riid,
  613. /* [size_is][in] */ LPOLESTR *rgszNames,
  614. /* [in] */ UINT cNames,
  615. /* [in] */ LCID lcid,
  616. /* [size_is][out] */ DISPID *rgDispId);
  617. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  618. ICertRequest * This,
  619. /* [in] */ DISPID dispIdMember,
  620. /* [in] */ REFIID riid,
  621. /* [in] */ LCID lcid,
  622. /* [in] */ WORD wFlags,
  623. /* [out][in] */ DISPPARAMS *pDispParams,
  624. /* [out] */ VARIANT *pVarResult,
  625. /* [out] */ EXCEPINFO *pExcepInfo,
  626. /* [out] */ UINT *puArgErr);
  627. HRESULT ( STDMETHODCALLTYPE *Submit )(
  628. ICertRequest * This,
  629. /* [in] */ LONG Flags,
  630. /* [in] */ const BSTR strRequest,
  631. /* [in] */ const BSTR strAttributes,
  632. /* [in] */ const BSTR strConfig,
  633. /* [retval][out] */ LONG *pDisposition);
  634. HRESULT ( STDMETHODCALLTYPE *RetrievePending )(
  635. ICertRequest * This,
  636. /* [in] */ LONG RequestId,
  637. /* [in] */ const BSTR strConfig,
  638. /* [retval][out] */ LONG *pDisposition);
  639. HRESULT ( STDMETHODCALLTYPE *GetLastStatus )(
  640. ICertRequest * This,
  641. /* [retval][out] */ LONG *pStatus);
  642. HRESULT ( STDMETHODCALLTYPE *GetRequestId )(
  643. ICertRequest * This,
  644. /* [retval][out] */ LONG *pRequestId);
  645. HRESULT ( STDMETHODCALLTYPE *GetDispositionMessage )(
  646. ICertRequest * This,
  647. /* [retval][out] */ BSTR *pstrDispositionMessage);
  648. HRESULT ( STDMETHODCALLTYPE *GetCACertificate )(
  649. ICertRequest * This,
  650. /* [in] */ LONG fExchangeCertificate,
  651. /* [in] */ const BSTR strConfig,
  652. /* [in] */ LONG Flags,
  653. /* [retval][out] */ BSTR *pstrCertificate);
  654. HRESULT ( STDMETHODCALLTYPE *GetCertificate )(
  655. ICertRequest * This,
  656. /* [in] */ LONG Flags,
  657. /* [retval][out] */ BSTR *pstrCertificate);
  658. END_INTERFACE
  659. } ICertRequestVtbl;
  660. interface ICertRequest
  661. {
  662. CONST_VTBL struct ICertRequestVtbl *lpVtbl;
  663. };
  664. #ifdef COBJMACROS
  665. #define ICertRequest_QueryInterface(This,riid,ppvObject) \
  666. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  667. #define ICertRequest_AddRef(This) \
  668. (This)->lpVtbl -> AddRef(This)
  669. #define ICertRequest_Release(This) \
  670. (This)->lpVtbl -> Release(This)
  671. #define ICertRequest_GetTypeInfoCount(This,pctinfo) \
  672. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  673. #define ICertRequest_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  674. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  675. #define ICertRequest_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  676. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  677. #define ICertRequest_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  678. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  679. #define ICertRequest_Submit(This,Flags,strRequest,strAttributes,strConfig,pDisposition) \
  680. (This)->lpVtbl -> Submit(This,Flags,strRequest,strAttributes,strConfig,pDisposition)
  681. #define ICertRequest_RetrievePending(This,RequestId,strConfig,pDisposition) \
  682. (This)->lpVtbl -> RetrievePending(This,RequestId,strConfig,pDisposition)
  683. #define ICertRequest_GetLastStatus(This,pStatus) \
  684. (This)->lpVtbl -> GetLastStatus(This,pStatus)
  685. #define ICertRequest_GetRequestId(This,pRequestId) \
  686. (This)->lpVtbl -> GetRequestId(This,pRequestId)
  687. #define ICertRequest_GetDispositionMessage(This,pstrDispositionMessage) \
  688. (This)->lpVtbl -> GetDispositionMessage(This,pstrDispositionMessage)
  689. #define ICertRequest_GetCACertificate(This,fExchangeCertificate,strConfig,Flags,pstrCertificate) \
  690. (This)->lpVtbl -> GetCACertificate(This,fExchangeCertificate,strConfig,Flags,pstrCertificate)
  691. #define ICertRequest_GetCertificate(This,Flags,pstrCertificate) \
  692. (This)->lpVtbl -> GetCertificate(This,Flags,pstrCertificate)
  693. #endif /* COBJMACROS */
  694. #endif /* C style interface */
  695. HRESULT STDMETHODCALLTYPE ICertRequest_Submit_Proxy(
  696. ICertRequest * This,
  697. /* [in] */ LONG Flags,
  698. /* [in] */ const BSTR strRequest,
  699. /* [in] */ const BSTR strAttributes,
  700. /* [in] */ const BSTR strConfig,
  701. /* [retval][out] */ LONG *pDisposition);
  702. void __RPC_STUB ICertRequest_Submit_Stub(
  703. IRpcStubBuffer *This,
  704. IRpcChannelBuffer *_pRpcChannelBuffer,
  705. PRPC_MESSAGE _pRpcMessage,
  706. DWORD *_pdwStubPhase);
  707. HRESULT STDMETHODCALLTYPE ICertRequest_RetrievePending_Proxy(
  708. ICertRequest * This,
  709. /* [in] */ LONG RequestId,
  710. /* [in] */ const BSTR strConfig,
  711. /* [retval][out] */ LONG *pDisposition);
  712. void __RPC_STUB ICertRequest_RetrievePending_Stub(
  713. IRpcStubBuffer *This,
  714. IRpcChannelBuffer *_pRpcChannelBuffer,
  715. PRPC_MESSAGE _pRpcMessage,
  716. DWORD *_pdwStubPhase);
  717. HRESULT STDMETHODCALLTYPE ICertRequest_GetLastStatus_Proxy(
  718. ICertRequest * This,
  719. /* [retval][out] */ LONG *pStatus);
  720. void __RPC_STUB ICertRequest_GetLastStatus_Stub(
  721. IRpcStubBuffer *This,
  722. IRpcChannelBuffer *_pRpcChannelBuffer,
  723. PRPC_MESSAGE _pRpcMessage,
  724. DWORD *_pdwStubPhase);
  725. HRESULT STDMETHODCALLTYPE ICertRequest_GetRequestId_Proxy(
  726. ICertRequest * This,
  727. /* [retval][out] */ LONG *pRequestId);
  728. void __RPC_STUB ICertRequest_GetRequestId_Stub(
  729. IRpcStubBuffer *This,
  730. IRpcChannelBuffer *_pRpcChannelBuffer,
  731. PRPC_MESSAGE _pRpcMessage,
  732. DWORD *_pdwStubPhase);
  733. HRESULT STDMETHODCALLTYPE ICertRequest_GetDispositionMessage_Proxy(
  734. ICertRequest * This,
  735. /* [retval][out] */ BSTR *pstrDispositionMessage);
  736. void __RPC_STUB ICertRequest_GetDispositionMessage_Stub(
  737. IRpcStubBuffer *This,
  738. IRpcChannelBuffer *_pRpcChannelBuffer,
  739. PRPC_MESSAGE _pRpcMessage,
  740. DWORD *_pdwStubPhase);
  741. HRESULT STDMETHODCALLTYPE ICertRequest_GetCACertificate_Proxy(
  742. ICertRequest * This,
  743. /* [in] */ LONG fExchangeCertificate,
  744. /* [in] */ const BSTR strConfig,
  745. /* [in] */ LONG Flags,
  746. /* [retval][out] */ BSTR *pstrCertificate);
  747. void __RPC_STUB ICertRequest_GetCACertificate_Stub(
  748. IRpcStubBuffer *This,
  749. IRpcChannelBuffer *_pRpcChannelBuffer,
  750. PRPC_MESSAGE _pRpcMessage,
  751. DWORD *_pdwStubPhase);
  752. HRESULT STDMETHODCALLTYPE ICertRequest_GetCertificate_Proxy(
  753. ICertRequest * This,
  754. /* [in] */ LONG Flags,
  755. /* [retval][out] */ BSTR *pstrCertificate);
  756. void __RPC_STUB ICertRequest_GetCertificate_Stub(
  757. IRpcStubBuffer *This,
  758. IRpcChannelBuffer *_pRpcChannelBuffer,
  759. PRPC_MESSAGE _pRpcMessage,
  760. DWORD *_pdwStubPhase);
  761. #endif /* __ICertRequest_INTERFACE_DEFINED__ */
  762. #ifndef __ICertRequest2_INTERFACE_DEFINED__
  763. #define __ICertRequest2_INTERFACE_DEFINED__
  764. /* interface ICertRequest2 */
  765. /* [unique][helpstring][dual][uuid][object] */
  766. EXTERN_C const IID IID_ICertRequest2;
  767. #if defined(__cplusplus) && !defined(CINTERFACE)
  768. MIDL_INTERFACE("a4772988-4a85-4fa9-824e-b5cf5c16405a")
  769. ICertRequest2 : public ICertRequest
  770. {
  771. public:
  772. virtual HRESULT STDMETHODCALLTYPE GetIssuedCertificate(
  773. /* [in] */ const BSTR strConfig,
  774. /* [in] */ LONG RequestId,
  775. /* [in] */ const BSTR strSerialNumber,
  776. /* [retval][out] */ LONG *pDisposition) = 0;
  777. virtual HRESULT STDMETHODCALLTYPE GetErrorMessageText(
  778. /* [in] */ LONG hrMessage,
  779. /* [in] */ LONG Flags,
  780. /* [retval][out] */ BSTR *pstrErrorMessageText) = 0;
  781. virtual HRESULT STDMETHODCALLTYPE GetCAProperty(
  782. /* [in] */ const BSTR strConfig,
  783. /* [in] */ LONG PropId,
  784. /* [in] */ LONG PropIndex,
  785. /* [in] */ LONG PropType,
  786. /* [in] */ LONG Flags,
  787. /* [retval][out] */ VARIANT *pvarPropertyValue) = 0;
  788. virtual HRESULT STDMETHODCALLTYPE GetCAPropertyFlags(
  789. /* [in] */ const BSTR strConfig,
  790. /* [in] */ LONG PropId,
  791. /* [retval][out] */ LONG *pPropFlags) = 0;
  792. virtual HRESULT STDMETHODCALLTYPE GetCAPropertyDisplayName(
  793. /* [in] */ const BSTR strConfig,
  794. /* [in] */ LONG PropId,
  795. /* [retval][out] */ BSTR *pstrDisplayName) = 0;
  796. virtual HRESULT STDMETHODCALLTYPE GetFullResponseProperty(
  797. /* [in] */ LONG PropId,
  798. /* [in] */ LONG PropIndex,
  799. /* [in] */ LONG PropType,
  800. /* [in] */ LONG Flags,
  801. /* [retval][out] */ VARIANT *pvarPropertyValue) = 0;
  802. };
  803. #else /* C style interface */
  804. typedef struct ICertRequest2Vtbl
  805. {
  806. BEGIN_INTERFACE
  807. HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
  808. ICertRequest2 * This,
  809. /* [in] */ REFIID riid,
  810. /* [iid_is][out] */ void **ppvObject);
  811. ULONG ( STDMETHODCALLTYPE *AddRef )(
  812. ICertRequest2 * This);
  813. ULONG ( STDMETHODCALLTYPE *Release )(
  814. ICertRequest2 * This);
  815. HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )(
  816. ICertRequest2 * This,
  817. /* [out] */ UINT *pctinfo);
  818. HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )(
  819. ICertRequest2 * This,
  820. /* [in] */ UINT iTInfo,
  821. /* [in] */ LCID lcid,
  822. /* [out] */ ITypeInfo **ppTInfo);
  823. HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )(
  824. ICertRequest2 * This,
  825. /* [in] */ REFIID riid,
  826. /* [size_is][in] */ LPOLESTR *rgszNames,
  827. /* [in] */ UINT cNames,
  828. /* [in] */ LCID lcid,
  829. /* [size_is][out] */ DISPID *rgDispId);
  830. /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )(
  831. ICertRequest2 * This,
  832. /* [in] */ DISPID dispIdMember,
  833. /* [in] */ REFIID riid,
  834. /* [in] */ LCID lcid,
  835. /* [in] */ WORD wFlags,
  836. /* [out][in] */ DISPPARAMS *pDispParams,
  837. /* [out] */ VARIANT *pVarResult,
  838. /* [out] */ EXCEPINFO *pExcepInfo,
  839. /* [out] */ UINT *puArgErr);
  840. HRESULT ( STDMETHODCALLTYPE *Submit )(
  841. ICertRequest2 * This,
  842. /* [in] */ LONG Flags,
  843. /* [in] */ const BSTR strRequest,
  844. /* [in] */ const BSTR strAttributes,
  845. /* [in] */ const BSTR strConfig,
  846. /* [retval][out] */ LONG *pDisposition);
  847. HRESULT ( STDMETHODCALLTYPE *RetrievePending )(
  848. ICertRequest2 * This,
  849. /* [in] */ LONG RequestId,
  850. /* [in] */ const BSTR strConfig,
  851. /* [retval][out] */ LONG *pDisposition);
  852. HRESULT ( STDMETHODCALLTYPE *GetLastStatus )(
  853. ICertRequest2 * This,
  854. /* [retval][out] */ LONG *pStatus);
  855. HRESULT ( STDMETHODCALLTYPE *GetRequestId )(
  856. ICertRequest2 * This,
  857. /* [retval][out] */ LONG *pRequestId);
  858. HRESULT ( STDMETHODCALLTYPE *GetDispositionMessage )(
  859. ICertRequest2 * This,
  860. /* [retval][out] */ BSTR *pstrDispositionMessage);
  861. HRESULT ( STDMETHODCALLTYPE *GetCACertificate )(
  862. ICertRequest2 * This,
  863. /* [in] */ LONG fExchangeCertificate,
  864. /* [in] */ const BSTR strConfig,
  865. /* [in] */ LONG Flags,
  866. /* [retval][out] */ BSTR *pstrCertificate);
  867. HRESULT ( STDMETHODCALLTYPE *GetCertificate )(
  868. ICertRequest2 * This,
  869. /* [in] */ LONG Flags,
  870. /* [retval][out] */ BSTR *pstrCertificate);
  871. HRESULT ( STDMETHODCALLTYPE *GetIssuedCertificate )(
  872. ICertRequest2 * This,
  873. /* [in] */ const BSTR strConfig,
  874. /* [in] */ LONG RequestId,
  875. /* [in] */ const BSTR strSerialNumber,
  876. /* [retval][out] */ LONG *pDisposition);
  877. HRESULT ( STDMETHODCALLTYPE *GetErrorMessageText )(
  878. ICertRequest2 * This,
  879. /* [in] */ LONG hrMessage,
  880. /* [in] */ LONG Flags,
  881. /* [retval][out] */ BSTR *pstrErrorMessageText);
  882. HRESULT ( STDMETHODCALLTYPE *GetCAProperty )(
  883. ICertRequest2 * This,
  884. /* [in] */ const BSTR strConfig,
  885. /* [in] */ LONG PropId,
  886. /* [in] */ LONG PropIndex,
  887. /* [in] */ LONG PropType,
  888. /* [in] */ LONG Flags,
  889. /* [retval][out] */ VARIANT *pvarPropertyValue);
  890. HRESULT ( STDMETHODCALLTYPE *GetCAPropertyFlags )(
  891. ICertRequest2 * This,
  892. /* [in] */ const BSTR strConfig,
  893. /* [in] */ LONG PropId,
  894. /* [retval][out] */ LONG *pPropFlags);
  895. HRESULT ( STDMETHODCALLTYPE *GetCAPropertyDisplayName )(
  896. ICertRequest2 * This,
  897. /* [in] */ const BSTR strConfig,
  898. /* [in] */ LONG PropId,
  899. /* [retval][out] */ BSTR *pstrDisplayName);
  900. HRESULT ( STDMETHODCALLTYPE *GetFullResponseProperty )(
  901. ICertRequest2 * This,
  902. /* [in] */ LONG PropId,
  903. /* [in] */ LONG PropIndex,
  904. /* [in] */ LONG PropType,
  905. /* [in] */ LONG Flags,
  906. /* [retval][out] */ VARIANT *pvarPropertyValue);
  907. END_INTERFACE
  908. } ICertRequest2Vtbl;
  909. interface ICertRequest2
  910. {
  911. CONST_VTBL struct ICertRequest2Vtbl *lpVtbl;
  912. };
  913. #ifdef COBJMACROS
  914. #define ICertRequest2_QueryInterface(This,riid,ppvObject) \
  915. (This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
  916. #define ICertRequest2_AddRef(This) \
  917. (This)->lpVtbl -> AddRef(This)
  918. #define ICertRequest2_Release(This) \
  919. (This)->lpVtbl -> Release(This)
  920. #define ICertRequest2_GetTypeInfoCount(This,pctinfo) \
  921. (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo)
  922. #define ICertRequest2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) \
  923. (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo)
  924. #define ICertRequest2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) \
  925. (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
  926. #define ICertRequest2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) \
  927. (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
  928. #define ICertRequest2_Submit(This,Flags,strRequest,strAttributes,strConfig,pDisposition) \
  929. (This)->lpVtbl -> Submit(This,Flags,strRequest,strAttributes,strConfig,pDisposition)
  930. #define ICertRequest2_RetrievePending(This,RequestId,strConfig,pDisposition) \
  931. (This)->lpVtbl -> RetrievePending(This,RequestId,strConfig,pDisposition)
  932. #define ICertRequest2_GetLastStatus(This,pStatus) \
  933. (This)->lpVtbl -> GetLastStatus(This,pStatus)
  934. #define ICertRequest2_GetRequestId(This,pRequestId) \
  935. (This)->lpVtbl -> GetRequestId(This,pRequestId)
  936. #define ICertRequest2_GetDispositionMessage(This,pstrDispositionMessage) \
  937. (This)->lpVtbl -> GetDispositionMessage(This,pstrDispositionMessage)
  938. #define ICertRequest2_GetCACertificate(This,fExchangeCertificate,strConfig,Flags,pstrCertificate) \
  939. (This)->lpVtbl -> GetCACertificate(This,fExchangeCertificate,strConfig,Flags,pstrCertificate)
  940. #define ICertRequest2_GetCertificate(This,Flags,pstrCertificate) \
  941. (This)->lpVtbl -> GetCertificate(This,Flags,pstrCertificate)
  942. #define ICertRequest2_GetIssuedCertificate(This,strConfig,RequestId,strSerialNumber,pDisposition) \
  943. (This)->lpVtbl -> GetIssuedCertificate(This,strConfig,RequestId,strSerialNumber,pDisposition)
  944. #define ICertRequest2_GetErrorMessageText(This,hrMessage,Flags,pstrErrorMessageText) \
  945. (This)->lpVtbl -> GetErrorMessageText(This,hrMessage,Flags,pstrErrorMessageText)
  946. #define ICertRequest2_GetCAProperty(This,strConfig,PropId,PropIndex,PropType,Flags,pvarPropertyValue) \
  947. (This)->lpVtbl -> GetCAProperty(This,strConfig,PropId,PropIndex,PropType,Flags,pvarPropertyValue)
  948. #define ICertRequest2_GetCAPropertyFlags(This,strConfig,PropId,pPropFlags) \
  949. (This)->lpVtbl -> GetCAPropertyFlags(This,strConfig,PropId,pPropFlags)
  950. #define ICertRequest2_GetCAPropertyDisplayName(This,strConfig,PropId,pstrDisplayName) \
  951. (This)->lpVtbl -> GetCAPropertyDisplayName(This,strConfig,PropId,pstrDisplayName)
  952. #define ICertRequest2_GetFullResponseProperty(This,PropId,PropIndex,PropType,Flags,pvarPropertyValue) \
  953. (This)->lpVtbl -> GetFullResponseProperty(This,PropId,PropIndex,PropType,Flags,pvarPropertyValue)
  954. #endif /* COBJMACROS */
  955. #endif /* C style interface */
  956. HRESULT STDMETHODCALLTYPE ICertRequest2_GetIssuedCertificate_Proxy(
  957. ICertRequest2 * This,
  958. /* [in] */ const BSTR strConfig,
  959. /* [in] */ LONG RequestId,
  960. /* [in] */ const BSTR strSerialNumber,
  961. /* [retval][out] */ LONG *pDisposition);
  962. void __RPC_STUB ICertRequest2_GetIssuedCertificate_Stub(
  963. IRpcStubBuffer *This,
  964. IRpcChannelBuffer *_pRpcChannelBuffer,
  965. PRPC_MESSAGE _pRpcMessage,
  966. DWORD *_pdwStubPhase);
  967. HRESULT STDMETHODCALLTYPE ICertRequest2_GetErrorMessageText_Proxy(
  968. ICertRequest2 * This,
  969. /* [in] */ LONG hrMessage,
  970. /* [in] */ LONG Flags,
  971. /* [retval][out] */ BSTR *pstrErrorMessageText);
  972. void __RPC_STUB ICertRequest2_GetErrorMessageText_Stub(
  973. IRpcStubBuffer *This,
  974. IRpcChannelBuffer *_pRpcChannelBuffer,
  975. PRPC_MESSAGE _pRpcMessage,
  976. DWORD *_pdwStubPhase);
  977. HRESULT STDMETHODCALLTYPE ICertRequest2_GetCAProperty_Proxy(
  978. ICertRequest2 * This,
  979. /* [in] */ const BSTR strConfig,
  980. /* [in] */ LONG PropId,
  981. /* [in] */ LONG PropIndex,
  982. /* [in] */ LONG PropType,
  983. /* [in] */ LONG Flags,
  984. /* [retval][out] */ VARIANT *pvarPropertyValue);
  985. void __RPC_STUB ICertRequest2_GetCAProperty_Stub(
  986. IRpcStubBuffer *This,
  987. IRpcChannelBuffer *_pRpcChannelBuffer,
  988. PRPC_MESSAGE _pRpcMessage,
  989. DWORD *_pdwStubPhase);
  990. HRESULT STDMETHODCALLTYPE ICertRequest2_GetCAPropertyFlags_Proxy(
  991. ICertRequest2 * This,
  992. /* [in] */ const BSTR strConfig,
  993. /* [in] */ LONG PropId,
  994. /* [retval][out] */ LONG *pPropFlags);
  995. void __RPC_STUB ICertRequest2_GetCAPropertyFlags_Stub(
  996. IRpcStubBuffer *This,
  997. IRpcChannelBuffer *_pRpcChannelBuffer,
  998. PRPC_MESSAGE _pRpcMessage,
  999. DWORD *_pdwStubPhase);
  1000. HRESULT STDMETHODCALLTYPE ICertRequest2_GetCAPropertyDisplayName_Proxy(
  1001. ICertRequest2 * This,
  1002. /* [in] */ const BSTR strConfig,
  1003. /* [in] */ LONG PropId,
  1004. /* [retval][out] */ BSTR *pstrDisplayName);
  1005. void __RPC_STUB ICertRequest2_GetCAPropertyDisplayName_Stub(
  1006. IRpcStubBuffer *This,
  1007. IRpcChannelBuffer *_pRpcChannelBuffer,
  1008. PRPC_MESSAGE _pRpcMessage,
  1009. DWORD *_pdwStubPhase);
  1010. HRESULT STDMETHODCALLTYPE ICertRequest2_GetFullResponseProperty_Proxy(
  1011. ICertRequest2 * This,
  1012. /* [in] */ LONG PropId,
  1013. /* [in] */ LONG PropIndex,
  1014. /* [in] */ LONG PropType,
  1015. /* [in] */ LONG Flags,
  1016. /* [retval][out] */ VARIANT *pvarPropertyValue);
  1017. void __RPC_STUB ICertRequest2_GetFullResponseProperty_Stub(
  1018. IRpcStubBuffer *This,
  1019. IRpcChannelBuffer *_pRpcChannelBuffer,
  1020. PRPC_MESSAGE _pRpcMessage,
  1021. DWORD *_pdwStubPhase);
  1022. #endif /* __ICertRequest2_INTERFACE_DEFINED__ */
  1023. #ifndef __CERTCLIENTLib_LIBRARY_DEFINED__
  1024. #define __CERTCLIENTLib_LIBRARY_DEFINED__
  1025. /* library CERTCLIENTLib */
  1026. /* [helpstring][version][uuid] */
  1027. EXTERN_C const IID LIBID_CERTCLIENTLib;
  1028. EXTERN_C const CLSID CLSID_CCertGetConfig;
  1029. #ifdef __cplusplus
  1030. class DECLSPEC_UUID("c6cc49b0-ce17-11d0-8833-00a0c903b83c")
  1031. CCertGetConfig;
  1032. #endif
  1033. EXTERN_C const CLSID CLSID_CCertConfig;
  1034. #ifdef __cplusplus
  1035. class DECLSPEC_UUID("372fce38-4324-11d0-8810-00a0c903b83c")
  1036. CCertConfig;
  1037. #endif
  1038. EXTERN_C const CLSID CLSID_CCertRequest;
  1039. #ifdef __cplusplus
  1040. class DECLSPEC_UUID("98aff3f0-5524-11d0-8812-00a0c903b83c")
  1041. CCertRequest;
  1042. #endif
  1043. EXTERN_C const CLSID CLSID_CCertServerPolicy;
  1044. #ifdef __cplusplus
  1045. class DECLSPEC_UUID("aa000926-ffbe-11cf-8800-00a0c903b83c")
  1046. CCertServerPolicy;
  1047. #endif
  1048. EXTERN_C const CLSID CLSID_CCertServerExit;
  1049. #ifdef __cplusplus
  1050. class DECLSPEC_UUID("4c4a5e40-732c-11d0-8816-00a0c903b83c")
  1051. CCertServerExit;
  1052. #endif
  1053. #endif /* __CERTCLIENTLib_LIBRARY_DEFINED__ */
  1054. /* Additional Prototypes for ALL interfaces */
  1055. unsigned long __RPC_USER BSTR_UserSize( unsigned long *, unsigned long , BSTR * );
  1056. unsigned char * __RPC_USER BSTR_UserMarshal( unsigned long *, unsigned char *, BSTR * );
  1057. unsigned char * __RPC_USER BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * );
  1058. void __RPC_USER BSTR_UserFree( unsigned long *, BSTR * );
  1059. unsigned long __RPC_USER VARIANT_UserSize( unsigned long *, unsigned long , VARIANT * );
  1060. unsigned char * __RPC_USER VARIANT_UserMarshal( unsigned long *, unsigned char *, VARIANT * );
  1061. unsigned char * __RPC_USER VARIANT_UserUnmarshal(unsigned long *, unsigned char *, VARIANT * );
  1062. void __RPC_USER VARIANT_UserFree( unsigned long *, VARIANT * );
  1063. /* end of Additional Prototypes */
  1064. #ifdef __cplusplus
  1065. }
  1066. #endif
  1067. #endif