anchor.diff:  efile_exit_port(State, _Port, _Reason) ->
       State.
   
  -efile_timeout_handler(#state{n_timeouts = N} = State, _Parent) ->
  -    if
  -	N =< 0 ->
  -	    prim_purge_cache(),
  -	    State#state{n_timeouts = ?N_TIMEOUTS};
  -	true ->
  -	    State#state{n_timeouts = N - 1}
  -    end.
  +efile_timeout_handler(State, _Parent) ->
  +    prim_purge_cache(),
  +    State.
   
   %%% --------------------------------------------------------
   %%% Functions which handle inet prim_loader
  
positive.code:          hosts = []        :: [host()], % hosts list (to boot from)
           data              :: 'noport' | port(), % data port etc
           timeout           :: timeout(),	 % idle timeout
  	 %% Number of timeouts before archives are released
  	 n_timeouts        :: non_neg_integer(),
           prim_state        :: prim_state()}).    % state for efile code loader
  
  -define(IDLE_TIMEOUT, 60000).  %% tear inet connection after 1 minutes
  -define(N_TIMEOUTS, 6).        %% release efile archive after 6 minutes
  
  %% Defines for inet as prim_loader
  -define(INET_FAMILY, inet).
  
negative.code: inet_send_and_rcv(Msg, Tag, State) when State#state.data =:= noport ->
      {ok,Tcp} = find_master(State#state.hosts),     %% reconnect
      inet_send_and_rcv(Msg, Tag, State#state{data = Tcp,
  					    timeout = ?INET_IDLE_TIMEOUT});
  inet_send_and_rcv(Msg, Tag, #state{data = Tcp, timeout = Timeout} = State) ->
      prim_inet:send(Tcp, term_to_binary(Msg)),
      receive
  