anchor.diff:  %%
   %% %CopyrightBegin%
   %%
  -%% Copyright Ericsson AB 1998-2019. All Rights Reserved.
  +%% Copyright Ericsson AB 1998-2020. All Rights Reserved.
   %%
   %% Licensed under the Apache License, Version 2.0 (the "License");
   %% you may not use this file except in compliance with the License.
  
positive.code: %% Open as many sockets as possible. Do this several times and check
  %% that we get the same number of sockets every time.
  iter_max_socks(Config) when is_list(Config) ->
      N = case os:type() of {win32,_} -> 10; _ -> 20 end,
      %% Run on a different node in order to limit the effect if this test fails.
      Dir = filename:dirname(code:which(?MODULE)),
      {ok,Node} = test_server:start_node(test_iter_max_socks,slave,
  				       [{args,"+Q 2048 -pa " ++ Dir}]),
      L = rpc:call(Node,?MODULE,do_iter_max_socks,[N, initalize]),
      test_server:stop_node(Node),
  
      io:format("Result: ~p",[L]),
      all_equal(L),
      {comment, "Max sockets: " ++ integer_to_list(hd(L))}.
  
  do_iter_max_socks(0, _) ->
      [];
  do_iter_max_socks(N, initalize) ->
      MS = max_socks(),
      [MS|do_iter_max_socks(N-1, MS)];
  do_iter_max_socks(N, failed) ->
      MS = max_socks(),
      [MS|do_iter_max_socks(N-1, failed)];
  do_iter_max_socks(N, First) when is_integer(First) ->
      MS = max_socks(),
      if MS == First -> 
  	    [MS|do_iter_max_socks(N-1, First)];
         true ->
  	    io:format("Sleeping for ~p seconds...~n",
  			    [?RETRY_SLEEP/1000]), 
  	    ct:sleep(?RETRY_SLEEP),
  	    io:format("Trying again...~n", []),
  	    RetryMS = max_socks(),
  	    if RetryMS == First ->
  			  [RetryMS|do_iter_max_socks(N-1, First)];
  
negative.code:     Socks = open_socks(),
      N = length(Socks),
      lists:foreach(fun(S) -> ok = gen_tcp:close(S) end, Socks),
      p("Got ~p sockets", [N]),
      N.
  
  open_socks() ->
  