Brian Wellington
b5fff54fe9
SIG records were not properly negatively cached.
2000-04-13 17:01:19 +00:00
Andreas Gustafsson
3ae7579332
If a fetch with sigrdataset==NULL joined one with sigrdataset!=NULL
...
or vice versa, the resolver could catch an assertion or lose signature data,
respectively.
2000-04-13 16:43:02 +00:00
Brian Wellington
9c418665dd
Responses containing multiple names in the authority section were not
...
negatively cached.
2000-04-12 19:27:15 +00:00
Bob Halley
738b9aa3de
isc_task_create() API change
2000-04-12 01:41:21 +00:00
Andreas Gustafsson
1723fbf70a
use the UNUSED() macro
2000-04-11 23:15:30 +00:00
Brian Wellington
48ba496518
Uncomment the dnssec validator related code that compiles. Without a
...
way to fill in the security roots tree, this code will not be called
yet in practice.
2000-04-07 17:34:28 +00:00
Michael Graff
4195904998
s/DNS_R_/ISC_R_/ change for some codes.
2000-04-06 22:03:35 +00:00
Brian Wellington
404e3e4738
SIGs weren't returned in the answer section when the query resulted in a fetch.
2000-04-04 21:13:45 +00:00
Bob Halley
1b4d50a081
When making an OPT RR, initialize rdata's type and rdclass fields to avoid
...
triggering an assertion.
2000-03-29 18:53:57 +00:00
Bob Halley
f187c911b8
use keytables
2000-03-16 23:59:33 +00:00
Brian Wellington
37d86b4a61
The resolver can now sign outgoing messages based on peer keys (from
...
the server keys statement).
2000-03-03 19:48:14 +00:00
Bob Halley
5300bfe023
We now check for queries which require EDNS, and don't try them without
...
EDNS if the remote server doesn't understand EDNS.
In certain error cases during the construction of a query the resolver tried
to free data twice.
Set AD and CD when making EDNS queries.
If resquery_send() fails after a TCP connection is established, fail the fctx
the same way we do for the UDP case.
Revisions in preparation for DNSSEC validation.
If we get a non-EDNS-related FORMERR from a server that is not a forwarder,
assume that all servers for the zone will return FORMERR.
Cope with YXDOMAIN.
2000-02-19 00:16:41 +00:00
Michael Graff
69a7905cf3
return 'avoid_bitstring' in dns_adbaddrinfo_t. If non-zero, the timer hasn't expired.
...
This means we need to pass 'now' into dns_adb_findaddrinfo() as well, to filter
out timers that have expired.
2000-02-16 00:16:36 +00:00
Bob Halley
b3fb6d6a29
lint
2000-02-14 23:19:45 +00:00
Bob Halley
cec8578e67
The fctx lifetime timer was not running a certain times. In particular, it
...
was not running for fctxs in the addrwait state. If the underlying ADB finds
never timed out (which is possible since they generate fetches), the fctx
would exist until the server was shutdown.
2000-02-11 21:10:40 +00:00
Bob Halley
b599cfd793
RTT penalization was not happening for the nonresponding servers in
...
the very common case where some server responded with the answer.
This would prevent avoidance of the nonresponding servers,
significantly increasing latency.
2000-02-11 19:58:11 +00:00
Bob Halley
3f101f4e70
bad server support
2000-02-11 03:06:56 +00:00
Bob Halley
8f0c8ee6c6
If a referral doesn't make progress, don't follow it.
2000-02-07 22:25:04 +00:00
Bob Halley
7d32c065c7
update copyright
2000-02-03 23:50:32 +00:00
Bob Halley
712e318f76
The resolver didn't handle dispatcher events with non-success result codes
...
correctly.
2000-02-03 22:48:30 +00:00
Bob Halley
624f129514
An fctx that is shutting down should not be in ADDRWAIT mode.
2000-02-03 22:24:18 +00:00
Bob Halley
628b315462
If we have no addresses at all, but some have been pruned by the
...
ADB due to lameness, turn off lameness checking and try again.
2000-02-03 00:01:08 +00:00
Michael Graff
1a0e33bc20
implement DNS_ADBFIND_GLUEOK, DNS_ADBFIND_HINTOK, and DNS_ADBFIND_IGNORELAME
2000-02-02 23:24:04 +00:00
Bob Halley
37b4618a5b
fctx_start() did not properly check the fctx exit conditions and could
...
try to destroy the fctx before the reference count went to zero (triggering
an assertion).
2000-02-02 20:27:56 +00:00
Bob Halley
e974143273
do not ever mark forwarders as lame
2000-02-01 02:16:17 +00:00
Bob Halley
8057b3a8e4
If dns_adb_createfind() returns DNS_R_ALIAS, do not leak the find.
...
If dns_adb_createfind() is not successful, don't give up immediately. Instead,
keep trying to lookup the other nameserver names.
2000-01-28 20:17:32 +00:00
Bob Halley
f91c2ae744
basic priming support
2000-01-27 02:55:47 +00:00
Bob Halley
5b5ab09b34
eliminate port-wiring hack
2000-01-26 19:23:53 +00:00
Bob Halley
0df20c101e
add v6 dispatcher and options to resolver creation routine
2000-01-26 16:57:48 +00:00
Bob Halley
d127026e58
force referral updates; name tasks
2000-01-25 19:27:30 +00:00
Andreas Gustafsson
1aa3837945
dns_rdatatype_totext() needs #include <dns/rdatatype.h>
2000-01-24 18:13:06 +00:00
Bob Halley
f8d472bac0
Minor cleanups.
2000-01-22 00:23:07 +00:00
Bob Halley
a7f0ce6fe7
Canceling or destroying a fetch no longer requires the resolver to be specified
...
as an argument to the function.
Conform to dns_adb_createfind() API changes.
cache_name() leaked the node reference in some cases; this would prevent
database cleanup from occurring later on.
2000-01-21 02:47:30 +00:00
Bob Halley
e8e4cccb4c
domain and nameservers arguments to createfetch are now optional
2000-01-18 02:49:03 +00:00
Bob Halley
866fdff926
minor tweaks; added some assertions
2000-01-14 02:38:02 +00:00
Bob Halley
7c2fd18a36
support freezing; basic forwarding
2000-01-12 02:59:48 +00:00
Michael Graff
0941f35ad9
Start moving the dispatcher code to allow it to be used for wire format as well as for lightweight resolver daemon stuff.
2000-01-07 01:17:47 +00:00
Bob Halley
35b89fca89
If we're looking up the address of a nameserver who's name is a
...
subdomain of the query domain, tell the ADB to start looking at "." if
it doesn't know the address. This keeps us from getting stuck if the
nameserver is beneath the zone cut and we don't know its address
(e.g. because the A record has expired). By restarting from ".", we
ensure that any missing glue will be reestablished.
Misc. DNSSEC validation groundwork.
2000-01-06 00:56:18 +00:00
Michael Graff
733b16eb0b
priority rendering
1999-12-22 03:22:59 +00:00
Michael Graff
58aaab3687
isc_stdtime_get() now returns void, not isc_result_t.
1999-12-16 23:29:07 +00:00
Michael Graff
440be4c866
move util.h to <isc/util.h>
1999-12-16 22:24:22 +00:00
Michael Graff
607dc8013a
make dispatcher hash sizes be primes, and provide an increment to help
...
resolve hash collisions
1999-12-15 17:14:52 +00:00
Bob Halley
4a3ad0da97
IPv6 query flood suppression
1999-12-14 00:10:06 +00:00
Bob Halley
525cdd36b3
exponential backoff on retransmission
1999-12-13 22:30:55 +00:00
Andreas Gustafsson
211e0a6fc2
the TC bit was only checked in messages that ended
...
prematurely; it should be checked always
1999-12-10 17:31:08 +00:00
Michael Graff
6149906644
ipv6 changes
1999-12-04 01:27:44 +00:00
Bob Halley
7ce4b963eb
Increase quota limits for dispatchers.
1999-12-01 00:35:28 +00:00
Bob Halley
e7cdf5a35c
Cancelation of TCP queries while they were still connecting was broken, and
...
would cause seg faults.
Do not update the RTT if a query is being canceled due to internal failures.
Some servers generate badly formatted responses when they get an EDNS
query. We were marking these servers as bad, but a more practical
solution is to retry without EDNS. If a message fails to parse due to
DNS_R_FORMERR or DNS_R_UNEXPECTEDEND, and we were using EDNS, we now
retry the query without EDNS.
Add a "default" case to the message parsing error switch. This prevents bad
things from happening if message parsing fails in a nontypical way.
1999-11-30 20:57:05 +00:00
Bob Halley
65a17ce1f3
eliminate special A6 processing; more comments
1999-11-24 23:24:11 +00:00
Bob Halley
86a30f8262
don't core dump if we get an upwards referral
1999-11-24 00:34:01 +00:00