OLD | NEW |
1 // Copyright (c) 2012 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 SANDBOX_SRC_SERVICE_RESOLVER_H__ | 5 #ifndef SANDBOX_SRC_SERVICE_RESOLVER_H__ |
6 #define SANDBOX_SRC_SERVICE_RESOLVER_H__ | 6 #define SANDBOX_SRC_SERVICE_RESOLVER_H__ |
7 | 7 |
8 #include "sandbox/win/src/nt_internals.h" | 8 #include "sandbox/win/src/nt_internals.h" |
9 #include "sandbox/win/src/resolver.h" | 9 #include "sandbox/win/src/resolver.h" |
10 | 10 |
11 namespace sandbox { | 11 namespace sandbox { |
(...skipping 24 matching lines...) Expand all Loading... |
36 const void** address); | 36 const void** address); |
37 | 37 |
38 // Implementation of Resolver::ResolveTarget. | 38 // Implementation of Resolver::ResolveTarget. |
39 virtual NTSTATUS ResolveTarget(const void* module, | 39 virtual NTSTATUS ResolveTarget(const void* module, |
40 const char* function_name, | 40 const char* function_name, |
41 void** address); | 41 void** address); |
42 | 42 |
43 // Implementation of Resolver::GetThunkSize. | 43 // Implementation of Resolver::GetThunkSize. |
44 virtual size_t GetThunkSize() const; | 44 virtual size_t GetThunkSize() const; |
45 | 45 |
| 46 // Call this to set up ntdll_base_ which will allow for local patches. |
| 47 virtual void AllowLocalPatches(); |
| 48 |
46 protected: | 49 protected: |
47 // The unit test will use this member to allow local patch on a buffer. | 50 // The unit test will use this member to allow local patch on a buffer. |
48 HMODULE ntdll_base_; | 51 HMODULE ntdll_base_; |
49 | 52 |
50 // Handle of the child process. | 53 // Handle of the child process. |
51 HANDLE process_; | 54 HANDLE process_; |
52 | 55 |
53 protected: | 56 protected: |
54 // Keeps track of a Windows 2000 resolver. | 57 // Keeps track of a Windows 2000 resolver. |
55 bool win2k_; | 58 bool win2k_; |
(...skipping 83 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
139 private: | 142 private: |
140 virtual bool IsFunctionAService(void* local_thunk) const; | 143 virtual bool IsFunctionAService(void* local_thunk) const; |
141 | 144 |
142 DISALLOW_COPY_AND_ASSIGN(Win8ResolverThunk); | 145 DISALLOW_COPY_AND_ASSIGN(Win8ResolverThunk); |
143 }; | 146 }; |
144 | 147 |
145 } // namespace sandbox | 148 } // namespace sandbox |
146 | 149 |
147 | 150 |
148 #endif // SANDBOX_SRC_SERVICE_RESOLVER_H__ | 151 #endif // SANDBOX_SRC_SERVICE_RESOLVER_H__ |
OLD | NEW |