File 4311-kernel-tcp-misc-test-Adjust-econnreset-after-sync-se.patch of Package erlang

From 410c5cf2a315f52e920a752abc2782cb9c0c9fd8 Mon Sep 17 00:00:00 2001
From: Micael Karlberg <bmk@erlang.org>
Date: Wed, 20 May 2020 12:19:33 +0200
Subject: [PATCH 11/35] [kernel|tcp|misc-test] Adjust
 econnreset-after-sync-send test case

Add a skip clause (eaddrnotavail on connect).
---
 lib/kernel/test/gen_tcp_misc_SUITE.erl | 27 ++++++++++++++++++++++----
 1 file changed, 23 insertions(+), 4 deletions(-)

diff --git a/lib/kernel/test/gen_tcp_misc_SUITE.erl b/lib/kernel/test/gen_tcp_misc_SUITE.erl
index d29348b404..8734aa5a8d 100644
--- a/lib/kernel/test/gen_tcp_misc_SUITE.erl
+++ b/lib/kernel/test/gen_tcp_misc_SUITE.erl
@@ -1316,10 +1316,23 @@ do_show_econnreset_passive(_Config) ->
     {error, econnreset} = gen_tcp:recv(Client1, 0).
 
 econnreset_after_sync_send(Config) when is_list(Config) ->
+    try do_econnreset_after_sync_send(Config)
+    catch
+        throw:{skip, _} = SKIP ->
+            SKIP
+    end.
+
+do_econnreset_after_sync_send(Config) ->
     %% First confirm everything works with option turned off.
+    p("test with option switched off (default)"),
     {ok, L} = gen_tcp:listen(0, [{active, false}]),
     {ok, Port} = inet:port(L),
-    {ok, Client} = gen_tcp:connect(localhost, Port, [{active, false}]),
+    Client = case gen_tcp:connect(localhost, Port, [{active, false}]) of
+                 {ok, CSock} ->
+                     CSock;
+            {error, eaddrnotavail = Reason} ->
+                skip(connect_failed_str(Reason))
+        end,            
     {ok, S} = gen_tcp:accept(L),
     ok = gen_tcp:close(L),
     ok = inet:setopts(S, [{linger, {true, 0}}]),
@@ -1328,11 +1341,17 @@ econnreset_after_sync_send(Config) when is_list(Config) ->
     {error, closed} = gen_tcp:send(Client, "Whatever"),
 
     %% Now test with option switched on.
+    p("test with option explicitly switched on"),
     {ok, L1} = gen_tcp:listen(0, [{active, false}]),
     {ok, Port1} = inet:port(L1),
-    {ok, Client1} = gen_tcp:connect(localhost, Port1,
-          			  [{active, false},
-          			   {show_econnreset, true}]),
+    Client1 =
+        case gen_tcp:connect(localhost, Port1,
+                             [{active, false}, {show_econnreset, true}]) of
+            {ok, CSock1} ->
+                CSock1;
+            {error, eaddrnotavail = Reason1} ->
+                skip(connect_failed_str(Reason1))
+        end,            
     {ok, S1} = gen_tcp:accept(L1),
     ok = gen_tcp:close(L1),
     ok = inet:setopts(S1, [{linger, {true, 0}}]),
-- 
2.26.2

openSUSE Build Service is sponsored by