DTLS depends on TIMING_C for now
This commit is contained in:
parent
e698f59a25
commit
8e704f0f74
4 changed files with 15 additions and 17 deletions
|
@ -223,8 +223,9 @@
|
|||
#endif
|
||||
|
||||
#if defined(POLARSSL_SSL_PROTO_DTLS) && ( \
|
||||
!defined(POLARSSL_SSL_PROTO_TLS1_1) && \
|
||||
!defined(POLARSSL_SSL_PROTO_TLS1_2) )
|
||||
( !defined(POLARSSL_SSL_PROTO_TLS1_1) && \
|
||||
!defined(POLARSSL_SSL_PROTO_TLS1_2) ) || \
|
||||
!defined(POLARSSL_TIMING_C) )
|
||||
#error "POLARSSL_SSL_PROTO_DTLS defined, but not all prerequisites"
|
||||
#endif
|
||||
|
||||
|
|
|
@ -908,6 +908,11 @@
|
|||
*
|
||||
* Requires: POLARSSL_SSL_PROTO_TLS1_1
|
||||
* or POLARSSL_SSL_PROTO_TLS1_2
|
||||
* POLARSSL_TIMING_C
|
||||
*
|
||||
* \note Dependency on TIMING_C may be replaced by something more flexible
|
||||
* (callbacks or abstraction layer in the next major version). Please contact
|
||||
* us if you're having issues with this dependency.
|
||||
*
|
||||
* Comment this macro to disable support for DTLS
|
||||
*/
|
||||
|
|
|
@ -76,7 +76,7 @@
|
|||
#include "zlib.h"
|
||||
#endif
|
||||
|
||||
#if defined(POLARSSL_TIMING_C)
|
||||
#if defined(POLARSSL_SSL_PROTO_DTLS)
|
||||
#include "timing.h"
|
||||
#endif
|
||||
|
||||
|
@ -830,14 +830,11 @@ struct _ssl_context
|
|||
ssl_transform *transform_negotiate; /*!< transform params in negotiation */
|
||||
|
||||
/*
|
||||
* Timers (WIP)
|
||||
* Timers
|
||||
*/
|
||||
#if defined(POLARSSL_TIMING_C)
|
||||
struct hr_time time_info;
|
||||
unsigned long time_limit;
|
||||
#endif
|
||||
|
||||
#if defined(POLARSSL_SSL_PROTO_DTLS)
|
||||
struct hr_time time_info; /*!< timer context */
|
||||
unsigned long time_limit; /*!< limit for the running timer */
|
||||
uint32_t hs_timeout_min; /*!< initial value of the handshake
|
||||
retransmission timeout */
|
||||
uint32_t hs_timeout_max; /*!< maximum value of the handshake
|
||||
|
|
|
@ -79,10 +79,7 @@ static inline size_t ssl_ep_len( const ssl_context *ssl )
|
|||
}
|
||||
|
||||
|
||||
/*
|
||||
* Timers (WIP)
|
||||
*/
|
||||
#if defined(POLARSSL_TIMING_C)
|
||||
#if defined(POLARSSL_SSL_PROTO_DTLS)
|
||||
/*
|
||||
* Start a timer.
|
||||
* Passing millisecs = 0 cancels a running timer.
|
||||
|
@ -107,9 +104,7 @@ static int ssl_check_timer( ssl_context *ssl )
|
|||
|
||||
return( 0 );
|
||||
}
|
||||
#endif
|
||||
|
||||
#if defined(POLARSSL_SSL_PROTO_DTLS)
|
||||
/*
|
||||
* Double the retransmit timeout value, within the allowed range,
|
||||
* returning -1 if the maximum value has already been reached.
|
||||
|
@ -5755,7 +5750,7 @@ int ssl_read( ssl_context *ssl, unsigned char *buf, size_t len )
|
|||
|
||||
if( ssl->in_offt == NULL )
|
||||
{
|
||||
#if defined(POLARSSL_TIMING_C)
|
||||
#if defined(POLARSSL_SSL_PROTO_DTLS)
|
||||
/* Start timer if not already running */
|
||||
if( ssl->time_limit == 0 )
|
||||
ssl_set_timer( ssl, ssl->read_timeout );
|
||||
|
@ -5912,7 +5907,7 @@ int ssl_read( ssl_context *ssl, unsigned char *buf, size_t len )
|
|||
|
||||
ssl->in_offt = ssl->in_msg;
|
||||
|
||||
#if defined(POLARSSL_TIMING_C)
|
||||
#if defined(POLARSSL_SSL_PROTO_DTLS)
|
||||
/* We're going to return something now, cancel timer,
|
||||
* except if handshake (renegotiation) is in progress */
|
||||
if( ssl->state == SSL_HANDSHAKE_OVER )
|
||||
|
|
Loading…
Reference in a new issue