ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/Daodan/MSYS2/mingw32/i686-w64-mingw32/include/dpapi.h
Revision: 1166
Committed: Tue Oct 26 14:22:36 2021 UTC (4 years ago) by rossy
Content type: text/x-chdr
File size: 4058 byte(s)
Log Message:
Daodan: Replace MinGW build env with an up-to-date MSYS2 env

File Contents

# Content
1 /**
2 * This file is part of the mingw-w64 runtime package.
3 * No warranty is given; refer to the file DISCLAIMER within this package.
4 */
5
6 #ifndef __DPAPI_H__
7 #define __DPAPI_H__
8
9 #ifndef DPAPI_IMP
10 #define DPAPI_IMP DECLSPEC_IMPORT
11 #endif
12
13 #ifdef __cplusplus
14 extern "C" {
15 #endif
16
17 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP) || _WIN32_WINNT >= _WIN32_WINNT_WIN10
18
19 #define CRYPTPROTECT_DEFAULT_PROVIDER { 0xdf9d8cd0, 0x1501, 0x11d1,{ 0x8c, 0x7a, 0x00, 0xc0, 0x4f, 0xc2, 0x97, 0xeb } }
20
21 #define szFORCE_KEY_PROTECTION "ForceKeyProtection"
22
23 #define dwFORCE_KEY_PROTECTION_DISABLED 0x0
24 #define dwFORCE_KEY_PROTECTION_USER_SELECT 0x1
25 #define dwFORCE_KEY_PROTECTION_HIGH 0x2
26
27 #define CRYPTPROTECT_PROMPT_ON_UNPROTECT 0x1
28 #define CRYPTPROTECT_PROMPT_ON_PROTECT 0x2
29 #define CRYPTPROTECT_PROMPT_RESERVED 0x04
30 #define CRYPTPROTECT_PROMPT_STRONG 0x08
31 #define CRYPTPROTECT_PROMPT_REQUIRE_STRONG 0x10
32
33 #define CRYPTPROTECT_UI_FORBIDDEN 0x1
34 #define CRYPTPROTECT_LOCAL_MACHINE 0x4
35 #define CRYPTPROTECT_CRED_SYNC 0x8
36 #define CRYPTPROTECT_AUDIT 0x10
37 #define CRYPTPROTECT_NO_RECOVERY 0x20
38 #define CRYPTPROTECT_VERIFY_PROTECTION 0x40
39 #define CRYPTPROTECT_CRED_REGENERATE 0x80
40
41 #define CRYPTPROTECT_FIRST_RESERVED_FLAGVAL 0x0fffffff
42 #define CRYPTPROTECT_LAST_RESERVED_FLAGVAL 0xffffffff
43
44 #ifndef CRYPTO_BLOBS_DEFINED
45 #define CRYPTO_BLOBS_DEFINED
46 typedef struct _CRYPTOAPI_BLOB {
47 DWORD cbData;
48 BYTE *pbData;
49 } CRYPT_INTEGER_BLOB,*PCRYPT_INTEGER_BLOB;
50
51 typedef CRYPT_INTEGER_BLOB CERT_BLOB,*PCERT_BLOB;
52 typedef CRYPT_INTEGER_BLOB CERT_NAME_BLOB,*PCERT_NAME_BLOB;
53 typedef CRYPT_INTEGER_BLOB CERT_RDN_VALUE_BLOB,*PCERT_RDN_VALUE_BLOB;
54 typedef CRYPT_INTEGER_BLOB CRL_BLOB,*PCRL_BLOB;
55 typedef CRYPT_INTEGER_BLOB CRYPT_ATTR_BLOB,*PCRYPT_ATTR_BLOB;
56 typedef CRYPT_INTEGER_BLOB CRYPT_DATA_BLOB,*PCRYPT_DATA_BLOB;
57 typedef CRYPT_INTEGER_BLOB CRYPT_DER_BLOB,*PCRYPT_DER_BLOB;
58 typedef CRYPT_INTEGER_BLOB CRYPT_DIGEST_BLOB,*PCRYPT_DIGEST_BLOB;
59 typedef CRYPT_INTEGER_BLOB CRYPT_HASH_BLOB,*PCRYPT_HASH_BLOB;
60 typedef CRYPT_INTEGER_BLOB CRYPT_OBJID_BLOB,*PCRYPT_OBJID_BLOB;
61 typedef CRYPT_INTEGER_BLOB CRYPT_UINT_BLOB,*PCRYPT_UINT_BLOB;
62 typedef CRYPT_INTEGER_BLOB DATA_BLOB,*PDATA_BLOB;
63 #endif
64
65 typedef struct _CRYPTPROTECT_PROMPTSTRUCT {
66 DWORD cbSize;
67 DWORD dwPromptFlags;
68 HWND hwndApp;
69 LPCWSTR szPrompt;
70 } CRYPTPROTECT_PROMPTSTRUCT,*PCRYPTPROTECT_PROMPTSTRUCT;
71
72 DPAPI_IMP WINBOOL WINAPI CryptProtectData (DATA_BLOB *pDataIn, LPCWSTR szDataDescr, DATA_BLOB *pOptionalEntropy, PVOID pvReserved, CRYPTPROTECT_PROMPTSTRUCT *pPromptStruct, DWORD dwFlags, DATA_BLOB *pDataOut);
73 DPAPI_IMP WINBOOL WINAPI CryptUnprotectData (DATA_BLOB *pDataIn, LPWSTR *ppszDataDescr, DATA_BLOB *pOptionalEntropy, PVOID pvReserved, CRYPTPROTECT_PROMPTSTRUCT *pPromptStruct, DWORD dwFlags, DATA_BLOB *pDataOut);
74
75 #if NTDDI_VERSION >= 0x06020000
76 WINBOOL WINAPI CryptProtectDataNoUI (DATA_BLOB *pDataIn, LPCWSTR szDataDescr, DATA_BLOB *pOptionalEntropy, PVOID pvReserved, CRYPTPROTECT_PROMPTSTRUCT *pPromptStruct, DWORD dwFlags, const BYTE *pbOptionalPassword, DWORD cbOptionalPassword, DATA_BLOB *pDataOut);
77 WINBOOL WINAPI CryptUnprotectDataNoUI (DATA_BLOB *pDataIn, LPWSTR *ppszDataDescr, DATA_BLOB *pOptionalEntropy, PVOID pvReserved, CRYPTPROTECT_PROMPTSTRUCT *pPromptStruct, DWORD dwFlags, const BYTE *pbOptionalPassword, DWORD cbOptionalPassword, DATA_BLOB *pDataOut);
78 #endif
79 #if NTDDI_VERSION >= 0x06000000
80 DPAPI_IMP WINBOOL WINAPI CryptUpdateProtectedState (PSID pOldSid, LPCWSTR pwszOldPassword, DWORD dwFlags, DWORD *pdwSuccessCount, DWORD *pdwFailureCount);
81 #endif
82
83 #endif
84
85 #if WINAPI_FAMILY_PARTITION (WINAPI_PARTITION_DESKTOP)
86
87 #define CRYPTPROTECTMEMORY_BLOCK_SIZE 16
88
89 #define CRYPTPROTECTMEMORY_SAME_PROCESS 0x0
90 #define CRYPTPROTECTMEMORY_CROSS_PROCESS 0x1
91 #define CRYPTPROTECTMEMORY_SAME_LOGON 0x2
92
93 DPAPI_IMP WINBOOL WINAPI CryptProtectMemory (LPVOID pDataIn, DWORD cbDataIn, DWORD dwFlags);
94 DPAPI_IMP WINBOOL WINAPI CryptUnprotectMemory (LPVOID pDataIn, DWORD cbDataIn, DWORD dwFlags);
95
96 #endif
97
98 #ifdef __cplusplus
99 }
100 #endif
101
102 #endif