mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-27 22:03:31 +01:00
r12122@Kushana: nickm | 2007-02-02 10:41:39 -0500
Fail when we are unable to parse the nameserver configuration. svn:r9475
This commit is contained in:
parent
8507699256
commit
07e6eecdb2
@ -63,6 +63,7 @@ Changes in version 0.1.2.7-alpha - 2007-??-??
|
|||||||
- Handle TTL values correctly on reverse DNS lookups.
|
- Handle TTL values correctly on reverse DNS lookups.
|
||||||
- Stop using the reserved ac_cv namespace in our configure script.
|
- Stop using the reserved ac_cv namespace in our configure script.
|
||||||
- Call stat() slightly less often; use fstat() when possible.
|
- Call stat() slightly less often; use fstat() when possible.
|
||||||
|
- Treat failure to parse resolv.conf as an error.
|
||||||
|
|
||||||
o Major features:
|
o Major features:
|
||||||
- Weight directory requests by advertised bandwidth. Now we can
|
- Weight directory requests by advertised bandwidth. Now we can
|
||||||
|
@ -990,11 +990,13 @@ options_act(or_options_t *old_options)
|
|||||||
inform_testing_reachability();
|
inform_testing_reachability();
|
||||||
}
|
}
|
||||||
cpuworkers_rotate();
|
cpuworkers_rotate();
|
||||||
dns_reset();
|
if (dns_reset())
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
#ifdef USE_EVENTDNS
|
#ifdef USE_EVENTDNS
|
||||||
else {
|
else {
|
||||||
dns_reset();
|
if (dns_reset())
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
11
src/or/dns.c
11
src/or/dns.c
@ -222,8 +222,9 @@ dns_init(void)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Called when DNS-related options change (or may have changed) */
|
/** Called when DNS-related options change (or may have changed). Returns -1
|
||||||
void
|
* on failure, 0 on success. */
|
||||||
|
int
|
||||||
dns_reset(void)
|
dns_reset(void)
|
||||||
{
|
{
|
||||||
#ifdef USE_EVENTDNS
|
#ifdef USE_EVENTDNS
|
||||||
@ -236,8 +237,7 @@ dns_reset(void)
|
|||||||
resolv_conf_mtime = 0;
|
resolv_conf_mtime = 0;
|
||||||
} else {
|
} else {
|
||||||
if (configure_nameservers(0) < 0)
|
if (configure_nameservers(0) < 0)
|
||||||
/* XXXX012 */
|
return -1;
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
dnsworkers_rotate();
|
dnsworkers_rotate();
|
||||||
@ -322,7 +322,8 @@ dns_free_all(void)
|
|||||||
SMARTLIST_FOREACH(cached_resolve_pqueue, cached_resolve_t *, res,
|
SMARTLIST_FOREACH(cached_resolve_pqueue, cached_resolve_t *, res,
|
||||||
{
|
{
|
||||||
/* XXXX012 The hash lookups here could be quite slow; remove them
|
/* XXXX012 The hash lookups here could be quite slow; remove them
|
||||||
* once we're happy. */
|
* once we're happy. (Leave them in for at least 0.1.2.7-alpha, so they
|
||||||
|
* get some testing.) -NM */
|
||||||
if (res->state == CACHE_STATE_DONE) {
|
if (res->state == CACHE_STATE_DONE) {
|
||||||
cached_resolve_t *found = HT_FIND(cache_map, &cache_root, res);
|
cached_resolve_t *found = HT_FIND(cache_map, &cache_root, res);
|
||||||
tor_assert(!found || found != res);
|
tor_assert(!found || found != res);
|
||||||
|
@ -2415,7 +2415,7 @@ uint32_t dns_clip_ttl(uint32_t ttl);
|
|||||||
int connection_dns_finished_flushing(connection_t *conn);
|
int connection_dns_finished_flushing(connection_t *conn);
|
||||||
int connection_dns_reached_eof(connection_t *conn);
|
int connection_dns_reached_eof(connection_t *conn);
|
||||||
int connection_dns_process_inbuf(connection_t *conn);
|
int connection_dns_process_inbuf(connection_t *conn);
|
||||||
void dns_reset(void);
|
int dns_reset(void);
|
||||||
void connection_dns_remove(edge_connection_t *conn);
|
void connection_dns_remove(edge_connection_t *conn);
|
||||||
void assert_connection_edge_not_dns_pending(edge_connection_t *conn);
|
void assert_connection_edge_not_dns_pending(edge_connection_t *conn);
|
||||||
void assert_all_pending_dns_resolves_ok(void);
|
void assert_all_pending_dns_resolves_ok(void);
|
||||||
|
Loading…
Reference in New Issue
Block a user