Roll src/third_party/WebKit e0eac24:489c548 (svn 193311:193320)
[chromium-blink-merge.git] / sandbox / win / src / policy_target.h
blob8a2b437095ee5c803ad38c85ab273fffe396ebe3
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.
5 #include "sandbox/win/src/nt_internals.h"
6 #include "sandbox/win/src/sandbox_types.h"
8 #ifndef SANDBOX_SRC_POLICY_TARGET_H__
9 #define SANDBOX_SRC_POLICY_TARGET_H__
11 namespace sandbox {
13 struct CountedParameterSetBase;
15 // Performs a policy lookup and returns true if the request should be passed to
16 // the broker process.
17 bool QueryBroker(int ipc_id, CountedParameterSetBase* params);
19 extern "C" {
21 // Interception of NtSetInformationThread on the child process.
22 // It should never be called directly.
23 SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtSetInformationThread(
24 NtSetInformationThreadFunction orig_SetInformationThread, HANDLE thread,
25 NT_THREAD_INFORMATION_CLASS thread_info_class, PVOID thread_information,
26 ULONG thread_information_bytes);
28 // Interception of NtOpenThreadToken on the child process.
29 // It should never be called directly
30 SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtOpenThreadToken(
31 NtOpenThreadTokenFunction orig_OpenThreadToken, HANDLE thread,
32 ACCESS_MASK desired_access, BOOLEAN open_as_self, PHANDLE token);
34 // Interception of NtOpenThreadTokenEx on the child process.
35 // It should never be called directly
36 SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtOpenThreadTokenEx(
37 NtOpenThreadTokenExFunction orig_OpenThreadTokenEx, HANDLE thread,
38 ACCESS_MASK desired_access, BOOLEAN open_as_self, ULONG handle_attributes,
39 PHANDLE token);
41 } // extern "C"
43 } // namespace sandbox
45 #endif // SANDBOX_SRC_POLICY_TARGET_H__