![]() |
Max OS 0.3
|
Implementation of the Kernel Address Sanitizer (KASan) handler. More...
Go to the source code of this file.
Functions | |
| void | __asan_load1_noabort (uintptr_t address) |
| Triggered when a memory load access violation of 1 byte is detected. | |
| void | __asan_load2_noabort (uintptr_t address) |
| Triggered when a memory load access violation of 2 bytes is detected. | |
| void | __asan_load4_noabort (uintptr_t address) |
| Triggered when a memory load access violation of 4 bytes is detected. | |
| void | __asan_load8_noabort (uintptr_t address) |
| Triggered when a memory load access violation of 8 bytes is detected. | |
| void | __asan_load16_noabort (uintptr_t address) |
| Triggered when a memory load access violation of 16 bytes is detected. | |
| void | __asan_loadN_noabort (uintptr_t address, size_t size) |
| Triggered when a memory load access violation of arbitrary size is detected. | |
| void | __asan_store1_noabort (uintptr_t address) |
| Triggered when a memory store access violation of 1 byte is detected. | |
| void | __asan_store2_noabort (uintptr_t address) |
| Triggered when a memory store access violation of 2 bytes is detected. | |
| void | __asan_store4_noabort (uintptr_t address) |
| Triggered when a memory store access violation of 4 bytes is detected. | |
| void | __asan_store8_noabort (uintptr_t address) |
| Triggered when a memory store access violation of 8 bytes is detected. | |
| void | __asan_store16_noabort (uintptr_t address) |
| Triggered when a memory store access violation of 16 bytes is detected. | |
| void | __asan_storeN_noabort (uintptr_t address, size_t size) |
| Triggered when a memory store access violation of arbitrary size is detected. | |
| void | __asan_handle_no_return () |
| Triggered when a function that is expected to not return does return. | |
| void | __asan_alloca_poison (uintptr_t address, size_t size) |
| Poisons a region of stack memory allocated with alloca. | |
| void | __asan_alloca_unpoison (void *stack_top, void *stack_bottom) |
| Unpoisons a region of stack memory allocated with alloca. | |
| void | __asan_set_shadow_00 (void *pointer, size_t size) |
| Unpoisons a region of memory, marking it as accessible. | |
| void | __asan_set_shadow_f8 (void *pointer, size_t size) |
| Poisons a region of memory, marking it as inaccessible. | |
| void | __asan_before_dynamic_init (const void *module_name) |
| Called before dynamic initialization of a module. | |
| void | __asan_after_dynamic_init (const void *module_name) |
| Called after dynamic initialization of a module. | |
Implementation of the Kernel Address Sanitizer (KASan) handler.
Definition in file kasan.cpp.
| void __asan_after_dynamic_init | ( | const void * | module_name | ) |
| void __asan_alloca_poison | ( | uintptr_t | address, |
| size_t | size | ||
| ) |
Poisons a region of stack memory allocated with alloca.
| address | The starting address of the allocated memory |
| size | The size of the allocated memory in bytes |
Definition at line 181 of file kasan.cpp.
References ASSERT.
| void __asan_alloca_unpoison | ( | void * | stack_top, |
| void * | stack_bottom | ||
| ) |
Unpoisons a region of stack memory allocated with alloca.
| stack_top | The top address of the allocated memory |
| stack_bottom | The bottom address of the allocated memory |
Definition at line 192 of file kasan.cpp.
References ASSERT.
| void __asan_before_dynamic_init | ( | const void * | module_name | ) |
| void __asan_handle_no_return | ( | ) |
| void __asan_load16_noabort | ( | uintptr_t | address | ) |
Triggered when a memory load access violation of 16 bytes is detected.
| address | The address that was accessed |
Definition at line 99 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_load1_noabort | ( | uintptr_t | address | ) |
Triggered when a memory load access violation of 1 byte is detected.
| address | The address that was accessed |
Definition at line 63 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_load2_noabort | ( | uintptr_t | address | ) |
Triggered when a memory load access violation of 2 bytes is detected.
| address | The address that was accessed |
Definition at line 72 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_load4_noabort | ( | uintptr_t | address | ) |
Triggered when a memory load access violation of 4 bytes is detected.
| address | The address that was accessed |
Definition at line 81 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_load8_noabort | ( | uintptr_t | address | ) |
Triggered when a memory load access violation of 8 bytes is detected.
| address | The address that was accessed |
Definition at line 90 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_loadN_noabort | ( | uintptr_t | address, |
| size_t | size | ||
| ) |
Triggered when a memory load access violation of arbitrary size is detected.
| address | The address that was accessed |
| size | The size of the access in bytes |
Definition at line 109 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_set_shadow_00 | ( | void * | pointer, |
| size_t | size | ||
| ) |
Unpoisons a region of memory, marking it as accessible.
| pointer | The starting address of the memory |
| size | The size of the memory region in bytes |
Definition at line 203 of file kasan.cpp.
| void __asan_set_shadow_f8 | ( | void * | pointer, |
| size_t | size | ||
| ) |
Poisons a region of memory, marking it as inaccessible.
| pointer | The starting address of the memory |
| size | The size of the memory region in bytes |
Definition at line 217 of file kasan.cpp.
| void __asan_store16_noabort | ( | uintptr_t | address | ) |
Triggered when a memory store access violation of 16 bytes is detected.
| address | The address that was accessed |
Definition at line 154 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_store1_noabort | ( | uintptr_t | address | ) |
Triggered when a memory store access violation of 1 byte is detected.
| address | The address that was accessed |
Definition at line 118 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_store2_noabort | ( | uintptr_t | address | ) |
Triggered when a memory store access violation of 2 bytes is detected.
| address | The address that was accessed |
Definition at line 127 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_store4_noabort | ( | uintptr_t | address | ) |
Triggered when a memory store access violation of 4 bytes is detected.
| address | The address that was accessed |
Definition at line 136 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_store8_noabort | ( | uintptr_t | address | ) |
Triggered when a memory store access violation of 8 bytes is detected.
| address | The address that was accessed |
Definition at line 145 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().
| void __asan_storeN_noabort | ( | uintptr_t | address, |
| size_t | size | ||
| ) |
Triggered when a memory store access violation of arbitrary size is detected.
| address | The address that was accessed |
| size | The size of the access in bytes |
Definition at line 164 of file kasan.cpp.
References MaxOS::runtime::KASanHandler::handle().