anchor.diff:          {accepted,P,Msg} ->
               NextN = if N =:= infinity -> N; true -> N - 1 end,
   	    [{P,Msg}] ++ collect_accepts(NextN, Tmo - (millis()-A))
  +
       after Tmo ->
   	    []
       end.
  
positive.code: collect_connects(Tmo) ->
      A = millis(),
      receive
  	{connected,P,Msg} ->
  	    [{P,Msg}] ++ collect_connects(Tmo-(millis() - A))
      after Tmo ->
  	    []
      end.
  
negative.code: %% Checks that multi-accept works when more than one accept can be
  %% done at once (wb test of inet_driver).
  several_accepts_in_one_go(Config) when is_list(Config) ->
      try do_several_accepts_in_one_go(Config)
      catch
          throw:{skip, _} = SKIP ->
              SKIP
      end.
  
  do_several_accepts_in_one_go(_Config) ->
      LS = case gen_tcp:listen(0,[]) of
               {ok, LSock} ->
                   LSock;
               {error, eaddrnotavail = Reason} ->
                   skip(listen_failed_str(Reason))
           end,
      Parent = self(),
      {ok,PortNo}=inet:port(LS),
      F1 = fun() -> Parent ! {accepted,self(),gen_tcp:accept(LS)} end,
  