anchor.diff:  		    true ->
   			{FwdSPR#sp_response.status, FwdSPR#sp_response.reason};
   		    false ->
  -			#response{status = FwdSPR#sp_response.status, reason = FwdSPR#sp_response.reason,
  -				  header = FwdSPR#sp_response.header, body = FwdSPR#sp_response.body}
  +			#response{status = FwdSPR#sp_response.status,
  +				  reason = FwdSPR#sp_response.reason,
  +				  header = FwdSPR#sp_response.header,
  +				  body   = FwdSPR#sp_response.body
  +				 }
   		end,
   	    util:safe_signal("sipproxy: ", Parent, {sipproxy_response, self(), Branch, FwdResponse}),
   	    NewState;
  
positive.code:     throw({error, sipproxy_cant_create_auth_response});
  check_forward_immediately(Request, SPResponse, Branch, State)
    when is_record(Request, request), is_record(SPResponse, sp_response), is_record(State, state) ->
      {Method, URI} = {Request#request.method, Request#request.uri},
      {Status, Reason} = {SPResponse#sp_response.status, SPResponse#sp_response.reason},
      case forward_immediately(Method, Status, State) of
  	{true, NewState} ->
  	    Parent = NewState#state.parent,
  	    logger:log(debug, "sipproxy: Forwarding response '~p ~s' (in response to ~s ~s) to my parent (pid ~p) "
  		       "immediately", [Status, Reason, Method, sipurl:print(URI), Parent]),
  	    %% RFC 3261 16.7 bullet 5 (Check response for forwarding) says we MUST process any
  	    %% response chosen for immediate forwarding as described in
  	    %% "Aggregate Authorization Header Field Values" through "Record-Route".
  
negative.code: 	    %% By matching on ClientPid here, we make sure we got the signal from
  	    %% the right process. XXX handle wrong pid more gracefully than crashing!
  	    [ClientPid, ResponseToRequest, OldTState] = targetlist:extract([pid, request, state], ThisTarget),
  	    #request{method = RMethod,
  		     uri    = RURI
  		    } = ResponseToRequest,
  	    NewTarget1 = targetlist:set_state(ThisTarget, NewTState),
  	    NewTarget2 = targetlist:set_endresult(NewTarget1, SPResponse),	% XXX only do this for final responses?
  	    NewTargets1 = targetlist:update_target(NewTarget2, Targets),
  