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 #ifndef SANDBOX_SRC_PROCESS_MITIGATIONS_WIN32K_POLICY_H_ | 5 #ifndef SANDBOX_SRC_PROCESS_MITIGATIONS_WIN32K_POLICY_H_ |
6 #define SANDBOX_SRC_PROCESS_MITIGATIONS_WIN32K_POLICY_H_ | 6 #define SANDBOX_SRC_PROCESS_MITIGATIONS_WIN32K_POLICY_H_ |
7 | 7 |
8 #include "base/strings/string16.h" | 8 #include "base/strings/string16.h" |
9 #include "sandbox/win/src/crosscall_server.h" | 9 #include "sandbox/win/src/crosscall_server.h" |
10 #include "sandbox/win/src/policy_low_level.h" | 10 #include "sandbox/win/src/policy_low_level.h" |
11 #include "sandbox/win/src/sandbox_policy.h" | 11 #include "sandbox/win/src/sandbox_policy.h" |
12 | 12 |
13 namespace sandbox { | 13 namespace sandbox { |
14 | 14 |
15 enum EvalResult; | |
16 | |
17 // A callback function type to get a function for testing. | 15 // A callback function type to get a function for testing. |
18 typedef void* (*OverrideForTestFunction)(const char* name); | 16 typedef void* (*OverrideForTestFunction)(const char* name); |
19 | 17 |
20 // This class centralizes most of the knowledge related to the process | 18 // This class centralizes most of the knowledge related to the process |
21 // mitigations Win32K lockdown policy. | 19 // mitigations Win32K lockdown policy. |
22 class ProcessMitigationsWin32KLockdownPolicy { | 20 class ProcessMitigationsWin32KLockdownPolicy { |
23 public: | 21 public: |
24 // Creates the required low-level policy rules to evaluate a high-level | 22 // Creates the required low-level policy rules to evaluate a high-level |
25 // policy rule for the Win32K process mitigation policy. | 23 // policy rule for the Win32K process mitigation policy. |
26 // name is the object name, semantics is the desired semantics for the | 24 // name is the object name, semantics is the desired semantics for the |
(...skipping 58 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
85 | 83 |
86 private: | 84 private: |
87 static OverrideForTestFunction override_callback_; | 85 static OverrideForTestFunction override_callback_; |
88 }; | 86 }; |
89 | 87 |
90 } // namespace sandbox | 88 } // namespace sandbox |
91 | 89 |
92 #endif // SANDBOX_SRC_PROCESS_MITIGATIONS_WIN32K_POLICY_H_ | 90 #endif // SANDBOX_SRC_PROCESS_MITIGATIONS_WIN32K_POLICY_H_ |
93 | 91 |
94 | 92 |
OLD | NEW |