From cc462bb16fa2c004d4ffcaa5e7a2b9238f73b56d Mon Sep 17 00:00:00 2001
From: Hans Nilsson <hans@erlang.org>
Date: Tue, 23 Oct 2018 16:06:19 +0200
Subject: ssh: Fix property_test/ssh_eqc_client_info_timing.erl

Had problems on Darwin, Solaris and FreeBSD.
---
 .../property_test/ssh_eqc_client_info_timing.erl     | 20 +++++++++++++++-----
 1 file changed, 15 insertions(+), 5 deletions(-)

diff --git a/lib/ssh/test/property_test/ssh_eqc_client_info_timing.erl b/lib/ssh/test/property_test/ssh_eqc_client_info_timing.erl
index 6d0d8f5d99..f4b521356f 100644
--- a/lib/ssh/test/property_test/ssh_eqc_client_info_timing.erl
+++ b/lib/ssh/test/property_test/ssh_eqc_client_info_timing.erl
@@ -58,6 +58,7 @@
 %%% Properties:
 
 prop_seq(Config) ->
+    error_logger:tty(false),
     {ok,Pid} = ssh_eqc_event_handler:add_report_handler(),
     {_, _, Port} = init_daemon(Config),
     numtests(1000,
@@ -66,16 +67,25 @@ prop_seq(Config) ->
 			 send_bad_sequence(Port, Delay, Pid),
 			 not any_relevant_error_report(Pid)
 		     catch
-			 C:E -> io:format('~p:~p~n',[C,E]),
+			 C:E:S -> ct:log("~p:~p~n~p",[C,E,S]),
 				false
 		     end
 		    )).
 
 send_bad_sequence(Port, Delay, Pid) ->
-    {ok,S} = gen_tcp:connect("localhost",Port,[]),
-    gen_tcp:send(S,"Illegal info-string\r\n"),
-    ssh_test_lib:sleep_microsec(Delay),
-    gen_tcp:close(S).
+    send_bad_sequence(Port, Delay, Pid, 10).
+
+send_bad_sequence(Port, Delay, Pid, N) ->
+    case gen_tcp:connect("localhost",Port,[]) of
+        {ok,S} ->
+            gen_tcp:send(S,"Illegal info-string\r\n"),
+            ssh_test_lib:sleep_microsec(Delay),
+            gen_tcp:close(S);
+
+        {error,econnreset} when N>0 ->
+            timer:sleep(1),
+            send_bad_sequence(Port, Delay, Pid, N-1)
+    end.
 
 any_relevant_error_report(Pid) ->
     {ok, Reports} = ssh_eqc_event_handler:get_reports(Pid),
-- 
cgit v1.2.3