anchor.diff:  	    log_to_device(State#state.debug_iodev, Level, TimeStamp, Format, Arguments, Pid);
   	true -> none
       end,
  +    {noreply, State};
  +
  +handle_cast(Unknown, State) ->
  +    logger:log(error, "Logger: Received unknown gen_server cast : ~p", [Unknown]),
       {noreply, State}.
  +
   
   %%--------------------------------------------------------------------
   %% Function: handle_info/2
  
positive.code:     end,
      io:format("~n", []).
  
  %% Executed in caller pid, not in persistent logger process.
  do_log(Level, Format, Arguments) when atom(Level), list(Format), list(Arguments) ->
      {Megasec, Sec, USec} = now(),
      USecStr = string:substr(integer_to_list(USec), 1, 3),
      DateTime = util:sec_to_date(Megasec * 1000000 + Sec),
      LogTS = lists:concat([DateTime, ".", USecStr]),
      gen_server:cast(logger, {log, Level, LogTS, Format, Arguments, self()}),
      ok.
  
  
  rotate([], Suffix, State) when record(State, state) ->
      {ok, State};
  rotate([debug | T], Suffix, State) when record(State, state) ->
      case rotate_file(State#state.debug_iodev, State#state.debug_fn, Suffix) of
  	{ok, NewIoDev} ->
  	    logger:log(debug, "Rotated debug logfile with suffix ~p", [Suffix]),
  	    rotate(T, Suffix, State#state{debug_iodev=NewIoDev});
  	{error, E} ->
  	    logger:log(error, "Failed rotating debug logfile with suffix ~p : ~p", [Suffix, E]),
  	    {{error, "Failed rotating debug logfile"}, State}
      end;
  
  rotate([normal | T], Suffix, State) when record(State, state) ->
      case rotate_file(State#state.normal_iodev, State#state.normal_fn, Suffix) of
  	{ok, NewIoDev} ->
  	    logger:log(debug, "Rotated normal logfile with suffix ~p", [Suffix]),
  	    rotate(T, Suffix, State#state{normal_iodev=NewIoDev});
  	{error, E} ->
  	    logger:log(error, "Failed rotating normal logfile with suffix ~p : ~p", [Suffix, E]),
  	    {{error, "Failed rotating normal logfile"}, State}
      end;
  
  rotate([error | T], Suffix, State) when record(State, state) ->
      case rotate_file(State#state.error_iodev, State#state.error_fn, Suffix) of
  	{ok, NewIoDev} ->
  	    logger:log(debug, "Rotated error logfile with suffix ~p", [Suffix]),
  	    rotate(T, Suffix, State#state{error_iodev=NewIoDev});
  	{error, E} ->
  	    logger:log(error, "Failed rotating error logfile with suffix ~p : ~p", [Suffix, E]),
  	    {{error, "Failed rotating error logfile"}, State}
      end;
  
  rotate([H | T], Suffix, State) when record(State, state) ->
      logger:log(error, "Invalid log level ~p supplied to rotate", [H]),
      {{error, "Invalid log level supplied to rotate"}, State}.
  
  
  rotate_file(IoDev, Filename, Suffix) ->
      %% Open new file before we try to rename old one to make sure
      %% there isn't any permission problems etc. with us creating a new
      %% logfile
  
negative.code: %%          {stop, Reason}
  %%--------------------------------------------------------------------
  init([Basename]) ->
      %% Check if we should rotate log files when they reach a upper
      %% limit in size (bytes). Defaults to 250 MB.
      case sipserver:get_env(max_log_filesize, 250 * 1024 * 1024) of
  	none -> ok;
  	Size ->
  	    %% Set up a timer to do the size checking every 60 seconds
  	    {ok, T} = timer:send_interval(60 * 1000, logger, {check_logfile_size, Size})
      end,
      %% Construct log filenames and open/create them
      DebugFn = lists:concat([Basename, ".debug"]),
      NormalFn = lists:concat([Basename, ".log"]),
      ErrorFn = lists:concat([Basename, ".error"]),
  