diff options
author | Erlang/OTP <[email protected]> | 2018-11-05 10:48:26 +0100 |
---|---|---|
committer | Erlang/OTP <[email protected]> | 2018-11-05 10:48:26 +0100 |
commit | a1b76db57693427f1d4fc9f236fa5fd80dc41792 (patch) | |
tree | 1b62acaa051963ab5ca5f8c8eed191ca3b63e6cb /lib | |
parent | 6605e23f1c622cd6e30a523891f00f3e6ea746f8 (diff) | |
parent | 6cc0aebffc1d1dee434806f718f32e54cfd7d148 (diff) | |
download | otp-a1b76db57693427f1d4fc9f236fa5fd80dc41792.tar.gz otp-a1b76db57693427f1d4fc9f236fa5fd80dc41792.tar.bz2 otp-a1b76db57693427f1d4fc9f236fa5fd80dc41792.zip |
Merge branch 'ingela/ssl/deliver-all-data-at-close/ERL-731/OTP-15412' into maint-20
* ingela/ssl/deliver-all-data-at-close/ERL-731/OTP-15412:
ssl: Extend check for undelivered data at closing
Diffstat (limited to 'lib')
-rw-r--r-- | lib/ssl/src/tls_connection.erl | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/ssl/src/tls_connection.erl b/lib/ssl/src/tls_connection.erl index 914ee9f22f..d3b3902fea 100644 --- a/lib/ssl/src/tls_connection.erl +++ b/lib/ssl/src/tls_connection.erl @@ -676,6 +676,7 @@ handle_info({CloseTag, Socket}, StateName, #state{socket = Socket, close_tag = CloseTag, socket_options = #socket_options{active = Active}, protocol_buffers = #protocol_buffers{tls_cipher_texts = CTs}, + user_data_buffer = Buffer, negotiated_version = Version} = State) -> %% Note that as of TLS 1.1, @@ -683,7 +684,7 @@ handle_info({CloseTag, Socket}, StateName, %% session not be resumed. This is a change from TLS 1.0 to conform %% with widespread implementation practice. - case (Active == false) andalso (CTs =/= []) of + case (Active == false) andalso ((CTs =/= []) or (Buffer =/= <<>>)) of false -> case Version of {1, N} when N >= 1 -> |