anchor.diff:      | {protocol(), ip_address(), non_neg_integer()}
       | {protocol(), ip_address(), ip_address(), non_neg_integer()}.
   
  --define(DEFAULT_ADDR, {127,0,0,1}).
   -define(DEFAULT_PORT, 3868).
   
   %% ---------------------------------------------------------------------------
  
positive.code: 
  client({T, LA, RA, RP}) ->
      [{transport_module, tmod(T)},
       {transport_config, [{ip, addr(LA)},
                           {raddr, addr(RA)},
                           {rport, RP},
                           {reuseaddr, true}]}];
  
  client({T, LA, RP}) ->
      client({T, LA, LA, RP});
  
  client(T) ->
      client({T, ?DEFAULT_ADDR, ?DEFAULT_ADDR, ?DEFAULT_PORT}).
  
  tmod(tcp)  -> diameter_tcp;
  tmod(sctp) -> diameter_sctp.
  
  addr(default) ->
      ?DEFAULT_ADDR;
  addr(A) ->
      A.
  
negative.code:                          {port, Port}]}];
  
  server(T) ->
      server({T, loopback, ?DEFAULT_PORT}).
  
  %% client/1
  %%
  