summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Hodge <tpg@mutabah.net>2018-05-18 19:37:01 +0800
committerJohn Hodge <tpg@mutabah.net>2018-05-18 19:37:01 +0800
commit1320ff65f1fcce3cbd492eaf6f300ac81e2f8ae3 (patch)
tree195564eb03efdc4f23c7ac614c3db74c376b40f2
parentc6f9ca14a3295c497b0f5ef6eec3b902fd8af3e7 (diff)
downloadmrust-1320ff65f1fcce3cbd492eaf6f300ac81e2f8ae3.tar.gz
Standalone MIRI - Range limit on FFI pointers
-rw-r--r--tools/standalone_miri/miri.cpp4
-rw-r--r--tools/standalone_miri/value.hpp1
2 files changed, 3 insertions, 2 deletions
diff --git a/tools/standalone_miri/miri.cpp b/tools/standalone_miri/miri.cpp
index a4390e66..f7e47a6b 100644
--- a/tools/standalone_miri/miri.cpp
+++ b/tools/standalone_miri/miri.cpp
@@ -1682,7 +1682,7 @@ bool InterpreterThread::call_extern(Value& rv, const ::std::string& link_name, c
auto ret = GetModuleHandleW(static_cast<LPCWSTR>(arg0));
if(ret)
{
- rv = Value::new_ffiptr(FFIPointer { "GetModuleHandleW", ret });
+ rv = Value::new_ffiptr(FFIPointer { "GetModuleHandleW", ret, 0 });
}
else
{
@@ -1709,7 +1709,7 @@ bool InterpreterThread::call_extern(Value& rv, const ::std::string& link_name, c
if( ret )
{
- rv = Value::new_ffiptr(FFIPointer { "GetProcAddress", ret });
+ rv = Value::new_ffiptr(FFIPointer { "GetProcAddress", ret, 0 });
}
else
{
diff --git a/tools/standalone_miri/value.hpp b/tools/standalone_miri/value.hpp
index 4da2eee6..7219f1f7 100644
--- a/tools/standalone_miri/value.hpp
+++ b/tools/standalone_miri/value.hpp
@@ -21,6 +21,7 @@ struct FFIPointer
{
const char* source_function;
void* ptr_value;
+ size_t size;
};
class AllocationHandle