00001
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024 #ifndef MBEDTLS_MEMORY_BUFFER_ALLOC_H
00025 #define MBEDTLS_MEMORY_BUFFER_ALLOC_H
00026
00027 #if !defined(MBEDTLS_CONFIG_FILE)
00028 #include "config.h"
00029 #else
00030 #include MBEDTLS_CONFIG_FILE
00031 #endif
00032
00033 #include <stddef.h>
00034
00043 #if !defined(MBEDTLS_MEMORY_ALIGN_MULTIPLE)
00044 #define MBEDTLS_MEMORY_ALIGN_MULTIPLE 4
00045 #endif
00046
00047
00048
00049 #define MBEDTLS_MEMORY_VERIFY_NONE 0
00050 #define MBEDTLS_MEMORY_VERIFY_ALLOC (1 << 0)
00051 #define MBEDTLS_MEMORY_VERIFY_FREE (1 << 1)
00052 #define MBEDTLS_MEMORY_VERIFY_ALWAYS (MBEDTLS_MEMORY_VERIFY_ALLOC | MBEDTLS_MEMORY_VERIFY_FREE)
00053
00054 #ifdef __cplusplus
00055 extern "C" {
00056 #endif
00057
00073 void mbedtls_memory_buffer_alloc_init( unsigned char *buf, size_t len );
00074
00078 void mbedtls_memory_buffer_alloc_free( void );
00079
00088 void mbedtls_memory_buffer_set_verify( int verify );
00089
00090 #if defined(MBEDTLS_MEMORY_DEBUG)
00091
00097 void mbedtls_memory_buffer_alloc_status( void );
00098
00107 void mbedtls_memory_buffer_alloc_max_get( size_t *max_used, size_t *max_blocks );
00108
00112 void mbedtls_memory_buffer_alloc_max_reset( void );
00113
00122 void mbedtls_memory_buffer_alloc_cur_get( size_t *cur_used, size_t *cur_blocks );
00123 #endif
00124
00136 int mbedtls_memory_buffer_alloc_verify( void );
00137
00138 #if defined(MBEDTLS_SELF_TEST)
00139
00144 int mbedtls_memory_buffer_alloc_self_test( int verbose );
00145 #endif
00146
00147 #ifdef __cplusplus
00148 }
00149 #endif
00150
00151 #endif