OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // A handful of resource-like constants related to the ChromeELF. | 5 // A handful of resource-like constants related to the ChromeELF. |
6 | 6 |
7 #ifndef CHROME_ELF_CHROME_ELF_CONSTANTS_H_ | 7 #ifndef CHROME_ELF_CHROME_ELF_CONSTANTS_H_ |
8 #define CHROME_ELF_CHROME_ELF_CONSTANTS_H_ | 8 #define CHROME_ELF_CHROME_ELF_CONSTANTS_H_ |
9 | 9 |
| 10 #include <windows.h> |
| 11 |
10 // directory names | 12 // directory names |
11 extern const wchar_t kAppDataDirName[]; | 13 extern const wchar_t kAppDataDirName[]; |
12 extern const wchar_t kCanaryAppDataDirName[]; | 14 extern const wchar_t kCanaryAppDataDirName[]; |
13 extern const wchar_t kLocalStateFilename[]; | 15 extern const wchar_t kLocalStateFilename[]; |
14 extern const wchar_t kPreferencesFilename[]; | 16 extern const wchar_t kPreferencesFilename[]; |
15 extern const wchar_t kUserDataDirName[]; | 17 extern const wchar_t kUserDataDirName[]; |
16 | 18 |
17 namespace blacklist { | 19 namespace blacklist { |
18 | 20 |
19 // The registry path of the blacklist beacon. | 21 // The registry path of the blacklist beacon. |
20 extern const wchar_t kRegistryBeaconPath[]; | 22 extern const wchar_t kRegistryBeaconPath[]; |
21 | 23 |
22 // The registry path of the finch blacklist dlls. | 24 // The registry path of the finch blacklist dlls. |
23 extern const wchar_t kRegistryFinchListPath[]; | 25 extern const wchar_t kRegistryFinchListPath[]; |
24 | 26 |
25 // The properties for the blacklist beacon. | 27 // The properties for the blacklist beacon. |
26 extern const wchar_t kBeaconVersion[]; | 28 extern const wchar_t kBeaconVersion[]; |
27 extern const wchar_t kBeaconState[]; | 29 extern const wchar_t kBeaconState[]; |
| 30 extern const wchar_t kBeaconAttemptCount[]; |
| 31 |
| 32 // The number of failures that can occur on startup with the beacon enabled |
| 33 // before we give up and turn off the blacklist. |
| 34 extern const DWORD kBeaconMaxAttempts; |
28 | 35 |
29 // The states for the blacklist setup code. | 36 // The states for the blacklist setup code. |
30 enum BlacklistState { | 37 enum BlacklistState { |
31 BLACKLIST_DISABLED = 0, | 38 BLACKLIST_DISABLED = 0, |
32 BLACKLIST_ENABLED, | 39 BLACKLIST_ENABLED, |
33 // The blacklist setup code is running. If this is still set at startup, | 40 // The blacklist setup code is running. If this is the state at startup, it |
34 // it means the last setup crashed. | 41 // means the last setup crashed. |
35 BLACKLIST_SETUP_RUNNING, | 42 BLACKLIST_SETUP_RUNNING, |
36 // The blacklist thunk setup code is running. If this is still set at startup, | 43 // If the last setup crashed, we reassign the state to failed. |
37 // it means the last setup crashed during thunk setup. | 44 BLACKLIST_SETUP_FAILED, |
38 BLACKLIST_THUNK_SETUP, | |
39 // The blacklist code is currently intercepting MapViewOfSection. If this is | |
40 // still set at startup, it means we crashed during interception. | |
41 BLACKLIST_INTERCEPTING, | |
42 // Always keep this at the end. | 45 // Always keep this at the end. |
43 BLACKLIST_STATE_MAX, | 46 BLACKLIST_STATE_MAX, |
44 }; | 47 }; |
45 | 48 |
46 } // namespace blacklist | 49 } // namespace blacklist |
47 | 50 |
48 #endif // CHROME_ELF_CHROME_ELF_CONSTANTS_H_ | 51 #endif // CHROME_ELF_CHROME_ELF_CONSTANTS_H_ |
OLD | NEW |