diff options
-rw-r--r-- | include/sanitizer/msan_interface.h | 12 | ||||
-rw-r--r-- | lib/msan/msan.cc | 6 | ||||
-rw-r--r-- | lib/msan/msan_interceptors.cc | 6 | ||||
-rw-r--r-- | lib/msan/msan_interface_internal.h | 12 |
4 files changed, 18 insertions, 18 deletions
diff --git a/include/sanitizer/msan_interface.h b/include/sanitizer/msan_interface.h index ceba6611b..9eff7b597 100644 --- a/include/sanitizer/msan_interface.h +++ b/include/sanitizer/msan_interface.h @@ -27,10 +27,10 @@ extern "C" { /* Set raw origin for the memory range. */ - void __msan_set_origin(void *a, size_t size, uint32_t origin); + void __msan_set_origin(const void *a, size_t size, uint32_t origin); /* Get raw origin for an address. */ - uint32_t __msan_get_origin(void *a); + uint32_t __msan_get_origin(const void *a); /* Returns non-zero if tracking origins. */ int __msan_get_track_origins(); @@ -39,14 +39,14 @@ extern "C" { uint32_t __msan_get_umr_origin(); /* Make memory region fully initialized (without changing its contents). */ - void __msan_unpoison(void *a, size_t size); + void __msan_unpoison(const void *a, size_t size); /* Make memory region fully uninitialized (without changing its contents). */ - void __msan_poison(void *a, size_t size); + void __msan_poison(const void *a, size_t size); /* Make memory region partially uninitialized (without changing its contents). */ - void __msan_partial_poison(void* data, void* shadow, size_t size); + void __msan_partial_poison(const void* data, void* shadow, size_t size); /* Returns the offset of the first (at least partially) poisoned byte in the memory range, or -1 if the whole range is good. */ @@ -76,7 +76,7 @@ extern "C" { /* Tell MSan about newly allocated memory (ex.: custom allocator). Memory will be marked uninitialized, with origin at the call site. */ - void __msan_allocated_memory(void* data, size_t size); + void __msan_allocated_memory(const void* data, size_t size); #else // __has_feature(memory_sanitizer) diff --git a/lib/msan/msan.cc b/lib/msan/msan.cc index dc11ed0c7..e872abf0b 100644 --- a/lib/msan/msan.cc +++ b/lib/msan/msan.cc @@ -379,7 +379,7 @@ int __msan_get_param_tls_offset() { return param_tls_p - tls_base_p; } -void __msan_partial_poison(void* data, void* shadow, uptr size) { +void __msan_partial_poison(const void* data, void* shadow, uptr size) { internal_memcpy((void*)MEM_TO_SHADOW((uptr)data), shadow, size); } @@ -388,7 +388,7 @@ void __msan_load_unpoisoned(void *src, uptr size, void *dst) { __msan_unpoison(dst, size); } -void __msan_set_origin(void *a, uptr size, u32 origin) { +void __msan_set_origin(const void *a, uptr size, u32 origin) { // Origin mapping is 4 bytes per 4 bytes of application memory. // Here we extend the range such that its left and right bounds are both // 4 byte aligned. @@ -442,7 +442,7 @@ const char *__msan_get_origin_descr_if_stack(u32 id) { } -u32 __msan_get_origin(void *a) { +u32 __msan_get_origin(const void *a) { if (!__msan_track_origins) return 0; uptr x = (uptr)a; uptr aligned = x & ~3ULL; diff --git a/lib/msan/msan_interceptors.cc b/lib/msan/msan_interceptors.cc index a94005069..4bdf06681 100644 --- a/lib/msan/msan_interceptors.cc +++ b/lib/msan/msan_interceptors.cc @@ -746,7 +746,7 @@ INTERCEPTOR(void *, malloc, SIZE_T size) { return MsanReallocate(&stack, 0, size, sizeof(u64), false); } -void __msan_allocated_memory(void* data, uptr size) { +void __msan_allocated_memory(const void* data, uptr size) { GET_MALLOC_STACK_TRACE; if (flags()->poison_in_malloc) __msan_poison(data, size); @@ -981,12 +981,12 @@ void *fast_memcpy(void *dst, const void *src, SIZE_T n) { // These interface functions reside here so that they can use // fast_memset, etc. -void __msan_unpoison(void *a, uptr size) { +void __msan_unpoison(const void *a, uptr size) { if (!MEM_IS_APP(a)) return; fast_memset((void*)MEM_TO_SHADOW((uptr)a), 0, size); } -void __msan_poison(void *a, uptr size) { +void __msan_poison(const void *a, uptr size) { if (!MEM_IS_APP(a)) return; fast_memset((void*)MEM_TO_SHADOW((uptr)a), __msan::flags()->poison_heap_with_zeroes ? 0 : -1, size); diff --git a/lib/msan/msan_interface_internal.h b/lib/msan/msan_interface_internal.h index e1cd13c3f..d295a0565 100644 --- a/lib/msan/msan_interface_internal.h +++ b/lib/msan/msan_interface_internal.h @@ -38,7 +38,7 @@ SANITIZER_INTERFACE_ATTRIBUTE __attribute__((noreturn)) void __msan_warning_noreturn(); SANITIZER_INTERFACE_ATTRIBUTE -void __msan_unpoison(void *a, uptr size); +void __msan_unpoison(const void *a, uptr size); SANITIZER_INTERFACE_ATTRIBUTE void __msan_clear_and_unpoison(void *a, uptr size); SANITIZER_INTERFACE_ATTRIBUTE @@ -54,7 +54,7 @@ void __msan_copy_origin(void *dst, const void *src, uptr size); SANITIZER_INTERFACE_ATTRIBUTE void __msan_move_poison(void *dst, const void *src, uptr size); SANITIZER_INTERFACE_ATTRIBUTE -void __msan_poison(void *a, uptr size); +void __msan_poison(const void *a, uptr size); SANITIZER_INTERFACE_ATTRIBUTE void __msan_poison_stack(void *a, uptr size); @@ -69,11 +69,11 @@ SANITIZER_INTERFACE_ATTRIBUTE sptr __msan_test_shadow(const void *x, uptr size); SANITIZER_INTERFACE_ATTRIBUTE -void __msan_set_origin(void *a, uptr size, u32 origin); +void __msan_set_origin(const void *a, uptr size, u32 origin); SANITIZER_INTERFACE_ATTRIBUTE void __msan_set_alloca_origin(void *a, uptr size, const char *descr); SANITIZER_INTERFACE_ATTRIBUTE -u32 __msan_get_origin(void *a); +u32 __msan_get_origin(const void *a); SANITIZER_INTERFACE_ATTRIBUTE void __msan_clear_on_return(); @@ -114,12 +114,12 @@ u32 __msan_get_umr_origin(); SANITIZER_INTERFACE_ATTRIBUTE const char *__msan_get_origin_descr_if_stack(u32 id); SANITIZER_INTERFACE_ATTRIBUTE -void __msan_partial_poison(void* data, void* shadow, uptr size); +void __msan_partial_poison(const void* data, void* shadow, uptr size); // Tell MSan about newly allocated memory (ex.: custom allocator). // Memory will be marked uninitialized, with origin at the call site. SANITIZER_INTERFACE_ATTRIBUTE -void __msan_allocated_memory(void* data, uptr size); +void __msan_allocated_memory(const void* data, uptr size); } // extern "C" #endif // MSAN_INTERFACE_INTERNAL_H |