File 1106-ssh-Fix-possible-infinite-loop-in-message-decoding.patch of Package erlang
From 626754726013aa49da49db2780966937060ccde3 Mon Sep 17 00:00:00 2001
From: Hans Nilsson <hans@erlang.org>
Date: Mon, 28 Sep 2020 13:17:15 +0200
Subject: [PATCH] ssh: Fix possible infinite loop in message decoding
---
lib/ssh/src/ssh_message.erl | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/lib/ssh/src/ssh_message.erl b/lib/ssh/src/ssh_message.erl
index d95e58c1bb..75ba29e74d 100644
--- a/lib/ssh/src/ssh_message.erl
+++ b/lib/ssh/src/ssh_message.erl
@@ -566,8 +566,12 @@ bin_foldr(Fun, Acc, Bin) ->
bin_foldl(_, Acc, <<>>) -> Acc;
bin_foldl(Fun, Acc0, Bin0) ->
- {Bin,Acc} = Fun(Bin0,Acc0),
- bin_foldl(Fun, Acc, Bin).
+ case Fun(Bin0,Acc0) of
+ {Bin0,Acc0} ->
+ Acc0;
+ {Bin,Acc} ->
+ bin_foldl(Fun, Acc, Bin)
+ end.
%%%----------------------------------------------------------------
decode_keyboard_interactive_prompts(<<>>, Acc) ->
--
2.26.2