platform.h File Reference

The Mbed TLS platform abstraction layer. More...

`#include "config.h"`
`#include "mbedtls/platform_time.h"`
`#include <stdio.h>`
`#include <stdlib.h>`
`#include <time.h>`
Include dependency graph for platform.h:

Go to the source code of this file.

## Data Structures

struct | mbedtls_platform_context
| The platform context structure. More...

## Macros

#define | mbedtls_free free
#define | mbedtls_calloc calloc
#define | mbedtls_fprintf fprintf
#define | mbedtls_printf printf
#define | mbedtls_snprintf snprintf
#define | mbedtls_exit exit
#define | MBEDTLS_EXIT_SUCCESS MBEDTLS_PLATFORM_STD_EXIT_SUCCESS
#define | MBEDTLS_EXIT_FAILURE MBEDTLS_PLATFORM_STD_EXIT_FAILURE
SECTION: Module settings
The configuration options you can set for this module are in this section. Either change them in config.h or define them on the compiler command line.
#define | MBEDTLS_PLATFORM_STD_SNPRINTF snprintf
#define | MBEDTLS_PLATFORM_STD_PRINTF printf
#define | MBEDTLS_PLATFORM_STD_FPRINTF fprintf
#define | MBEDTLS_PLATFORM_STD_CALLOC calloc
#define | MBEDTLS_PLATFORM_STD_FREE free
#define | MBEDTLS_PLATFORM_STD_EXIT exit
#define | MBEDTLS_PLATFORM_STD_TIME time
#define | MBEDTLS_PLATFORM_STD_EXIT_SUCCESS EXIT_SUCCESS
#define | MBEDTLS_PLATFORM_STD_EXIT_FAILURE EXIT_FAILURE
#define | MBEDTLS_PLATFORM_STD_NV_SEED_READ mbedtls_platform_std_nv_seed_read
#define | MBEDTLS_PLATFORM_STD_NV_SEED_WRITE mbedtls_platform_std_nv_seed_write
#define | MBEDTLS_PLATFORM_STD_NV_SEED_FILE "seedfile"

## Functions

int | mbedtls_platform_setup (mbedtls_platform_context *ctx)
| This function performs any platform initialization operations. More...
void | mbedtls_platform_teardown (mbedtls_platform_context *ctx)
| This function performs any platform teardown operations. More...

## Detailed Description

The Mbed TLS platform abstraction layer.

Definition in file platform.h.

## Macro Definition Documentation

## mbedtls_calloc

#define mbedtls_calloc calloc

Definition at line 131 of file platform.h.

## mbedtls_exit

#define mbedtls_exit exit

Definition at line 236 of file platform.h.

## MBEDTLS_EXIT_FAILURE

#define MBEDTLS_EXIT_FAILURE MBEDTLS_PLATFORM_STD_EXIT_FAILURE

Definition at line 249 of file platform.h.

## MBEDTLS_EXIT_SUCCESS

#define MBEDTLS_EXIT_SUCCESS MBEDTLS_PLATFORM_STD_EXIT_SUCCESS

Definition at line 244 of file platform.h.

## mbedtls_fprintf

#define mbedtls_fprintf fprintf

Definition at line 155 of file platform.h.

## mbedtls_free

#define mbedtls_free free

Definition at line 130 of file platform.h.

## MBEDTLS_PLATFORM_STD_CALLOC

#define MBEDTLS_PLATFORM_STD_CALLOC calloc

The default `calloc` function to use.

Definition at line 67 of file platform.h.

## MBEDTLS_PLATFORM_STD_EXIT

#define MBEDTLS_PLATFORM_STD_EXIT exit

The default `exit` function to use.

Definition at line 73 of file platform.h.

## MBEDTLS_PLATFORM_STD_EXIT_FAILURE

#define MBEDTLS_PLATFORM_STD_EXIT_FAILURE EXIT_FAILURE

The default exit value to use.

Definition at line 82 of file platform.h.

## MBEDTLS_PLATFORM_STD_EXIT_SUCCESS

#define MBEDTLS_PLATFORM_STD_EXIT_SUCCESS EXIT_SUCCESS

The default exit value to use.

Definition at line 79 of file platform.h.

## MBEDTLS_PLATFORM_STD_FPRINTF

#define MBEDTLS_PLATFORM_STD_FPRINTF fprintf

The default `fprintf` function to use.

Definition at line 64 of file platform.h.

## MBEDTLS_PLATFORM_STD_FREE

#define MBEDTLS_PLATFORM_STD_FREE free

The default `free` function to use.

Definition at line 70 of file platform.h.

## MBEDTLS_PLATFORM_STD_NV_SEED_FILE

#define MBEDTLS_PLATFORM_STD_NV_SEED_FILE "seedfile"

Definition at line 92 of file platform.h.

## MBEDTLS_PLATFORM_STD_NV_SEED_READ

#define MBEDTLS_PLATFORM_STD_NV_SEED_READ mbedtls_platform_std_nv_seed_read

Definition at line 86 of file platform.h.

## MBEDTLS_PLATFORM_STD_NV_SEED_WRITE

#define MBEDTLS_PLATFORM_STD_NV_SEED_WRITE mbedtls_platform_std_nv_seed_write

Definition at line 89 of file platform.h.

## MBEDTLS_PLATFORM_STD_PRINTF

#define MBEDTLS_PLATFORM_STD_PRINTF printf

The default `printf` function to use.

Definition at line 61 of file platform.h.

## MBEDTLS_PLATFORM_STD_SNPRINTF

#define MBEDTLS_PLATFORM_STD_SNPRINTF snprintf

The default `snprintf` function to use.

Definition at line 57 of file platform.h.

## MBEDTLS_PLATFORM_STD_TIME

#define MBEDTLS_PLATFORM_STD_TIME time

The default `time` function to use.

Definition at line 76 of file platform.h.

## mbedtls_printf

#define mbedtls_printf printf

Definition at line 178 of file platform.h.

## mbedtls_snprintf

#define mbedtls_snprintf snprintf

Definition at line 213 of file platform.h.

## Function Documentation

## mbedtls_platform_setup()

int mbedtls_platform_setup | ( | mbedtls_platform_context * | ctx | ) |

This function performs any platform initialization operations.

Parameters

  ctx | The Mbed TLS context.

Returns
  `0` on success.

Note
  This function is intended to allow platform-specific initialization, and should be called before any other library functions. Its implementation is platform-specific, and unless platform-specific code is provided, it does nothing.

Its use and whether it is necessary to call it is dependent on the platform.

## mbedtls_platform_teardown()

void mbedtls_platform_teardown | ( | mbedtls_platform_context * | ctx | ) |

This function performs any platform teardown operations.

Parameters

  ctx | The Mbed TLS context.

Note
  This function should be called after every other Mbed TLS module has been correctly freed using the appropriate free function. Its implementation is platform-specific, and unless platform-specific code is provided, it does nothing.

Its use and whether it is necessary to call it is dependent on the platform.