anchor.diff:  %%--------------------------------------------------------------------
   %%% Internal functions
   %%--------------------------------------------------------------------
  +check_cache(State, Cache) ->
  +    %% Check the number of entries in Cache
  +    case proplists:get_value(size, ets:info(Cache)) of
  +	0 ->
  +	    TimerRef = erlang:send_after(3600000, self(), {'EXIT', [], "Timeout"}),
  +	    State#state{timer_ref=TimerRef};
  +	_ ->
  +	    State
  +    end.
  +remove_timer_ref(State) ->
  +    case State#state.timer_ref of
  +	undefined ->
  +	    State;
  +	_ ->
  +	    TimerRef = State#state.timer_ref,
  +	    erlang:cancel_timer(TimerRef),
  +	    State#state{timer_ref = undefined}
  +    end.
   channel_data(Id, Type, Data, Connection0, ConnectionPid, From, State) ->
       case ssh_connection:channel_data(Id, Type, Data, Connection0,
   				     ConnectionPid, From) of
  
positive.code: 		  (_,Acc) ->
  		       Acc
  	       end, [], Cache),
      {{replies, []}, State}.
  
  update_sys(Cache, Channel, Type, ChannelPid) ->
      ssh_channel:cache_update(Cache, 
  
negative.code: 		       recv_packet_size = MaxPacketSize},
      ssh_channel:cache_update(Cache, Channel),
      State = add_request(true, ChannelId, From, State1),
      {noreply, remove_timer_ref(State)};
  
  handle_call({send_window, ChannelId}, _From, 
  	    #state{connection_state = 
  