diff options
author | Jakub Witczak <kuba@erlang.org> | 2023-01-31 14:33:41 +0100 |
---|---|---|
committer | Jakub Witczak <kuba@erlang.org> | 2023-01-31 14:33:41 +0100 |
commit | cf5e2263e6c2d4c08e468b38bacd21d89165f554 (patch) | |
tree | f6e98f1fd8334c932c60e948c5ce2517f7a1cc8f /lib/ssh/src | |
parent | 3f584dfbdadfd136c710e01813b918d1e4cd2713 (diff) | |
parent | 648cc2444c7c9491aaf98287d30909edb38cafa9 (diff) | |
download | erlang-cf5e2263e6c2d4c08e468b38bacd21d89165f554.tar.gz |
Merge branch 'maint'
Diffstat (limited to 'lib/ssh/src')
-rw-r--r-- | lib/ssh/src/ssh_connection_handler.erl | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/lib/ssh/src/ssh_connection_handler.erl b/lib/ssh/src/ssh_connection_handler.erl index 24a3b78e72..7c07c464e3 100644 --- a/lib/ssh/src/ssh_connection_handler.erl +++ b/lib/ssh/src/ssh_connection_handler.erl @@ -1091,8 +1091,10 @@ handle_event(info, {Proto, Sock, Info}, {hello,_}, #data{socket = Sock, end; -handle_event(info, {Proto, Sock, NewData}, StateName, D0 = #data{socket = Sock, - transport_protocol = Proto}) -> +handle_event(info, {Proto, Sock, NewData}, StateName, + D0 = #data{socket = Sock, + transport_protocol = Proto, + ssh_params = SshParams}) -> try ssh_transport:handle_packet_part( D0#data.decrypted_data_buffer, <<(D0#data.encrypted_data_buffer)/binary, NewData/binary>>, @@ -1139,10 +1141,11 @@ handle_event(info, {Proto, Sock, NewData}, StateName, D0 = #data{socket = Sock, ]} catch C:E:ST -> - {Shutdown, D} = + MaxLogItemLen = ?GET_OPT(max_log_item_len,SshParams#ssh.opts), + {Shutdown, D} = ?send_disconnect(?SSH_DISCONNECT_PROTOCOL_ERROR, - io_lib:format("Bad packet: Decrypted, but can't decode~n~p:~p~n~p", - [C,E,ST]), + io_lib:format("Bad packet: Decrypted, but can't decode~n~p:~p~n~P", + [C,E,ST,MaxLogItemLen]), StateName, D1), {stop, Shutdown, D} end; @@ -1173,9 +1176,11 @@ handle_event(info, {Proto, Sock, NewData}, StateName, D0 = #data{socket = Sock, {stop, Shutdown, D} catch C:E:ST -> - {Shutdown, D} = + MaxLogItemLen = ?GET_OPT(max_log_item_len,SshParams#ssh.opts), + {Shutdown, D} = ?send_disconnect(?SSH_DISCONNECT_PROTOCOL_ERROR, - io_lib:format("Bad packet: Couldn't decrypt~n~p:~p~n~p",[C,E,ST]), + io_lib:format("Bad packet: Couldn't decrypt~n~p:~p~n~P", + [C,E,ST,MaxLogItemLen]), StateName, D0), {stop, Shutdown, D} end; |