File 1056-ssh-start-monitor-ConnPid-before-casting-socket_cont.patch of Package erlang

From 211ce03aeb85b3fa14fbda8dd7a971ce0091d371 Mon Sep 17 00:00:00 2001
From: jakob svenningsson <jsvennin@cisco.com>
Date: Tue, 26 Mar 2024 13:56:21 +0100
Subject: [PATCH] ssh: start monitor ConnPid before casting socket_control

---
 lib/ssh/src/ssh_connection_handler.erl | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lib/ssh/src/ssh_connection_handler.erl b/lib/ssh/src/ssh_connection_handler.erl
index d39ca05ea2..12db85d015 100644
--- a/lib/ssh/src/ssh_connection_handler.erl
+++ b/lib/ssh/src/ssh_connection_handler.erl
@@ -129,12 +129,13 @@ takeover(ConnPid, _, Socket, Options) ->
     {_, Callback, _} = ?GET_OPT(transport, Options),
     case Callback:controlling_process(Socket, ConnPid) of
         ok ->
+            Ref = erlang:monitor(process, ConnPid),
             gen_statem:cast(ConnPid, socket_control),
             NegTimeout = ?GET_INTERNAL_OPT(negotiation_timeout,
                                            Options,
                                            ?GET_OPT(negotiation_timeout, Options)
                                           ),
-            handshake(ConnPid, erlang:monitor(process,ConnPid), NegTimeout);
+            handshake(ConnPid, Ref, NegTimeout);
         {error, Reason}	->
             {error, Reason}
     end.
-- 
2.35.3

openSUSE Build Service is sponsored by