Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

86 lines
2.6 KiB

//+-------------------------------------------------------------------------
//
// Microsoft Windows
//
// Copyright (C) Microsoft Corporation, 1997 - 1999
//
// File: pstrpc.idl
//
//--------------------------------------------------------------------------
import "unknwn.idl";
import "basetsd.h";
typedef struct _SSCRYPTPROTECTDATA_PROMPTSTRUCT
{
DWORD cbSize;
DWORD dwPromptFlags;
// DWORD_PTR hwndApp;
// LPCWSTR szPrompt;
} SSCRYPTPROTECTDATA_PROMPTSTRUCT, *PSSCRYPTPROTECTDATA_PROMPTSTRUCT;
////////////////////////////
// Interfaces
[
uuid(11220835-5b26-4d94-ae86-c3e475a809de),
version(1.0),
pointer_default(unique)
]
interface ICryptProtect
{
DWORD
SSCryptProtectData(
[in] handle_t h,
[out][size_is(,*pcbOut)] BYTE** ppbOut,
[out] DWORD* pcbOut,
[in][size_is(cbIn)] BYTE* pbIn, // in encr data
[in] DWORD cbIn, // in encr cb
[in] LPCWSTR szDataDescr,
[in,ptr][size_is(cbOptionalEntropy)]
BYTE* pbOptionalEntropy,
[in] DWORD cbOptionalEntropy,
[in,ptr] GUID* pguidProvider,
[in,ptr] PSSCRYPTPROTECTDATA_PROMPTSTRUCT pPromptStruct,
[in] DWORD dwFlags,
[in,ptr][size_is(cbOptionalPassword)]
BYTE* pbOptionalPassword,
[in] DWORD cbOptionalPassword
);
DWORD
SSCryptUnprotectData(
[in] handle_t h,
[out][size_is(,*pcbOut)] BYTE** ppbOut,
[out] DWORD* pcbOut,
[in][size_is(cbIn)] BYTE* pbIn, // in encr data
[in] DWORD cbIn, // in encr cb
[in,out,ptr] LPWSTR* ppszDataDescr,
[in,ptr][size_is(cbOptionalEntropy)]
BYTE* pbOptionalEntropy,
[in] DWORD cbOptionalEntropy,
[in,out,ptr] GUID* pguidProvider,
[in,ptr] PSSCRYPTPROTECTDATA_PROMPTSTRUCT pPromptStruct,
[in] DWORD dwFlags,
[in,ptr][size_is(cbOptionalPassword)]
BYTE* pbOptionalPassword,
[in] DWORD cbOptionalPassword
);
}