mbed TLS v2.16.1
Main Page
Related Pages
Modules
Data Structures
Files
File List
Globals
include
mbedtls
ssl_cookie.h
Go to the documentation of this file.
1
6
/*
7
* Copyright (C) 2006-2015, ARM Limited, All Rights Reserved
8
* SPDX-License-Identifier: GPL-2.0
9
*
10
* This program is free software; you can redistribute it and/or modify
11
* it under the terms of the GNU General Public License as published by
12
* the Free Software Foundation; either version 2 of the License, or
13
* (at your option) any later version.
14
*
15
* This program is distributed in the hope that it will be useful,
16
* but WITHOUT ANY WARRANTY; without even the implied warranty of
17
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18
* GNU General Public License for more details.
19
*
20
* You should have received a copy of the GNU General Public License along
21
* with this program; if not, write to the Free Software Foundation, Inc.,
22
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
23
*
24
* This file is part of mbed TLS (https://tls.mbed.org)
25
*/
26
#ifndef MBEDTLS_SSL_COOKIE_H
27
#define MBEDTLS_SSL_COOKIE_H
28
29
#if !defined(MBEDTLS_CONFIG_FILE)
30
#include "
config.h
"
31
#else
32
#include MBEDTLS_CONFIG_FILE
33
#endif
34
35
#include "
ssl.h
"
36
37
#if defined(MBEDTLS_THREADING_C)
38
#include "
threading.h
"
39
#endif
40
48
#ifndef MBEDTLS_SSL_COOKIE_TIMEOUT
49
#define MBEDTLS_SSL_COOKIE_TIMEOUT 60
50
#endif
51
52
/* \} name SECTION: Module settings */
53
54
#ifdef __cplusplus
55
extern
"C"
{
56
#endif
57
61
typedef
struct
mbedtls_ssl_cookie_ctx
62
{
63
mbedtls_md_context_t
hmac_ctx
;
64
#if !defined(MBEDTLS_HAVE_TIME)
65
unsigned
long
serial;
66
#endif
67
unsigned
long
timeout
;
70
#if defined(MBEDTLS_THREADING_C)
71
mbedtls_threading_mutex_t mutex;
72
#endif
73
}
mbedtls_ssl_cookie_ctx
;
74
78
void
mbedtls_ssl_cookie_init
(
mbedtls_ssl_cookie_ctx
*ctx );
79
83
int
mbedtls_ssl_cookie_setup
(
mbedtls_ssl_cookie_ctx
*ctx,
84
int
(*f_rng)(
void
*,
unsigned
char
*,
size_t
),
85
void
*p_rng );
86
96
void
mbedtls_ssl_cookie_set_timeout
(
mbedtls_ssl_cookie_ctx
*ctx,
unsigned
long
delay );
97
101
void
mbedtls_ssl_cookie_free
(
mbedtls_ssl_cookie_ctx
*ctx );
102
106
mbedtls_ssl_cookie_write_t
mbedtls_ssl_cookie_write
;
107
111
mbedtls_ssl_cookie_check_t
mbedtls_ssl_cookie_check
;
112
113
#ifdef __cplusplus
114
}
115
#endif
116
117
#endif
/* ssl_cookie.h */
Generated on Tue Aug 13 2019 20:47:14 for mbed TLS v2.16.1 by
1.8.3.1