Home | History | Annotate | Download | only in src
      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_POLICY_TARGET_H__
      9 #define SANDBOX_SRC_POLICY_TARGET_H__
     10 
     11 namespace sandbox {
     12 
     13 struct CountedParameterSetBase;
     14 
     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);
     18 
     19 extern "C" {
     20 
     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);
     27 
     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);
     33 
     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);
     40 
     41 }  // extern "C"
     42 
     43 }  // namespace sandbox
     44 
     45 #endif  // SANDBOX_SRC_POLICY_TARGET_H__
     46