anchor.diff:  	    _ ->
   		{error, no_such_link}
   	end.
  +
  +-spec get_linkset_for_dpc(osmo_point_code()) ->
  +	{ok, string()} | error().
   
   % Resolve linkset name directly connected to given point code
   get_linkset_for_dpc(DpcIn) ->
  
positive.code: 		{ok, Name}
  	end.
  
  % resolve link-handler Pid for given (directly connected) point code/sls
  get_pid_for_dpc_sls(DpcIn, Sls) when is_integer(Sls) ->
  	Dpc = osmo_util:pointcode2int(DpcIn),
  
negative.code: 	 get_linkset_for_dpc/1, get_opc_for_linkset/1, is_pc_local/1,
  	 get_user_pid_for_service/1, mtp3_rx/1, dump/0]).
  
  -type link_state() :: down | up_inactive | active.
  -opaque tid()      :: integer().
  -type error()	   :: { error, term() }.
  -type osmo_point_code() :: non_neg_integer().
  
  -record(slink, {
  	key,		% {linkset_name, sls}
  	name,		% name of the link
  	linkset_name,	% name of the linkset to which we belong
  	sls,
  	user_pid :: pid(), % Pid handling MTP-TRANSFER primitives
  	state :: link_state()
  }).
  
  -record(slinkset, {
  	name :: string(),		% name of the linkset
  	local_pc :: non_neg_integer(),	% local point code
  	remote_pc :: non_neg_integer(),	% remote point code
  	user_pid :: pid(),
  	state :: link_state(),
  	active_sls :: list()	% list of Sls of currently active links
  }).
  
  -record(service, {
  	name :: string(),
  	service_nr :: non_neg_integer(),
  	user_pid :: pid()
  }).
  
  -record(su_state, {
  	linkset_tbl :: tid(),
  	link_tbl :: tid(),
  	service_tbl :: tid()
  }).
  
  
  