Commit graph

186 commits

Author SHA1 Message Date
Mark Andrews
00597dcdac want free should be initaliased to ISC_FALSE. 2003-10-17 05:37:20 +00:00
Mark Andrews
69acffbb19 sync with HEAD 2003-10-14 03:48:11 +00:00
Mark Andrews
29b64bdae2 1523. [bug] Fix race condition in rbtdb. [RT# 9189] 2003-10-08 01:22:51 +00:00
Mark Andrews
57b54234cd sizeof style 2003-09-11 00:18:18 +00:00
Mark Andrews
56ccb82277 pullup:
When a lookup resulted in an nxrrset match of a wildcard, the wildcard
attribute wasn't set on foundname.
2003-08-21 06:48:26 +00:00
Mark Andrews
e6bb021434 1354. [bug] Fix DNSSEC wildcard proof for CNAME/DNAME. 2003-08-19 04:11:24 +00:00
Mark Andrews
d930eaf77b 1331. [func] Generate DNSSEC wildcard proofs. 2003-08-18 07:35:54 +00:00
Mark Andrews
f4d86cfcea update_copyrights 2003-07-22 04:03:54 +00:00
Mark Andrews
4b577580a0 1461. [bug] Remove deadlock from rbtdb code. [RT #5599] 2003-05-15 06:08:41 +00:00
Mark Andrews
55706e3839 1447. [bug] We were casting (unsigned int) to and from (void *).
rdataset->private4 is now rdataset->privateuint4
                        to reflect a type change.
2003-05-15 04:52:05 +00:00
Mark Andrews
b0fa111079 1448. [bug] Handle empty wildcards labels. 2003-05-14 06:51:38 +00:00
Mark Andrews
6fd5b7a222 1416. [bug] Empty node should return NOERROR NODATA, not NXDOMAIN.
[RT #4715]
2003-05-14 05:47:24 +00:00
Mark Andrews
90782106f2 1411. [bug] empty nodes should stop wildcard matches. [RT #4802] 2003-05-14 04:53:00 +00:00
Mark Andrews
ee879f2763 1429. [bug] Prevent the cache getting locked to old servers. 2003-05-13 03:57:53 +00:00
Mark Andrews
9631f485ae pullup:
1387.   [bug]           named could crash due to an access to invalid memory
                        space (which caused an assertion failure) in
                        incremental cleaning.  [RT #3588]
2003-05-12 03:22:44 +00:00
Mark Andrews
891c424e56 update_copyrights 2002-08-05 06:57:16 +00:00
Mark Andrews
456813d719 reviewed: bwelling
1307.   [bug]           REQUIRE that DNS_DBADD_MERGE only be set when adding
                        a rdataset to a zone db in the rbtdb implementation of
                        addrdataset.
2002-07-10 07:03:04 +00:00
Mark Andrews
fefab489c7 pullup:
1129.   [bug]           Multithreaded servers could crash under heavy
                        resolution load due to a race condition. [RT #2018]
2001-11-16 11:04:38 +00:00
Mark Andrews
440906ce59 INSIST that the rdataset is unassociated. 2001-08-27 03:58:44 +00:00
David Lawrence
163e27991b Revert part of the ISC_MAGIC/ISC_MAGIC_VALID change. Because
common.impmagic is not the first four bytes of the struct,
ISC_MAGIC_VALID() cannot be used.
2001-06-04 20:57:25 +00:00
David Lawrence
92ef1a9b9d use ISC_MAGIC for all magic numbers, for our friends in EBCDIC land 2001-06-04 19:33:39 +00:00
Bob Halley
4e9d4ceadf Take two of new semantics for ANY queries at zone cut points. Now doing
an ANY query at a zone cut point will return a delegation, except if
DNS_DBFIND_GLUEOK is set, in which case DNS_R_ZONECUT will be returned as
before.  Someday it would probably be a good idea to get rid of DNS_R_ZONECUT
entirely and just return DNS_R_GLUE in that case, but I was afraid to do
that now since it might break things.  These changes pass all system tests.
2001-05-15 05:35:27 +00:00
Andreas Gustafsson
0d205b805a backed out changes to handling of DNS_DBFIND_VALIDATEGLUE
option in previous commit - they broke DNS_DBFIND_GLUEOK lookups,
causing several of the system tests to fail
2001-05-15 03:52:31 +00:00
Bob Halley
751aa24c98 only return DNS_R_ZONECUT from secure zones 2001-05-14 19:25:59 +00:00
Andreas Gustafsson
17ed6b7945 when subtracting a nonempty rdataset from a nonexistent rdataset
and the DNS_DBSUB_EXACT flag, dns_db_subtractrdataset() should return
DNS_R_NOTEXACT, not DNS_R_UNCHANGED.
2001-05-10 16:26:07 +00:00
David Lawrence
e40cd7f5c9 preserve a reference to the node lock across a call to no_references() in
detachnode
2001-05-05 02:42:38 +00:00
Bob Halley
38d21a360a only reacquire the lock in no_references() if we actually gave it up 2001-04-24 17:03:54 +00:00
David Lawrence
ed1c40264e sigh. do not set the lock from node->locknum until being sure node is not null 2001-04-20 21:22:09 +00:00
David Lawrence
a0e1f68e14 Now that no_references() reacquires the node lock after deleting the node,
all of its callers need to maintain a reference to the lock that doesn't
involve looking at node->locknum after no_references() was called.
2001-04-20 14:35:04 +00:00
David Lawrence
f6f8d61a77 reacquire the node lock the caller held before returning from no_references() 2001-04-18 08:06:11 +00:00
David Lawrence
0109515495 use ISC_TF() to set an isc_boolean_t 2001-04-12 22:58:34 +00:00
David Lawrence
383b800c62 Fixed up iteration problems related to name cleaning. In a nutshell,
the node at the end of a chain always needed to have its reference
count incremented, not only when the iterator was paused.  [RT #1007]
2001-04-11 22:17:38 +00:00
Brian Wellington
414d289686 oops, cut-and-paste-o 2001-03-30 00:34:52 +00:00
Brian Wellington
e0bab4386b Treat a zone as secure only if it has a zone key and a signed NXT at the apex. 2001-03-30 00:33:39 +00:00
Andreas Gustafsson
b52a5b0630 790. [bug] Wildcards created using dynamic update or IXFR
could fail to match. [RT #1111]
2001-03-27 00:06:34 +00:00
David Lawrence
2283923028 a last minute edit added one too many conditions for putting a node on the
deletions list
2001-03-08 03:31:29 +00:00
David Lawrence
85e80b5b69 Remove name/node from the rbtdb in no_references().
Iterator uses 'cleaning' flag to expire nodes.
2001-03-08 01:35:27 +00:00
Bob Halley
c274e542ad The fixes to return the SIG of a DNAME RR missed one place where
search.zonecut was set, and consequently we were accessing
search.zonecut_sigrdataset without initializing it.
2001-02-23 05:33:36 +00:00
Bob Halley
f4b5a0f434 When a query matched a DNAME in a secure zone, the server did not return the
signature of the DNAME.  [RT #915]

A query should not match a DNAME whose trust level is pending.  [RT #916]
2001-02-23 02:14:14 +00:00
Brian Wellington
65bc8f2af8 When assigning a bucket lock to an rbt node, use the hash of the full name,
rather than the hash of the partial name stored in the node.  This more
evenly distributes nodes across locks.

This change only takes effect when DNS_RBT_USEHASH is defined, and also changes
the rbt so that the hashtable is created when the first node is created in the
tree, not after 64 nodes are added.
2001-02-09 01:26:51 +00:00
Brian Wellington
63ca494e7e Added the isc_refcount_t type, which is a generic locked reference counter,
and make the rbtdb, zone, and view objects use it.
This should reduce contention on other locks, since (in the normal)
implementation, the reference count has its own lock.  In the future, it
should also be possible to implement an isc_refcount_t with atomic operations
instead of mutexes, which should also help performance.
2001-01-30 02:50:51 +00:00
Bob Halley
40fdf87153 Deal with TTL 0 ANY and SIG queries. 2001-01-24 02:40:19 +00:00
Brian Wellington
18d110413c Move dns_dnssec_iszonekey to dns_zonekey_iszonekey, to make the rbtdb not
require all of dst to be linked in.
2001-01-17 01:22:20 +00:00
Andreas Gustafsson
d94b209b95 added another INSIST() to dns_dbiterator_pause() as suggested by Bob 2001-01-12 20:11:28 +00:00
Andreas Gustafsson
7cdd0b6ade allow dbiterators to be paused at any time 2001-01-12 18:56:42 +00:00
Brian Wellington
499b34cea0 copyright update 2001-01-09 22:01:04 +00:00
Brian Wellington
6d5032f9a2 Micro-optimizations:
- use the DNS_NAME_INIT macro in name.c
	- create dns_name_copy() and use it instead of dns_name_concatenate()
	  when doing a copy.
2001-01-03 00:05:15 +00:00
Mark Andrews
d30c18b17a set ttl of subtration header 2000-12-07 23:37:52 +00:00
Mark Andrews
6fda157766 ISC_LINK_*UNSAFE -> ISC_LINK_INITAND* 2000-12-07 20:15:58 +00:00
Mark Andrews
168ec3b800 Check ttl when adding/subtracting.
New add flag DNS_DBADD_EXACTTTL.
2000-12-07 19:51:58 +00:00