Home | History | Annotate | Download | only in blacklist
      1 // Copyright 2013 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 #ifndef CHROME_ELF_BLACKLIST_BLACKLIST_INTERCEPTIONS_H_
      6 #define CHROME_ELF_BLACKLIST_BLACKLIST_INTERCEPTIONS_H_
      7 
      8 #include "sandbox/win/src/nt_internals.h"
      9 #include "sandbox/win/src/sandbox_types.h"
     10 
     11 namespace blacklist {
     12 
     13 bool InitializeInterceptImports();
     14 
     15 // Interception of NtMapViewOfSection within the current 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 BlNtMapViewOfSection(
     19     NtMapViewOfSectionFunction orig_MapViewOfSection,
     20     HANDLE section,
     21     HANDLE process,
     22     PVOID *base,
     23     ULONG_PTR zero_bits,
     24     SIZE_T commit_size,
     25     PLARGE_INTEGER offset,
     26     PSIZE_T view_size,
     27     SECTION_INHERIT inherit,
     28     ULONG allocation_type,
     29     ULONG protect);
     30 
     31 #if defined(_WIN64)
     32 // Interception of NtMapViewOfSection within the current process.
     33 // It should never be called directly. This function provides the means to
     34 // detect dlls being loaded, so we can patch them if needed.
     35 SANDBOX_INTERCEPT NTSTATUS WINAPI BlNtMapViewOfSection64(
     36     HANDLE section, HANDLE process, PVOID *base, ULONG_PTR zero_bits,
     37     SIZE_T commit_size, PLARGE_INTEGER offset, PSIZE_T view_size,
     38     SECTION_INHERIT inherit, ULONG allocation_type, ULONG protect);
     39 #endif
     40 
     41 }  // namespace blacklist
     42 
     43 #endif  // CHROME_ELF_BLACKLIST_BLACKLIST_INTERCEPTIONS_H_
     44