PolarSSL v1.3.7
Data Structures | Typedefs | Functions
ssl_cache.h File Reference

SSL session cache implementation. More...

#include "ssl.h"
Include dependency graph for ssl_cache.h:

Go to the source code of this file.

Data Structures

struct  _ssl_cache_entry
 This structure is used for storing cache entries. More...
 
struct  _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 SSL_CACHE_DEFAULT_TIMEOUT   86400
 
#define SSL_CACHE_DEFAULT_MAX_ENTRIES   50
 

Typedefs

typedef struct _ssl_cache_context ssl_cache_context
 
typedef struct _ssl_cache_entry ssl_cache_entry
 

Functions

void ssl_cache_init (ssl_cache_context *cache)
 Initialize an SSL cache context. More...
 
int ssl_cache_get (void *data, ssl_session *session)
 Cache get callback implementation (Thread-safe if POLARSSL_THREADING_C is enabled) More...
 
int ssl_cache_set (void *data, const ssl_session *session)
 Cache set callback implementation (Thread-safe if POLARSSL_THREADING_C is enabled) More...
 
void ssl_cache_set_timeout (ssl_cache_context *cache, int timeout)
 Set the cache timeout (Default: SSL_CACHE_DEFAULT_TIMEOUT (1 day)) More...
 
void ssl_cache_set_max_entries (ssl_cache_context *cache, int max)
 Set the cache timeout (Default: SSL_CACHE_DEFAULT_MAX_ENTRIES (50)) More...
 
void ssl_cache_free (ssl_cache_context *cache)
 Free referenced items in a cache context and clear memory. More...
 

Detailed Description

SSL session cache implementation.

Copyright (C) 2006-2013, Brainspark B.V.

This file is part of PolarSSL (http://www.polarssl.org) Lead Maintainer: Paul Bakker <polarssl_maintainer at polarssl.org>

All rights reserved.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.

Definition in file ssl_cache.h.

Macro Definition Documentation

#define SSL_CACHE_DEFAULT_MAX_ENTRIES   50

Maximum entries in cache

Definition at line 49 of file ssl_cache.h.

#define SSL_CACHE_DEFAULT_TIMEOUT   86400

1 day

Definition at line 45 of file ssl_cache.h.

Typedef Documentation

Definition at line 58 of file ssl_cache.h.

Definition at line 59 of file ssl_cache.h.

Function Documentation

void ssl_cache_free ( ssl_cache_context cache)

Free referenced items in a cache context and clear memory.

Parameters
cacheSSL cache context
int ssl_cache_get ( void *  data,
ssl_session session 
)

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

Parameters
dataSSL cache context
sessionsession to retrieve entry for
void ssl_cache_init ( ssl_cache_context cache)

Initialize an SSL cache context.

Parameters
cacheSSL cache context
int ssl_cache_set ( void *  data,
const ssl_session session 
)

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

Parameters
dataSSL cache context
sessionsession to store entry for
void ssl_cache_set_max_entries ( ssl_cache_context cache,
int  max 
)

Set the cache timeout (Default: SSL_CACHE_DEFAULT_MAX_ENTRIES (50))

Parameters
cacheSSL cache context
maxcache entry maximum
void ssl_cache_set_timeout ( ssl_cache_context cache,
int  timeout 
)

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

            A timeout of 0 indicates no timeout.
Parameters
cacheSSL cache context
timeoutcache entry timeout in seconds