anchor.diff:          {error, timeout} ->
               p("expected timeout (~w)", [ID]),
               ok;
  +        {error, econnreset = Reason} ->
  +            p("failed connecting: ~p - giving up", [Reason]),
  +            ok;
           {error, Reason} ->
               p("failed connecting: ~p", [Reason]),
               ?FAIL({recv, Reason});
  
positive.code:                  {error, Reason} ->
                       ?FAIL({open, Reason})
               end,
      {ok, Domain} = socket:getopt(Socket, socket, domain),
      {ok, Type}   = socket:getopt(Socket, socket, type),
      {ok, Proto}  = socket:getopt(Socket, socket, protocol),
      Self = self(),
  
negative.code: 
  
  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  %% We use the backlog (listen) argument to test this.
  %% Note that the behaviour of the TCP "server side" can vary when 
  %% a client connect to a "busy" server (full backlog).
  %% For instance, on FreeBSD (11.2) the reponse when the backlog is full
  %% is a econreset.
  
  api_to_connect_tcp(Domain) ->
      process_flag(trap_exit, true),
  