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_TARGET_INTERCEPTIONS_H__
      9 #define SANDBOX_SRC_TARGET_INTERCEPTIONS_H__
     10 
     11 namespace sandbox {
     12 
     13 extern "C" {
     14 
     15 // Interception of NtMapViewOfSection on the child process.
     16 // It should never be called directly. This function provides the means to
     17 // detect dlls being loaded, so we can patch them if needed.
     18 SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtMapViewOfSection(
     19     NtMapViewOfSectionFunction orig_MapViewOfSection, HANDLE section,
     20     HANDLE process, PVOID *base, ULONG_PTR zero_bits, SIZE_T commit_size,
     21     PLARGE_INTEGER offset, PSIZE_T view_size, SECTION_INHERIT inherit,
     22     ULONG allocation_type, ULONG protect);
     23 
     24 // Interception of NtUnmapViewOfSection on the child process.
     25 // It should never be called directly. This function provides the means to
     26 // detect dlls being unloaded, so we can clean up our interceptions.
     27 SANDBOX_INTERCEPT NTSTATUS WINAPI TargetNtUnmapViewOfSection(
     28     NtUnmapViewOfSectionFunction orig_UnmapViewOfSection, HANDLE process,
     29     PVOID base);
     30 
     31 }  // extern "C"
     32 
     33 }  // namespace sandbox
     34 
     35 #endif  // SANDBOX_SRC_TARGET_INTERCEPTIONS_H__
     36