1 /**
2  * This file has no copyright assigned and is placed in the Public Domain.
3  * This file is part of the mingw-w64 runtime package.
4  * No warranty is given; refer to the file DISCLAIMER.PD within this package.
5  */
6 #ifndef _SFC_
7 #define _SFC_
8 
9 #ifdef __cplusplus
10 extern "C" {
11 #endif
12 
13 #define SFC_DISABLE_NORMAL 0
14 #define SFC_DISABLE_ASK 1
15 #define SFC_DISABLE_ONCE 2
16 #define SFC_DISABLE_SETUP 3
17 #define SFC_DISABLE_NOPOPUPS 4
18 
19 #define SFC_SCAN_NORMAL 0
20 #define SFC_SCAN_ALWAYS 1
21 #define SFC_SCAN_ONCE 2
22 #define SFC_SCAN_IMMEDIATE 3
23 
24 #define SFC_QUOTA_DEFAULT 50
25 #define SFC_QUOTA_ALL_FILES ((ULONG)-1)
26 
27 #define SFC_IDLE_TRIGGER L"WFP_IDLE_TRIGGER"
28 
29   typedef struct _PROTECTED_FILE_DATA {
30     WCHAR FileName[MAX_PATH];
31     DWORD FileNumber;
32   } PROTECTED_FILE_DATA,*PPROTECTED_FILE_DATA;
33 
34   WINBOOL WINAPI SfcGetNextProtectedFile(HANDLE RpcHandle,PPROTECTED_FILE_DATA ProtFileData);
35   WINBOOL WINAPI SfcIsFileProtected(HANDLE RpcHandle,LPCWSTR ProtFileName);
36   WINBOOL WINAPI SfpVerifyFile(LPCSTR pszFileName,LPSTR pszError,DWORD dwErrSize);
37 
38 #if (_WIN32_WINNT >= 0x0600)
39 WINBOOL WINAPI SfcIsKeyProtected(
40   HKEY hKey,
41   LPCWSTR lpSubKey,
42   REGSAM samDesired
43 );
44 #endif /*(_WIN32_WINNT >= 0x0600)*/
45 
46 #ifdef __cplusplus
47 }
48 #endif
49 #endif
50