Home | History | Annotate | Download | only in include
      1 /*** Autogenerated by WIDL 1.5.31 from include/windows.security.cryptography.idl - Do not edit ***/
      2 
      3 #ifndef __REQUIRED_RPCNDR_H_VERSION__
      4 #define __REQUIRED_RPCNDR_H_VERSION__ 475
      5 #endif
      6 
      7 #include <rpc.h>
      8 #include <rpcndr.h>
      9 
     10 #ifndef COM_NO_WINDOWS_H
     11 #include <windows.h>
     12 #include <ole2.h>
     13 #endif
     14 
     15 #ifndef __windows_security_cryptography_h__
     16 #define __windows_security_cryptography_h__
     17 
     18 /* Forward declarations */
     19 
     20 #ifndef __ICryptographicBufferStatics_FWD_DEFINED__
     21 #define __ICryptographicBufferStatics_FWD_DEFINED__
     22 typedef interface ICryptographicBufferStatics ICryptographicBufferStatics;
     23 #endif
     24 
     25 /* Headers for imported files */
     26 
     27 #include <inspectable.h>
     28 #include <windows.storage.streams.h>
     29 
     30 #ifdef __cplusplus
     31 extern "C" {
     32 #endif
     33 
     34 #ifndef __IBuffer_FWD_DEFINED__
     35 #define __IBuffer_FWD_DEFINED__
     36 typedef interface IBuffer IBuffer;
     37 #endif
     38 
     39 #ifndef __ICryptographicBufferStatics_FWD_DEFINED__
     40 #define __ICryptographicBufferStatics_FWD_DEFINED__
     41 typedef interface ICryptographicBufferStatics ICryptographicBufferStatics;
     42 #endif
     43 
     44 enum BinaryStringEncoding;
     45 
     46 typedef enum BinaryStringEncoding {
     47     Utf8 = 0,
     48     Utf16LE = 1,
     49     Utf16BE = 2
     50 } BinaryStringEncoding;
     51 /*****************************************************************************
     52  * ICryptographicBufferStatics interface
     53  */
     54 #ifndef __ICryptographicBufferStatics_INTERFACE_DEFINED__
     55 #define __ICryptographicBufferStatics_INTERFACE_DEFINED__
     56 
     57 DEFINE_GUID(IID_ICryptographicBufferStatics, 0x320b7e22, 0x3cb0, 0x4cdf, 0x86,0x63, 0x1d,0x28,0x91,0x00,0x65,0xeb);
     58 #if defined(__cplusplus) && !defined(CINTERFACE)
     59 MIDL_INTERFACE("320b7e22-3cb0-4cdf-8663-1d28910065eb")
     60 ICryptographicBufferStatics : public IInspectable
     61 {
     62     virtual HRESULT STDMETHODCALLTYPE Compare(
     63         IBuffer *object1,
     64         IBuffer *object2,
     65         boolean *isEqual) = 0;
     66 
     67     virtual HRESULT STDMETHODCALLTYPE GenerateRandom(
     68         UINT32 length,
     69         IBuffer **buffer) = 0;
     70 
     71     virtual HRESULT STDMETHODCALLTYPE GenerateRandomNumber(
     72         UINT32 *value) = 0;
     73 
     74     virtual HRESULT STDMETHODCALLTYPE CreateFromByteArray(
     75         UINT32 __valueSize,
     76         BYTE *value,
     77         IBuffer **buffer) = 0;
     78 
     79     virtual HRESULT STDMETHODCALLTYPE CopyToByteArray(
     80         IBuffer *buffer,
     81         UINT32 *__valueSize,
     82         BYTE **value) = 0;
     83 
     84     virtual HRESULT STDMETHODCALLTYPE DecodeFromHexString(
     85         HSTRING value,
     86         IBuffer **buffer) = 0;
     87 
     88     virtual HRESULT STDMETHODCALLTYPE EncodeToHexString(
     89         IBuffer *buffer,
     90         HSTRING *value) = 0;
     91 
     92     virtual HRESULT STDMETHODCALLTYPE DecodeFromBase64String(
     93         HSTRING value,
     94         IBuffer **buffer) = 0;
     95 
     96     virtual HRESULT STDMETHODCALLTYPE EncodeToBase64String(
     97         IBuffer *buffer,
     98         HSTRING *value) = 0;
     99 
    100     virtual HRESULT STDMETHODCALLTYPE ConvertStringToBinary(
    101         HSTRING value,
    102         BinaryStringEncoding encoding,
    103         IBuffer **buffer) = 0;
    104 
    105     virtual HRESULT STDMETHODCALLTYPE ConvertBinaryToString(
    106         BinaryStringEncoding encoding,
    107         IBuffer *buffer,
    108         HSTRING *value) = 0;
    109 
    110 };
    111 #ifdef __CRT_UUID_DECL
    112 __CRT_UUID_DECL(ICryptographicBufferStatics, 0x320b7e22, 0x3cb0, 0x4cdf, 0x86,0x63, 0x1d,0x28,0x91,0x00,0x65,0xeb)
    113 #endif
    114 #else
    115 typedef struct ICryptographicBufferStaticsVtbl {
    116     BEGIN_INTERFACE
    117 
    118     /*** IUnknown methods ***/
    119     HRESULT (STDMETHODCALLTYPE *QueryInterface)(
    120         ICryptographicBufferStatics* This,
    121         REFIID riid,
    122         void **ppvObject);
    123 
    124     ULONG (STDMETHODCALLTYPE *AddRef)(
    125         ICryptographicBufferStatics* This);
    126 
    127     ULONG (STDMETHODCALLTYPE *Release)(
    128         ICryptographicBufferStatics* This);
    129 
    130     /*** IInspectable methods ***/
    131     HRESULT (STDMETHODCALLTYPE *GetIids)(
    132         ICryptographicBufferStatics* This,
    133         ULONG *iidCount,
    134         IID **iids);
    135 
    136     HRESULT (STDMETHODCALLTYPE *GetRuntimeClassName)(
    137         ICryptographicBufferStatics* This,
    138         HSTRING *className);
    139 
    140     HRESULT (STDMETHODCALLTYPE *GetTrustLevel)(
    141         ICryptographicBufferStatics* This,
    142         TrustLevel *trustLevel);
    143 
    144     /*** ICryptographicBufferStatics methods ***/
    145     HRESULT (STDMETHODCALLTYPE *Compare)(
    146         ICryptographicBufferStatics* This,
    147         IBuffer *object1,
    148         IBuffer *object2,
    149         boolean *isEqual);
    150 
    151     HRESULT (STDMETHODCALLTYPE *GenerateRandom)(
    152         ICryptographicBufferStatics* This,
    153         UINT32 length,
    154         IBuffer **buffer);
    155 
    156     HRESULT (STDMETHODCALLTYPE *GenerateRandomNumber)(
    157         ICryptographicBufferStatics* This,
    158         UINT32 *value);
    159 
    160     HRESULT (STDMETHODCALLTYPE *CreateFromByteArray)(
    161         ICryptographicBufferStatics* This,
    162         UINT32 __valueSize,
    163         BYTE *value,
    164         IBuffer **buffer);
    165 
    166     HRESULT (STDMETHODCALLTYPE *CopyToByteArray)(
    167         ICryptographicBufferStatics* This,
    168         IBuffer *buffer,
    169         UINT32 *__valueSize,
    170         BYTE **value);
    171 
    172     HRESULT (STDMETHODCALLTYPE *DecodeFromHexString)(
    173         ICryptographicBufferStatics* This,
    174         HSTRING value,
    175         IBuffer **buffer);
    176 
    177     HRESULT (STDMETHODCALLTYPE *EncodeToHexString)(
    178         ICryptographicBufferStatics* This,
    179         IBuffer *buffer,
    180         HSTRING *value);
    181 
    182     HRESULT (STDMETHODCALLTYPE *DecodeFromBase64String)(
    183         ICryptographicBufferStatics* This,
    184         HSTRING value,
    185         IBuffer **buffer);
    186 
    187     HRESULT (STDMETHODCALLTYPE *EncodeToBase64String)(
    188         ICryptographicBufferStatics* This,
    189         IBuffer *buffer,
    190         HSTRING *value);
    191 
    192     HRESULT (STDMETHODCALLTYPE *ConvertStringToBinary)(
    193         ICryptographicBufferStatics* This,
    194         HSTRING value,
    195         BinaryStringEncoding encoding,
    196         IBuffer **buffer);
    197 
    198     HRESULT (STDMETHODCALLTYPE *ConvertBinaryToString)(
    199         ICryptographicBufferStatics* This,
    200         BinaryStringEncoding encoding,
    201         IBuffer *buffer,
    202         HSTRING *value);
    203 
    204     END_INTERFACE
    205 } ICryptographicBufferStaticsVtbl;
    206 interface ICryptographicBufferStatics {
    207     CONST_VTBL ICryptographicBufferStaticsVtbl* lpVtbl;
    208 };
    209 
    210 #ifdef COBJMACROS
    211 #ifndef WIDL_C_INLINE_WRAPPERS
    212 /*** IUnknown methods ***/
    213 #define ICryptographicBufferStatics_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
    214 #define ICryptographicBufferStatics_AddRef(This) (This)->lpVtbl->AddRef(This)
    215 #define ICryptographicBufferStatics_Release(This) (This)->lpVtbl->Release(This)
    216 /*** IInspectable methods ***/
    217 #define ICryptographicBufferStatics_GetIids(This,iidCount,iids) (This)->lpVtbl->GetIids(This,iidCount,iids)
    218 #define ICryptographicBufferStatics_GetRuntimeClassName(This,className) (This)->lpVtbl->GetRuntimeClassName(This,className)
    219 #define ICryptographicBufferStatics_GetTrustLevel(This,trustLevel) (This)->lpVtbl->GetTrustLevel(This,trustLevel)
    220 /*** ICryptographicBufferStatics methods ***/
    221 #define ICryptographicBufferStatics_Compare(This,object1,object2,isEqual) (This)->lpVtbl->Compare(This,object1,object2,isEqual)
    222 #define ICryptographicBufferStatics_GenerateRandom(This,length,buffer) (This)->lpVtbl->GenerateRandom(This,length,buffer)
    223 #define ICryptographicBufferStatics_GenerateRandomNumber(This,value) (This)->lpVtbl->GenerateRandomNumber(This,value)
    224 #define ICryptographicBufferStatics_CreateFromByteArray(This,__valueSize,value,buffer) (This)->lpVtbl->CreateFromByteArray(This,__valueSize,value,buffer)
    225 #define ICryptographicBufferStatics_CopyToByteArray(This,buffer,__valueSize,value) (This)->lpVtbl->CopyToByteArray(This,buffer,__valueSize,value)
    226 #define ICryptographicBufferStatics_DecodeFromHexString(This,value,buffer) (This)->lpVtbl->DecodeFromHexString(This,value,buffer)
    227 #define ICryptographicBufferStatics_EncodeToHexString(This,buffer,value) (This)->lpVtbl->EncodeToHexString(This,buffer,value)
    228 #define ICryptographicBufferStatics_DecodeFromBase64String(This,value,buffer) (This)->lpVtbl->DecodeFromBase64String(This,value,buffer)
    229 #define ICryptographicBufferStatics_EncodeToBase64String(This,buffer,value) (This)->lpVtbl->EncodeToBase64String(This,buffer,value)
    230 #define ICryptographicBufferStatics_ConvertStringToBinary(This,value,encoding,buffer) (This)->lpVtbl->ConvertStringToBinary(This,value,encoding,buffer)
    231 #define ICryptographicBufferStatics_ConvertBinaryToString(This,encoding,buffer,value) (This)->lpVtbl->ConvertBinaryToString(This,encoding,buffer,value)
    232 #else
    233 /*** IUnknown methods ***/
    234 static FORCEINLINE HRESULT ICryptographicBufferStatics_QueryInterface(ICryptographicBufferStatics* This,REFIID riid,void **ppvObject) {
    235     return This->lpVtbl->QueryInterface(This,riid,ppvObject);
    236 }
    237 static FORCEINLINE ULONG ICryptographicBufferStatics_AddRef(ICryptographicBufferStatics* This) {
    238     return This->lpVtbl->AddRef(This);
    239 }
    240 static FORCEINLINE ULONG ICryptographicBufferStatics_Release(ICryptographicBufferStatics* This) {
    241     return This->lpVtbl->Release(This);
    242 }
    243 /*** IInspectable methods ***/
    244 static FORCEINLINE HRESULT ICryptographicBufferStatics_GetIids(ICryptographicBufferStatics* This,ULONG *iidCount,IID **iids) {
    245     return This->lpVtbl->GetIids(This,iidCount,iids);
    246 }
    247 static FORCEINLINE HRESULT ICryptographicBufferStatics_GetRuntimeClassName(ICryptographicBufferStatics* This,HSTRING *className) {
    248     return This->lpVtbl->GetRuntimeClassName(This,className);
    249 }
    250 static FORCEINLINE HRESULT ICryptographicBufferStatics_GetTrustLevel(ICryptographicBufferStatics* This,TrustLevel *trustLevel) {
    251     return This->lpVtbl->GetTrustLevel(This,trustLevel);
    252 }
    253 /*** ICryptographicBufferStatics methods ***/
    254 static FORCEINLINE HRESULT ICryptographicBufferStatics_Compare(ICryptographicBufferStatics* This,IBuffer *object1,IBuffer *object2,boolean *isEqual) {
    255     return This->lpVtbl->Compare(This,object1,object2,isEqual);
    256 }
    257 static FORCEINLINE HRESULT ICryptographicBufferStatics_GenerateRandom(ICryptographicBufferStatics* This,UINT32 length,IBuffer **buffer) {
    258     return This->lpVtbl->GenerateRandom(This,length,buffer);
    259 }
    260 static FORCEINLINE HRESULT ICryptographicBufferStatics_GenerateRandomNumber(ICryptographicBufferStatics* This,UINT32 *value) {
    261     return This->lpVtbl->GenerateRandomNumber(This,value);
    262 }
    263 static FORCEINLINE HRESULT ICryptographicBufferStatics_CreateFromByteArray(ICryptographicBufferStatics* This,UINT32 __valueSize,BYTE *value,IBuffer **buffer) {
    264     return This->lpVtbl->CreateFromByteArray(This,__valueSize,value,buffer);
    265 }
    266 static FORCEINLINE HRESULT ICryptographicBufferStatics_CopyToByteArray(ICryptographicBufferStatics* This,IBuffer *buffer,UINT32 *__valueSize,BYTE **value) {
    267     return This->lpVtbl->CopyToByteArray(This,buffer,__valueSize,value);
    268 }
    269 static FORCEINLINE HRESULT ICryptographicBufferStatics_DecodeFromHexString(ICryptographicBufferStatics* This,HSTRING value,IBuffer **buffer) {
    270     return This->lpVtbl->DecodeFromHexString(This,value,buffer);
    271 }
    272 static FORCEINLINE HRESULT ICryptographicBufferStatics_EncodeToHexString(ICryptographicBufferStatics* This,IBuffer *buffer,HSTRING *value) {
    273     return This->lpVtbl->EncodeToHexString(This,buffer,value);
    274 }
    275 static FORCEINLINE HRESULT ICryptographicBufferStatics_DecodeFromBase64String(ICryptographicBufferStatics* This,HSTRING value,IBuffer **buffer) {
    276     return This->lpVtbl->DecodeFromBase64String(This,value,buffer);
    277 }
    278 static FORCEINLINE HRESULT ICryptographicBufferStatics_EncodeToBase64String(ICryptographicBufferStatics* This,IBuffer *buffer,HSTRING *value) {
    279     return This->lpVtbl->EncodeToBase64String(This,buffer,value);
    280 }
    281 static FORCEINLINE HRESULT ICryptographicBufferStatics_ConvertStringToBinary(ICryptographicBufferStatics* This,HSTRING value,BinaryStringEncoding encoding,IBuffer **buffer) {
    282     return This->lpVtbl->ConvertStringToBinary(This,value,encoding,buffer);
    283 }
    284 static FORCEINLINE HRESULT ICryptographicBufferStatics_ConvertBinaryToString(ICryptographicBufferStatics* This,BinaryStringEncoding encoding,IBuffer *buffer,HSTRING *value) {
    285     return This->lpVtbl->ConvertBinaryToString(This,encoding,buffer,value);
    286 }
    287 #endif
    288 #endif
    289 
    290 #endif
    291 
    292 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_Compare_Proxy(
    293     ICryptographicBufferStatics* This,
    294     IBuffer *object1,
    295     IBuffer *object2,
    296     boolean *isEqual);
    297 void __RPC_STUB ICryptographicBufferStatics_Compare_Stub(
    298     IRpcStubBuffer* This,
    299     IRpcChannelBuffer* pRpcChannelBuffer,
    300     PRPC_MESSAGE pRpcMessage,
    301     DWORD* pdwStubPhase);
    302 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_GenerateRandom_Proxy(
    303     ICryptographicBufferStatics* This,
    304     UINT32 length,
    305     IBuffer **buffer);
    306 void __RPC_STUB ICryptographicBufferStatics_GenerateRandom_Stub(
    307     IRpcStubBuffer* This,
    308     IRpcChannelBuffer* pRpcChannelBuffer,
    309     PRPC_MESSAGE pRpcMessage,
    310     DWORD* pdwStubPhase);
    311 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_GenerateRandomNumber_Proxy(
    312     ICryptographicBufferStatics* This,
    313     UINT32 *value);
    314 void __RPC_STUB ICryptographicBufferStatics_GenerateRandomNumber_Stub(
    315     IRpcStubBuffer* This,
    316     IRpcChannelBuffer* pRpcChannelBuffer,
    317     PRPC_MESSAGE pRpcMessage,
    318     DWORD* pdwStubPhase);
    319 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_CreateFromByteArray_Proxy(
    320     ICryptographicBufferStatics* This,
    321     UINT32 __valueSize,
    322     BYTE *value,
    323     IBuffer **buffer);
    324 void __RPC_STUB ICryptographicBufferStatics_CreateFromByteArray_Stub(
    325     IRpcStubBuffer* This,
    326     IRpcChannelBuffer* pRpcChannelBuffer,
    327     PRPC_MESSAGE pRpcMessage,
    328     DWORD* pdwStubPhase);
    329 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_CopyToByteArray_Proxy(
    330     ICryptographicBufferStatics* This,
    331     IBuffer *buffer,
    332     UINT32 *__valueSize,
    333     BYTE **value);
    334 void __RPC_STUB ICryptographicBufferStatics_CopyToByteArray_Stub(
    335     IRpcStubBuffer* This,
    336     IRpcChannelBuffer* pRpcChannelBuffer,
    337     PRPC_MESSAGE pRpcMessage,
    338     DWORD* pdwStubPhase);
    339 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_DecodeFromHexString_Proxy(
    340     ICryptographicBufferStatics* This,
    341     HSTRING value,
    342     IBuffer **buffer);
    343 void __RPC_STUB ICryptographicBufferStatics_DecodeFromHexString_Stub(
    344     IRpcStubBuffer* This,
    345     IRpcChannelBuffer* pRpcChannelBuffer,
    346     PRPC_MESSAGE pRpcMessage,
    347     DWORD* pdwStubPhase);
    348 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_EncodeToHexString_Proxy(
    349     ICryptographicBufferStatics* This,
    350     IBuffer *buffer,
    351     HSTRING *value);
    352 void __RPC_STUB ICryptographicBufferStatics_EncodeToHexString_Stub(
    353     IRpcStubBuffer* This,
    354     IRpcChannelBuffer* pRpcChannelBuffer,
    355     PRPC_MESSAGE pRpcMessage,
    356     DWORD* pdwStubPhase);
    357 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_DecodeFromBase64String_Proxy(
    358     ICryptographicBufferStatics* This,
    359     HSTRING value,
    360     IBuffer **buffer);
    361 void __RPC_STUB ICryptographicBufferStatics_DecodeFromBase64String_Stub(
    362     IRpcStubBuffer* This,
    363     IRpcChannelBuffer* pRpcChannelBuffer,
    364     PRPC_MESSAGE pRpcMessage,
    365     DWORD* pdwStubPhase);
    366 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_EncodeToBase64String_Proxy(
    367     ICryptographicBufferStatics* This,
    368     IBuffer *buffer,
    369     HSTRING *value);
    370 void __RPC_STUB ICryptographicBufferStatics_EncodeToBase64String_Stub(
    371     IRpcStubBuffer* This,
    372     IRpcChannelBuffer* pRpcChannelBuffer,
    373     PRPC_MESSAGE pRpcMessage,
    374     DWORD* pdwStubPhase);
    375 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_ConvertStringToBinary_Proxy(
    376     ICryptographicBufferStatics* This,
    377     HSTRING value,
    378     BinaryStringEncoding encoding,
    379     IBuffer **buffer);
    380 void __RPC_STUB ICryptographicBufferStatics_ConvertStringToBinary_Stub(
    381     IRpcStubBuffer* This,
    382     IRpcChannelBuffer* pRpcChannelBuffer,
    383     PRPC_MESSAGE pRpcMessage,
    384     DWORD* pdwStubPhase);
    385 HRESULT STDMETHODCALLTYPE ICryptographicBufferStatics_ConvertBinaryToString_Proxy(
    386     ICryptographicBufferStatics* This,
    387     BinaryStringEncoding encoding,
    388     IBuffer *buffer,
    389     HSTRING *value);
    390 void __RPC_STUB ICryptographicBufferStatics_ConvertBinaryToString_Stub(
    391     IRpcStubBuffer* This,
    392     IRpcChannelBuffer* pRpcChannelBuffer,
    393     PRPC_MESSAGE pRpcMessage,
    394     DWORD* pdwStubPhase);
    395 
    396 #endif  /* __ICryptographicBufferStatics_INTERFACE_DEFINED__ */
    397 
    398 /* Begin additional prototypes for all interfaces */
    399 
    400 ULONG           __RPC_USER HSTRING_UserSize     (ULONG *, ULONG, HSTRING *);
    401 unsigned char * __RPC_USER HSTRING_UserMarshal  (ULONG *, unsigned char *, HSTRING *);
    402 unsigned char * __RPC_USER HSTRING_UserUnmarshal(ULONG *, unsigned char *, HSTRING *);
    403 void            __RPC_USER HSTRING_UserFree     (ULONG *, HSTRING *);
    404 
    405 /* End additional prototypes */
    406 
    407 #ifdef __cplusplus
    408 }
    409 #endif
    410 
    411 #endif /* __windows_security_cryptography_h__ */
    412