diff options
author | Ingela Anderton Andin <[email protected]> | 2019-03-07 20:44:46 +0100 |
---|---|---|
committer | Ingela Anderton Andin <[email protected]> | 2019-03-08 09:01:51 +0100 |
commit | ca46b31327072c88140e5434b29fa826fc3d47ad (patch) | |
tree | e688b48270ace11887629e981c804993d218677b /lib/ssl/src | |
parent | bf952738a3be59693c35b2983020196bbbf71538 (diff) | |
download | otp-ca46b31327072c88140e5434b29fa826fc3d47ad.tar.gz otp-ca46b31327072c88140e5434b29fa826fc3d47ad.tar.bz2 otp-ca46b31327072c88140e5434b29fa826fc3d47ad.zip |
ssl: Correct active once emulation
Conflicts:
lib/ftp/test/ftp_SUITE.erl
Diffstat (limited to 'lib/ssl/src')
-rw-r--r-- | lib/ssl/src/ssl_connection.erl | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/lib/ssl/src/ssl_connection.erl b/lib/ssl/src/ssl_connection.erl index 24fb091ddf..ad81288f64 100644 --- a/lib/ssl/src/ssl_connection.erl +++ b/lib/ssl/src/ssl_connection.erl @@ -2691,6 +2691,11 @@ ssl_options_list([Key | Keys], [Value | Values], Acc) -> handle_active_option(false, connection = StateName, To, Reply, State) -> hibernate_after(StateName, State, [{reply, To, Reply}]); +handle_active_option(_, connection = StateName, To, _Reply, #state{connection_env = #connection_env{terminated = true}, + user_data_buffer = {_,0,_}} = State) -> + handle_normal_shutdown(?ALERT_REC(?FATAL, ?CLOSE_NOTIFY, all_data_deliverd), StateName, + State#state{start_or_recv_from = To}), + {stop,{shutdown, peer_close}, State}; handle_active_option(_, connection = StateName0, To, Reply, #state{static_env = #static_env{protocol_cb = Connection}, user_data_buffer = {_,0,_}} = State0) -> case Connection:next_event(StateName0, no_record, State0) of |