diff options
author | Matt Caswell <matt@openssl.org> | 2021-06-02 17:19:23 +0100 |
---|---|---|
committer | Pauli <pauli@openssl.org> | 2021-06-04 11:07:13 +1000 |
commit | bfcdfdee50b0adb9a6e448f07fd8f1c87c919cda (patch) | |
tree | bdd812c5f8c088954a984676c6b1f6d52de6ae37 /ssl | |
parent | 5478387c14e0c22a525e2ec5ed37f6ffad4b7c59 (diff) |
Only call dtls1_start_timer() once
The function dtls1_handle_timeout() calls dtls1_double_timeout() which
was calling dtls1_start_timer(). However dtls1_start_timer() is also
called directly by dtls1_handle_timeout(). We only need to start the timer
once.
Fixes #15561
Reviewed-by: Paul Dale <pauli@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/15595)
(cherry picked from commit f570d33b02d824e2a3f676f718c4692572f45333)
Diffstat (limited to 'ssl')
-rw-r--r-- | ssl/d1_lib.c | 3 | ||||
-rw-r--r-- | ssl/ssl_local.h | 1 |
2 files changed, 1 insertions, 3 deletions
diff --git a/ssl/d1_lib.c b/ssl/d1_lib.c index afbf015216..05b85c1078 100644 --- a/ssl/d1_lib.c +++ b/ssl/d1_lib.c @@ -342,12 +342,11 @@ int dtls1_is_timer_expired(SSL *s) return 1; } -void dtls1_double_timeout(SSL *s) +static void dtls1_double_timeout(SSL *s) { s->d1->timeout_duration_us *= 2; if (s->d1->timeout_duration_us > 60000000) s->d1->timeout_duration_us = 60000000; - dtls1_start_timer(s); } void dtls1_stop_timer(SSL *s) diff --git a/ssl/ssl_local.h b/ssl/ssl_local.h index 8c3542a542..a357d4d950 100644 --- a/ssl/ssl_local.h +++ b/ssl/ssl_local.h @@ -2426,7 +2426,6 @@ __owur int dtls1_handle_timeout(SSL *s); void dtls1_start_timer(SSL *s); void dtls1_stop_timer(SSL *s); __owur int dtls1_is_timer_expired(SSL *s); -void dtls1_double_timeout(SSL *s); __owur int dtls_raw_hello_verify_request(WPACKET *pkt, unsigned char *cookie, size_t cookie_len); __owur size_t dtls1_min_mtu(SSL *s); |