pEpCOMServerAdapter_i.h
author Volker Birk <vb@pep-project.org>
Sun, 31 May 2015 19:31:19 +0200
changeset 39 6fc5cc7a167c
parent 38 d314ed57180c
child 41 c55eaabd5ea6
permissions -rw-r--r--
safer
     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 Sun May 31 17:28:45 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 __IpEpEngine_FWD_DEFINED__
    49 #define __IpEpEngine_FWD_DEFINED__
    50 typedef interface IpEpEngine IpEpEngine;
    51 
    52 #endif 	/* __IpEpEngine_FWD_DEFINED__ */
    53 
    54 
    55 #ifndef ___IpEpEngineEvents_FWD_DEFINED__
    56 #define ___IpEpEngineEvents_FWD_DEFINED__
    57 typedef interface _IpEpEngineEvents _IpEpEngineEvents;
    58 
    59 #endif 	/* ___IpEpEngineEvents_FWD_DEFINED__ */
    60 
    61 
    62 #ifndef __pEpEngine_FWD_DEFINED__
    63 #define __pEpEngine_FWD_DEFINED__
    64 
    65 #ifdef __cplusplus
    66 typedef class pEpEngine pEpEngine;
    67 #else
    68 typedef struct pEpEngine pEpEngine;
    69 #endif /* __cplusplus */
    70 
    71 #endif 	/* __pEpEngine_FWD_DEFINED__ */
    72 
    73 
    74 /* header files for imported files */
    75 #include "oaidl.h"
    76 #include "ocidl.h"
    77 
    78 #ifdef __cplusplus
    79 extern "C"{
    80 #endif 
    81 
    82 
    83 #ifndef __IpEpEngine_INTERFACE_DEFINED__
    84 #define __IpEpEngine_INTERFACE_DEFINED__
    85 
    86 /* interface IpEpEngine */
    87 /* [unique][nonextensible][oleautomation][uuid][object] */ 
    88 
    89 typedef 
    90 enum _pEp_STATUS
    91     {
    92         pEp_STATUS_OK	= 0,
    93         pEp_KEY_NOT_FOUND	= 0x201,
    94         pEp_KEY_HAS_AMBIG_NAME	= 0x202,
    95         pEp_GET_KEY_FAILED	= 0x203,
    96         pEp_UNENCRYPTED	= 0x400,
    97         pEp_VERIFIED	= 0x401,
    98         pEp_DECRYPTED	= 0x402,
    99         pEp_DECRYPTED_AND_VERIFIED	= 0x403,
   100         pEp_DECRYPT_WRONG_FORMAT	= 0x404,
   101         pEp_DECRYPT_NO_KEY	= 0x405,
   102         pEp_DECRYPT_SIGNATURE_DOES_NOT_MATCH	= 0x406,
   103         pEp_VERIFY_NO_KEY	= 0x407,
   104         pEp_VERIFIED_AND_TRUSTED	= 0x408,
   105         pEp_ILLEGAL_VALUE	= -4,
   106         pEp_BUFFER_TOO_SMALL	= -3,
   107         pEp_OUT_OF_MEMORY	= -2,
   108         pEp_UNKNOWN_ERROR	= -1
   109     } 	pEp_STATUS;
   110 
   111 typedef 
   112 enum _pEp_comm_type
   113     {
   114         pEp_ct_unknown	= 0,
   115         pEp_ct_no_encryption	= 0x1,
   116         pEp_ct_no_encrypted_channel	= 0x2,
   117         pEp_ct_key_not_found	= 0x3,
   118         pEp_ct_key_expired	= 0x4,
   119         pEp_ct_key_revoked	= 0x5,
   120         pEp_ct_key_b0rken	= 0x6,
   121         pEp_ct_my_key_not_included	= 0x9,
   122         pEp_ct_security_by_obscurity	= 0xa,
   123         pEp_ct_b0rken_crypto	= 0xb,
   124         pEp_ct_key_too_short	= 0xe,
   125         pEp_ct_compromized	= 0xf,
   126         pEp_ct_unconfirmed_encryption	= 0x10,
   127         pEp_ct_OpenPGP_1024_RSA_unconfirmed	= 0x11,
   128         pEp_ct_OpenPGP_unconfirmed	= 0x3f,
   129         pEp_ct_unconfirmed_enc_anon	= 0x40,
   130         pEp_ct_pEp_unconfirmed	= 0x7f,
   131         pEp_ct_confirmed	= 0x80,
   132         pEp_ct_confirmed_encryption	= 0x90,
   133         pEp_ct_OpenPGP_1024_RSA	= 0x91,
   134         pEp_ct_OpenPGP	= 0xbf,
   135         pEp_ct_confirmed_enc_anon	= 0xc0,
   136         pEp_ct_pEp	= 0xff
   137     } 	pEp_comm_type;
   138 
   139 /* [uuid] */ struct  DECLSPEC_UUID("0CB90E62-8A6A-4CA0-99D7-481704051FF0") pEp_identity_s
   140     {
   141     BSTR address;
   142     BSTR fpr;
   143     BSTR user_id;
   144     BSTR username;
   145     pEp_comm_type comm_type;
   146     BSTR lang;
   147     } ;
   148 typedef 
   149 enum _pEp_color
   150     {
   151         pEp_rating_undefined	= 0,
   152         pEp_rating_cannot_decrypt	= ( pEp_rating_undefined + 1 ) ,
   153         pEp_rating_have_no_key	= ( pEp_rating_cannot_decrypt + 1 ) ,
   154         pEp_rating_unencrypted	= ( pEp_rating_have_no_key + 1 ) ,
   155         pEp_rating_unreliable	= ( pEp_rating_unencrypted + 1 ) ,
   156         pEp_rating_reliable	= ( pEp_rating_unreliable + 1 ) ,
   157         pEp_rating_yellow	= pEp_rating_reliable,
   158         pEp_rating_trusted	= ( pEp_rating_yellow + 1 ) ,
   159         pEp_rating_green	= pEp_rating_trusted,
   160         pEp_rating_trusted_and_anonymized	= ( pEp_rating_green + 1 ) ,
   161         pEp_rating_fully_anonymous	= ( pEp_rating_trusted_and_anonymized + 1 ) ,
   162         pEp_rating_under_attack	= -1,
   163         pEp_rating_red	= pEp_rating_under_attack,
   164         pEp_rating_b0rken	= -2
   165     } 	pEp_color;
   166 
   167 typedef 
   168 enum _pEp_text_format
   169     {
   170         pEp_text_format_plain	= 0,
   171         pEp_text_format_html	= ( pEp_text_format_plain + 1 ) ,
   172         pEp_text_format_other	= 0xff
   173     } 	pEp_text_format;
   174 
   175 typedef 
   176 enum _pEp_msg_direction
   177     {
   178         pEp_dir_incoming	= 0,
   179         pEp_dir_outgoing	= ( pEp_dir_incoming + 1 ) 
   180     } 	pEp_msg_direction;
   181 
   182 typedef 
   183 enum _pEp_MIME_format
   184     {
   185         pEp_MIME_none	= 0,
   186         pEp_MIME_fields_omitted	= ( pEp_MIME_none + 1 ) ,
   187         pEp_MIME	= ( pEp_MIME_fields_omitted + 1 ) 
   188     } 	pEp_MIME_format;
   189 
   190 typedef 
   191 enum _pEp_enc_format
   192     {
   193         pEp_enc_none	= 0,
   194         pEp_enc_pieces	= ( pEp_enc_none + 1 ) ,
   195         pEp_enc_S_MIME	= ( pEp_enc_pieces + 1 ) ,
   196         pEp_enc_PGP_MIME	= ( pEp_enc_S_MIME + 1 ) ,
   197         pEp_enc_pEp	= ( pEp_enc_PGP_MIME + 1 ) 
   198     } 	pEp_enc_format;
   199 
   200 /* [uuid] */ struct  DECLSPEC_UUID("3A8A4F13-3402-4C4C-94AB-598D87869380") opt_field
   201     {
   202     BSTR name;
   203     BSTR value;
   204     } ;
   205 /* [uuid] */ struct  DECLSPEC_UUID("61DA7AD4-192E-4616-8678-B19AEFB45B45") blob
   206     {
   207     SAFEARRAY * value;
   208     BSTR mime_type;
   209     BSTR filename;
   210     } ;
   211 /* [uuid] */ struct  DECLSPEC_UUID("D763A8F3-BA23-4229-A037-1BB7BDC3E0C8") text_message
   212     {
   213     pEp_msg_direction dir;
   214     BSTR id;
   215     BSTR shortmsg;
   216     BSTR longmsg;
   217     BSTR longmsg_formatted;
   218     SAFEARRAY * attachments;
   219     hyper sent;
   220     hyper recv;
   221     struct pEp_identity_s from;
   222     SAFEARRAY * to;
   223     struct pEp_identity_s recv_by;
   224     SAFEARRAY * cc;
   225     SAFEARRAY * bcc;
   226     SAFEARRAY * reply_to;
   227     SAFEARRAY * references;
   228     SAFEARRAY * keywords;
   229     BSTR comments;
   230     SAFEARRAY * opt_fields;
   231     } ;
   232 
   233 EXTERN_C const IID IID_IpEpEngine;
   234 
   235 #if defined(__cplusplus) && !defined(CINTERFACE)
   236     
   237     MIDL_INTERFACE("9A9F4422-CF0A-45D7-90CD-1D1B7B2A4540")
   238     IpEpEngine : public IUnknown
   239     {
   240     public:
   241         virtual HRESULT STDMETHODCALLTYPE log( 
   242             /* [in] */ BSTR title,
   243             /* [in] */ BSTR entity,
   244             /* [defaultvalue][in] */ BSTR description = L"",
   245             /* [defaultvalue][in] */ BSTR comment = L"") = 0;
   246         
   247         virtual HRESULT STDMETHODCALLTYPE decrypt( 
   248             /* [in] */ BSTR ctext,
   249             /* [out] */ BSTR *ptext,
   250             /* [out] */ SAFEARRAY * *key_list,
   251             /* [retval][out] */ pEp_STATUS *decrypt_status) = 0;
   252         
   253         virtual HRESULT STDMETHODCALLTYPE decrypt_b( 
   254             /* [in] */ BSTR ctext,
   255             /* [out] */ SAFEARRAY * *ptext,
   256             /* [out] */ SAFEARRAY * *key_list,
   257             /* [retval][out] */ pEp_STATUS *decrypt_status) = 0;
   258         
   259         virtual HRESULT STDMETHODCALLTYPE encrypt( 
   260             /* [in] */ SAFEARRAY * key_list,
   261             /* [in] */ BSTR ptext,
   262             /* [out] */ BSTR *ctext,
   263             /* [retval][out] */ pEp_STATUS *status) = 0;
   264         
   265         virtual HRESULT STDMETHODCALLTYPE encrypt_b( 
   266             /* [in] */ SAFEARRAY * key_list,
   267             /* [in] */ SAFEARRAY * ptext,
   268             /* [out] */ BSTR *ctext,
   269             /* [retval][out] */ pEp_STATUS *status) = 0;
   270         
   271         virtual HRESULT STDMETHODCALLTYPE verify( 
   272             /* [in] */ BSTR text,
   273             /* [in] */ BSTR signature,
   274             /* [out] */ SAFEARRAY * *key_list,
   275             /* [retval][out] */ pEp_STATUS *verify_status) = 0;
   276         
   277         virtual HRESULT STDMETHODCALLTYPE trustword( 
   278             /* [in] */ LONG value,
   279             /* [defaultvalue][in] */ BSTR lang,
   280             /* [retval][out] */ BSTR *word) = 0;
   281         
   282         virtual HRESULT STDMETHODCALLTYPE trustwords( 
   283             /* [in] */ BSTR fpr,
   284             /* [defaultvalue][in] */ BSTR lang,
   285             /* [defaultvalue][in] */ LONG max_words,
   286             /* [retval][out] */ BSTR *words) = 0;
   287         
   288         virtual HRESULT STDMETHODCALLTYPE get_identity( 
   289             /* [in] */ BSTR address,
   290             /* [retval][out] */ struct pEp_identity_s *ident) = 0;
   291         
   292         virtual HRESULT STDMETHODCALLTYPE set_identity( 
   293             /* [in] */ struct pEp_identity_s *ident) = 0;
   294         
   295         virtual HRESULT STDMETHODCALLTYPE generate_keypair( 
   296             /* [in] */ struct pEp_identity_s *ident,
   297             /* [retval][out] */ BSTR *fpr) = 0;
   298         
   299         virtual HRESULT STDMETHODCALLTYPE delete_keypair( 
   300             /* [in] */ BSTR fpr) = 0;
   301         
   302         virtual HRESULT STDMETHODCALLTYPE import_key( 
   303             /* [in] */ BSTR key_data) = 0;
   304         
   305         virtual HRESULT STDMETHODCALLTYPE import_key_b( 
   306             /* [in] */ SAFEARRAY * key_data) = 0;
   307         
   308         virtual HRESULT STDMETHODCALLTYPE export_key( 
   309             /* [in] */ BSTR fpr,
   310             /* [retval][out] */ BSTR *key_data) = 0;
   311         
   312         virtual HRESULT STDMETHODCALLTYPE recv_key( 
   313             /* [in] */ BSTR pattern) = 0;
   314         
   315         virtual HRESULT STDMETHODCALLTYPE find_keys( 
   316             /* [in] */ BSTR pattern,
   317             /* [retval][out] */ SAFEARRAY * *key_list) = 0;
   318         
   319         virtual HRESULT STDMETHODCALLTYPE send_key( 
   320             /* [in] */ BSTR pattern) = 0;
   321         
   322         virtual HRESULT STDMETHODCALLTYPE start_keyserver_lookup( void) = 0;
   323         
   324         virtual HRESULT STDMETHODCALLTYPE stop_keyserver_lookup( void) = 0;
   325         
   326         virtual HRESULT STDMETHODCALLTYPE examine_identity( 
   327             /* [in] */ struct pEp_identity_s *ident) = 0;
   328         
   329         virtual HRESULT STDMETHODCALLTYPE myself( 
   330             /* [in] */ struct pEp_identity_s *ident,
   331             /* [retval][out] */ struct pEp_identity_s *result) = 0;
   332         
   333         virtual HRESULT STDMETHODCALLTYPE update_identity( 
   334             /* [in] */ struct pEp_identity_s *ident,
   335             /* [retval][out] */ struct pEp_identity_s *result) = 0;
   336         
   337         virtual HRESULT STDMETHODCALLTYPE key_compromized( 
   338             /* [in] */ BSTR fpr) = 0;
   339         
   340         virtual HRESULT STDMETHODCALLTYPE encrypt_message( 
   341             /* [in] */ struct text_message *src,
   342             /* [out] */ struct text_message *dst,
   343             /* [in] */ SAFEARRAY * extra) = 0;
   344         
   345         virtual HRESULT STDMETHODCALLTYPE decrypt_message( 
   346             /* [in] */ struct text_message *src,
   347             /* [out] */ struct text_message *dst,
   348             /* [out] */ SAFEARRAY * *keylist,
   349             /* [retval][out] */ pEp_color *rating) = 0;
   350         
   351         virtual HRESULT STDMETHODCALLTYPE outgoing_message_color( 
   352             /* [in] */ struct text_message *msg,
   353             /* [retval][out] */ pEp_color *pVal) = 0;
   354         
   355         virtual HRESULT STDMETHODCALLTYPE identity_color( 
   356             /* [in] */ struct pEp_identity_s *ident,
   357             /* [retval][out] */ pEp_color *pVal) = 0;
   358         
   359     };
   360     
   361     
   362 #else 	/* C style interface */
   363 
   364     typedef struct IpEpEngineVtbl
   365     {
   366         BEGIN_INTERFACE
   367         
   368         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
   369             IpEpEngine * This,
   370             /* [in] */ REFIID riid,
   371             /* [annotation][iid_is][out] */ 
   372             _COM_Outptr_  void **ppvObject);
   373         
   374         ULONG ( STDMETHODCALLTYPE *AddRef )( 
   375             IpEpEngine * This);
   376         
   377         ULONG ( STDMETHODCALLTYPE *Release )( 
   378             IpEpEngine * This);
   379         
   380         HRESULT ( STDMETHODCALLTYPE *log )( 
   381             IpEpEngine * This,
   382             /* [in] */ BSTR title,
   383             /* [in] */ BSTR entity,
   384             /* [defaultvalue][in] */ BSTR description,
   385             /* [defaultvalue][in] */ BSTR comment);
   386         
   387         HRESULT ( STDMETHODCALLTYPE *decrypt )( 
   388             IpEpEngine * This,
   389             /* [in] */ BSTR ctext,
   390             /* [out] */ BSTR *ptext,
   391             /* [out] */ SAFEARRAY * *key_list,
   392             /* [retval][out] */ pEp_STATUS *decrypt_status);
   393         
   394         HRESULT ( STDMETHODCALLTYPE *decrypt_b )( 
   395             IpEpEngine * This,
   396             /* [in] */ BSTR ctext,
   397             /* [out] */ SAFEARRAY * *ptext,
   398             /* [out] */ SAFEARRAY * *key_list,
   399             /* [retval][out] */ pEp_STATUS *decrypt_status);
   400         
   401         HRESULT ( STDMETHODCALLTYPE *encrypt )( 
   402             IpEpEngine * This,
   403             /* [in] */ SAFEARRAY * key_list,
   404             /* [in] */ BSTR ptext,
   405             /* [out] */ BSTR *ctext,
   406             /* [retval][out] */ pEp_STATUS *status);
   407         
   408         HRESULT ( STDMETHODCALLTYPE *encrypt_b )( 
   409             IpEpEngine * This,
   410             /* [in] */ SAFEARRAY * key_list,
   411             /* [in] */ SAFEARRAY * ptext,
   412             /* [out] */ BSTR *ctext,
   413             /* [retval][out] */ pEp_STATUS *status);
   414         
   415         HRESULT ( STDMETHODCALLTYPE *verify )( 
   416             IpEpEngine * This,
   417             /* [in] */ BSTR text,
   418             /* [in] */ BSTR signature,
   419             /* [out] */ SAFEARRAY * *key_list,
   420             /* [retval][out] */ pEp_STATUS *verify_status);
   421         
   422         HRESULT ( STDMETHODCALLTYPE *trustword )( 
   423             IpEpEngine * This,
   424             /* [in] */ LONG value,
   425             /* [defaultvalue][in] */ BSTR lang,
   426             /* [retval][out] */ BSTR *word);
   427         
   428         HRESULT ( STDMETHODCALLTYPE *trustwords )( 
   429             IpEpEngine * This,
   430             /* [in] */ BSTR fpr,
   431             /* [defaultvalue][in] */ BSTR lang,
   432             /* [defaultvalue][in] */ LONG max_words,
   433             /* [retval][out] */ BSTR *words);
   434         
   435         HRESULT ( STDMETHODCALLTYPE *get_identity )( 
   436             IpEpEngine * This,
   437             /* [in] */ BSTR address,
   438             /* [retval][out] */ struct pEp_identity_s *ident);
   439         
   440         HRESULT ( STDMETHODCALLTYPE *set_identity )( 
   441             IpEpEngine * This,
   442             /* [in] */ struct pEp_identity_s *ident);
   443         
   444         HRESULT ( STDMETHODCALLTYPE *generate_keypair )( 
   445             IpEpEngine * This,
   446             /* [in] */ struct pEp_identity_s *ident,
   447             /* [retval][out] */ BSTR *fpr);
   448         
   449         HRESULT ( STDMETHODCALLTYPE *delete_keypair )( 
   450             IpEpEngine * This,
   451             /* [in] */ BSTR fpr);
   452         
   453         HRESULT ( STDMETHODCALLTYPE *import_key )( 
   454             IpEpEngine * This,
   455             /* [in] */ BSTR key_data);
   456         
   457         HRESULT ( STDMETHODCALLTYPE *import_key_b )( 
   458             IpEpEngine * This,
   459             /* [in] */ SAFEARRAY * key_data);
   460         
   461         HRESULT ( STDMETHODCALLTYPE *export_key )( 
   462             IpEpEngine * This,
   463             /* [in] */ BSTR fpr,
   464             /* [retval][out] */ BSTR *key_data);
   465         
   466         HRESULT ( STDMETHODCALLTYPE *recv_key )( 
   467             IpEpEngine * This,
   468             /* [in] */ BSTR pattern);
   469         
   470         HRESULT ( STDMETHODCALLTYPE *find_keys )( 
   471             IpEpEngine * This,
   472             /* [in] */ BSTR pattern,
   473             /* [retval][out] */ SAFEARRAY * *key_list);
   474         
   475         HRESULT ( STDMETHODCALLTYPE *send_key )( 
   476             IpEpEngine * This,
   477             /* [in] */ BSTR pattern);
   478         
   479         HRESULT ( STDMETHODCALLTYPE *start_keyserver_lookup )( 
   480             IpEpEngine * This);
   481         
   482         HRESULT ( STDMETHODCALLTYPE *stop_keyserver_lookup )( 
   483             IpEpEngine * This);
   484         
   485         HRESULT ( STDMETHODCALLTYPE *examine_identity )( 
   486             IpEpEngine * This,
   487             /* [in] */ struct pEp_identity_s *ident);
   488         
   489         HRESULT ( STDMETHODCALLTYPE *myself )( 
   490             IpEpEngine * This,
   491             /* [in] */ struct pEp_identity_s *ident,
   492             /* [retval][out] */ struct pEp_identity_s *result);
   493         
   494         HRESULT ( STDMETHODCALLTYPE *update_identity )( 
   495             IpEpEngine * This,
   496             /* [in] */ struct pEp_identity_s *ident,
   497             /* [retval][out] */ struct pEp_identity_s *result);
   498         
   499         HRESULT ( STDMETHODCALLTYPE *key_compromized )( 
   500             IpEpEngine * This,
   501             /* [in] */ BSTR fpr);
   502         
   503         HRESULT ( STDMETHODCALLTYPE *encrypt_message )( 
   504             IpEpEngine * This,
   505             /* [in] */ struct text_message *src,
   506             /* [out] */ struct text_message *dst,
   507             /* [in] */ SAFEARRAY * extra);
   508         
   509         HRESULT ( STDMETHODCALLTYPE *decrypt_message )( 
   510             IpEpEngine * This,
   511             /* [in] */ struct text_message *src,
   512             /* [out] */ struct text_message *dst,
   513             /* [out] */ SAFEARRAY * *keylist,
   514             /* [retval][out] */ pEp_color *rating);
   515         
   516         HRESULT ( STDMETHODCALLTYPE *outgoing_message_color )( 
   517             IpEpEngine * This,
   518             /* [in] */ struct text_message *msg,
   519             /* [retval][out] */ pEp_color *pVal);
   520         
   521         HRESULT ( STDMETHODCALLTYPE *identity_color )( 
   522             IpEpEngine * This,
   523             /* [in] */ struct pEp_identity_s *ident,
   524             /* [retval][out] */ pEp_color *pVal);
   525         
   526         END_INTERFACE
   527     } IpEpEngineVtbl;
   528 
   529     interface IpEpEngine
   530     {
   531         CONST_VTBL struct IpEpEngineVtbl *lpVtbl;
   532     };
   533 
   534     
   535 
   536 #ifdef COBJMACROS
   537 
   538 
   539 #define IpEpEngine_QueryInterface(This,riid,ppvObject)	\
   540     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
   541 
   542 #define IpEpEngine_AddRef(This)	\
   543     ( (This)->lpVtbl -> AddRef(This) ) 
   544 
   545 #define IpEpEngine_Release(This)	\
   546     ( (This)->lpVtbl -> Release(This) ) 
   547 
   548 
   549 #define IpEpEngine_log(This,title,entity,description,comment)	\
   550     ( (This)->lpVtbl -> log(This,title,entity,description,comment) ) 
   551 
   552 #define IpEpEngine_decrypt(This,ctext,ptext,key_list,decrypt_status)	\
   553     ( (This)->lpVtbl -> decrypt(This,ctext,ptext,key_list,decrypt_status) ) 
   554 
   555 #define IpEpEngine_decrypt_b(This,ctext,ptext,key_list,decrypt_status)	\
   556     ( (This)->lpVtbl -> decrypt_b(This,ctext,ptext,key_list,decrypt_status) ) 
   557 
   558 #define IpEpEngine_encrypt(This,key_list,ptext,ctext,status)	\
   559     ( (This)->lpVtbl -> encrypt(This,key_list,ptext,ctext,status) ) 
   560 
   561 #define IpEpEngine_encrypt_b(This,key_list,ptext,ctext,status)	\
   562     ( (This)->lpVtbl -> encrypt_b(This,key_list,ptext,ctext,status) ) 
   563 
   564 #define IpEpEngine_verify(This,text,signature,key_list,verify_status)	\
   565     ( (This)->lpVtbl -> verify(This,text,signature,key_list,verify_status) ) 
   566 
   567 #define IpEpEngine_trustword(This,value,lang,word)	\
   568     ( (This)->lpVtbl -> trustword(This,value,lang,word) ) 
   569 
   570 #define IpEpEngine_trustwords(This,fpr,lang,max_words,words)	\
   571     ( (This)->lpVtbl -> trustwords(This,fpr,lang,max_words,words) ) 
   572 
   573 #define IpEpEngine_get_identity(This,address,ident)	\
   574     ( (This)->lpVtbl -> get_identity(This,address,ident) ) 
   575 
   576 #define IpEpEngine_set_identity(This,ident)	\
   577     ( (This)->lpVtbl -> set_identity(This,ident) ) 
   578 
   579 #define IpEpEngine_generate_keypair(This,ident,fpr)	\
   580     ( (This)->lpVtbl -> generate_keypair(This,ident,fpr) ) 
   581 
   582 #define IpEpEngine_delete_keypair(This,fpr)	\
   583     ( (This)->lpVtbl -> delete_keypair(This,fpr) ) 
   584 
   585 #define IpEpEngine_import_key(This,key_data)	\
   586     ( (This)->lpVtbl -> import_key(This,key_data) ) 
   587 
   588 #define IpEpEngine_import_key_b(This,key_data)	\
   589     ( (This)->lpVtbl -> import_key_b(This,key_data) ) 
   590 
   591 #define IpEpEngine_export_key(This,fpr,key_data)	\
   592     ( (This)->lpVtbl -> export_key(This,fpr,key_data) ) 
   593 
   594 #define IpEpEngine_recv_key(This,pattern)	\
   595     ( (This)->lpVtbl -> recv_key(This,pattern) ) 
   596 
   597 #define IpEpEngine_find_keys(This,pattern,key_list)	\
   598     ( (This)->lpVtbl -> find_keys(This,pattern,key_list) ) 
   599 
   600 #define IpEpEngine_send_key(This,pattern)	\
   601     ( (This)->lpVtbl -> send_key(This,pattern) ) 
   602 
   603 #define IpEpEngine_start_keyserver_lookup(This)	\
   604     ( (This)->lpVtbl -> start_keyserver_lookup(This) ) 
   605 
   606 #define IpEpEngine_stop_keyserver_lookup(This)	\
   607     ( (This)->lpVtbl -> stop_keyserver_lookup(This) ) 
   608 
   609 #define IpEpEngine_examine_identity(This,ident)	\
   610     ( (This)->lpVtbl -> examine_identity(This,ident) ) 
   611 
   612 #define IpEpEngine_myself(This,ident,result)	\
   613     ( (This)->lpVtbl -> myself(This,ident,result) ) 
   614 
   615 #define IpEpEngine_update_identity(This,ident,result)	\
   616     ( (This)->lpVtbl -> update_identity(This,ident,result) ) 
   617 
   618 #define IpEpEngine_key_compromized(This,fpr)	\
   619     ( (This)->lpVtbl -> key_compromized(This,fpr) ) 
   620 
   621 #define IpEpEngine_encrypt_message(This,src,dst,extra)	\
   622     ( (This)->lpVtbl -> encrypt_message(This,src,dst,extra) ) 
   623 
   624 #define IpEpEngine_decrypt_message(This,src,dst,keylist,rating)	\
   625     ( (This)->lpVtbl -> decrypt_message(This,src,dst,keylist,rating) ) 
   626 
   627 #define IpEpEngine_outgoing_message_color(This,msg,pVal)	\
   628     ( (This)->lpVtbl -> outgoing_message_color(This,msg,pVal) ) 
   629 
   630 #define IpEpEngine_identity_color(This,ident,pVal)	\
   631     ( (This)->lpVtbl -> identity_color(This,ident,pVal) ) 
   632 
   633 #endif /* COBJMACROS */
   634 
   635 
   636 #endif 	/* C style interface */
   637 
   638 
   639 
   640 
   641 #endif 	/* __IpEpEngine_INTERFACE_DEFINED__ */
   642 
   643 
   644 
   645 #ifndef __pEpCOMServerAdapterLib_LIBRARY_DEFINED__
   646 #define __pEpCOMServerAdapterLib_LIBRARY_DEFINED__
   647 
   648 /* library pEpCOMServerAdapterLib */
   649 /* [version][uuid] */ 
   650 
   651 
   652 EXTERN_C const IID LIBID_pEpCOMServerAdapterLib;
   653 
   654 #ifndef ___IpEpEngineEvents_DISPINTERFACE_DEFINED__
   655 #define ___IpEpEngineEvents_DISPINTERFACE_DEFINED__
   656 
   657 /* dispinterface _IpEpEngineEvents */
   658 /* [uuid] */ 
   659 
   660 
   661 EXTERN_C const IID DIID__IpEpEngineEvents;
   662 
   663 #if defined(__cplusplus) && !defined(CINTERFACE)
   664 
   665     MIDL_INTERFACE("B6BC9B8E-D9E2-4419-A3A4-7B4B58175549")
   666     _IpEpEngineEvents : public IDispatch
   667     {
   668     };
   669     
   670 #else 	/* C style interface */
   671 
   672     typedef struct _IpEpEngineEventsVtbl
   673     {
   674         BEGIN_INTERFACE
   675         
   676         HRESULT ( STDMETHODCALLTYPE *QueryInterface )( 
   677             _IpEpEngineEvents * This,
   678             /* [in] */ REFIID riid,
   679             /* [annotation][iid_is][out] */ 
   680             _COM_Outptr_  void **ppvObject);
   681         
   682         ULONG ( STDMETHODCALLTYPE *AddRef )( 
   683             _IpEpEngineEvents * This);
   684         
   685         ULONG ( STDMETHODCALLTYPE *Release )( 
   686             _IpEpEngineEvents * This);
   687         
   688         HRESULT ( STDMETHODCALLTYPE *GetTypeInfoCount )( 
   689             _IpEpEngineEvents * This,
   690             /* [out] */ UINT *pctinfo);
   691         
   692         HRESULT ( STDMETHODCALLTYPE *GetTypeInfo )( 
   693             _IpEpEngineEvents * This,
   694             /* [in] */ UINT iTInfo,
   695             /* [in] */ LCID lcid,
   696             /* [out] */ ITypeInfo **ppTInfo);
   697         
   698         HRESULT ( STDMETHODCALLTYPE *GetIDsOfNames )( 
   699             _IpEpEngineEvents * This,
   700             /* [in] */ REFIID riid,
   701             /* [size_is][in] */ LPOLESTR *rgszNames,
   702             /* [range][in] */ UINT cNames,
   703             /* [in] */ LCID lcid,
   704             /* [size_is][out] */ DISPID *rgDispId);
   705         
   706         /* [local] */ HRESULT ( STDMETHODCALLTYPE *Invoke )( 
   707             _IpEpEngineEvents * This,
   708             /* [annotation][in] */ 
   709             _In_  DISPID dispIdMember,
   710             /* [annotation][in] */ 
   711             _In_  REFIID riid,
   712             /* [annotation][in] */ 
   713             _In_  LCID lcid,
   714             /* [annotation][in] */ 
   715             _In_  WORD wFlags,
   716             /* [annotation][out][in] */ 
   717             _In_  DISPPARAMS *pDispParams,
   718             /* [annotation][out] */ 
   719             _Out_opt_  VARIANT *pVarResult,
   720             /* [annotation][out] */ 
   721             _Out_opt_  EXCEPINFO *pExcepInfo,
   722             /* [annotation][out] */ 
   723             _Out_opt_  UINT *puArgErr);
   724         
   725         END_INTERFACE
   726     } _IpEpEngineEventsVtbl;
   727 
   728     interface _IpEpEngineEvents
   729     {
   730         CONST_VTBL struct _IpEpEngineEventsVtbl *lpVtbl;
   731     };
   732 
   733     
   734 
   735 #ifdef COBJMACROS
   736 
   737 
   738 #define _IpEpEngineEvents_QueryInterface(This,riid,ppvObject)	\
   739     ( (This)->lpVtbl -> QueryInterface(This,riid,ppvObject) ) 
   740 
   741 #define _IpEpEngineEvents_AddRef(This)	\
   742     ( (This)->lpVtbl -> AddRef(This) ) 
   743 
   744 #define _IpEpEngineEvents_Release(This)	\
   745     ( (This)->lpVtbl -> Release(This) ) 
   746 
   747 
   748 #define _IpEpEngineEvents_GetTypeInfoCount(This,pctinfo)	\
   749     ( (This)->lpVtbl -> GetTypeInfoCount(This,pctinfo) ) 
   750 
   751 #define _IpEpEngineEvents_GetTypeInfo(This,iTInfo,lcid,ppTInfo)	\
   752     ( (This)->lpVtbl -> GetTypeInfo(This,iTInfo,lcid,ppTInfo) ) 
   753 
   754 #define _IpEpEngineEvents_GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId)	\
   755     ( (This)->lpVtbl -> GetIDsOfNames(This,riid,rgszNames,cNames,lcid,rgDispId) ) 
   756 
   757 #define _IpEpEngineEvents_Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr)	\
   758     ( (This)->lpVtbl -> Invoke(This,dispIdMember,riid,lcid,wFlags,pDispParams,pVarResult,pExcepInfo,puArgErr) ) 
   759 
   760 #endif /* COBJMACROS */
   761 
   762 
   763 #endif 	/* C style interface */
   764 
   765 
   766 #endif 	/* ___IpEpEngineEvents_DISPINTERFACE_DEFINED__ */
   767 
   768 
   769 EXTERN_C const CLSID CLSID_pEpEngine;
   770 
   771 #ifdef __cplusplus
   772 
   773 class DECLSPEC_UUID("EF1B073D-5058-4E0E-829E-B4D22CA21EA2")
   774 pEpEngine;
   775 #endif
   776 #endif /* __pEpCOMServerAdapterLib_LIBRARY_DEFINED__ */
   777 
   778 /* Additional Prototypes for ALL interfaces */
   779 
   780 unsigned long             __RPC_USER  BSTR_UserSize(     unsigned long *, unsigned long            , BSTR * ); 
   781 unsigned char * __RPC_USER  BSTR_UserMarshal(  unsigned long *, unsigned char *, BSTR * ); 
   782 unsigned char * __RPC_USER  BSTR_UserUnmarshal(unsigned long *, unsigned char *, BSTR * ); 
   783 void                      __RPC_USER  BSTR_UserFree(     unsigned long *, BSTR * ); 
   784 
   785 unsigned long             __RPC_USER  LPSAFEARRAY_UserSize(     unsigned long *, unsigned long            , LPSAFEARRAY * ); 
   786 unsigned char * __RPC_USER  LPSAFEARRAY_UserMarshal(  unsigned long *, unsigned char *, LPSAFEARRAY * ); 
   787 unsigned char * __RPC_USER  LPSAFEARRAY_UserUnmarshal(unsigned long *, unsigned char *, LPSAFEARRAY * ); 
   788 void                      __RPC_USER  LPSAFEARRAY_UserFree(     unsigned long *, LPSAFEARRAY * ); 
   789 
   790 /* end of Additional Prototypes */
   791 
   792 #ifdef __cplusplus
   793 }
   794 #endif
   795 
   796 #endif
   797 
   798