Commit Graph
3301 Commits
Author SHA1 Message Date
Brian Wellington 9a41936e3d current_root was uninitialized at the start of dns_rbt_findnode(). This
has no real effect, but it's still good to fix it.
2001-02-21 23:21:28 +00:00
Brian Wellington 26e5029fd5 Added a cast. [RT #899] 2001-02-21 19:57:38 +00:00
Brian Wellington 6be1dc9d2a Document the 'covers' parameter to dns_message_findname and
dns_message_findtype.
2001-02-21 18:32:27 +00:00
Brian Wellington 36608f2052 When returning from validation, make sure to handle chaiing correctly. 2001-02-21 05:16:44 +00:00
Mark Andrews fbafe841ef fixed pushing and poping of included files. [RT#904] 2001-02-21 03:53:11 +00:00
Brian Wellington c5945fe694 Fix a potential bitstring bug. 2001-02-21 02:27:56 +00:00
Brian Wellington 4e8eba14a0 reinstate an INSIST() referenced in [RT #421] 2001-02-21 02:01:15 +00:00
Brian Wellington a012d6dbfb 746. [bug] The sdb didn't clone rdatasets properly, causing
a crash when the server followed delegations. [RT #905]
2001-02-20 23:20:44 +00:00
Brian Wellington f70336b8c9 Cleanups to TSIG/SIG(0) parsing. This should have no noticable effect except
rejecting a few more malformed packets (those with the TSIG/SIG(0) not the
last record) and making best-effort parsing handle multiple TSIG/SIG(0)/OPT in
a message.
2001-02-19 20:14:23 +00:00
Mark Andrews 43de493006 745. [func] Report the owner name on when adding a rdataset
to the internal database fails while loading.
2001-02-19 13:24:04 +00:00
Bob Halley 1e50dad10d When returning DNS_R_CNAME or DNS_R_DNAME as the result of an ANY or SIG
query, the resolver failed to setup the return event's rdatasets, causing an
assertion failure in the query code.  [RT #881]

The fix includes the addition of the DNS_NAMEATTR_CHAINING attribute,
and the removal of the DNS_NAMEATTR_CNAME and DNS_NAMEATTR_DNAME attributes,
because they were not used anywhere in the current source.
2001-02-19 08:54:54 +00:00
Brian Wellington 3bd43bb300 ENSURE that a message's memory pools don't have any allocated data at the
end of msgreset().  This should trigger the mpctx->allocated != 0 assertion
when the leak occurs, not at server shutdown.
2001-02-18 23:46:26 +00:00
Brian Wellington 3f07549972 comment fix 2001-02-18 21:19:43 +00:00
Brian Wellington 62adc5ed76 Call free_namelist() rather than freeing the list manually. 2001-02-17 02:22:43 +00:00
Andreas Gustafsson 19eee89387 if dns_message_gettempname() failed, we would try to call
dns_message_putemprdataset() on an uninitialized pointer
2001-02-17 02:16:14 +00:00
Andreas Gustafsson 4e72c83c94 removed unused variable 2001-02-17 00:23:49 +00:00
Brian Wellington 683301a954 fix a potential (but highly unlikely) memory leak. 2001-02-16 21:29:45 +00:00
Brian Wellington c47ca47629 Remove the old rndc config parser. 2001-02-16 00:47:45 +00:00
Andreas Gustafsson 5e1c2afd10 incorrect indentation 2001-02-15 19:09:55 +00:00
Brian Wellington 507102c95a In dns_compress_invalidate(), cctx->table cannot be NULL, since it's part of
the cctx structure.
2001-02-15 01:14:16 +00:00
Brian Wellington 2cb74c5bc5 741. [port] Support openssl-engine. [RT #709] 2001-02-14 20:57:15 +00:00
Brian Wellington 3d60fe9baf 740. [port] Handle openssl library mismatches slightly better. 2001-02-14 20:26:48 +00:00
Mark Andrews 0c6971b8ea Split the load context in two, one part that is visible across all files
the other part that is include file specific.
2001-02-14 13:14:50 +00:00
Andreas Gustafsson 65a66336a6 redid configuration locking using isc_task_beginexclusive()
and isc_task_endexclusive() instead of a multitude of separate
configuration rwlocks
2001-02-14 03:54:53 +00:00
Andreas Gustafsson 1dd8ee4fd5 fctx_addopt() would leak an rdataset if dns_message_setopt() ever failed;
fixed it by making dns_message_setopt() guarantee to either adopt
or free the rdataset
2001-02-14 02:51:12 +00:00
Brian Wellington 8766351a67 general cleanup 2001-02-14 00:43:10 +00:00
Andreas Gustafsson d156c10aee removed extra empty line 2001-02-14 00:29:16 +00:00
Andreas Gustafsson 8f17525ebc in some situations, a request could be cancelled twice 2001-02-13 21:06:25 +00:00
Brian Wellington b2c46df291 A receive could be erroneously cancelled because of missing braces around a
block.
2001-02-13 20:21:52 +00:00
Brian Wellington f24c135e09 738. [bug] If a non-threadsafe sdb driver supported AXFR and
received an AXFR request, it would deadlock or die
                        with an assertion failure.
(also some other cleanups)
2001-02-13 20:11:15 +00:00
Brian Wellington 100d0d2ec6 Use a refcount instead of an explicit mutex and integer. 2001-02-13 03:57:06 +00:00
Andreas Gustafsson 8126e45e8c do dns_request_t cancel processing through a control event to
ensure that dns_dispatch_removeresponse() is called from the correct task
[RT #844]
2001-02-13 02:49:07 +00:00
Brian Wellington 4ce1248f09 fixed uninitialized variable 2001-02-13 01:29:33 +00:00
Brian Wellington 55f3daa4ea When parsing a message, add an offsets table to each name. Also allow callers
rendering a message to get temporary offsets tables to attach to names added
to the message.
2001-02-13 01:02:59 +00:00
Brian Wellington 31efcf6478 Build the offsets table in dns_name_fromwire() while parsing the name, not
by calling set_offsets.
2001-02-13 00:07:25 +00:00
Brian Wellington 29daf5bc77 The suffix returned by dns_compress_findglobal() is never used, so remove it. 2001-02-12 18:07:52 +00:00
Brian Wellington 0c264c9094 The prefix and suffix names used in name compression don't need offset tables,
since they're never used.  Not having offset tables makes filling in their
contents more efficient.
2001-02-12 05:22:34 +00:00
Brian Wellington cdc50af0bf In the towire_* and additionaldata_* routines, add an offsets table to names
passed into dns_name_toregion().  This is effectively free, and reduces the
number of calls to set_offsets() and dns_name_clone() in name compression.
2001-02-12 03:05:05 +00:00
Mark Andrews 9b6398efdf re-do #734 2001-02-12 03:03:40 +00:00
Andreas Gustafsson 6cefb74b2b dns_dispatch_removeresponse() failed to document the
requirement that it is only called from the task where the
response entry being removed delivers its events (Michael
agrees that this is indeed a requirement)
2001-02-11 19:11:52 +00:00
Mark Andrews 4dc2987f47 used the wrong xfr in #734 2001-02-11 02:23:12 +00:00
Brian Wellington 7222f9f321 The optimization to avoid compares after hashtable matches didn't work when
the matched node contained multiple labels.
2001-02-10 22:46:24 +00:00
Brian Wellington 82ecc44b96 another micro-optimization. 2001-02-10 02:55:05 +00:00
Brian Wellington 319d2971f1 When the client informs the dispatcher of a received response, have the
dispatcher copy the event instead of reusing the original one.
2001-02-10 02:00:11 +00:00
Brian Wellington 64e7f8541d optimization - if the compression table for a message is empty, don't
hash and look up each label.
2001-02-10 01:18:19 +00:00
Brian Wellington 1c1f5e1911 The root node was added to the hashtable twice, which could lead to an
infinite loop. [RT #840]
2001-02-09 18:48:57 +00:00
Mark Andrews e911387be8 redo:
728.   [bug]           Fix comment processing on master file directives.
                        [RT# 757]
2001-02-09 14:34:52 +00:00
Mark Andrews 80aba3d49a 734. [bug] An attempt to re-lock the zone lock could occur if
the zone was shutdown during a zone tranfer. [RT #830]
2001-02-09 06:04:55 +00:00
Brian Wellington 2d6a6174f1 micro-optimizations 2001-02-09 02:13:07 +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