Mbed TLS v2.28.9
Loading...
Searching...
No Matches
ssl_cache.h
Go to the documentation of this file.
1
6/*
7 * Copyright The Mbed TLS Contributors
8 * SPDX-License-Identifier: Apache-2.0 OR GPL-2.0-or-later
9 */
10#ifndef MBEDTLS_SSL_CACHE_H
11#define MBEDTLS_SSL_CACHE_H
12
13#if !defined(MBEDTLS_CONFIG_FILE)
14#include "mbedtls/config.h"
15#else
16#include MBEDTLS_CONFIG_FILE
17#endif
18
19#include "mbedtls/ssl.h"
20
21#if defined(MBEDTLS_THREADING_C)
22#include "mbedtls/threading.h"
23#endif
24
33#if !defined(MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT)
34#define MBEDTLS_SSL_CACHE_DEFAULT_TIMEOUT 86400
35#endif
36
37#if !defined(MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES)
38#define MBEDTLS_SSL_CACHE_DEFAULT_MAX_ENTRIES 50
39#endif
40
43#ifdef __cplusplus
44extern "C" {
45#endif
46
49
54#if defined(MBEDTLS_HAVE_TIME)
56#endif
58#if defined(MBEDTLS_X509_CRT_PARSE_C) && \
59 defined(MBEDTLS_SSL_KEEP_PEER_CERTIFICATE)
61#endif
63};
64
70 int timeout;
72#if defined(MBEDTLS_THREADING_C)
74#endif
75};
76
83
97
108int mbedtls_ssl_cache_set(void *data, const mbedtls_ssl_session *session);
109
110#if defined(MBEDTLS_HAVE_TIME)
121#endif /* MBEDTLS_HAVE_TIME */
122
131
138
139#ifdef __cplusplus
140}
141#endif
142
143#endif /* ssl_cache.h */
Configuration options (set of defines)
time_t mbedtls_time_t
SSL/TLS functions.
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_init(mbedtls_ssl_cache_context *cache)
Initialize an SSL cache context.
void mbedtls_ssl_cache_free(mbedtls_ssl_cache_context *cache)
Free referenced items in a cache context and clear memory.
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))
int mbedtls_ssl_cache_get(void *data, mbedtls_ssl_session *session)
Cache get callback implementation (Thread-safe if MBEDTLS_THREADING_C is enabled)
mbedtls_ssl_cache_entry * chain
Definition ssl_cache.h:69
mbedtls_threading_mutex_t mutex
Definition ssl_cache.h:73
This structure is used for storing cache entries.
Definition ssl_cache.h:53
mbedtls_time_t timestamp
Definition ssl_cache.h:55
mbedtls_ssl_cache_entry * next
Definition ssl_cache.h:62
mbedtls_x509_buf peer_cert
Definition ssl_cache.h:60
mbedtls_ssl_session session
Definition ssl_cache.h:57
Threading abstraction layer.