master
  1/*** Autogenerated by WIDL 10.4 from include/wmsecure.idl - Do not edit ***/
  2
  3#ifdef _WIN32
  4#ifndef __REQUIRED_RPCNDR_H_VERSION__
  5#define __REQUIRED_RPCNDR_H_VERSION__ 475
  6#endif
  7#include <rpc.h>
  8#include <rpcndr.h>
  9#endif
 10
 11#ifndef COM_NO_WINDOWS_H
 12#include <windows.h>
 13#include <ole2.h>
 14#endif
 15
 16#ifndef __wmsecure_h__
 17#define __wmsecure_h__
 18
 19/* Forward declarations */
 20
 21#ifndef __IWMAuthorizer_FWD_DEFINED__
 22#define __IWMAuthorizer_FWD_DEFINED__
 23typedef interface IWMAuthorizer IWMAuthorizer;
 24#ifdef __cplusplus
 25interface IWMAuthorizer;
 26#endif /* __cplusplus */
 27#endif
 28
 29#ifndef __IWMSecureChannel_FWD_DEFINED__
 30#define __IWMSecureChannel_FWD_DEFINED__
 31typedef interface IWMSecureChannel IWMSecureChannel;
 32#ifdef __cplusplus
 33interface IWMSecureChannel;
 34#endif /* __cplusplus */
 35#endif
 36
 37#ifndef __IWMGetSecureChannel_FWD_DEFINED__
 38#define __IWMGetSecureChannel_FWD_DEFINED__
 39typedef interface IWMGetSecureChannel IWMGetSecureChannel;
 40#ifdef __cplusplus
 41interface IWMGetSecureChannel;
 42#endif /* __cplusplus */
 43#endif
 44
 45/* Headers for imported files */
 46
 47#include <oaidl.h>
 48#include <ocidl.h>
 49
 50#ifdef __cplusplus
 51extern "C" {
 52#endif
 53
 54/*****************************************************************************
 55 * IWMAuthorizer interface
 56 */
 57#ifndef __IWMAuthorizer_INTERFACE_DEFINED__
 58#define __IWMAuthorizer_INTERFACE_DEFINED__
 59
 60DEFINE_GUID(IID_IWMAuthorizer, 0xd9b67d36, 0xa9ad, 0x4eb4, 0xba,0xef, 0xdb,0x28,0x4e,0xf5,0x50,0x4c);
 61#if defined(__cplusplus) && !defined(CINTERFACE)
 62MIDL_INTERFACE("d9b67d36-a9ad-4eb4-baef-db284ef5504c")
 63IWMAuthorizer : public IUnknown
 64{
 65    virtual HRESULT STDMETHODCALLTYPE GetCertCount(
 66        DWORD *count) = 0;
 67
 68    virtual HRESULT STDMETHODCALLTYPE GetCert(
 69        DWORD index,
 70        BYTE **data) = 0;
 71
 72    virtual HRESULT STDMETHODCALLTYPE GetSharedData(
 73        DWORD index,
 74        const BYTE *data,
 75        BYTE *cert,
 76        BYTE **ret_data) = 0;
 77
 78};
 79#ifdef __CRT_UUID_DECL
 80__CRT_UUID_DECL(IWMAuthorizer, 0xd9b67d36, 0xa9ad, 0x4eb4, 0xba,0xef, 0xdb,0x28,0x4e,0xf5,0x50,0x4c)
 81#endif
 82#else
 83typedef struct IWMAuthorizerVtbl {
 84    BEGIN_INTERFACE
 85
 86    /*** IUnknown methods ***/
 87    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
 88        IWMAuthorizer *This,
 89        REFIID riid,
 90        void **ppvObject);
 91
 92    ULONG (STDMETHODCALLTYPE *AddRef)(
 93        IWMAuthorizer *This);
 94
 95    ULONG (STDMETHODCALLTYPE *Release)(
 96        IWMAuthorizer *This);
 97
 98    /*** IWMAuthorizer methods ***/
 99    HRESULT (STDMETHODCALLTYPE *GetCertCount)(
100        IWMAuthorizer *This,
101        DWORD *count);
102
103    HRESULT (STDMETHODCALLTYPE *GetCert)(
104        IWMAuthorizer *This,
105        DWORD index,
106        BYTE **data);
107
108    HRESULT (STDMETHODCALLTYPE *GetSharedData)(
109        IWMAuthorizer *This,
110        DWORD index,
111        const BYTE *data,
112        BYTE *cert,
113        BYTE **ret_data);
114
115    END_INTERFACE
116} IWMAuthorizerVtbl;
117
118interface IWMAuthorizer {
119    CONST_VTBL IWMAuthorizerVtbl* lpVtbl;
120};
121
122#ifdef COBJMACROS
123#ifndef WIDL_C_INLINE_WRAPPERS
124/*** IUnknown methods ***/
125#define IWMAuthorizer_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
126#define IWMAuthorizer_AddRef(This) (This)->lpVtbl->AddRef(This)
127#define IWMAuthorizer_Release(This) (This)->lpVtbl->Release(This)
128/*** IWMAuthorizer methods ***/
129#define IWMAuthorizer_GetCertCount(This,count) (This)->lpVtbl->GetCertCount(This,count)
130#define IWMAuthorizer_GetCert(This,index,data) (This)->lpVtbl->GetCert(This,index,data)
131#define IWMAuthorizer_GetSharedData(This,index,data,cert,ret_data) (This)->lpVtbl->GetSharedData(This,index,data,cert,ret_data)
132#else
133/*** IUnknown methods ***/
134static inline HRESULT IWMAuthorizer_QueryInterface(IWMAuthorizer* This,REFIID riid,void **ppvObject) {
135    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
136}
137static inline ULONG IWMAuthorizer_AddRef(IWMAuthorizer* This) {
138    return This->lpVtbl->AddRef(This);
139}
140static inline ULONG IWMAuthorizer_Release(IWMAuthorizer* This) {
141    return This->lpVtbl->Release(This);
142}
143/*** IWMAuthorizer methods ***/
144static inline HRESULT IWMAuthorizer_GetCertCount(IWMAuthorizer* This,DWORD *count) {
145    return This->lpVtbl->GetCertCount(This,count);
146}
147static inline HRESULT IWMAuthorizer_GetCert(IWMAuthorizer* This,DWORD index,BYTE **data) {
148    return This->lpVtbl->GetCert(This,index,data);
149}
150static inline HRESULT IWMAuthorizer_GetSharedData(IWMAuthorizer* This,DWORD index,const BYTE *data,BYTE *cert,BYTE **ret_data) {
151    return This->lpVtbl->GetSharedData(This,index,data,cert,ret_data);
152}
153#endif
154#endif
155
156#endif
157
158
159#endif  /* __IWMAuthorizer_INTERFACE_DEFINED__ */
160
161/*****************************************************************************
162 * IWMSecureChannel interface
163 */
164#ifndef __IWMSecureChannel_INTERFACE_DEFINED__
165#define __IWMSecureChannel_INTERFACE_DEFINED__
166
167DEFINE_GUID(IID_IWMSecureChannel, 0x2720598a, 0xd0f2, 0x4189, 0xbd,0x10, 0x91,0xc4,0x6e,0xf0,0x93,0x6f);
168#if defined(__cplusplus) && !defined(CINTERFACE)
169MIDL_INTERFACE("2720598a-d0f2-4189-bd10-91c46ef0936f")
170IWMSecureChannel : public IWMAuthorizer
171{
172    virtual HRESULT STDMETHODCALLTYPE WMSC_AddCertificate(
173        IWMAuthorizer *cert) = 0;
174
175    virtual HRESULT STDMETHODCALLTYPE WMSC_AddSignature(
176        BYTE *signature,
177        DWORD size) = 0;
178
179    virtual HRESULT STDMETHODCALLTYPE WMSC_Connect(
180        IWMSecureChannel *peer) = 0;
181
182    virtual HRESULT STDMETHODCALLTYPE WMSC_IsConnected(
183        WINBOOL *connected) = 0;
184
185    virtual HRESULT STDMETHODCALLTYPE WMSC_Disconnect(
186        ) = 0;
187
188    virtual HRESULT STDMETHODCALLTYPE WMSC_GetValidCertificate(
189        BYTE **cert,
190        DWORD *signature) = 0;
191
192    virtual HRESULT STDMETHODCALLTYPE WMSC_Encrypt(
193        BYTE *data,
194        DWORD size) = 0;
195
196    virtual HRESULT STDMETHODCALLTYPE WMSC_Decrypt(
197        BYTE *data,
198        DWORD size) = 0;
199
200    virtual HRESULT STDMETHODCALLTYPE WMSC_Lock(
201        ) = 0;
202
203    virtual HRESULT STDMETHODCALLTYPE WMSC_Unlock(
204        ) = 0;
205
206    virtual HRESULT STDMETHODCALLTYPE WMSC_SetSharedData(
207        DWORD index,
208        BYTE *data) = 0;
209
210};
211#ifdef __CRT_UUID_DECL
212__CRT_UUID_DECL(IWMSecureChannel, 0x2720598a, 0xd0f2, 0x4189, 0xbd,0x10, 0x91,0xc4,0x6e,0xf0,0x93,0x6f)
213#endif
214#else
215typedef struct IWMSecureChannelVtbl {
216    BEGIN_INTERFACE
217
218    /*** IUnknown methods ***/
219    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
220        IWMSecureChannel *This,
221        REFIID riid,
222        void **ppvObject);
223
224    ULONG (STDMETHODCALLTYPE *AddRef)(
225        IWMSecureChannel *This);
226
227    ULONG (STDMETHODCALLTYPE *Release)(
228        IWMSecureChannel *This);
229
230    /*** IWMAuthorizer methods ***/
231    HRESULT (STDMETHODCALLTYPE *GetCertCount)(
232        IWMSecureChannel *This,
233        DWORD *count);
234
235    HRESULT (STDMETHODCALLTYPE *GetCert)(
236        IWMSecureChannel *This,
237        DWORD index,
238        BYTE **data);
239
240    HRESULT (STDMETHODCALLTYPE *GetSharedData)(
241        IWMSecureChannel *This,
242        DWORD index,
243        const BYTE *data,
244        BYTE *cert,
245        BYTE **ret_data);
246
247    /*** IWMSecureChannel methods ***/
248    HRESULT (STDMETHODCALLTYPE *WMSC_AddCertificate)(
249        IWMSecureChannel *This,
250        IWMAuthorizer *cert);
251
252    HRESULT (STDMETHODCALLTYPE *WMSC_AddSignature)(
253        IWMSecureChannel *This,
254        BYTE *signature,
255        DWORD size);
256
257    HRESULT (STDMETHODCALLTYPE *WMSC_Connect)(
258        IWMSecureChannel *This,
259        IWMSecureChannel *peer);
260
261    HRESULT (STDMETHODCALLTYPE *WMSC_IsConnected)(
262        IWMSecureChannel *This,
263        WINBOOL *connected);
264
265    HRESULT (STDMETHODCALLTYPE *WMSC_Disconnect)(
266        IWMSecureChannel *This);
267
268    HRESULT (STDMETHODCALLTYPE *WMSC_GetValidCertificate)(
269        IWMSecureChannel *This,
270        BYTE **cert,
271        DWORD *signature);
272
273    HRESULT (STDMETHODCALLTYPE *WMSC_Encrypt)(
274        IWMSecureChannel *This,
275        BYTE *data,
276        DWORD size);
277
278    HRESULT (STDMETHODCALLTYPE *WMSC_Decrypt)(
279        IWMSecureChannel *This,
280        BYTE *data,
281        DWORD size);
282
283    HRESULT (STDMETHODCALLTYPE *WMSC_Lock)(
284        IWMSecureChannel *This);
285
286    HRESULT (STDMETHODCALLTYPE *WMSC_Unlock)(
287        IWMSecureChannel *This);
288
289    HRESULT (STDMETHODCALLTYPE *WMSC_SetSharedData)(
290        IWMSecureChannel *This,
291        DWORD index,
292        BYTE *data);
293
294    END_INTERFACE
295} IWMSecureChannelVtbl;
296
297interface IWMSecureChannel {
298    CONST_VTBL IWMSecureChannelVtbl* lpVtbl;
299};
300
301#ifdef COBJMACROS
302#ifndef WIDL_C_INLINE_WRAPPERS
303/*** IUnknown methods ***/
304#define IWMSecureChannel_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
305#define IWMSecureChannel_AddRef(This) (This)->lpVtbl->AddRef(This)
306#define IWMSecureChannel_Release(This) (This)->lpVtbl->Release(This)
307/*** IWMAuthorizer methods ***/
308#define IWMSecureChannel_GetCertCount(This,count) (This)->lpVtbl->GetCertCount(This,count)
309#define IWMSecureChannel_GetCert(This,index,data) (This)->lpVtbl->GetCert(This,index,data)
310#define IWMSecureChannel_GetSharedData(This,index,data,cert,ret_data) (This)->lpVtbl->GetSharedData(This,index,data,cert,ret_data)
311/*** IWMSecureChannel methods ***/
312#define IWMSecureChannel_WMSC_AddCertificate(This,cert) (This)->lpVtbl->WMSC_AddCertificate(This,cert)
313#define IWMSecureChannel_WMSC_AddSignature(This,signature,size) (This)->lpVtbl->WMSC_AddSignature(This,signature,size)
314#define IWMSecureChannel_WMSC_Connect(This,peer) (This)->lpVtbl->WMSC_Connect(This,peer)
315#define IWMSecureChannel_WMSC_IsConnected(This,connected) (This)->lpVtbl->WMSC_IsConnected(This,connected)
316#define IWMSecureChannel_WMSC_Disconnect(This) (This)->lpVtbl->WMSC_Disconnect(This)
317#define IWMSecureChannel_WMSC_GetValidCertificate(This,cert,signature) (This)->lpVtbl->WMSC_GetValidCertificate(This,cert,signature)
318#define IWMSecureChannel_WMSC_Encrypt(This,data,size) (This)->lpVtbl->WMSC_Encrypt(This,data,size)
319#define IWMSecureChannel_WMSC_Decrypt(This,data,size) (This)->lpVtbl->WMSC_Decrypt(This,data,size)
320#define IWMSecureChannel_WMSC_Lock(This) (This)->lpVtbl->WMSC_Lock(This)
321#define IWMSecureChannel_WMSC_Unlock(This) (This)->lpVtbl->WMSC_Unlock(This)
322#define IWMSecureChannel_WMSC_SetSharedData(This,index,data) (This)->lpVtbl->WMSC_SetSharedData(This,index,data)
323#else
324/*** IUnknown methods ***/
325static inline HRESULT IWMSecureChannel_QueryInterface(IWMSecureChannel* This,REFIID riid,void **ppvObject) {
326    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
327}
328static inline ULONG IWMSecureChannel_AddRef(IWMSecureChannel* This) {
329    return This->lpVtbl->AddRef(This);
330}
331static inline ULONG IWMSecureChannel_Release(IWMSecureChannel* This) {
332    return This->lpVtbl->Release(This);
333}
334/*** IWMAuthorizer methods ***/
335static inline HRESULT IWMSecureChannel_GetCertCount(IWMSecureChannel* This,DWORD *count) {
336    return This->lpVtbl->GetCertCount(This,count);
337}
338static inline HRESULT IWMSecureChannel_GetCert(IWMSecureChannel* This,DWORD index,BYTE **data) {
339    return This->lpVtbl->GetCert(This,index,data);
340}
341static inline HRESULT IWMSecureChannel_GetSharedData(IWMSecureChannel* This,DWORD index,const BYTE *data,BYTE *cert,BYTE **ret_data) {
342    return This->lpVtbl->GetSharedData(This,index,data,cert,ret_data);
343}
344/*** IWMSecureChannel methods ***/
345static inline HRESULT IWMSecureChannel_WMSC_AddCertificate(IWMSecureChannel* This,IWMAuthorizer *cert) {
346    return This->lpVtbl->WMSC_AddCertificate(This,cert);
347}
348static inline HRESULT IWMSecureChannel_WMSC_AddSignature(IWMSecureChannel* This,BYTE *signature,DWORD size) {
349    return This->lpVtbl->WMSC_AddSignature(This,signature,size);
350}
351static inline HRESULT IWMSecureChannel_WMSC_Connect(IWMSecureChannel* This,IWMSecureChannel *peer) {
352    return This->lpVtbl->WMSC_Connect(This,peer);
353}
354static inline HRESULT IWMSecureChannel_WMSC_IsConnected(IWMSecureChannel* This,WINBOOL *connected) {
355    return This->lpVtbl->WMSC_IsConnected(This,connected);
356}
357static inline HRESULT IWMSecureChannel_WMSC_Disconnect(IWMSecureChannel* This) {
358    return This->lpVtbl->WMSC_Disconnect(This);
359}
360static inline HRESULT IWMSecureChannel_WMSC_GetValidCertificate(IWMSecureChannel* This,BYTE **cert,DWORD *signature) {
361    return This->lpVtbl->WMSC_GetValidCertificate(This,cert,signature);
362}
363static inline HRESULT IWMSecureChannel_WMSC_Encrypt(IWMSecureChannel* This,BYTE *data,DWORD size) {
364    return This->lpVtbl->WMSC_Encrypt(This,data,size);
365}
366static inline HRESULT IWMSecureChannel_WMSC_Decrypt(IWMSecureChannel* This,BYTE *data,DWORD size) {
367    return This->lpVtbl->WMSC_Decrypt(This,data,size);
368}
369static inline HRESULT IWMSecureChannel_WMSC_Lock(IWMSecureChannel* This) {
370    return This->lpVtbl->WMSC_Lock(This);
371}
372static inline HRESULT IWMSecureChannel_WMSC_Unlock(IWMSecureChannel* This) {
373    return This->lpVtbl->WMSC_Unlock(This);
374}
375static inline HRESULT IWMSecureChannel_WMSC_SetSharedData(IWMSecureChannel* This,DWORD index,BYTE *data) {
376    return This->lpVtbl->WMSC_SetSharedData(This,index,data);
377}
378#endif
379#endif
380
381#endif
382
383
384#endif  /* __IWMSecureChannel_INTERFACE_DEFINED__ */
385
386/*****************************************************************************
387 * IWMGetSecureChannel interface
388 */
389#ifndef __IWMGetSecureChannel_INTERFACE_DEFINED__
390#define __IWMGetSecureChannel_INTERFACE_DEFINED__
391
392DEFINE_GUID(IID_IWMGetSecureChannel, 0x94bc0598, 0xc3d2, 0x11d3, 0xbe,0xdf, 0x00,0xc0,0x4f,0x61,0x29,0x86);
393#if defined(__cplusplus) && !defined(CINTERFACE)
394MIDL_INTERFACE("94bc0598-c3d2-11d3-bedf-00c04f612986")
395IWMGetSecureChannel : public IUnknown
396{
397    virtual HRESULT STDMETHODCALLTYPE GetPeerSecureChannelInterface(
398        IWMSecureChannel **channel) = 0;
399
400};
401#ifdef __CRT_UUID_DECL
402__CRT_UUID_DECL(IWMGetSecureChannel, 0x94bc0598, 0xc3d2, 0x11d3, 0xbe,0xdf, 0x00,0xc0,0x4f,0x61,0x29,0x86)
403#endif
404#else
405typedef struct IWMGetSecureChannelVtbl {
406    BEGIN_INTERFACE
407
408    /*** IUnknown methods ***/
409    HRESULT (STDMETHODCALLTYPE *QueryInterface)(
410        IWMGetSecureChannel *This,
411        REFIID riid,
412        void **ppvObject);
413
414    ULONG (STDMETHODCALLTYPE *AddRef)(
415        IWMGetSecureChannel *This);
416
417    ULONG (STDMETHODCALLTYPE *Release)(
418        IWMGetSecureChannel *This);
419
420    /*** IWMGetSecureChannel methods ***/
421    HRESULT (STDMETHODCALLTYPE *GetPeerSecureChannelInterface)(
422        IWMGetSecureChannel *This,
423        IWMSecureChannel **channel);
424
425    END_INTERFACE
426} IWMGetSecureChannelVtbl;
427
428interface IWMGetSecureChannel {
429    CONST_VTBL IWMGetSecureChannelVtbl* lpVtbl;
430};
431
432#ifdef COBJMACROS
433#ifndef WIDL_C_INLINE_WRAPPERS
434/*** IUnknown methods ***/
435#define IWMGetSecureChannel_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
436#define IWMGetSecureChannel_AddRef(This) (This)->lpVtbl->AddRef(This)
437#define IWMGetSecureChannel_Release(This) (This)->lpVtbl->Release(This)
438/*** IWMGetSecureChannel methods ***/
439#define IWMGetSecureChannel_GetPeerSecureChannelInterface(This,channel) (This)->lpVtbl->GetPeerSecureChannelInterface(This,channel)
440#else
441/*** IUnknown methods ***/
442static inline HRESULT IWMGetSecureChannel_QueryInterface(IWMGetSecureChannel* This,REFIID riid,void **ppvObject) {
443    return This->lpVtbl->QueryInterface(This,riid,ppvObject);
444}
445static inline ULONG IWMGetSecureChannel_AddRef(IWMGetSecureChannel* This) {
446    return This->lpVtbl->AddRef(This);
447}
448static inline ULONG IWMGetSecureChannel_Release(IWMGetSecureChannel* This) {
449    return This->lpVtbl->Release(This);
450}
451/*** IWMGetSecureChannel methods ***/
452static inline HRESULT IWMGetSecureChannel_GetPeerSecureChannelInterface(IWMGetSecureChannel* This,IWMSecureChannel **channel) {
453    return This->lpVtbl->GetPeerSecureChannelInterface(This,channel);
454}
455#endif
456#endif
457
458#endif
459
460
461#endif  /* __IWMGetSecureChannel_INTERFACE_DEFINED__ */
462
463/* Begin additional prototypes for all interfaces */
464
465
466/* End additional prototypes */
467
468#ifdef __cplusplus
469}
470#endif
471
472#endif /* __wmsecure_h__ */