anchor.diff:      proxy_wait(PSpec),
       ok.
   
  +
   %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   %% First name server answers ?REFUSED, second does not answer.
   %% Check that we get the error code from the first server.
   
   intermediate_error(Config) when is_list(Config) ->
  -    NS = ns(Config),
  -    Name = "ns.otptest",
  -    IP = {127,0,0,1},
  +    NS      = ns(Config),
  +    Name    = "ns.otptest",
  +    Class   = in,
  +    Type    = a,
  +    IP      = {127,0,0,1},
       %% A "name server" that does not respond
  -    S = ok(gen_udp:open(0, [{ip,IP},{active,false}])),
  -    Port = ok(inet:port(S)),
  -    NSs = [NS,{IP,Port}],
  -    {error,{refused,_}} =
  -        inet_res:resolve(Name, in, a, [{nameservers,NSs},verbose], 500),
  +    S       = ok(gen_udp:open(0, [{ip,IP},{active,false}])),
  +    Port    = ok(inet:port(S)),
  +    NSs     = [NS,{IP,Port}],
  +    Opts    = [{nameservers, NSs}, verbose],
  +    Timeout = 500,
  +    {error, {refused,_}} = inet_res:resolve(Name, Class, Type, Opts, Timeout),
       _ = gen_udp:close(S),
       ok.
  +
  +
  +%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  +%% A name server that firstanswers ?SERVFAIL, the second try *if* the retry
  +%% is not received *too soon* (etd) answers noerror.
  +
  +servfail_retry_timeout_default(Config) when is_list(Config) ->
  +    NS        = ns(Config),
  +    Name      = "ns.otptest",
  +    Class     = in,
  +    Type      = a,
  +    Opts      = [{nameservers,[NS]}, verbose],
  +    ?P("try resolve"),
  +    {ok, Rec} = inet_res:resolve(Name, Class, Type, Opts),
  +    ?P("resolved: "
  +       "~n      ~p", [Rec]),
  +    ok.
  +
  +
  +%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  +%% A name server that firstanswers ?SERVFAIL, the second try *if* the retry
  +%% is not received *too soon* (etd) answers noerror.
  +
  +servfail_retry_timeout_1000(Config) when is_list(Config) ->
  +    NS        = ns(Config),
  +    Name      = "ns.otptest",
  +    Class     = in,
  +    Type      = a,
  +    Opts      = [{nameservers,[NS]}, {servfail_retry_timeout, 1000}, verbose],
  +    ?P("try resolve"),
  +    {ok, Rec} = inet_res:resolve(Name, Class, Type, Opts),
  +    ?P("resolved: "
  +       "~n      ~p", [Rec]),
  +    ok.
  +
   
   %% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   %% Compatibility tests. Call the inet_SUITE tests, but with
  
positive.code: 	spawn_link(
  	  fun () ->
  		  try proxy_start(TC, NS, P, Parent, Tag)
  		  catch C:X:Stacktrace ->
  			  io:format(
  			    "~w: ~w:~p ~p~n",
  			    [self(),C,X,Stacktrace])
  		  end
  	  end),
      receive {started,Tag,Port} ->
  
negative.code: host_and_addr(Config) -> inet_SUITE:host_and_addr(Config).
  
  
  timestamp() ->
      erlang:monotonic_time(milli_seconds).
  
  
  %% Case flip helper
  
  