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 properties for the blacklist beacon. | 24 // The properties for the blacklist beacon. |
23 extern const wchar_t kBeaconVersion[]; | 25 extern const wchar_t kBeaconVersion[]; |
24 extern const wchar_t kBeaconState[]; | 26 extern const wchar_t kBeaconState[]; |
| 27 extern const wchar_t kBeaconAttemptCount[]; |
| 28 |
| 29 // The number of failures that can occur on startup with the beacon enabled |
| 30 // before we give up and turn off the blacklist. |
| 31 extern const DWORD kBeaconMaxAttempts; |
25 | 32 |
26 // The states for the blacklist setup code. | 33 // The states for the blacklist setup code. |
27 enum BlacklistState { | 34 enum BlacklistState { |
28 BLACKLIST_DISABLED = 0, | 35 BLACKLIST_DISABLED = 0, |
29 BLACKLIST_ENABLED, | 36 BLACKLIST_ENABLED, |
30 // The blacklist setup code is running. If this is still set at startup, | 37 // The blacklist setup code is running. If this is the state at startup, it |
31 // it means the last setup crashed. | 38 // means the last setup crashed. |
32 BLACKLIST_SETUP_RUNNING, | 39 BLACKLIST_SETUP_RUNNING, |
33 // The blacklist thunk setup code is running. If this is still set at startup, | 40 // If the last setup crashed, we reassign the state to failed. |
34 // it means the last setup crashed during thunk setup. | 41 BLACKLIST_SETUP_FAILED, |
35 BLACKLIST_THUNK_SETUP, | |
36 // The blacklist code is currently intercepting MapViewOfSection. If this is | |
37 // still set at startup, it means we crashed during interception. | |
38 BLACKLIST_INTERCEPTING, | |
39 // Always keep this at the end. | 42 // Always keep this at the end. |
40 BLACKLIST_STATE_MAX, | 43 BLACKLIST_STATE_MAX, |
41 }; | 44 }; |
42 | 45 |
43 } // namespace blacklist | 46 } // namespace blacklist |
44 | 47 |
45 #endif // CHROME_ELF_CHROME_ELF_CONSTANTS_H_ | 48 #endif // CHROME_ELF_CHROME_ELF_CONSTANTS_H_ |
OLD | NEW |