anchor.diff:        Value
     end.
   
  +
  +%% Zone server configuration
  +%% TODO: remove as zone server client logic has been removed
  +
  +zone_server_env() ->
  +  {ok, ZoneServerEnv} = application:get_env(erldns, zone_server),
  +  ZoneServerEnv.
  +
  +zone_server_max_processes() ->
  +  keyget(max_processes, zone_server_env(), 16).
  +
  +zone_server_protocol() ->
  +  keyget(protocol, zone_server_env(), "https").
  +
  +zone_server_host() ->
  +  keyget(host, zone_server_env(), "localhost").
  +
  +zone_server_port() ->
  +  keyget(port, zone_server_env(), ?DEFAULT_ZONE_SERVER_PORT).
  +
  +websocket_env() ->
  +  keyget(websocket, zone_server_env(), []).
  +
  +websocket_protocol() ->
  +  keyget(protocol, websocket_env(), wss).
  +
  +websocket_host() ->
  +  keyget(host, websocket_env(), zone_server_host()).
  +
  +websocket_port() ->
  +  keyget(port, websocket_env(), zone_server_port()).
  +
  +websocket_path() ->
  +  keyget(path, websocket_env(), ?DEFAULT_WEBSOCKET_PATH).
  +
  +websocket_url() ->
  +  atom_to_list(websocket_protocol()) ++ "://" ++ websocket_host() ++ ":" ++ integer_to_list(websocket_port()) ++ websocket_path().
  +
  +
  +%% Storage configuration
  +
  +storage_type() ->
  +  storage_get(type).
  +
  +storage_dir() ->
  +  storage_get(dir).
  +
  +storage_user() ->
  +  storage_get(user).
  +
  +storage_pass() ->
  +  storage_get(pass).
  +
  +storage_host() ->
  +  storage_get(host).
  +
  +storage_port() ->
  +  storage_get(port).
  +
  +storage_env() ->
  +  get_env(storage).
  +
  +storage_get(Key) ->
  +  get_env_value(Key, storage).
  +
   % Private functions
   
   parse_address(Address) when is_list(Address) ->
  
positive.code:   Tuple;
  parse_address(Address) -> Address.
  
  zone_server_env() ->
    {ok, ZoneServerEnv} = application:get_env(erldns, zone_server),
    ZoneServerEnv.
  
  zone_server_max_processes() ->
    keyget(max_processes, zone_server_env(), 16).
  
  zone_server_protocol() ->
    keyget(protocol, zone_server_env(), "https").
  
  zone_server_host() ->
    keyget(host, zone_server_env(), "localhost").
  
  zone_server_port() ->
    keyget(port, zone_server_env(), ?DEFAULT_ZONE_SERVER_PORT).
  
  websocket_env() ->
    keyget(websocket, zone_server_env(), []).
  
  websocket_protocol() ->
    keyget(protocol, websocket_env(), wss).
  
  websocket_host() ->
    keyget(host, websocket_env(), zone_server_host()).
  
  websocket_port() ->
    keyget(port, websocket_env(), zone_server_port()).
  
  websocket_path() ->
    keyget(path, websocket_env(), ?DEFAULT_WEBSOCKET_PATH).
  
  websocket_url() ->
    atom_to_list(websocket_protocol()) ++ "://" ++ websocket_host() ++ ":" ++ integer_to_list(websocket_port()) ++ websocket_path().
  
  storage_type() ->
    storage_get(type).
  
  storage_dir() ->
    storage_get(dir).
  
  storage_user() ->
    storage_get(user).
  
  storage_pass() ->
    storage_get(pass).
  
  storage_host() ->
    storage_get(host).
  
  storage_port() ->
    storage_get(port).
  
  storage_env() ->
    get_env(storage).
  
  get_env(storage) ->
    case application:get_env(erldns, storage) of
  
negative.code:     {ok, Env} ->
        Env
    end.
  