--- gvpe/src/conf.C 2005/03/20 02:34:16 1.36 +++ gvpe/src/conf.C 2005/03/23 17:03:58 1.38 @@ -123,8 +123,13 @@ #if ENABLE_DNS default_node.dns_port = 0; // default is 0 == client - dns_forw_host = strdup ("127.0.0.1"); - dns_forw_port = 53; + + dns_forw_host = strdup ("127.0.0.1"); + dns_forw_port = 53; + dns_timeout_factor = DEFAULT_DNS_TIMEOUT_FACTOR; + dns_send_interval = DEFAULT_DNS_SEND_INTERVAL; + dns_overlap_factor = DEFAULT_DNS_OVERLAP_FACTOR; + dns_max_outstanding = DEFAULT_DNS_MAX_OUTSTANDING; #endif conf.pidfilename = strdup (LOCALSTATEDIR "/run/gvpe.pid"); @@ -160,8 +165,8 @@ init (); } -#define parse_bool(target,name,trueval,falseval) \ - if (!strcmp (val, "yes")) target = trueval; \ +#define parse_bool(target,name,trueval,falseval) do { \ + if (!strcmp (val, "yes")) target = trueval; \ else if (!strcmp (val, "no")) target = falseval; \ else if (!strcmp (val, "true")) target = trueval; \ else if (!strcmp (val, "false")) target = falseval; \ @@ -170,7 +175,8 @@ else \ slog (L_WARN, \ _("illegal value for '%s', only 'yes|true|on' or 'no|false|off' allowed, at '%s' line %d"), \ - name, var, fname, lineno); + name, var, fname, lineno); \ +} while (0) void configuration::read_config (bool need_keys) { @@ -332,6 +338,30 @@ dns_forw_port = atoi (val); #endif } + else if (!strcmp (var, "dns-timeout-factor")) + { +#if ENABLE_DNS + dns_timeout_factor = atof (val); +#endif + } + else if (!strcmp (var, "dns-send-interval")) + { +#if ENABLE_DNS + dns_send_interval = atoi (val); +#endif + } + else if (!strcmp (var, "dns-overlap-factor")) + { +#if ENABLE_DNS + dns_overlap_factor = atof (val); +#endif + } + else if (!strcmp (var, "dns-max-outstanding")) + { +#if ENABLE_DNS + dns_max_outstanding = atoi (val); +#endif + } else if (!strcmp (var, "http-proxy-host")) { #if ENABLE_HTTP_PROXY