mbedtls ported to mbed-classic

Fork of mbedtls by Christopher Haster

Embed: (wiki syntax)

« Back to documentation index

ssl_ticket.h File Reference

ssl_ticket.h File Reference

Internal functions shared by the SSL modules. More...

Go to the source code of this file.

Data Structures

struct  mbedtls_ssl_ticket_key
 Information for session ticket protection. More...
struct  mbedtls_ssl_ticket_context
 Context for session ticket handling functions. More...

Functions

void mbedtls_ssl_ticket_init (mbedtls_ssl_ticket_context *ctx)
 Initialize a ticket context.
int mbedtls_ssl_ticket_setup (mbedtls_ssl_ticket_context *ctx, int(*f_rng)(void *, unsigned char *, size_t), void *p_rng, mbedtls_cipher_type_t cipher, uint32_t lifetime)
 Prepare context to be actually used.
void mbedtls_ssl_ticket_free (mbedtls_ssl_ticket_context *ctx)
 Free a context's content and zeroize it.

Variables

mbedtls_ssl_ticket_write_t mbedtls_ssl_ticket_write
 Implementation of the ticket write callback.
mbedtls_ssl_ticket_parse_t mbedtls_ssl_ticket_parse
 Implementation of the ticket parse callback.

Detailed Description

Internal functions shared by the SSL modules.

TLS server ticket callbacks implementation.

Copyright (C) 2006-2015, ARM Limited, All Rights Reserved SPDX-License-Identifier: Apache-2.0

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

This file is part of mbed TLS (https://tls.mbed.org)

Definition in file ssl_ticket.h.


Function Documentation

void mbedtls_ssl_ticket_free ( mbedtls_ssl_ticket_context ctx )

Free a context's content and zeroize it.

Parameters:
ctxContext to be cleaned up

Definition at line 477 of file ssl_ticket.c.

void mbedtls_ssl_ticket_init ( mbedtls_ssl_ticket_context ctx )

Initialize a ticket context.

(Just make it ready for mbedtls_ssl_ticket_setup() or mbedtls_ssl_ticket_free().)

Parameters:
ctxContext to be initialized

Definition at line 50 of file ssl_ticket.c.

int mbedtls_ssl_ticket_setup ( mbedtls_ssl_ticket_context ctx,
int(*)(void *, unsigned char *, size_t)  f_rng,
void *  p_rng,
mbedtls_cipher_type_t  cipher,
uint32_t  lifetime 
)

Prepare context to be actually used.

Parameters:
ctxContext to be set up
f_rngRNG callback function
p_rngRNG callback context
cipherAEAD cipher to use for ticket protection. Recommended value: MBEDTLS_CIPHER_AES_256_GCM.
lifetimeTickets lifetime in seconds Recommended value: 86400 (one day).
Note:
It is highly recommended to select a cipher that is at least as strong as the the strongest ciphersuite supported. Usually that means a 256-bit key.
The lifetime of the keys is twice the lifetime of tickets. It is recommended to pick a reasonnable lifetime so as not to negate the benefits of forward secrecy.
Returns:
0 if successful, or a specific MBEDTLS_ERR_XXX error code

Definition at line 122 of file ssl_ticket.c.


Variable Documentation

Implementation of the ticket parse callback.

Note:
See mbedlts_ssl_ticket_parse_t for description

Definition at line 122 of file ssl_ticket.h.

Implementation of the ticket write callback.

Note:
See mbedlts_ssl_ticket_write_t for description

Definition at line 115 of file ssl_ticket.h.