Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: TYBLE16_simple_data_logger TYBLE16_MP3_Air
platform_util.h File Reference
Common and shared functions used by multiple modules in the Mbed TLS library. More...
Go to the source code of this file.
Functions | |
void | mbedtls_param_failed (const char *failure_condition, const char *file, int line) |
User supplied callback function for parameter validation failure. | |
void | mbedtls_platform_zeroize (void *buf, size_t len) |
Securely zeroize a buffer. | |
struct tm * | mbedtls_platform_gmtime_r (const mbedtls_time_t *tt, struct tm *tm_buf) |
Platform-specific implementation of gmtime_r() |
Detailed Description
Common and shared functions used by multiple modules in the Mbed TLS library.
Definition in file platform_util.h.
Function Documentation
void mbedtls_param_failed | ( | const char * | failure_condition, |
const char * | file, | ||
int | line | ||
) |
User supplied callback function for parameter validation failure.
See MBEDTLS_CHECK_PARAMS for context.
This function will be called unless an alternative treatement is defined through the MBEDTLS_PARAM_FAILED macro.
This function can return, and the operation will be aborted, or alternatively, through use of setjmp()/longjmp() can resume execution in the application code.
- Parameters:
-
failure_condition The assertion that didn't hold. file The file where the assertion failed. line The line in the file where the assertion failed.
struct tm* mbedtls_platform_gmtime_r | ( | const mbedtls_time_t * | tt, |
struct tm * | tm_buf | ||
) | [read] |
Platform-specific implementation of gmtime_r()
The function is a thread-safe abstraction that behaves similarly to the gmtime_r() function from Unix/POSIX.
Mbed TLS will try to identify the underlying platform and make use of an appropriate underlying implementation (e.g. gmtime_r() for POSIX and gmtime_s() for Windows). If this is not possible, then gmtime() will be used. In this case, calls from the library to gmtime() will be guarded by the mutex mbedtls_threading_gmtime_mutex if MBEDTLS_THREADING_C is enabled. It is recommended that calls from outside the library are also guarded by this mutex.
If MBEDTLS_PLATFORM_GMTIME_R_ALT is defined, then Mbed TLS will unconditionally use the alternative implementation for mbedtls_platform_gmtime_r() supplied by the user at compile time.
- Parameters:
-
tt Pointer to an object containing time (in seconds) since the epoch to be converted tm_buf Pointer to an object where the results will be stored
- Returns:
- Pointer to an object of type struct tm on success, otherwise NULL
Definition at line 109 of file platform_util.c.
void mbedtls_platform_zeroize | ( | void * | buf, |
size_t | len | ||
) |
Securely zeroize a buffer.
The function is meant to wipe the data contained in a buffer so that it can no longer be recovered even if the program memory is later compromised. Call this function on sensitive data stored on the stack before returning from a function, and on sensitive data stored on the heap before freeing the heap object.
It is extremely difficult to guarantee that calls to mbedtls_platform_zeroize() are not removed by aggressive compiler optimizations in a portable way. For this reason, Mbed TLS provides the configuration option MBEDTLS_PLATFORM_ZEROIZE_ALT, which allows users to configure mbedtls_platform_zeroize() to use a suitable implementation for their platform and needs
- Parameters:
-
buf Buffer to be zeroized len Length of the buffer in bytes
Definition at line 73 of file platform_util.c.
Generated on Tue Jul 12 2022 13:55:17 by
