anchor.diff:  	{next, NewDstList} ->
   	    %% Continue, possibly with an altered DstList
   	    start_next_client_transaction(State#state{dstlist=NewDstList});
  -	_ ->
  +	undefined ->
   	    %% Use sippipe defaults
   	    process_client_transaction_response2(Response, State)
       end;
  
positive.code:     case catch guarded_start(ServerHandler, ClientPid, Request, URI, Timeout) of
  	{'EXIT', Reason} ->
  	    logger:log(error, "=ERROR REPORT==== from sippipe :~n~p", [Reason]),
  	    transactionlayer:send_response_handler(ServerHandler, 500, "Server Internal Error");
  	Res ->
  	    Res
      end.
  
negative.code:     end.
  
  %% Do piping between a now existing server and client transaction handler.
  final_start(Branch, ServerHandler, ClientPid, Request, DstList, Timeout, ApproxMsgSize)
    when is_list(Branch), is_pid(ClientPid), is_record(Request, request), is_list(DstList),
         is_integer(Timeout), is_integer(ApproxMsgSize) ->
      StartTime = util:timestamp(),
      State=#state{branch=Branch, serverhandler=ServerHandler, clienthandler=ClientPid,
  		 request=Request, dstlist=DstList, approxmsgsize=ApproxMsgSize,
  		 timeout=Timeout, endtime = StartTime + Timeout, warntime = StartTime + 300},
      logger:log(debug, "sippipe: All preparations finished, entering pipe loop (~p destinations in my list)",
  	       [length(DstList)]),
      loop(State).
  
  
  