anchor.diff:  
   %% Skip testcases that can reasonably fail under SCTP.
   init_per_testcase(Name, Config) ->
  -    TCs = proplists:get_value(runlist, Config, []),
  -    Run = [] == TCs orelse lists:member(Name, TCs),
       case [G || #group{transport = sctp} = G
                      <- [proplists:get_value(group, Config)]]
       of
           [_] when Name == send_maxlen;
                    Name == send_long ->
               {skip, sctp};
  -        _ when not Run ->
  -            {skip, random};
           _ ->
  -            proplists:get_value(sleep, Config, false)
  -                andalso timer:sleep(rand:uniform(200)),
               [{testcase, Name} | Config]
       end.
   
   end_per_testcase(_, _) ->
       ok.
  -
  -%% replace/2
  -%%
  -%% Work around common_test running init functions inappropriately, and
  -%% this accumulating more config than expected.
  -
  -replace(Pairs, Config)
  -  when is_list(Pairs) ->
  -    lists:foldl(fun replace/2, Config, Pairs);
  -
  -replace({Key, _} = T, Config) ->
  -    [T | lists:keydelete(Key, 1, Config)].
   
   %% --------------------
   
  
positive.code: 
  %% ===========================================================================
  
  %% Fraction of shuffle/parallel groups to randomly skip.
  -define(SKIP, 0.90).
  
  %% Positive number of testcases from which to select (randomly) from
  %% tc(), the list of testcases to run, or [] to run all. The random
  %% selection is to limit the time it takes for the suite to run.
  -define(LIMIT, #{tcp => 42, sctp => 5}).
  
  -define(util, diameter_util).
  
  -define(A, list_to_atom).
  
negative.code: %% Which dictionary to use in the clients.
  -define(RFCS, [rfc3588, rfc6733, rfc4005]).
  
  %% Which transport protocol to use.
  -define(TRANSPORTS, [tcp, sctp]).
  
  -record(group,
          {transport,
  