anchor.diff:            terminate/2,
             code_change/3]).
   
  --record(state, {port}).
  +-record(state, {port, pid_file, listen_file}).
   
   start_link (Config) ->
     gen_server:start_link ( { local, ?MODULE }, ?MODULE, Config, []).
  
positive.code:   process_config (Rest, Command, [ " -F " | Args ]);
  process_config ([foreground|Rest], Command, Args) ->
    process_config (Rest, Command, [ " -g " | Args ]);
  process_config ([{root_dir,V}|Rest], Command, Args) ->
    process_config (Rest, Command, [ " -b ", V | Args ]);
  process_config ([writes_only_in_root|Rest], Command, Args) ->
    process_config (Rest, Command, [ " -B " | Args ]);
  
negative.code: 
  terminate({port_terminated, _Reason}, _State) ->
    ok;
  terminate(_Reason, #state{port = Port, pid_file = PidFile} = _State) ->
    port_close(Port),
    os:cmd (lists:concat(["kill -9 `cat ",PidFile,"`"])),
    ok.
  
  code_change (_OldVsn, State, _Extra) ->
  