Index: sandbox/win/src/resolver_64.cc |
diff --git a/sandbox/win/src/resolver_64.cc b/sandbox/win/src/resolver_64.cc |
deleted file mode 100644 |
index 6a99735444103a95484f4b079f4f0831299dd97c..0000000000000000000000000000000000000000 |
--- a/sandbox/win/src/resolver_64.cc |
+++ /dev/null |
@@ -1,66 +0,0 @@ |
-// Copyright (c) 2006-2010 The Chromium Authors. All rights reserved. |
-// Use of this source code is governed by a BSD-style license that can be |
-// found in the LICENSE file. |
- |
-#include "sandbox/win/src/resolver.h" |
- |
-#include <stddef.h> |
- |
-// For placement new. This file must not depend on the CRT at runtime, but |
-// placement operator new is inline. |
-#include <new> |
- |
-#include "sandbox/win/src/sandbox_nt_util.h" |
- |
-namespace { |
- |
-const USHORT kMovRax = 0xB848; |
-const USHORT kJmpRax = 0xe0ff; |
- |
-#pragma pack(push, 1) |
-struct InternalThunk { |
- // This struct contains roughly the following code: |
- // 01 48b8f0debc9a78563412 mov rax,123456789ABCDEF0h |
- // ff e0 jmp rax |
- // |
- // The code modifies rax, but that's fine for x64 ABI. |
- |
- InternalThunk() { |
- mov_rax = kMovRax; |
- jmp_rax = kJmpRax; |
- interceptor_function = 0; |
- }; |
- USHORT mov_rax; // = 48 B8 |
- ULONG_PTR interceptor_function; |
- USHORT jmp_rax; // = ff e0 |
-}; |
-#pragma pack(pop) |
- |
-} // namespace. |
- |
-namespace sandbox { |
- |
-size_t ResolverThunk::GetInternalThunkSize() const { |
- return sizeof(InternalThunk); |
-} |
- |
-bool ResolverThunk::SetInternalThunk(void* storage, size_t storage_bytes, |
- const void* original_function, |
- const void* interceptor) { |
- if (storage_bytes < sizeof(InternalThunk)) |
- return false; |
- |
- InternalThunk* thunk = new(storage) InternalThunk; |
- thunk->interceptor_function = reinterpret_cast<ULONG_PTR>(interceptor); |
- |
- return true; |
-} |
- |
-NTSTATUS ResolverThunk::ResolveTarget(const void* module, |
- const char* function_name, |
- void** address) { |
- // We don't support sidestep & co. |
- return STATUS_NOT_IMPLEMENTED; |
-} |
- |
-} // namespace sandbox |