|
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. |
|
2 // Use of this source code is governed by a BSD-style license that can be |
|
3 // found in the LICENSE file. |
|
4 |
|
5 #include "sandbox/win/src/nt_internals.h" |
|
6 #include "sandbox/win/src/sandbox_types.h" |
|
7 |
|
8 #ifndef SANDBOX_SRC_REGISTRY_INTERCEPTION_H__ |
|
9 #define SANDBOX_SRC_REGISTRY_INTERCEPTION_H__ |
|
10 |
|
11 namespace sandbox { |
|
12 |
|
13 extern "C" { |
|
14 |
|
15 // Interception of NtCreateKey on the child process. |
|
16 // It should never be called directly |
|
17 SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtCreateKey( |
|
18 NtCreateKeyFunction orig_CreateKey, PHANDLE key, ACCESS_MASK desired_access, |
|
19 POBJECT_ATTRIBUTES object_attributes, ULONG title_index, |
|
20 PUNICODE_STRING class_name, ULONG create_options, PULONG disposition); |
|
21 |
|
22 // Interception of NtOpenKey on the child process. |
|
23 // It should never be called directly |
|
24 SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtOpenKey( |
|
25 NtOpenKeyFunction orig_OpenKey, PHANDLE key, ACCESS_MASK desired_access, |
|
26 POBJECT_ATTRIBUTES object_attributes); |
|
27 |
|
28 // Interception of NtOpenKeyEx on the child process. |
|
29 // It should never be called directly |
|
30 SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtOpenKeyEx( |
|
31 NtOpenKeyExFunction orig_OpenKeyEx, PHANDLE key, ACCESS_MASK desired_access, |
|
32 POBJECT_ATTRIBUTES object_attributes, ULONG open_options); |
|
33 |
|
34 } // extern "C" |
|
35 |
|
36 } // namespace sandbox |
|
37 |
|
38 #endif // SANDBOX_SRC_REGISTRY_INTERCEPTION_H__ |