| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef CHROME_ELF_BLACKLIST_BLACKLIST_INTERCEPTIONS_H_ | 5 #ifndef CHROME_ELF_BLACKLIST_BLACKLIST_INTERCEPTIONS_H_ |
| 6 #define CHROME_ELF_BLACKLIST_BLACKLIST_INTERCEPTIONS_H_ | 6 #define CHROME_ELF_BLACKLIST_BLACKLIST_INTERCEPTIONS_H_ |
| 7 | 7 |
| 8 #include "sandbox/win/src/nt_internals.h" | 8 #include "sandbox/win/src/nt_internals.h" |
| 9 #include "sandbox/win/src/sandbox_types.h" | 9 #include "sandbox/win/src/sandbox_types.h" |
| 10 | 10 |
| 11 namespace blacklist { | 11 namespace blacklist { |
| 12 | 12 |
| 13 #if defined(_WIN64) |
| 14 extern NtMapViewOfSectionFunction g_nt_map_view_of_section_func; |
| 15 #endif |
| 16 |
| 13 bool InitializeInterceptImports(); | 17 bool InitializeInterceptImports(); |
| 14 | 18 |
| 15 // Interception of NtMapViewOfSection within the current process. | 19 // Interception of NtMapViewOfSection within the current process. |
| 16 // It should never be called directly. This function provides the means to | 20 // It should never be called directly. This function provides the means to |
| 17 // detect dlls being loaded, so we can patch them if needed. | 21 // detect dlls being loaded, so we can patch them if needed. |
| 18 SANDBOX_INTERCEPT NTSTATUS WINAPI BlNtMapViewOfSection( | 22 SANDBOX_INTERCEPT NTSTATUS WINAPI BlNtMapViewOfSection( |
| 19 NtMapViewOfSectionFunction orig_MapViewOfSection, | 23 NtMapViewOfSectionFunction orig_MapViewOfSection, |
| 20 HANDLE section, | 24 HANDLE section, |
| 21 HANDLE process, | 25 HANDLE process, |
| 22 PVOID *base, | 26 PVOID *base, |
| 23 ULONG_PTR zero_bits, | 27 ULONG_PTR zero_bits, |
| 24 SIZE_T commit_size, | 28 SIZE_T commit_size, |
| 25 PLARGE_INTEGER offset, | 29 PLARGE_INTEGER offset, |
| 26 PSIZE_T view_size, | 30 PSIZE_T view_size, |
| 27 SECTION_INHERIT inherit, | 31 SECTION_INHERIT inherit, |
| 28 ULONG allocation_type, | 32 ULONG allocation_type, |
| 29 ULONG protect); | 33 ULONG protect); |
| 30 | 34 |
| 35 #if defined(_WIN64) |
| 36 // Interception of NtMapViewOfSection within the current process. |
| 37 // It should never be called directly. This function provides the means to |
| 38 // detect dlls being loaded, so we can patch them if needed. |
| 39 SANDBOX_INTERCEPT NTSTATUS WINAPI BlNtMapViewOfSection64( |
| 40 HANDLE section, HANDLE process, PVOID *base, ULONG_PTR zero_bits, |
| 41 SIZE_T commit_size, PLARGE_INTEGER offset, PSIZE_T view_size, |
| 42 SECTION_INHERIT inherit, ULONG allocation_type, ULONG protect); |
| 43 #endif |
| 44 |
| 31 } // namespace blacklist | 45 } // namespace blacklist |
| 32 | 46 |
| 33 #endif // CHROME_ELF_BLACKLIST_BLACKLIST_INTERCEPTIONS_H_ | 47 #endif // CHROME_ELF_BLACKLIST_BLACKLIST_INTERCEPTIONS_H_ |
| OLD | NEW |