ssl_cookie.h

Go to the documentation of this file.
00001 
00023 #ifndef MBEDTLS_SSL_COOKIE_H
00024 #define MBEDTLS_SSL_COOKIE_H
00025 
00026 #include "ssl.h"
00027 
00028 #if defined(MBEDTLS_THREADING_C)
00029 #include "threading.h"
00030 #endif
00031 
00039 #ifndef MBEDTLS_SSL_COOKIE_TIMEOUT
00040 #define MBEDTLS_SSL_COOKIE_TIMEOUT     60 
00041 #endif
00042 
00043 /* \} name SECTION: Module settings */
00044 
00045 #ifdef __cplusplus
00046 extern "C" {
00047 #endif
00048 
00052 typedef struct
00053 {
00054     mbedtls_md_context_t    hmac_ctx;   
00055 #if !defined(MBEDTLS_HAVE_TIME)
00056     unsigned long   serial;     
00057 #endif
00058     unsigned long   timeout;    
00061 #if defined(MBEDTLS_THREADING_C)
00062     mbedtls_threading_mutex_t mutex;
00063 #endif
00064 } mbedtls_ssl_cookie_ctx;
00065 
00069 void mbedtls_ssl_cookie_init( mbedtls_ssl_cookie_ctx *ctx );
00070 
00074 int mbedtls_ssl_cookie_setup( mbedtls_ssl_cookie_ctx *ctx,
00075                       int (*f_rng)(void *, unsigned char *, size_t),
00076                       void *p_rng );
00077 
00087 void mbedtls_ssl_cookie_set_timeout( mbedtls_ssl_cookie_ctx *ctx, unsigned long delay );
00088 
00092 void mbedtls_ssl_cookie_free( mbedtls_ssl_cookie_ctx *ctx );
00093 
00097 mbedtls_ssl_cookie_write_t mbedtls_ssl_cookie_write;
00098 
00102 mbedtls_ssl_cookie_check_t mbedtls_ssl_cookie_check;
00103 
00104 #ifdef __cplusplus
00105 }
00106 #endif
00107 
00108 #endif /* ssl_cookie.h */

Generated on 11 Mar 2017 for mbed TLS v2.4.2 by  doxygen 1.4.7