1 /**
2  * This file has no copyright assigned and is placed in the Public Domain.
3  * This file is part of the mingw-w64 runtime package.
4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5  */
6 #ifndef __REQUIRED_RPCNDR_H_VERSION__
7 #define __REQUIRED_RPCNDR_H_VERSION__ 475
8 #endif
9 
10 #include "rpc.h"
11 #include "rpcndr.h"
12 
13 #ifndef __RPCNDR_H_VERSION__
14 #error this stub requires an updated version of <rpcndr.h>
15 #endif
16 
17 #ifndef COM_NO_WINDOWS_H
18 #include "windows.h"
19 #include "ole2.h"
20 #endif
21 
22 #ifndef __certexit_h__
23 #define __certexit_h__
24 
25 #ifndef __ICertExit_FWD_DEFINED__
26 #define __ICertExit_FWD_DEFINED__
27 typedef struct ICertExit ICertExit;
28 #endif
29 
30 #ifndef __ICertExit2_FWD_DEFINED__
31 #define __ICertExit2_FWD_DEFINED__
32 typedef struct ICertExit2 ICertExit2;
33 #endif
34 
35 #include "wtypes.h"
36 #include "certmod.h"
37 
38 #ifdef __cplusplus
39 extern "C"{
40 #endif
41 
42 #ifndef __MIDL_user_allocate_free_DEFINED__
43 #define __MIDL_user_allocate_free_DEFINED__
44   void *__RPC_API MIDL_user_allocate(size_t);
45   void __RPC_API MIDL_user_free(void *);
46 #endif
47 
48 #define EXITEVENT_INVALID (0x0)
49 #define EXITEVENT_CERTISSUED (0x1)
50 #define EXITEVENT_CERTPENDING (0x2)
51 #define EXITEVENT_CERTDENIED (0x4)
52 #define EXITEVENT_CERTREVOKED (0x8)
53 #define EXITEVENT_CERTRETRIEVEPENDING (0x10)
54 #define EXITEVENT_CRLISSUED (0x20)
55 #define EXITEVENT_SHUTDOWN (0x40)
56 #define EXITEVENT_STARTUP (0x80)
57 
58   extern RPC_IF_HANDLE __MIDL_itf_certexit_0000_v0_0_c_ifspec;
59   extern RPC_IF_HANDLE __MIDL_itf_certexit_0000_v0_0_s_ifspec;
60 
61 #ifndef __ICertExit_INTERFACE_DEFINED__
62 #define __ICertExit_INTERFACE_DEFINED__
63   EXTERN_C const IID IID_ICertExit;
64 #if defined(__cplusplus) && !defined(CINTERFACE)
65   struct ICertExit : public IDispatch {
66   public:
67     virtual HRESULT WINAPI Initialize(const BSTR strConfig,LONG *pEventMask) = 0;
68     virtual HRESULT WINAPI Notify(LONG ExitEvent,LONG Context) = 0;
69     virtual HRESULT WINAPI GetDescription(BSTR *pstrDescription) = 0;
70   };
71 #else
72   typedef struct ICertExitVtbl {
73     BEGIN_INTERFACE
74       HRESULT (WINAPI *QueryInterface)(ICertExit *This,REFIID riid,void **ppvObject);
75       ULONG (WINAPI *AddRef)(ICertExit *This);
76       ULONG (WINAPI *Release)(ICertExit *This);
77       HRESULT (WINAPI *GetTypeInfoCount)(ICertExit *This,UINT *pctinfo);
78       HRESULT (WINAPI *GetTypeInfo)(ICertExit *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
79       HRESULT (WINAPI *GetIDsOfNames)(ICertExit *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
80       HRESULT (WINAPI *Invoke)(ICertExit *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
81       HRESULT (WINAPI *Initialize)(ICertExit *This,const BSTR strConfig,LONG *pEventMask);
82       HRESULT (WINAPI *Notify)(ICertExit *This,LONG ExitEvent,LONG Context);
83       HRESULT (WINAPI *GetDescription)(ICertExit *This,BSTR *pstrDescription);
84     END_INTERFACE
85   } ICertExitVtbl;
86   struct ICertExit {
87     CONST_VTBL struct ICertExitVtbl *lpVtbl;
88   };
89 #ifdef COBJMACROS
90 #define ICertExit_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
91 #define ICertExit_AddRef(This) (This)->lpVtbl->AddRef(This)
92 #define ICertExit_Release(This) (This)->lpVtbl->Release(This)
93 #define ICertExit_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
94 #define ICertExit_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
95 #define ICertExit_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
96 #define ICertExit_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
97 #define ICertExit_Initialize(This,strConfig,pEventMask) (This)->lpVtbl->Initialize(This,strConfig,pEventMask)
98 #define ICertExit_Notify(This,ExitEvent,Context) (This)->lpVtbl->Notify(This,ExitEvent,Context)
99 #define ICertExit_GetDescription(This,pstrDescription) (This)->lpVtbl->GetDescription(This,pstrDescription)
100 #endif
101 #endif
102   HRESULT WINAPI ICertExit_Initialize_Proxy(ICertExit *This,const BSTR strConfig,LONG *pEventMask);
103   void __RPC_STUB ICertExit_Initialize_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
104   HRESULT WINAPI ICertExit_Notify_Proxy(ICertExit *This,LONG ExitEvent,LONG Context);
105   void __RPC_STUB ICertExit_Notify_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
106   HRESULT WINAPI ICertExit_GetDescription_Proxy(ICertExit *This,BSTR *pstrDescription);
107   void __RPC_STUB ICertExit_GetDescription_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
108 #endif
109 
110 #ifndef __ICertExit2_INTERFACE_DEFINED__
111 #define __ICertExit2_INTERFACE_DEFINED__
112   EXTERN_C const IID IID_ICertExit2;
113 #if defined(__cplusplus) && !defined(CINTERFACE)
114   struct ICertExit2 : public ICertExit {
115   public:
116     virtual HRESULT WINAPI GetManageModule(ICertManageModule **ppManageModule) = 0;
117   };
118 #else
119   typedef struct ICertExit2Vtbl {
120     BEGIN_INTERFACE
121       HRESULT (WINAPI *QueryInterface)(ICertExit2 *This,REFIID riid,void **ppvObject);
122       ULONG (WINAPI *AddRef)(ICertExit2 *This);
123       ULONG (WINAPI *Release)(ICertExit2 *This);
124       HRESULT (WINAPI *GetTypeInfoCount)(ICertExit2 *This,UINT *pctinfo);
125       HRESULT (WINAPI *GetTypeInfo)(ICertExit2 *This,UINT iTInfo,LCID lcid,ITypeInfo **ppTInfo);
126       HRESULT (WINAPI *GetIDsOfNames)(ICertExit2 *This,REFIID riid,LPOLESTR *rgszNames,UINT cNames,LCID lcid,DISPID *rgDispId);
127       HRESULT (WINAPI *Invoke)(ICertExit2 *This,DISPID dispIdMember,REFIID riid,LCID lcid,WORD wFlags,DISPPARAMS *pDispParams,VARIANT *pVarResult,EXCEPINFO *pExcepInfo,UINT *puArgErr);
128       HRESULT (WINAPI *Initialize)(ICertExit2 *This,const BSTR strConfig,LONG *pEventMask);
129       HRESULT (WINAPI *Notify)(ICertExit2 *This,LONG ExitEvent,LONG Context);
130       HRESULT (WINAPI *GetDescription)(ICertExit2 *This,BSTR *pstrDescription);
131       HRESULT (WINAPI *GetManageModule)(ICertExit2 *This,ICertManageModule **ppManageModule);
132     END_INTERFACE
133   } ICertExit2Vtbl;
134   struct ICertExit2 {
135     CONST_VTBL struct ICertExit2Vtbl *lpVtbl;
136   };
137 #ifdef COBJMACROS
138 #define ICertExit2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
139 #define ICertExit2_AddRef(This) (This)->lpVtbl->AddRef(This)
140 #define ICertExit2_Release(This) (This)->lpVtbl->Release(This)
141 #define ICertExit2_GetTypeInfoCount(This,pctinfo) (This)->lpVtbl->GetTypeInfoCount(This,pctinfo)
142 #define ICertExit2_GetTypeInfo(This,iTInfo,lcid,ppTInfo) (This)->lpVtbl->GetTypeInfo(This,iTInfo,lcid,ppTInfo)
143 #define ICertExit2_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) (This)->lpVtbl->GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)
144 #define ICertExit2_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) (This)->lpVtbl->Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)
145 #define ICertExit2_Initialize(This,strConfig,pEventMask) (This)->lpVtbl->Initialize(This,strConfig,pEventMask)
146 #define ICertExit2_Notify(This,ExitEvent,Context) (This)->lpVtbl->Notify(This,ExitEvent,Context)
147 #define ICertExit2_GetDescription(This,pstrDescription) (This)->lpVtbl->GetDescription(This,pstrDescription)
148 #define ICertExit2_GetManageModule(This,ppManageModule) (This)->lpVtbl->GetManageModule(This,ppManageModule)
149 #endif
150 #endif
151   HRESULT WINAPI ICertExit2_GetManageModule_Proxy(ICertExit2 *This,ICertManageModule **ppManageModule);
152   void __RPC_STUB ICertExit2_GetManageModule_Stub(IRpcStubBuffer *This,IRpcChannelBuffer *_pRpcChannelBuffer,PRPC_MESSAGE _pRpcMessage,DWORD *_pdwStubPhase);
153 #endif
154 
155   ULONG __RPC_API BSTR_UserSize(ULONG *,ULONG,BSTR *);
156   unsigned char *__RPC_API BSTR_UserMarshal(ULONG *,unsigned char *,BSTR *);
157   unsigned char *__RPC_API BSTR_UserUnmarshal(ULONG *,unsigned char *,BSTR *);
158   void __RPC_API BSTR_UserFree(ULONG *,BSTR *);
159 
160 #ifdef __cplusplus
161 }
162 #endif
163 #endif
164