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__ 39