mbed TLS  Version 2.9.0
SSL/TLS Library for the Embedded Space
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
ssl_cache.h File Reference

Data Structures

struct  mbedtls_ssl_cache_entry
 This structure is used for storing cache entries. More...
 
struct  mbedtls_ssl_cache_context
 Cache context. More...
 

Macros

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_SSL_CACHE_DEFAULT_TIMEOUT   86400
 
#define MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES   50
 

Functions

void mbedtls_ssl_cache_init (mbedtls_ssl_cache_context *cache)
 Initialize an SSL cache context. More...
 
int mbedtls_ssl_cache_get (void *data, mbedtls_ssl_session *session)
 Cache get callback implementation (Thread-safe if MBEDTLS_THREADING_C is enabled) More...
 
int mbedtls_ssl_cache_set (void *data, const mbedtls_ssl_session *session)
 Cache set callback implementation (Thread-safe if MBEDTLS_THREADING_C is enabled) More...
 
void mbedtls_ssl_cache_set_timeout (mbedtls_ssl_cache_context *cache, int timeout)
 Set the cache timeout (Default: MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT (1 day)) More...
 
void mbedtls_ssl_cache_set_max_entries (mbedtls_ssl_cache_context *cache, int max)
 Set the maximum number of cache entries (Default: MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES (50)) More...
 
void mbedtls_ssl_cache_free (mbedtls_ssl_cache_context *cache)
 Free referenced items in a cache context and clear memory. More...
 

Description

SSL session cache implementation.


Data Structure Documentation

struct mbedtls_ssl_cache_entry

This structure is used for storing cache entries.

Data Fields
mbedtls_ssl_cache_entry * next

chain pointer

mbedtls_x509_buf peer_cert

entry peer_cert

mbedtls_ssl_session session

entry session

mbedtls_time_t timestamp

entry timestamp

struct mbedtls_ssl_cache_context

Cache context.

Data Fields
mbedtls_ssl_cache_entry * chain

start of the chain

int max_entries

maximum entries

int timeout

cache entry timeout

Macro Definition Documentation

#define MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES   50

Maximum entries in cache

#define MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT   86400

1 day

Function Documentation

void mbedtls_ssl_cache_free ( mbedtls_ssl_cache_context cache)

Free referenced items in a cache context and clear memory.

Parameters
cacheSSL cache context
int mbedtls_ssl_cache_get ( void *  data,
mbedtls_ssl_session session 
)

Cache get callback implementation (Thread-safe if MBEDTLS_THREADING_C is enabled)

Parameters
dataSSL cache context
sessionsession to retrieve entry for
void mbedtls_ssl_cache_init ( mbedtls_ssl_cache_context cache)

Initialize an SSL cache context.

Parameters
cacheSSL cache context
int mbedtls_ssl_cache_set ( void *  data,
const mbedtls_ssl_session session 
)

Cache set callback implementation (Thread-safe if MBEDTLS_THREADING_C is enabled)

Parameters
dataSSL cache context
sessionsession to store entry for
void mbedtls_ssl_cache_set_max_entries ( mbedtls_ssl_cache_context cache,
int  max 
)

Set the maximum number of cache entries (Default: MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES (50))

Parameters
cacheSSL cache context
maxcache entry maximum
void mbedtls_ssl_cache_set_timeout ( mbedtls_ssl_cache_context cache,
int  timeout 
)

Set the cache timeout (Default: MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT (1 day))

A timeout of 0 indicates no timeout.

Parameters
cacheSSL cache context
timeoutcache entry timeout in seconds