pEpCOMServerAdapter_i.h
author Volker Birk <vb@pep-project.org>
Sat, 30 May 2015 15:53:25 +0200
changeset 31 83a083fb4810
parent 30 5c5f423e79e6
child 32 b9e23540d7fd
permissions -rw-r--r--
abstract management
     1 
     2 
     3 /* this ALWAYS GENERATED file contains the definitions for the interfaces */
     4 
     5 
     6  /* File created by MIDL compiler version 8.00.0603 */
     7 /* at Sat May 30 12:51:56 2015
     8  */
     9 /* Compiler settings for pEpCOMServerAdapter.idl:
    10     Oicf, W1, Zp8, env=Win32 (32b run), target_arch=X86 8.00.0603 
    11     protocol : dce , ms_ext, c_ext, robust
    12     error checks: allocation ref bounds_check enum stub_data 
    13     VC __declspec() decoration level: 
    14          __declspec(uuid()), __declspec(selectany), __declspec(novtable)
    15          DECLSPEC_UUID(), MIDL_INTERFACE()
    16 */
    17 /* @@MIDL_FILE_HEADING(  ) */
    18 
    19 #pragma warning( disable: 4049 )  /* more than 64k source lines */
    20 
    21 
    22 /* verify that the <rpcndr.h> version is high enough to compile this file*/
    23 #ifndef __REQUIRED_RPCNDR_H_VERSION__
    24 #define __REQUIRED_RPCNDR_H_VERSION__ 475
    25 #endif
    26 
    27 #include "rpc.h"
    28 #include "rpcndr.h"
    29 
    30 #ifndef __RPCNDR_H_VERSION__
    31 #error this stub requires an updated version of <rpcndr.h>
    32 #endif // __RPCNDR_H_VERSION__
    33 
    34 #ifndef COM_NO_WINDOWS_H
    35 #include "windows.h"
    36 #include "ole2.h"
    37 #endif /*COM_NO_WINDOWS_H*/
    38 
    39 #ifndef __pEpCOMServerAdapter_i_h__
    40 #define __pEpCOMServerAdapter_i_h__
    41 
    42 #if defined(_MSC_VER) && (_MSC_VER >= 1020)
    43 #pragma once
    44 #endif
    45 
    46 /* Forward Declarations */ 
    47 
    48 #ifndef __ITextMessage_FWD_DEFINED__
    49 #define __ITextMessage_FWD_DEFINED__
    50 typedef interface ITextMessage ITextMessage;
    51 
    52 #endif 	/* __ITextMessage_FWD_DEFINED__ */
    53 
    54 
    55 #ifndef __IpEpEngine_FWD_DEFINED__
    56 #define __IpEpEngine_FWD_DEFINED__
    57 typedef interface IpEpEngine IpEpEngine;
    58 
    59 #endif 	/* __IpEpEngine_FWD_DEFINED__ */
    60 
    61 
    62 #ifndef ___IpEpEngineEvents_FWD_DEFINED__
    63 #define ___IpEpEngineEvents_FWD_DEFINED__
    64 typedef interface _IpEpEngineEvents _IpEpEngineEvents;
    65 
    66 #endif 	/* ___IpEpEngineEvents_FWD_DEFINED__ */
    67 
    68 
    69 #ifndef __pEpEngine_FWD_DEFINED__
    70 #define __pEpEngine_FWD_DEFINED__
    71 
    72 #ifdef __cplusplus
    73 typedef class pEpEngine pEpEngine;
    74 #else
    75 typedef struct pEpEngine pEpEngine;
    76 #endif /* __cplusplus */
    77 
    78 #endif 	/* __pEpEngine_FWD_DEFINED__ */
    79 
    80 
    81 #ifndef ___ITextMessageEvents_FWD_DEFINED__
    82 #define ___ITextMessageEvents_FWD_DEFINED__
    83 typedef interface _ITextMessageEvents _ITextMessageEvents;
    84 
    85 #endif 	/* ___ITextMessageEvents_FWD_DEFINED__ */
    86 
    87 
    88 #ifndef __TextMessage_FWD_DEFINED__
    89 #define __TextMessage_FWD_DEFINED__
    90 
    91 #ifdef __cplusplus
    92 typedef class TextMessage TextMessage;
    93 #else
    94 typedef struct TextMessage TextMessage;
    95 #endif /* __cplusplus */
    96 
    97 #endif 	/* __TextMessage_FWD_DEFINED__ */
    98 
    99 
   100 /* header files for imported files */
   101 #include "oaidl.h"
   102 #include "ocidl.h"
   103 
   104 #ifdef __cplusplus
   105 extern "C"{
   106 #endif 
   107 
   108 
   109 #ifndef __ITextMessage_INTERFACE_DEFINED__
   110 #define __ITextMessage_INTERFACE_DEFINED__
   111 
   112 /* interface ITextMessage */
   113 /* [unique][nonextensible][oleautomation][uuid][object] */ 
   114 
   115 typedef 
   116 enum _pEp_text_format
   117     {
   118         pEp_text_format_plain	= 0,
   119         pEp_text_format_html	= ( pEp_text_format_plain + 1 ) ,
   120         pEp_text_format_other	= 0xff
   121     } 	pEp_text_format;
   122 
   123 typedef 
   124 enum _pEp_msg_direction
   125     {
   126         pEp_dir_incoming	= 0,
   127         pEp_dir_outgoing	= ( pEp_dir_incoming + 1 ) 
   128     } 	pEp_msg_direction;
   129 
   130 typedef 
   131 enum _pEp_MIME_format
   132     {
   133         pEp_MIME_none	= 0,
   134         pEp_MIME_fields_omitted	= ( pEp_MIME_none + 1 ) ,
   135         pEp_MIME	= ( pEp_MIME_fields_omitted + 1 ) 
   136     } 	pEp_MIME_format;
   137 
   138 typedef 
   139 enum _pEp_enc_format
   140     {
   141         pEp_enc_none	= 0,
   142         pEp_enc_pieces	= ( pEp_enc_none + 1 ) ,
   143         pEp_enc_S_MIME	= ( pEp_enc_pieces + 1 ) ,
   144         pEp_enc_PGP_MIME	= ( pEp_enc_S_MIME + 1 ) ,
   145         pEp_enc_pEp	= ( pEp_enc_PGP_MIME + 1 ) 
   146     } 	pEp_enc_format;
   147 
   148 /* [uuid] */ struct  DECLSPEC_UUID("1292C31A-6486-427F-B29F-7F03607836DC") opt_field
   149     {
   150     BSTR name;
   151     BSTR value;
   152     } ;
   153 
   154 EXTERN_C const IID IID_ITextMessage;
   155 
   156 #if defined(__cplusplus) && !defined(CINTERFACE)
   157     
   158     MIDL_INTERFACE("161538F9-53C8-4D9C-8BA4-0FB43AEC7106")
   159     ITextMessage : public IUnknown
   160     {
   161     public:
   162         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_dir( 
   163             /* [retval][out] */ pEp_msg_direction *pVal) = 0;
   164         
   165         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_dir( 
   166             /* [in] */ pEp_msg_direction newVal) = 0;
   167         
   168         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_id( 
   169             /* [retval][out] */ BSTR *pVal) = 0;
   170         
   171         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_id( 
   172             /* [in] */ BSTR newVal) = 0;
   173         
   174         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_shortmsg( 
   175             /* [retval][out] */ BSTR *pVal) = 0;
   176         
   177         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_shortmsg( 
   178             /* [in] */ BSTR newVal) = 0;
   179         
   180         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_longmsg( 
   181             /* [retval][out] */ BSTR *pVal) = 0;
   182         
   183         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_longmsg( 
   184             /* [in] */ BSTR newVal) = 0;
   185         
   186         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_longmsg_formatted( 
   187             /* [retval][out] */ BSTR *pVal) = 0;
   188         
   189         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_longmsg_formatted( 
   190             /* [in] */ BSTR newVal) = 0;
   191         
   192         virtual HRESULT STDMETHODCALLTYPE add_attachment( 
   193             /* [in] */ SAFEARRAY * data,
   194             /* [in] */ BSTR mime_type,
   195             /* [in] */ BSTR filename) = 0;
   196         
   197         virtual HRESULT STDMETHODCALLTYPE has_attachments( 
   198             /* [retval][out] */ boolean *result) = 0;
   199         
   200         virtual HRESULT STDMETHODCALLTYPE next_attachment( 
   201             /* [out] */ SAFEARRAY * *data,
   202             /* [out] */ BSTR *mime_type,
   203             /* [out] */ BSTR *filename,
   204             /* [retval][out] */ boolean *result) = 0;
   205         
   206         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_sent( 
   207             /* [retval][out] */ hyper *result) = 0;
   208         
   209         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_sent( 
   210             /* [in] */ hyper val) = 0;
   211         
   212         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_recv( 
   213             /* [retval][out] */ hyper *result) = 0;
   214         
   215         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_recv( 
   216             /* [in] */ hyper val) = 0;
   217         
   218         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_from( 
   219             /* [retval][out] */ struct pEp_identity_s *pVal) = 0;
   220         
   221         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_from( 
   222             /* [in] */ struct pEp_identity_s *newVal) = 0;
   223         
   224         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_to( 
   225             /* [retval][out] */ SAFEARRAY * *pVal) = 0;
   226         
   227         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_to( 
   228             /* [in] */ SAFEARRAY * newVal) = 0;
   229         
   230         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_recv_by( 
   231             /* [retval][out] */ struct pEp_identity_s *pVal) = 0;
   232         
   233         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_recv_by( 
   234             /* [in] */ struct pEp_identity_s *newVal) = 0;
   235         
   236         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_cc( 
   237             /* [retval][out] */ SAFEARRAY * *pVal) = 0;
   238         
   239         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_cc( 
   240             /* [in] */ SAFEARRAY * newVal) = 0;
   241         
   242         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_bcc( 
   243             /* [retval][out] */ SAFEARRAY * *pVal) = 0;
   244         
   245         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_bcc( 
   246             /* [in] */ SAFEARRAY * newVal) = 0;
   247         
   248         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_reply_to( 
   249             /* [retval][out] */ SAFEARRAY * *pVal) = 0;
   250         
   251         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_reply_to( 
   252             /* [in] */ SAFEARRAY * newVal) = 0;
   253         
   254         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_references( 
   255             /* [retval][out] */ SAFEARRAY * *pVal) = 0;
   256         
   257         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_references( 
   258             /* [in] */ SAFEARRAY * newVal) = 0;
   259         
   260         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_keywords( 
   261             /* [retval][out] */ SAFEARRAY * *pVal) = 0;
   262         
   263         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_keywords( 
   264             /* [in] */ SAFEARRAY * newVal) = 0;
   265         
   266         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_comments( 
   267             /* [retval][out] */ BSTR *pVal) = 0;
   268         
   269         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_comments( 
   270             /* [in] */ BSTR newVal) = 0;
   271         
   272         virtual /* [propget] */ HRESULT STDMETHODCALLTYPE get_opt_fields( 
   273             /* [retval][out] */ SAFEARRAY * *pVal) = 0;
   274         
   275         virtual /* [propput] */ HRESULT STDMETHODCALLTYPE put_opt_fields( 
   276             /* [in] */ SAFEARRAY * newVal) = 0;
   277         
   278     };
   279     
   280     
   281 #else 	/* C style interface */
   282 
   283     typedef struct ITextMessageVtbl
   284     {
   285         BEGIN_INTERFACE
   286         
   287         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
   288             ITextMessage * This,
   289             /* [in] */ REFIID riid,
   290             /* [annotation][iid_is][out] */ 
   291             _COM_Outptr_  void **ppvObject);
   292         
   293         ULONG ( STDMETHODCALLTYPE *AddRef )( 
   294             ITextMessage * This);
   295         
   296         ULONG ( STDMETHODCALLTYPE *Release )( 
   297             ITextMessage * This);
   298         
   299         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_dir )( 
   300             ITextMessage * This,
   301             /* [retval][out] */ pEp_msg_direction *pVal);
   302         
   303         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_dir )( 
   304             ITextMessage * This,
   305             /* [in] */ pEp_msg_direction newVal);
   306         
   307         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_id )( 
   308             ITextMessage * This,
   309             /* [retval][out] */ BSTR *pVal);
   310         
   311         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_id )( 
   312             ITextMessage * This,
   313             /* [in] */ BSTR newVal);
   314         
   315         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_shortmsg )( 
   316             ITextMessage * This,
   317             /* [retval][out] */ BSTR *pVal);
   318         
   319         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_shortmsg )( 
   320             ITextMessage * This,
   321             /* [in] */ BSTR newVal);
   322         
   323         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_longmsg )( 
   324             ITextMessage * This,
   325             /* [retval][out] */ BSTR *pVal);
   326         
   327         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_longmsg )( 
   328             ITextMessage * This,
   329             /* [in] */ BSTR newVal);
   330         
   331         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_longmsg_formatted )( 
   332             ITextMessage * This,
   333             /* [retval][out] */ BSTR *pVal);
   334         
   335         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_longmsg_formatted )( 
   336             ITextMessage * This,
   337             /* [in] */ BSTR newVal);
   338         
   339         HRESULT ( STDMETHODCALLTYPE *add_attachment )( 
   340             ITextMessage * This,
   341             /* [in] */ SAFEARRAY * data,
   342             /* [in] */ BSTR mime_type,
   343             /* [in] */ BSTR filename);
   344         
   345         HRESULT ( STDMETHODCALLTYPE *has_attachments )( 
   346             ITextMessage * This,
   347             /* [retval][out] */ boolean *result);
   348         
   349         HRESULT ( STDMETHODCALLTYPE *next_attachment )( 
   350             ITextMessage * This,
   351             /* [out] */ SAFEARRAY * *data,
   352             /* [out] */ BSTR *mime_type,
   353             /* [out] */ BSTR *filename,
   354             /* [retval][out] */ boolean *result);
   355         
   356         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_sent )( 
   357             ITextMessage * This,
   358             /* [retval][out] */ hyper *result);
   359         
   360         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_sent )( 
   361             ITextMessage * This,
   362             /* [in] */ hyper val);
   363         
   364         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_recv )( 
   365             ITextMessage * This,
   366             /* [retval][out] */ hyper *result);
   367         
   368         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_recv )( 
   369             ITextMessage * This,
   370             /* [in] */ hyper val);
   371         
   372         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_from )( 
   373             ITextMessage * This,
   374             /* [retval][out] */ struct pEp_identity_s *pVal);
   375         
   376         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_from )( 
   377             ITextMessage * This,
   378             /* [in] */ struct pEp_identity_s *newVal);
   379         
   380         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_to )( 
   381             ITextMessage * This,
   382             /* [retval][out] */ SAFEARRAY * *pVal);
   383         
   384         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_to )( 
   385             ITextMessage * This,
   386             /* [in] */ SAFEARRAY * newVal);
   387         
   388         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_recv_by )( 
   389             ITextMessage * This,
   390             /* [retval][out] */ struct pEp_identity_s *pVal);
   391         
   392         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_recv_by )( 
   393             ITextMessage * This,
   394             /* [in] */ struct pEp_identity_s *newVal);
   395         
   396         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_cc )( 
   397             ITextMessage * This,
   398             /* [retval][out] */ SAFEARRAY * *pVal);
   399         
   400         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_cc )( 
   401             ITextMessage * This,
   402             /* [in] */ SAFEARRAY * newVal);
   403         
   404         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_bcc )( 
   405             ITextMessage * This,
   406             /* [retval][out] */ SAFEARRAY * *pVal);
   407         
   408         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_bcc )( 
   409             ITextMessage * This,
   410             /* [in] */ SAFEARRAY * newVal);
   411         
   412         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_reply_to )( 
   413             ITextMessage * This,
   414             /* [retval][out] */ SAFEARRAY * *pVal);
   415         
   416         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_reply_to )( 
   417             ITextMessage * This,
   418             /* [in] */ SAFEARRAY * newVal);
   419         
   420         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_references )( 
   421             ITextMessage * This,
   422             /* [retval][out] */ SAFEARRAY * *pVal);
   423         
   424         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_references )( 
   425             ITextMessage * This,
   426             /* [in] */ SAFEARRAY * newVal);
   427         
   428         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_keywords )( 
   429             ITextMessage * This,
   430             /* [retval][out] */ SAFEARRAY * *pVal);
   431         
   432         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_keywords )( 
   433             ITextMessage * This,
   434             /* [in] */ SAFEARRAY * newVal);
   435         
   436         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_comments )( 
   437             ITextMessage * This,
   438             /* [retval][out] */ BSTR *pVal);
   439         
   440         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_comments )( 
   441             ITextMessage * This,
   442             /* [in] */ BSTR newVal);
   443         
   444         /* [propget] */ HRESULT ( STDMETHODCALLTYPE *get_opt_fields )( 
   445             ITextMessage * This,
   446             /* [retval][out] */ SAFEARRAY * *pVal);
   447         
   448         /* [propput] */ HRESULT ( STDMETHODCALLTYPE *put_opt_fields )( 
   449             ITextMessage * This,
   450             /* [in] */ SAFEARRAY * newVal);
   451         
   452         END_INTERFACE
   453     } ITextMessageVtbl;
   454 
   455     interface ITextMessage
   456     {
   457         CONST_VTBL struct ITextMessageVtbl *lpVtbl;
   458     };
   459 
   460     
   461 
   462 #ifdef COBJMACROS
   463 
   464 
   465 #define ITextMessage_QueryInterface(This,riid,ppvObject)	\
   466     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
   467 
   468 #define ITextMessage_AddRef(This)	\
   469     ( (This)->lpVtbl -> AddRef(This) ) 
   470 
   471 #define ITextMessage_Release(This)	\
   472     ( (This)->lpVtbl -> Release(This) ) 
   473 
   474 
   475 #define ITextMessage_get_dir(This,pVal)	\
   476     ( (This)->lpVtbl -> get_dir(This,pVal) ) 
   477 
   478 #define ITextMessage_put_dir(This,newVal)	\
   479     ( (This)->lpVtbl -> put_dir(This,newVal) ) 
   480 
   481 #define ITextMessage_get_id(This,pVal)	\
   482     ( (This)->lpVtbl -> get_id(This,pVal) ) 
   483 
   484 #define ITextMessage_put_id(This,newVal)	\
   485     ( (This)->lpVtbl -> put_id(This,newVal) ) 
   486 
   487 #define ITextMessage_get_shortmsg(This,pVal)	\
   488     ( (This)->lpVtbl -> get_shortmsg(This,pVal) ) 
   489 
   490 #define ITextMessage_put_shortmsg(This,newVal)	\
   491     ( (This)->lpVtbl -> put_shortmsg(This,newVal) ) 
   492 
   493 #define ITextMessage_get_longmsg(This,pVal)	\
   494     ( (This)->lpVtbl -> get_longmsg(This,pVal) ) 
   495 
   496 #define ITextMessage_put_longmsg(This,newVal)	\
   497     ( (This)->lpVtbl -> put_longmsg(This,newVal) ) 
   498 
   499 #define ITextMessage_get_longmsg_formatted(This,pVal)	\
   500     ( (This)->lpVtbl -> get_longmsg_formatted(This,pVal) ) 
   501 
   502 #define ITextMessage_put_longmsg_formatted(This,newVal)	\
   503     ( (This)->lpVtbl -> put_longmsg_formatted(This,newVal) ) 
   504 
   505 #define ITextMessage_add_attachment(This,data,mime_type,filename)	\
   506     ( (This)->lpVtbl -> add_attachment(This,data,mime_type,filename) ) 
   507 
   508 #define ITextMessage_has_attachments(This,result)	\
   509     ( (This)->lpVtbl -> has_attachments(This,result) ) 
   510 
   511 #define ITextMessage_next_attachment(This,data,mime_type,filename,result)	\
   512     ( (This)->lpVtbl -> next_attachment(This,data,mime_type,filename,result) ) 
   513 
   514 #define ITextMessage_get_sent(This,result)	\
   515     ( (This)->lpVtbl -> get_sent(This,result) ) 
   516 
   517 #define ITextMessage_put_sent(This,val)	\
   518     ( (This)->lpVtbl -> put_sent(This,val) ) 
   519 
   520 #define ITextMessage_get_recv(This,result)	\
   521     ( (This)->lpVtbl -> get_recv(This,result) ) 
   522 
   523 #define ITextMessage_put_recv(This,val)	\
   524     ( (This)->lpVtbl -> put_recv(This,val) ) 
   525 
   526 #define ITextMessage_get_from(This,pVal)	\
   527     ( (This)->lpVtbl -> get_from(This,pVal) ) 
   528 
   529 #define ITextMessage_put_from(This,newVal)	\
   530     ( (This)->lpVtbl -> put_from(This,newVal) ) 
   531 
   532 #define ITextMessage_get_to(This,pVal)	\
   533     ( (This)->lpVtbl -> get_to(This,pVal) ) 
   534 
   535 #define ITextMessage_put_to(This,newVal)	\
   536     ( (This)->lpVtbl -> put_to(This,newVal) ) 
   537 
   538 #define ITextMessage_get_recv_by(This,pVal)	\
   539     ( (This)->lpVtbl -> get_recv_by(This,pVal) ) 
   540 
   541 #define ITextMessage_put_recv_by(This,newVal)	\
   542     ( (This)->lpVtbl -> put_recv_by(This,newVal) ) 
   543 
   544 #define ITextMessage_get_cc(This,pVal)	\
   545     ( (This)->lpVtbl -> get_cc(This,pVal) ) 
   546 
   547 #define ITextMessage_put_cc(This,newVal)	\
   548     ( (This)->lpVtbl -> put_cc(This,newVal) ) 
   549 
   550 #define ITextMessage_get_bcc(This,pVal)	\
   551     ( (This)->lpVtbl -> get_bcc(This,pVal) ) 
   552 
   553 #define ITextMessage_put_bcc(This,newVal)	\
   554     ( (This)->lpVtbl -> put_bcc(This,newVal) ) 
   555 
   556 #define ITextMessage_get_reply_to(This,pVal)	\
   557     ( (This)->lpVtbl -> get_reply_to(This,pVal) ) 
   558 
   559 #define ITextMessage_put_reply_to(This,newVal)	\
   560     ( (This)->lpVtbl -> put_reply_to(This,newVal) ) 
   561 
   562 #define ITextMessage_get_references(This,pVal)	\
   563     ( (This)->lpVtbl -> get_references(This,pVal) ) 
   564 
   565 #define ITextMessage_put_references(This,newVal)	\
   566     ( (This)->lpVtbl -> put_references(This,newVal) ) 
   567 
   568 #define ITextMessage_get_keywords(This,pVal)	\
   569     ( (This)->lpVtbl -> get_keywords(This,pVal) ) 
   570 
   571 #define ITextMessage_put_keywords(This,newVal)	\
   572     ( (This)->lpVtbl -> put_keywords(This,newVal) ) 
   573 
   574 #define ITextMessage_get_comments(This,pVal)	\
   575     ( (This)->lpVtbl -> get_comments(This,pVal) ) 
   576 
   577 #define ITextMessage_put_comments(This,newVal)	\
   578     ( (This)->lpVtbl -> put_comments(This,newVal) ) 
   579 
   580 #define ITextMessage_get_opt_fields(This,pVal)	\
   581     ( (This)->lpVtbl -> get_opt_fields(This,pVal) ) 
   582 
   583 #define ITextMessage_put_opt_fields(This,newVal)	\
   584     ( (This)->lpVtbl -> put_opt_fields(This,newVal) ) 
   585 
   586 #endif /* COBJMACROS */
   587 
   588 
   589 #endif 	/* C style interface */
   590 
   591 
   592 
   593 
   594 #endif 	/* __ITextMessage_INTERFACE_DEFINED__ */
   595 
   596 
   597 #ifndef __IpEpEngine_INTERFACE_DEFINED__
   598 #define __IpEpEngine_INTERFACE_DEFINED__
   599 
   600 /* interface IpEpEngine */
   601 /* [unique][nonextensible][oleautomation][uuid][object] */ 
   602 
   603 typedef 
   604 enum _pEp_STATUS
   605     {
   606         pEp_STATUS_OK	= 0,
   607         pEp_KEY_NOT_FOUND	= 0x201,
   608         pEp_KEY_HAS_AMBIG_NAME	= 0x202,
   609         pEp_GET_KEY_FAILED	= 0x203,
   610         pEp_UNENCRYPTED	= 0x400,
   611         pEp_VERIFIED	= 0x401,
   612         pEp_DECRYPTED	= 0x402,
   613         pEp_DECRYPTED_AND_VERIFIED	= 0x403,
   614         pEp_DECRYPT_WRONG_FORMAT	= 0x404,
   615         pEp_DECRYPT_NO_KEY	= 0x405,
   616         pEp_DECRYPT_SIGNATURE_DOES_NOT_MATCH	= 0x406,
   617         pEp_VERIFY_NO_KEY	= 0x407,
   618         pEp_VERIFIED_AND_TRUSTED	= 0x408,
   619         pEp_ILLEGAL_VALUE	= -4,
   620         pEp_BUFFER_TOO_SMALL	= -3,
   621         pEp_OUT_OF_MEMORY	= -2,
   622         pEp_UNKNOWN_ERROR	= -1
   623     } 	pEp_STATUS;
   624 
   625 typedef 
   626 enum _pEp_comm_type
   627     {
   628         pEp_ct_unknown	= 0,
   629         pEp_ct_no_encryption	= 0x1,
   630         pEp_ct_no_encrypted_channel	= 0x2,
   631         pEp_ct_key_not_found	= 0x3,
   632         pEp_ct_key_expired	= 0x4,
   633         pEp_ct_key_revoked	= 0x5,
   634         pEp_ct_key_b0rken	= 0x6,
   635         pEp_ct_my_key_not_included	= 0x9,
   636         pEp_ct_security_by_obscurity	= 0xa,
   637         pEp_ct_b0rken_crypto	= 0xb,
   638         pEp_ct_key_too_short	= 0xe,
   639         pEp_ct_compromized	= 0xf,
   640         pEp_ct_unconfirmed_encryption	= 0x10,
   641         pEp_ct_OpenPGP_1024_RSA_unconfirmed	= 0x11,
   642         pEp_ct_OpenPGP_unconfirmed	= 0x3f,
   643         pEp_ct_unconfirmed_enc_anon	= 0x40,
   644         pEp_ct_pEp_unconfirmed	= 0x7f,
   645         pEp_ct_confirmed	= 0x80,
   646         pEp_ct_confirmed_encryption	= 0x90,
   647         pEp_ct_OpenPGP_1024_RSA	= 0x91,
   648         pEp_ct_OpenPGP	= 0xbf,
   649         pEp_ct_confirmed_enc_anon	= 0xc0,
   650         pEp_ct_pEp	= 0xff
   651     } 	pEp_comm_type;
   652 
   653 /* [uuid] */ struct  DECLSPEC_UUID("0CB90E62-8A6A-4CA0-99D7-481704051FF0") pEp_identity_s
   654     {
   655     BSTR address;
   656     BSTR fpr;
   657     BSTR user_id;
   658     BSTR username;
   659     pEp_comm_type comm_type;
   660     BSTR lang;
   661     } ;
   662 typedef 
   663 enum _pEp_color
   664     {
   665         pEp_rating_undefined	= 0,
   666         pEp_rating_cannot_decrypt	= ( pEp_rating_undefined + 1 ) ,
   667         pEp_rating_have_no_key	= ( pEp_rating_cannot_decrypt + 1 ) ,
   668         pEp_rating_unencrypted	= ( pEp_rating_have_no_key + 1 ) ,
   669         pEp_rating_unreliable	= ( pEp_rating_unencrypted + 1 ) ,
   670         pEp_rating_reliable	= ( pEp_rating_unreliable + 1 ) ,
   671         pEp_rating_yellow	= pEp_rating_reliable,
   672         pEp_rating_trusted	= ( pEp_rating_yellow + 1 ) ,
   673         pEp_rating_green	= pEp_rating_trusted,
   674         pEp_rating_trusted_and_anonymized	= ( pEp_rating_green + 1 ) ,
   675         pEp_rating_fully_anonymous	= ( pEp_rating_trusted_and_anonymized + 1 ) ,
   676         pEp_rating_under_attack	= -1,
   677         pEp_rating_red	= pEp_rating_under_attack,
   678         pEp_rating_b0rken	= -2
   679     } 	pEp_color;
   680 
   681 
   682 EXTERN_C const IID IID_IpEpEngine;
   683 
   684 #if defined(__cplusplus) && !defined(CINTERFACE)
   685     
   686     MIDL_INTERFACE("9A9F4422-CF0A-45D7-90CD-1D1B7B2A4540")
   687     IpEpEngine : public IUnknown
   688     {
   689     public:
   690         virtual HRESULT STDMETHODCALLTYPE log( 
   691             /* [in] */ BSTR title,
   692             /* [in] */ BSTR entity,
   693             /* [defaultvalue][in] */ BSTR description = L"",
   694             /* [defaultvalue][in] */ BSTR comment = L"") = 0;
   695         
   696         virtual HRESULT STDMETHODCALLTYPE decrypt( 
   697             /* [in] */ BSTR ctext,
   698             /* [out] */ BSTR *ptext,
   699             /* [out] */ SAFEARRAY * *key_list,
   700             /* [retval][out] */ pEp_STATUS *decrypt_status) = 0;
   701         
   702         virtual HRESULT STDMETHODCALLTYPE decrypt_b( 
   703             /* [in] */ BSTR ctext,
   704             /* [out] */ SAFEARRAY * *ptext,
   705             /* [out] */ SAFEARRAY * *key_list,
   706             /* [retval][out] */ pEp_STATUS *decrypt_status) = 0;
   707         
   708         virtual HRESULT STDMETHODCALLTYPE encrypt( 
   709             /* [in] */ SAFEARRAY * key_list,
   710             /* [in] */ BSTR ptext,
   711             /* [out] */ BSTR *ctext,
   712             /* [retval][out] */ pEp_STATUS *status) = 0;
   713         
   714         virtual HRESULT STDMETHODCALLTYPE encrypt_b( 
   715             /* [in] */ SAFEARRAY * key_list,
   716             /* [in] */ SAFEARRAY * ptext,
   717             /* [out] */ BSTR *ctext,
   718             /* [retval][out] */ pEp_STATUS *status) = 0;
   719         
   720         virtual HRESULT STDMETHODCALLTYPE verify( 
   721             /* [in] */ BSTR text,
   722             /* [in] */ BSTR signature,
   723             /* [out] */ SAFEARRAY * *key_list,
   724             /* [retval][out] */ pEp_STATUS *verify_status) = 0;
   725         
   726         virtual HRESULT STDMETHODCALLTYPE trustword( 
   727             /* [in] */ LONG value,
   728             /* [defaultvalue][in] */ BSTR lang,
   729             /* [retval][out] */ BSTR *word) = 0;
   730         
   731         virtual HRESULT STDMETHODCALLTYPE trustwords( 
   732             /* [in] */ BSTR fpr,
   733             /* [defaultvalue][in] */ BSTR lang,
   734             /* [defaultvalue][in] */ LONG max_words,
   735             /* [retval][out] */ BSTR *words) = 0;
   736         
   737         virtual HRESULT STDMETHODCALLTYPE get_identity( 
   738             /* [in] */ BSTR address,
   739             /* [retval][out] */ struct pEp_identity_s *ident) = 0;
   740         
   741         virtual HRESULT STDMETHODCALLTYPE set_identity( 
   742             /* [in] */ struct pEp_identity_s *ident) = 0;
   743         
   744         virtual HRESULT STDMETHODCALLTYPE generate_keypair( 
   745             /* [in] */ struct pEp_identity_s *ident,
   746             /* [retval][out] */ BSTR *fpr) = 0;
   747         
   748         virtual HRESULT STDMETHODCALLTYPE delete_keypair( 
   749             /* [in] */ BSTR fpr) = 0;
   750         
   751         virtual HRESULT STDMETHODCALLTYPE import_key( 
   752             /* [in] */ BSTR key_data) = 0;
   753         
   754         virtual HRESULT STDMETHODCALLTYPE import_key_b( 
   755             /* [in] */ SAFEARRAY * key_data) = 0;
   756         
   757         virtual HRESULT STDMETHODCALLTYPE export_key( 
   758             /* [in] */ BSTR fpr,
   759             /* [retval][out] */ BSTR *key_data) = 0;
   760         
   761         virtual HRESULT STDMETHODCALLTYPE recv_key( 
   762             /* [in] */ BSTR pattern) = 0;
   763         
   764         virtual HRESULT STDMETHODCALLTYPE find_keys( 
   765             /* [in] */ BSTR pattern,
   766             /* [retval][out] */ SAFEARRAY * *key_list) = 0;
   767         
   768         virtual HRESULT STDMETHODCALLTYPE send_key( 
   769             /* [in] */ BSTR pattern) = 0;
   770         
   771         virtual HRESULT STDMETHODCALLTYPE start_keyserver_lookup( void) = 0;
   772         
   773         virtual HRESULT STDMETHODCALLTYPE stop_keyserver_lookup( void) = 0;
   774         
   775         virtual HRESULT STDMETHODCALLTYPE examine_identity( 
   776             /* [in] */ struct pEp_identity_s *ident) = 0;
   777         
   778         virtual HRESULT STDMETHODCALLTYPE myself( 
   779             /* [in] */ struct pEp_identity_s *ident,
   780             /* [retval][out] */ struct pEp_identity_s *result) = 0;
   781         
   782         virtual HRESULT STDMETHODCALLTYPE update_identity( 
   783             /* [in] */ struct pEp_identity_s *ident,
   784             /* [retval][out] */ struct pEp_identity_s *result) = 0;
   785         
   786         virtual HRESULT STDMETHODCALLTYPE key_compromized( 
   787             /* [in] */ BSTR fpr) = 0;
   788         
   789         virtual HRESULT STDMETHODCALLTYPE encrypt_message( 
   790             /* [in] */ ITextMessage *src,
   791             /* [out] */ ITextMessage **dst,
   792             /* [in] */ SAFEARRAY * extra) = 0;
   793         
   794         virtual HRESULT STDMETHODCALLTYPE decrypt_message( 
   795             /* [in] */ ITextMessage *src,
   796             /* [out] */ ITextMessage **dst,
   797             /* [out] */ SAFEARRAY * *keylist,
   798             /* [retval][out] */ pEp_color *rating) = 0;
   799         
   800         virtual HRESULT STDMETHODCALLTYPE outgoing_message_color( 
   801             /* [in] */ ITextMessage *msg,
   802             /* [retval][out] */ pEp_color *pVal) = 0;
   803         
   804         virtual HRESULT STDMETHODCALLTYPE identity_color( 
   805             /* [in] */ struct pEp_identity_s *ident,
   806             /* [retval][out] */ pEp_color *pVal) = 0;
   807         
   808     };
   809     
   810     
   811 #else 	/* C style interface */
   812 
   813     typedef struct IpEpEngineVtbl
   814     {
   815         BEGIN_INTERFACE
   816         
   817         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
   818             IpEpEngine * This,
   819             /* [in] */ REFIID riid,
   820             /* [annotation][iid_is][out] */ 
   821             _COM_Outptr_  void **ppvObject);
   822         
   823         ULONG ( STDMETHODCALLTYPE *AddRef )( 
   824             IpEpEngine * This);
   825         
   826         ULONG ( STDMETHODCALLTYPE *Release )( 
   827             IpEpEngine * This);
   828         
   829         HRESULT ( STDMETHODCALLTYPE *log )( 
   830             IpEpEngine * This,
   831             /* [in] */ BSTR title,
   832             /* [in] */ BSTR entity,
   833             /* [defaultvalue][in] */ BSTR description,
   834             /* [defaultvalue][in] */ BSTR comment);
   835         
   836         HRESULT ( STDMETHODCALLTYPE *decrypt )( 
   837             IpEpEngine * This,
   838             /* [in] */ BSTR ctext,
   839             /* [out] */ BSTR *ptext,
   840             /* [out] */ SAFEARRAY * *key_list,
   841             /* [retval][out] */ pEp_STATUS *decrypt_status);
   842         
   843         HRESULT ( STDMETHODCALLTYPE *decrypt_b )( 
   844             IpEpEngine * This,
   845             /* [in] */ BSTR ctext,
   846             /* [out] */ SAFEARRAY * *ptext,
   847             /* [out] */ SAFEARRAY * *key_list,
   848             /* [retval][out] */ pEp_STATUS *decrypt_status);
   849         
   850         HRESULT ( STDMETHODCALLTYPE *encrypt )( 
   851             IpEpEngine * This,
   852             /* [in] */ SAFEARRAY * key_list,
   853             /* [in] */ BSTR ptext,
   854             /* [out] */ BSTR *ctext,
   855             /* [retval][out] */ pEp_STATUS *status);
   856         
   857         HRESULT ( STDMETHODCALLTYPE *encrypt_b )( 
   858             IpEpEngine * This,
   859             /* [in] */ SAFEARRAY * key_list,
   860             /* [in] */ SAFEARRAY * ptext,
   861             /* [out] */ BSTR *ctext,
   862             /* [retval][out] */ pEp_STATUS *status);
   863         
   864         HRESULT ( STDMETHODCALLTYPE *verify )( 
   865             IpEpEngine * This,
   866             /* [in] */ BSTR text,
   867             /* [in] */ BSTR signature,
   868             /* [out] */ SAFEARRAY * *key_list,
   869             /* [retval][out] */ pEp_STATUS *verify_status);
   870         
   871         HRESULT ( STDMETHODCALLTYPE *trustword )( 
   872             IpEpEngine * This,
   873             /* [in] */ LONG value,
   874             /* [defaultvalue][in] */ BSTR lang,
   875             /* [retval][out] */ BSTR *word);
   876         
   877         HRESULT ( STDMETHODCALLTYPE *trustwords )( 
   878             IpEpEngine * This,
   879             /* [in] */ BSTR fpr,
   880             /* [defaultvalue][in] */ BSTR lang,
   881             /* [defaultvalue][in] */ LONG max_words,
   882             /* [retval][out] */ BSTR *words);
   883         
   884         HRESULT ( STDMETHODCALLTYPE *get_identity )( 
   885             IpEpEngine * This,
   886             /* [in] */ BSTR address,
   887             /* [retval][out] */ struct pEp_identity_s *ident);
   888         
   889         HRESULT ( STDMETHODCALLTYPE *set_identity )( 
   890             IpEpEngine * This,
   891             /* [in] */ struct pEp_identity_s *ident);
   892         
   893         HRESULT ( STDMETHODCALLTYPE *generate_keypair )( 
   894             IpEpEngine * This,
   895             /* [in] */ struct pEp_identity_s *ident,
   896             /* [retval][out] */ BSTR *fpr);
   897         
   898         HRESULT ( STDMETHODCALLTYPE *delete_keypair )( 
   899             IpEpEngine * This,
   900             /* [in] */ BSTR fpr);
   901         
   902         HRESULT ( STDMETHODCALLTYPE *import_key )( 
   903             IpEpEngine * This,
   904             /* [in] */ BSTR key_data);
   905         
   906         HRESULT ( STDMETHODCALLTYPE *import_key_b )( 
   907             IpEpEngine * This,
   908             /* [in] */ SAFEARRAY * key_data);
   909         
   910         HRESULT ( STDMETHODCALLTYPE *export_key )( 
   911             IpEpEngine * This,
   912             /* [in] */ BSTR fpr,
   913             /* [retval][out] */ BSTR *key_data);
   914         
   915         HRESULT ( STDMETHODCALLTYPE *recv_key )( 
   916             IpEpEngine * This,
   917             /* [in] */ BSTR pattern);
   918         
   919         HRESULT ( STDMETHODCALLTYPE *find_keys )( 
   920             IpEpEngine * This,
   921             /* [in] */ BSTR pattern,
   922             /* [retval][out] */ SAFEARRAY * *key_list);
   923         
   924         HRESULT ( STDMETHODCALLTYPE *send_key )( 
   925             IpEpEngine * This,
   926             /* [in] */ BSTR pattern);
   927         
   928         HRESULT ( STDMETHODCALLTYPE *start_keyserver_lookup )( 
   929             IpEpEngine * This);
   930         
   931         HRESULT ( STDMETHODCALLTYPE *stop_keyserver_lookup )( 
   932             IpEpEngine * This);
   933         
   934         HRESULT ( STDMETHODCALLTYPE *examine_identity )( 
   935             IpEpEngine * This,
   936             /* [in] */ struct pEp_identity_s *ident);
   937         
   938         HRESULT ( STDMETHODCALLTYPE *myself )( 
   939             IpEpEngine * This,
   940             /* [in] */ struct pEp_identity_s *ident,
   941             /* [retval][out] */ struct pEp_identity_s *result);
   942         
   943         HRESULT ( STDMETHODCALLTYPE *update_identity )( 
   944             IpEpEngine * This,
   945             /* [in] */ struct pEp_identity_s *ident,
   946             /* [retval][out] */ struct pEp_identity_s *result);
   947         
   948         HRESULT ( STDMETHODCALLTYPE *key_compromized )( 
   949             IpEpEngine * This,
   950             /* [in] */ BSTR fpr);
   951         
   952         HRESULT ( STDMETHODCALLTYPE *encrypt_message )( 
   953             IpEpEngine * This,
   954             /* [in] */ ITextMessage *src,
   955             /* [out] */ ITextMessage **dst,
   956             /* [in] */ SAFEARRAY * extra);
   957         
   958         HRESULT ( STDMETHODCALLTYPE *decrypt_message )( 
   959             IpEpEngine * This,
   960             /* [in] */ ITextMessage *src,
   961             /* [out] */ ITextMessage **dst,
   962             /* [out] */ SAFEARRAY * *keylist,
   963             /* [retval][out] */ pEp_color *rating);
   964         
   965         HRESULT ( STDMETHODCALLTYPE *outgoing_message_color )( 
   966             IpEpEngine * This,
   967             /* [in] */ ITextMessage *msg,
   968             /* [retval][out] */ pEp_color *pVal);
   969         
   970         HRESULT ( STDMETHODCALLTYPE *identity_color )( 
   971             IpEpEngine * This,
   972             /* [in] */ struct pEp_identity_s *ident,
   973             /* [retval][out] */ pEp_color *pVal);
   974         
   975         END_INTERFACE
   976     } IpEpEngineVtbl;
   977 
   978     interface IpEpEngine
   979     {
   980         CONST_VTBL struct IpEpEngineVtbl *lpVtbl;
   981     };
   982 
   983     
   984 
   985 #ifdef COBJMACROS
   986 
   987 
   988 #define IpEpEngine_QueryInterface(This,riid,ppvObject)	\
   989     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
   990 
   991 #define IpEpEngine_AddRef(This)	\
   992     ( (This)->lpVtbl -> AddRef(This) ) 
   993 
   994 #define IpEpEngine_Release(This)	\
   995     ( (This)->lpVtbl -> Release(This) ) 
   996 
   997 
   998 #define IpEpEngine_log(This,title,entity,description,comment)	\
   999     ( (This)->lpVtbl -> log(This,title,entity,description,comment) ) 
  1000 
  1001 #define IpEpEngine_decrypt(This,ctext,ptext,key_list,decrypt_status)	\
  1002     ( (This)->lpVtbl -> decrypt(This,ctext,ptext,key_list,decrypt_status) ) 
  1003 
  1004 #define IpEpEngine_decrypt_b(This,ctext,ptext,key_list,decrypt_status)	\
  1005     ( (This)->lpVtbl -> decrypt_b(This,ctext,ptext,key_list,decrypt_status) ) 
  1006 
  1007 #define IpEpEngine_encrypt(This,key_list,ptext,ctext,status)	\
  1008     ( (This)->lpVtbl -> encrypt(This,key_list,ptext,ctext,status) ) 
  1009 
  1010 #define IpEpEngine_encrypt_b(This,key_list,ptext,ctext,status)	\
  1011     ( (This)->lpVtbl -> encrypt_b(This,key_list,ptext,ctext,status) ) 
  1012 
  1013 #define IpEpEngine_verify(This,text,signature,key_list,verify_status)	\
  1014     ( (This)->lpVtbl -> verify(This,text,signature,key_list,verify_status) ) 
  1015 
  1016 #define IpEpEngine_trustword(This,value,lang,word)	\
  1017     ( (This)->lpVtbl -> trustword(This,value,lang,word) ) 
  1018 
  1019 #define IpEpEngine_trustwords(This,fpr,lang,max_words,words)	\
  1020     ( (This)->lpVtbl -> trustwords(This,fpr,lang,max_words,words) ) 
  1021 
  1022 #define IpEpEngine_get_identity(This,address,ident)	\
  1023     ( (This)->lpVtbl -> get_identity(This,address,ident) ) 
  1024 
  1025 #define IpEpEngine_set_identity(This,ident)	\
  1026     ( (This)->lpVtbl -> set_identity(This,ident) ) 
  1027 
  1028 #define IpEpEngine_generate_keypair(This,ident,fpr)	\
  1029     ( (This)->lpVtbl -> generate_keypair(This,ident,fpr) ) 
  1030 
  1031 #define IpEpEngine_delete_keypair(This,fpr)	\
  1032     ( (This)->lpVtbl -> delete_keypair(This,fpr) ) 
  1033 
  1034 #define IpEpEngine_import_key(This,key_data)	\
  1035     ( (This)->lpVtbl -> import_key(This,key_data) ) 
  1036 
  1037 #define IpEpEngine_import_key_b(This,key_data)	\
  1038     ( (This)->lpVtbl -> import_key_b(This,key_data) ) 
  1039 
  1040 #define IpEpEngine_export_key(This,fpr,key_data)	\
  1041     ( (This)->lpVtbl -> export_key(This,fpr,key_data) ) 
  1042 
  1043 #define IpEpEngine_recv_key(This,pattern)	\
  1044     ( (This)->lpVtbl -> recv_key(This,pattern) ) 
  1045 
  1046 #define IpEpEngine_find_keys(This,pattern,key_list)	\
  1047     ( (This)->lpVtbl -> find_keys(This,pattern,key_list) ) 
  1048 
  1049 #define IpEpEngine_send_key(This,pattern)	\
  1050     ( (This)->lpVtbl -> send_key(This,pattern) ) 
  1051 
  1052 #define IpEpEngine_start_keyserver_lookup(This)	\
  1053     ( (This)->lpVtbl -> start_keyserver_lookup(This) ) 
  1054 
  1055 #define IpEpEngine_stop_keyserver_lookup(This)	\
  1056     ( (This)->lpVtbl -> stop_keyserver_lookup(This) ) 
  1057 
  1058 #define IpEpEngine_examine_identity(This,ident)	\
  1059     ( (This)->lpVtbl -> examine_identity(This,ident) ) 
  1060 
  1061 #define IpEpEngine_myself(This,ident,result)	\
  1062     ( (This)->lpVtbl -> myself(This,ident,result) ) 
  1063 
  1064 #define IpEpEngine_update_identity(This,ident,result)	\
  1065     ( (This)->lpVtbl -> update_identity(This,ident,result) ) 
  1066 
  1067 #define IpEpEngine_key_compromized(This,fpr)	\
  1068     ( (This)->lpVtbl -> key_compromized(This,fpr) ) 
  1069 
  1070 #define IpEpEngine_encrypt_message(This,src,dst,extra)	\
  1071     ( (This)->lpVtbl -> encrypt_message(This,src,dst,extra) ) 
  1072 
  1073 #define IpEpEngine_decrypt_message(This,src,dst,keylist,rating)	\
  1074     ( (This)->lpVtbl -> decrypt_message(This,src,dst,keylist,rating) ) 
  1075 
  1076 #define IpEpEngine_outgoing_message_color(This,msg,pVal)	\
  1077     ( (This)->lpVtbl -> outgoing_message_color(This,msg,pVal) ) 
  1078 
  1079 #define IpEpEngine_identity_color(This,ident,pVal)	\
  1080     ( (This)->lpVtbl -> identity_color(This,ident,pVal) ) 
  1081 
  1082 #endif /* COBJMACROS */
  1083 
  1084 
  1085 #endif 	/* C style interface */
  1086 
  1087 
  1088 
  1089 
  1090 #endif 	/* __IpEpEngine_INTERFACE_DEFINED__ */
  1091 
  1092 
  1093 
  1094 #ifndef __pEpCOMServerAdapterLib_LIBRARY_DEFINED__
  1095 #define __pEpCOMServerAdapterLib_LIBRARY_DEFINED__
  1096 
  1097 /* library pEpCOMServerAdapterLib */
  1098 /* [version][uuid] */ 
  1099 
  1100 
  1101 EXTERN_C const IID LIBID_pEpCOMServerAdapterLib;
  1102 
  1103 #ifndef ___IpEpEngineEvents_DISPINTERFACE_DEFINED__
  1104 #define ___IpEpEngineEvents_DISPINTERFACE_DEFINED__
  1105 
  1106 /* dispinterface _IpEpEngineEvents */
  1107 /* [uuid] */ 
  1108 
  1109 
  1110 EXTERN_C const IID DIID__IpEpEngineEvents;
  1111 
  1112 #if defined(__cplusplus) && !defined(CINTERFACE)
  1113 
  1114     MIDL_INTERFACE("B6BC9B8E-D9E2-4419-A3A4-7B4B58175549")
  1115     _IpEpEngineEvents : public IDispatch
  1116     {
  1117     };
  1118     
  1119 #else 	/* C style interface */
  1120 
  1121     typedef struct _IpEpEngineEventsVtbl
  1122     {
  1123         BEGIN_INTERFACE
  1124         
  1125         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1126             _IpEpEngineEvents * This,
  1127             /* [in] */ REFIID riid,
  1128             /* [annotation][iid_is][out] */ 
  1129             _COM_Outptr_  void **ppvObject);
  1130         
  1131         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1132             _IpEpEngineEvents * This);
  1133         
  1134         ULONG ( STDMETHODCALLTYPE *Release )( 
  1135             _IpEpEngineEvents * This);
  1136         
  1137         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1138             _IpEpEngineEvents * This,
  1139             /* [out] */ UINT *pctinfo);
  1140         
  1141         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1142             _IpEpEngineEvents * This,
  1143             /* [in] */ UINT iTInfo,
  1144             /* [in] */ LCID lcid,
  1145             /* [out] */ ITypeInfo **ppTInfo);
  1146         
  1147         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1148             _IpEpEngineEvents * This,
  1149             /* [in] */ REFIID riid,
  1150             /* [size_is][in] */ LPOLESTR *rgszNames,
  1151             /* [range][in] */ UINT cNames,
  1152             /* [in] */ LCID lcid,
  1153             /* [size_is][out] */ DISPID *rgDispId);
  1154         
  1155         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1156             _IpEpEngineEvents * This,
  1157             /* [annotation][in] */ 
  1158             _In_  DISPID dispIdMember,
  1159             /* [annotation][in] */ 
  1160             _In_  REFIID riid,
  1161             /* [annotation][in] */ 
  1162             _In_  LCID lcid,
  1163             /* [annotation][in] */ 
  1164             _In_  WORD wFlags,
  1165             /* [annotation][out][in] */ 
  1166             _In_  DISPPARAMS *pDispParams,
  1167             /* [annotation][out] */ 
  1168             _Out_opt_  VARIANT *pVarResult,
  1169             /* [annotation][out] */ 
  1170             _Out_opt_  EXCEPINFO *pExcepInfo,
  1171             /* [annotation][out] */ 
  1172             _Out_opt_  UINT *puArgErr);
  1173         
  1174         END_INTERFACE
  1175     } _IpEpEngineEventsVtbl;
  1176 
  1177     interface _IpEpEngineEvents
  1178     {
  1179         CONST_VTBL struct _IpEpEngineEventsVtbl *lpVtbl;
  1180     };
  1181 
  1182     
  1183 
  1184 #ifdef COBJMACROS
  1185 
  1186 
  1187 #define _IpEpEngineEvents_QueryInterface(This,riid,ppvObject)	\
  1188     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
  1189 
  1190 #define _IpEpEngineEvents_AddRef(This)	\
  1191     ( (This)->lpVtbl -> AddRef(This) ) 
  1192 
  1193 #define _IpEpEngineEvents_Release(This)	\
  1194     ( (This)->lpVtbl -> Release(This) ) 
  1195 
  1196 
  1197 #define _IpEpEngineEvents_GetTypeInfoCount(This,pctinfo)	\
  1198     ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 
  1199 
  1200 #define _IpEpEngineEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
  1201     ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 
  1202 
  1203 #define _IpEpEngineEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
  1204     ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 
  1205 
  1206 #define _IpEpEngineEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
  1207     ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 
  1208 
  1209 #endif /* COBJMACROS */
  1210 
  1211 
  1212 #endif 	/* C style interface */
  1213 
  1214 
  1215 #endif 	/* ___IpEpEngineEvents_DISPINTERFACE_DEFINED__ */
  1216 
  1217 
  1218 EXTERN_C const CLSID CLSID_pEpEngine;
  1219 
  1220 #ifdef __cplusplus
  1221 
  1222 class DECLSPEC_UUID("EF1B073D-5058-4E0E-829E-B4D22CA21EA2")
  1223 pEpEngine;
  1224 #endif
  1225 
  1226 #ifndef ___ITextMessageEvents_DISPINTERFACE_DEFINED__
  1227 #define ___ITextMessageEvents_DISPINTERFACE_DEFINED__
  1228 
  1229 /* dispinterface _ITextMessageEvents */
  1230 /* [uuid] */ 
  1231 
  1232 
  1233 EXTERN_C const IID DIID__ITextMessageEvents;
  1234 
  1235 #if defined(__cplusplus) && !defined(CINTERFACE)
  1236 
  1237     MIDL_INTERFACE("844B5363-4EF4-4A39-A030-16452783A6F7")
  1238     _ITextMessageEvents : public IDispatch
  1239     {
  1240     };
  1241     
  1242 #else 	/* C style interface */
  1243 
  1244     typedef struct _ITextMessageEventsVtbl
  1245     {
  1246         BEGIN_INTERFACE
  1247         
  1248         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
  1249             _ITextMessageEvents * This,
  1250             /* [in] */ REFIID riid,
  1251             /* [annotation][iid_is][out] */ 
  1252             _COM_Outptr_  void **ppvObject);
  1253         
  1254         ULONG ( STDMETHODCALLTYPE *AddRef )( 
  1255             _ITextMessageEvents * This);
  1256         
  1257         ULONG ( STDMETHODCALLTYPE *Release )( 
  1258             _ITextMessageEvents * This);
  1259         
  1260         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
  1261             _ITextMessageEvents * This,
  1262             /* [out] */ UINT *pctinfo);
  1263         
  1264         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
  1265             _ITextMessageEvents * This,
  1266             /* [in] */ UINT iTInfo,
  1267             /* [in] */ LCID lcid,
  1268             /* [out] */ ITypeInfo **ppTInfo);
  1269         
  1270         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
  1271             _ITextMessageEvents * This,
  1272             /* [in] */ REFIID riid,
  1273             /* [size_is][in] */ LPOLESTR *rgszNames,
  1274             /* [range][in] */ UINT cNames,
  1275             /* [in] */ LCID lcid,
  1276             /* [size_is][out] */ DISPID *rgDispId);
  1277         
  1278         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
  1279             _ITextMessageEvents * This,
  1280             /* [annotation][in] */ 
  1281             _In_  DISPID dispIdMember,
  1282             /* [annotation][in] */ 
  1283             _In_  REFIID riid,
  1284             /* [annotation][in] */ 
  1285             _In_  LCID lcid,
  1286             /* [annotation][in] */ 
  1287             _In_  WORD wFlags,
  1288             /* [annotation][out][in] */ 
  1289             _In_  DISPPARAMS *pDispParams,
  1290             /* [annotation][out] */ 
  1291             _Out_opt_  VARIANT *pVarResult,
  1292             /* [annotation][out] */ 
  1293             _Out_opt_  EXCEPINFO *pExcepInfo,
  1294             /* [annotation][out] */ 
  1295             _Out_opt_  UINT *puArgErr);
  1296         
  1297         END_INTERFACE
  1298     } _ITextMessageEventsVtbl;
  1299 
  1300     interface _ITextMessageEvents
  1301     {
  1302         CONST_VTBL struct _ITextMessageEventsVtbl *lpVtbl;
  1303     };
  1304 
  1305     
  1306 
  1307 #ifdef COBJMACROS
  1308 
  1309 
  1310 #define _ITextMessageEvents_QueryInterface(This,riid,ppvObject)	\
  1311     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
  1312 
  1313 #define _ITextMessageEvents_AddRef(This)	\
  1314     ( (This)->lpVtbl -> AddRef(This) ) 
  1315 
  1316 #define _ITextMessageEvents_Release(This)	\
  1317     ( (This)->lpVtbl -> Release(This) ) 
  1318 
  1319 
  1320 #define _ITextMessageEvents_GetTypeInfoCount(This,pctinfo)	\
  1321     ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 
  1322 
  1323 #define _ITextMessageEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
  1324     ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 
  1325 
  1326 #define _ITextMessageEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
  1327     ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 
  1328 
  1329 #define _ITextMessageEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
  1330     ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 
  1331 
  1332 #endif /* COBJMACROS */
  1333 
  1334 
  1335 #endif 	/* C style interface */
  1336 
  1337 
  1338 #endif 	/* ___ITextMessageEvents_DISPINTERFACE_DEFINED__ */
  1339 
  1340 
  1341 EXTERN_C const CLSID CLSID_TextMessage;
  1342 
  1343 #ifdef __cplusplus
  1344 
  1345 class DECLSPEC_UUID("B6CC444F-FE14-4DFE-8315-81E4EA16C1CC")
  1346 TextMessage;
  1347 #endif
  1348 #endif /* __pEpCOMServerAdapterLib_LIBRARY_DEFINED__ */
  1349 
  1350 /* Additional Prototypes for ALL interfaces */
  1351 
  1352 unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
  1353 unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
  1354 unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
  1355 void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 
  1356 
  1357 unsigned long             __RPC_USER  LPSAFEARRAY_UserSize(     unsigned long *, unsigned long            , LPSAFEARRAY * ); 
  1358 unsigned char * __RPC_USER  LPSAFEARRAY_UserMarshal(  unsigned long *, unsigned char *, LPSAFEARRAY * ); 
  1359 unsigned char * __RPC_USER  LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY * ); 
  1360 void                      __RPC_USER  LPSAFEARRAY_UserFree(     unsigned long *, LPSAFEARRAY * ); 
  1361 
  1362 /* end of Additional Prototypes */
  1363 
  1364 #ifdef __cplusplus
  1365 }
  1366 #endif
  1367 
  1368 #endif
  1369 
  1370