anchor.diff:  %% Returns : NewRequest = request record()
   %%--------------------------------------------------------------------
   set_request_body(Request, Body) when is_record(Request, request), is_binary(Body) ->
  -    set_request_body(Request, binary_to_list(Body));
  -set_request_body(Request, Body) when is_record(Request, request), is_list(Body) ->
  -    ILen = length(Body),
  +    ILen = size(Body),
       Len = integer_to_list(ILen),
       NewHeader = keylist:set("Content-Length", [Len], Request#request.header),
  -    Request#request{header=NewHeader, body=Body}.
  +    Request#request{header=NewHeader, body=Body};
  +set_request_body(Request, Body) when is_record(Request, request), is_list(Body) ->
  +    set_request_body(Request, list_to_binary(Body)).
   
   %%--------------------------------------------------------------------
   %% Function: set_response_body(Request, Body)
  
positive.code:     %% have to make a difference in how we send out responses.
      V = create_via(Proto, ViaParameters),
      PlaceHolderVia = sipheader:via_print([V]),
      AnswerHeader2 = keylist:prepend({"Via", PlaceHolderVia}, AnswerHeader1),
      AnswerHeader3 = siprequest:make_answerheader(AnswerHeader2),
      %% If there is a body, calculate Content-Length, otherwise remove the Content-Type we copied above
      AnswerHeader4 = case Body of
  			"" -> keylist:delete('content-type', AnswerHeader3);
  			_ -> keylist:set("Content-Length", [integer_to_list(length(Body))], AnswerHeader3)
  		    end,
      %% If this is not a 100 Trying response, remove the Timestamp we copied above.
      %% The preservation of Timestamp headers into 100 Trying response is mandated by RFC 3261 8.2.6.1
  
negative.code:     io:format("test: make_response/7 - 2.5~n"),
      ["test"] = keylist:fetch("Extra-Header", Response2#response.header),
  
      %% Make sure Record-Route is NOT turned into Route (we used to do that, but it was wrong)
      io:format("test: make_response/7 - 2.6.1~n"),
      ["<sip:p1:1111>", "<sip:p2:2222>"] = keylist:fetch('record-route', Response2#response.header),
  
      %% (make sure Route is still empty)
      io:format("test: make_response/7 - 2.6.2~n"),
      [] = keylist:fetch('route', Response2#response.header),
  
      %% check_proxy_request(Request)
      %%--------------------------------------------------------------------
  
      io:format("test: check_proxy_request/1 - 1~n"),
      ReqHeader2 = keylist:set("Content-Length", ["900"], ReqHeader),
      Req2 = #request{method="MESSAGE", uri=sipurl:parse("sip:test@example.org"), header=ReqHeader2, body = <<"foo">>},
  
      io:format("test: check_proxy_request/1 - 2~n"),
      {ok, ReqHeader2_2, ApproxMsgSize2_2} = check_proxy_request(Req2),
  