michael@0: // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. michael@0: // Use of this source code is governed by a BSD-style license that can be michael@0: // found in the LICENSE file. michael@0: michael@0: #include "sandbox/win/src/nt_internals.h" michael@0: #include "sandbox/win/src/sandbox_types.h" michael@0: michael@0: #ifndef SANDBOX_SRC_REGISTRY_INTERCEPTION_H__ michael@0: #define SANDBOX_SRC_REGISTRY_INTERCEPTION_H__ michael@0: michael@0: namespace sandbox { michael@0: michael@0: extern "C" { michael@0: michael@0: // Interception of NtCreateKey on the child process. michael@0: // It should never be called directly michael@0: SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtCreateKey( michael@0: NtCreateKeyFunction orig_CreateKey, PHANDLE key, ACCESS_MASK desired_access, michael@0: POBJECT_ATTRIBUTES object_attributes, ULONG title_index, michael@0: PUNICODE_STRING class_name, ULONG create_options, PULONG disposition); michael@0: michael@0: // Interception of NtOpenKey on the child process. michael@0: // It should never be called directly michael@0: SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtOpenKey( michael@0: NtOpenKeyFunction orig_OpenKey, PHANDLE key, ACCESS_MASK desired_access, michael@0: POBJECT_ATTRIBUTES object_attributes); michael@0: michael@0: // Interception of NtOpenKeyEx on the child process. michael@0: // It should never be called directly michael@0: SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtOpenKeyEx( michael@0: NtOpenKeyExFunction orig_OpenKeyEx, PHANDLE key, ACCESS_MASK desired_access, michael@0: POBJECT_ATTRIBUTES object_attributes, ULONG open_options); michael@0: michael@0: } // extern "C" michael@0: michael@0: } // namespace sandbox michael@0: michael@0: #endif // SANDBOX_SRC_REGISTRY_INTERCEPTION_H__