From 49c0869825c4c6165d64afc1002d40ecb68240e5 Mon Sep 17 00:00:00 2001 From: philipel Date: Tue, 24 May 2016 01:49:43 -0700 Subject: [PATCH] Revert of Change initial DTLS retransmission timer from 1 second to 50ms. (patchset #2 id:20001 of https://codereview.webrtc.org/1981463002/ ) Reason for revert: Seems like this CL cause DtlsTransportChannelTest.TestReceiveClientHelloBeforeRemoteFingerprint DtlsTransportChannelTest.TestReceiveClientHelloBeforeWritable to consistently fail on Win DrMemory Full and for DtlsTransportChannelTest.TestReceiveClientHelloBeforeRemoteFingerprint DtlsTransportChannelTest.TestReceiveClientHelloBeforeWritable to consistently fail on Linux Memcheck Original issue's description: > Change initial DTLS retransmission timer from 1 second to 50ms. > > This will help ensure a timely DTLS handshake when there's packet > loss. It will likely result in spurious retransmissions (since the > RTT is usually > 50ms), but since exponential backoff is still used, > there will at most be ~4 extra retransmissions. For a time-sensitive > application like WebRTC this seems like a reasonable tradeoff. > > R=juberti@chromium.org, juberti@webrtc.org, pthatcher@webrtc.org > > Committed: https://crrev.com/1e435628366fb9fed71632369f05928ed857d8ef > Cr-Commit-Position: refs/heads/master@{#12853} TBR=pthatcher@webrtc.org,juberti@webrtc.org,juberti@chromium.org,deadbeef@webrtc.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.webrtc.org/2002403002 Cr-Commit-Position: refs/heads/master@{#12864} --- webrtc/base/opensslstreamadapter.cc | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/webrtc/base/opensslstreamadapter.cc b/webrtc/base/opensslstreamadapter.cc index c2cf00779a..abdf5e4834 100644 --- a/webrtc/base/opensslstreamadapter.cc +++ b/webrtc/base/opensslstreamadapter.cc @@ -771,19 +771,13 @@ int OpenSSLStreamAdapter::BeginSSL() { SSL_set_app_data(ssl_, this); SSL_set_bio(ssl_, bio, bio); // the SSL object owns the bio now. +#ifndef OPENSSL_IS_BORINGSSL if (ssl_mode_ == SSL_MODE_DTLS) { -#ifdef OPENSSL_IS_BORINGSSL - // Change the initial retransmission timer from 1 second to 50ms. - // This will likely result in some spurious retransmissions, but - // it's useful for ensuring a timely handshake when there's packet - // loss. - DTLSv1_set_initial_timeout_duration(ssl_, 50); -#else // Enable read-ahead for DTLS so whole packets are read from internal BIO // before parsing. This is done internally by BoringSSL for DTLS. SSL_set_read_ahead(ssl_, 1); -#endif } +#endif SSL_set_mode(ssl_, SSL_MODE_ENABLE_PARTIAL_WRITE | SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER);