00001
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00049
00050
00051 #ifndef MBEDTLS_MEMORY_BUFFER_ALLOC_H
00052 #define MBEDTLS_MEMORY_BUFFER_ALLOC_H
00053
00054 #if !defined(MBEDTLS_CONFIG_FILE)
00055 #include "config.h"
00056 #else
00057 #include MBEDTLS_CONFIG_FILE
00058 #endif
00059
00060 #include <stddef.h>
00061
00070 #if !defined(MBEDTLS_MEMORY_ALIGN_MULTIPLE)
00071 #define MBEDTLS_MEMORY_ALIGN_MULTIPLE 4
00072 #endif
00073
00074
00075
00076 #define MBEDTLS_MEMORY_VERIFY_NONE 0
00077 #define MBEDTLS_MEMORY_VERIFY_ALLOC (1 << 0)
00078 #define MBEDTLS_MEMORY_VERIFY_FREE (1 << 1)
00079 #define MBEDTLS_MEMORY_VERIFY_ALWAYS (MBEDTLS_MEMORY_VERIFY_ALLOC | MBEDTLS_MEMORY_VERIFY_FREE)
00080
00081 #ifdef __cplusplus
00082 extern "C" {
00083 #endif
00084
00100 void mbedtls_memory_buffer_alloc_init( unsigned char *buf, size_t len );
00101
00105 void mbedtls_memory_buffer_alloc_free( void );
00106
00115 void mbedtls_memory_buffer_set_verify( int verify );
00116
00117 #if defined(MBEDTLS_MEMORY_DEBUG)
00118
00124 void mbedtls_memory_buffer_alloc_status( void );
00125
00134 void mbedtls_memory_buffer_alloc_max_get( size_t *max_used, size_t *max_blocks );
00135
00139 void mbedtls_memory_buffer_alloc_max_reset( void );
00140
00149 void mbedtls_memory_buffer_alloc_cur_get( size_t *cur_used, size_t *cur_blocks );
00150 #endif
00151
00163 int mbedtls_memory_buffer_alloc_verify( void );
00164
00165 #if defined(MBEDTLS_SELF_TEST)
00166
00171 int mbedtls_memory_buffer_alloc_self_test( int verbose );
00172 #endif
00173
00174 #ifdef __cplusplus
00175 }
00176 #endif
00177
00178 #endif