Digi XBee(R) ANSI C Host Library
Macros | Functions
platform_util.h File Reference

Common and shared functions used by multiple modules in the Mbed TLS library. More...

#include "mbedtls/config.h"
#include <stddef.h>

Go to the source code of this file.

Macros

#define MBEDTLS_INTERNAL_VALIDATE_RET(cond, ret)   do { } while( 0 )
 
#define MBEDTLS_INTERNAL_VALIDATE(cond)   do { } while( 0 )
 
#define MBEDTLS_DEPRECATED_STRING_CONSTANT(VAL)   VAL
 
#define MBEDTLS_DEPRECATED_NUMERIC_CONSTANT(VAL)   VAL
 

Functions

void mbedtls_platform_zeroize (void *buf, size_t len)
 Securely zeroize a buffer. More...
 

Detailed Description

Common and shared functions used by multiple modules in the Mbed TLS library.

Function Documentation

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
bufBuffer to be zeroized
lenLength of the buffer in bytes