Loading...
Searching...
No Matches
ssl_cache.h File Reference

SSL session cache implementation. More...

`#include "mbedtls/config.h"`
`#include "mbedtls/ssl.h"`
`#include "mbedtls/threading.h"`
Include dependency graph for ssl_cache.h:

Go to the source code of this file.

## 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

## Typedefs

typedef struct mbedtls_ssl_cache_context | mbedtls_ssl_cache_context
typedef struct mbedtls_ssl_cache_entry | mbedtls_ssl_cache_entry

## Functions

void | mbedtls_ssl_cache_init (mbedtls_ssl_cache_context *cache)
| Initialize an SSL 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)
int | mbedtls_ssl_cache_set (void *data, const mbedtls_ssl_session *session)
| Cache set callback implementation (Thread-safe if MBEDTLS_THREADING_C is enabled)
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))
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))
void | mbedtls_ssl_cache_free (mbedtls_ssl_cache_context *cache)
| Free referenced items in a cache context and clear memory.

## Detailed Description

SSL session cache implementation.

Definition in file ssl_cache.h.

## Macro Definition Documentation

## MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES

#define MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES 50

Maximum entries in cache

Definition at line 38 of file ssl_cache.h.

## MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT

#define MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT 86400

1 day

Definition at line 34 of file ssl_cache.h.

## Typedef Documentation

## mbedtls_ssl_cache_context

typedef struct mbedtls_ssl_cache_context mbedtls_ssl_cache_context

Definition at line 47 of file ssl_cache.h.

## mbedtls_ssl_cache_entry

typedef struct mbedtls_ssl_cache_entry mbedtls_ssl_cache_entry

Definition at line 48 of file ssl_cache.h.

## Function Documentation

## mbedtls_ssl_cache_free()

void mbedtls_ssl_cache_free | ( | mbedtls_ssl_cache_context * | cache | ) |

Free referenced items in a cache context and clear memory.

Parameters

  cache | SSL cache context

## mbedtls_ssl_cache_get()

int mbedtls_ssl_cache_get | ( | void * | data,
|  | mbedtls_ssl_session * | session
| ) |  |

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

Parameters

  data | SSL cache context
  session | session to retrieve entry for

Returns
  `0` on success.
  MBEDTLS_ERR_SSL_CACHE_ENTRY_NOT_FOUND if there is no cache entry with specified session ID found, or any other negative error code for other failures.

## mbedtls_ssl_cache_init()

void mbedtls_ssl_cache_init | ( | mbedtls_ssl_cache_context * | cache | ) |

Initialize an SSL cache context.

Parameters

  cache | SSL cache context

## mbedtls_ssl_cache_set()

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

  data | SSL cache context
  session | session to store entry for

Returns
  `0` on success.
  A negative error code on failure.

## mbedtls_ssl_cache_set_max_entries()

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

  cache | SSL cache context
  max | cache entry maximum

## mbedtls_ssl_cache_set_timeout()

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

  cache | SSL cache context
  timeout | cache entry timeout in seconds