Common and shared functions used by multiple modules in the Mbed TLS library.
More...
#include "config.h"
#include <stddef.h>
#include "platform_time.h"
#include <time.h>
Go to the source code of this file.
Common and shared functions used by multiple modules in the Mbed TLS library.
Definition in file platform_util.h.
◆ MBEDTLS_DEPRECATED
#define MBEDTLS_DEPRECATED __attribute__((deprecated)) |
◆ MBEDTLS_DEPRECATED_NUMERIC_CONSTANT
◆ MBEDTLS_DEPRECATED_STRING_CONSTANT
◆ MBEDTLS_INTERNAL_VALIDATE
#define MBEDTLS_INTERNAL_VALIDATE |
( |
|
cond | ) |
do { } while( 0 ) |
◆ MBEDTLS_INTERNAL_VALIDATE_RET
#define MBEDTLS_INTERNAL_VALIDATE_RET |
( |
|
cond, |
|
|
|
ret |
|
) |
| do { } while( 0 ) |
◆ mbedtls_platform_gmtime_r()
struct tm* mbedtls_platform_gmtime_r |
( |
const mbedtls_time_t * |
tt, |
|
|
struct tm * |
tm_buf |
|
) |
| |
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
◆ mbedtls_platform_zeroize()
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 |
◆ mbedtls_deprecated_numeric_constant_t
◆ mbedtls_deprecated_string_constant_t