mirror of
				https://github.com/espressif/esp-idf.git
				synced 2025-10-31 15:11:40 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			46 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			46 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * SPDX-FileCopyrightText: 2022 Espressif Systems (Shanghai) CO LTD
 | |
|  *
 | |
|  * SPDX-License-Identifier: Apache-2.0
 | |
|  */
 | |
| #pragma once
 | |
| #include <stddef.h>
 | |
| #include <stdbool.h>
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| extern "C" {
 | |
| #endif
 | |
| 
 | |
| /*!
 | |
|  * Defines the function prototypes for multi_heap_internal_poison_fill_region
 | |
|  * and multi_heap_internal_check_block_poisoning, these two function will
 | |
|  * be registered to the ROM tlsf IMPL through the function tlsf_poison_fill_pfunc_set()
 | |
|  * and tlsf_poison_check_pfunc_set() when the heap poisoning feature is enabled.
 | |
|  */
 | |
| typedef void (*poison_fill_pfunc_t)(void *start, size_t size, bool is_free);
 | |
| typedef bool (*poison_check_pfunc_t)(void *start, size_t size, bool is_free, bool print_errors);
 | |
| 
 | |
| /*!
 | |
|  * @brief Set the function to call for filling memory region when
 | |
|  * poisoning is configured.
 | |
|  *
 | |
|  * @note Please keep in mind that this function in ROM still accepts void*.
 | |
|  *
 | |
|  * @param pfunc The callback function to trigger for poisoning
 | |
|  * a memory region.
 | |
|  */
 | |
| void tlsf_poison_fill_pfunc_set(poison_fill_pfunc_t pfunc);
 | |
| 
 | |
| /*!
 | |
|  * @brief Set the function to call for checking memory region when
 | |
|  * poisoning is configured.
 | |
|  *
 | |
|  * @param pfunc The callback function to trigger for checking
 | |
|  * the content of a memory region.
 | |
|  */
 | |
| void tlsf_poison_check_pfunc_set(poison_check_pfunc_t pfunc);
 | |
| 
 | |
| #ifdef __cplusplus
 | |
| }
 | |
| #endif
 |