33 #ifndef MBEDTLS_PLATFORM_H 34 #define MBEDTLS_PLATFORM_H 36 #if !defined(MBEDTLS_CONFIG_FILE) 39 #include MBEDTLS_CONFIG_FILE 42 #if defined(MBEDTLS_HAVE_TIME) 58 #if !defined(MBEDTLS_PLATFORM_NO_STD_FUNCTIONS) 62 #if !defined(MBEDTLS_PLATFORM_STD_SNPRINTF) 64 #define MBEDTLS_PLATFORM_STD_SNPRINTF mbedtls_platform_win32_snprintf 66 #define MBEDTLS_PLATFORM_STD_SNPRINTF snprintf 69 #if !defined(MBEDTLS_PLATFORM_STD_PRINTF) 70 #define MBEDTLS_PLATFORM_STD_PRINTF printf 72 #if !defined(MBEDTLS_PLATFORM_STD_FPRINTF) 73 #define MBEDTLS_PLATFORM_STD_FPRINTF fprintf 75 #if !defined(MBEDTLS_PLATFORM_STD_CALLOC) 76 #define MBEDTLS_PLATFORM_STD_CALLOC calloc 78 #if !defined(MBEDTLS_PLATFORM_STD_FREE) 79 #define MBEDTLS_PLATFORM_STD_FREE free 81 #if !defined(MBEDTLS_PLATFORM_STD_EXIT) 82 #define MBEDTLS_PLATFORM_STD_EXIT exit 84 #if !defined(MBEDTLS_PLATFORM_STD_TIME) 85 #define MBEDTLS_PLATFORM_STD_TIME time 87 #if !defined(MBEDTLS_PLATFORM_STD_EXIT_SUCCESS) 88 #define MBEDTLS_PLATFORM_STD_EXIT_SUCCESS EXIT_SUCCESS 90 #if !defined(MBEDTLS_PLATFORM_STD_EXIT_FAILURE) 91 #define MBEDTLS_PLATFORM_STD_EXIT_FAILURE EXIT_FAILURE 93 #if defined(MBEDTLS_FS_IO) 94 #if !defined(MBEDTLS_PLATFORM_STD_NV_SEED_READ) 95 #define MBEDTLS_PLATFORM_STD_NV_SEED_READ mbedtls_platform_std_nv_seed_read 97 #if !defined(MBEDTLS_PLATFORM_STD_NV_SEED_WRITE) 98 #define MBEDTLS_PLATFORM_STD_NV_SEED_WRITE mbedtls_platform_std_nv_seed_write 100 #if !defined(MBEDTLS_PLATFORM_STD_NV_SEED_FILE) 101 #define MBEDTLS_PLATFORM_STD_NV_SEED_FILE "seedfile" 105 #if defined(MBEDTLS_PLATFORM_STD_MEM_HDR) 106 #include MBEDTLS_PLATFORM_STD_MEM_HDR 116 #if defined(MBEDTLS_PLATFORM_MEMORY) 117 #if defined(MBEDTLS_PLATFORM_FREE_MACRO) && \ 118 defined(MBEDTLS_PLATFORM_CALLOC_MACRO) 119 #define mbedtls_free MBEDTLS_PLATFORM_FREE_MACRO 120 #define mbedtls_calloc MBEDTLS_PLATFORM_CALLOC_MACRO 136 int mbedtls_platform_set_calloc_free(
void * (*calloc_func)(
size_t,
size_t ),
137 void (*free_func)(
void * ) );
140 #define mbedtls_free free 141 #define mbedtls_calloc calloc 147 #if defined(MBEDTLS_PLATFORM_FPRINTF_ALT) 150 extern int (*
mbedtls_fprintf)( FILE *stream,
const char *format, ... );
161 int mbedtls_platform_set_fprintf(
int (*fprintf_func)( FILE *stream,
const char *,
164 #if defined(MBEDTLS_PLATFORM_FPRINTF_MACRO) 165 #define mbedtls_fprintf MBEDTLS_PLATFORM_FPRINTF_MACRO 167 #define mbedtls_fprintf fprintf 174 #if defined(MBEDTLS_PLATFORM_PRINTF_ALT) 186 int mbedtls_platform_set_printf(
int (*printf_func)(
const char *, ... ) );
188 #if defined(MBEDTLS_PLATFORM_PRINTF_MACRO) 189 #define mbedtls_printf MBEDTLS_PLATFORM_PRINTF_MACRO 191 #define mbedtls_printf printf 206 int mbedtls_platform_win32_snprintf(
char *s,
size_t n,
const char *fmt, ... );
209 #if defined(MBEDTLS_PLATFORM_SNPRINTF_ALT) 210 extern int (*
mbedtls_snprintf)(
char * s,
size_t n,
const char * format, ... );
220 int mbedtls_platform_set_snprintf(
int (*snprintf_func)(
char * s,
size_t n,
221 const char * format, ... ) );
223 #if defined(MBEDTLS_PLATFORM_SNPRINTF_MACRO) 224 #define mbedtls_snprintf MBEDTLS_PLATFORM_SNPRINTF_MACRO 226 #define mbedtls_snprintf MBEDTLS_PLATFORM_STD_SNPRINTF 233 #if defined(MBEDTLS_PLATFORM_EXIT_ALT) 245 int mbedtls_platform_set_exit(
void (*exit_func)(
int status ) );
247 #if defined(MBEDTLS_PLATFORM_EXIT_MACRO) 248 #define mbedtls_exit MBEDTLS_PLATFORM_EXIT_MACRO 250 #define mbedtls_exit exit 257 #if defined(MBEDTLS_PLATFORM_STD_EXIT_SUCCESS) 258 #define MBEDTLS_EXIT_SUCCESS MBEDTLS_PLATFORM_STD_EXIT_SUCCESS 260 #define MBEDTLS_EXIT_SUCCESS 0 262 #if defined(MBEDTLS_PLATFORM_STD_EXIT_FAILURE) 263 #define MBEDTLS_EXIT_FAILURE MBEDTLS_PLATFORM_STD_EXIT_FAILURE 265 #define MBEDTLS_EXIT_FAILURE 1 274 #if defined(MBEDTLS_ENTROPY_NV_SEED) 275 #if !defined(MBEDTLS_PLATFORM_NO_STD_FUNCTIONS) && defined(MBEDTLS_FS_IO) 277 int mbedtls_platform_std_nv_seed_read(
unsigned char *buf,
size_t buf_len );
278 int mbedtls_platform_std_nv_seed_write(
unsigned char *buf,
size_t buf_len );
281 #if defined(MBEDTLS_PLATFORM_NV_SEED_ALT) 282 extern int (*mbedtls_nv_seed_read)(
unsigned char *buf,
size_t buf_len );
283 extern int (*mbedtls_nv_seed_write)(
unsigned char *buf,
size_t buf_len );
294 int mbedtls_platform_set_nv_seed(
295 int (*nv_seed_read_func)(
unsigned char *buf,
size_t buf_len ),
296 int (*nv_seed_write_func)(
unsigned char *buf,
size_t buf_len )
299 #if defined(MBEDTLS_PLATFORM_NV_SEED_READ_MACRO) && \ 300 defined(MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO) 301 #define mbedtls_nv_seed_read MBEDTLS_PLATFORM_NV_SEED_READ_MACRO 302 #define mbedtls_nv_seed_write MBEDTLS_PLATFORM_NV_SEED_WRITE_MACRO 304 #define mbedtls_nv_seed_read mbedtls_platform_std_nv_seed_read 305 #define mbedtls_nv_seed_write mbedtls_platform_std_nv_seed_write 310 #if !defined(MBEDTLS_PLATFORM_SETUP_TEARDOWN_ALT) 324 #include "platform_alt.h"
Configuration options (set of defines)
The platform context structure.