Commit Graph
4811 Commits
Author SHA1 Message Date
Andreas Gustafsson be7f273043 merge in new yacc-free configuration parser from the newconfig branch 2001-02-15 04:14:15 +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
Andreas Gustafsson 449f4411c9 NO NEED TO SHOUT 2001-02-14 23:05:14 +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 47d78f67cb Give more information when isc_mempool_destroy() dies with an assertion
failure, in the hope that we'll be able to fix the bug one day.
2001-02-13 20:29:27 +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
Mark Andrews 382c4ce5a3 737. [port] stdtime failed to compile on certain platforms. 2001-02-13 13:24:09 +00:00
Mark Andrews ba6e506ed2 #if not #ifdef ISC_MEM_TRACKLINES 2001-02-13 13:20:37 +00:00
Mark Andrews b499a7c511 Print out the active memory prior to INSIST/REQUIRE failures. 2001-02-13 06:21:32 +00:00
Andreas Gustafsson 02940eaf0f 736. [func] New functions isc_task_{begin,end}exclusive(). 2001-02-13 04:11:44 +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 9f708f9014 isc_mem_stats() should print memory statistics even when there are no
allocated blocks at the time it's called.
2001-02-13 01:07:54 +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
Andreas Gustafsson ea16b37d71 install refcount.h 2001-02-12 23:11:05 +00:00
Brian Wellington 1f7f8d5c07 Add isc_socket_sendto2() and isc_socket_recv2(). These versions take
a partially constructed event and flags.  The flags can include
ISC_SOCKFLAG_IMMEDIATE, which means that if the operation completes, the
event is filled in and not sent.
2001-02-12 21:43:17 +00:00
Brian Wellington a13ca8a125 Add ISC_R_INPROGRESS (operation in progress) 2001-02-12 20:03:16 +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 7c3996209b fix a "statement is unreachable" warning 2001-02-11 00:52:31 +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
Andreas Gustafsson 1d625775ee note that max_size and target_size apply only when
ISC_MEM_USE_INTERNAL_MALLOC is set
2001-02-09 19:19:17 +00:00
Andreas Gustafsson 50179a15d1 UNUSED() 2001-02-09 19:08:11 +00:00
Andreas Gustafsson dd0ef1a9d3 removed the unused and undocumented functions
isc_mem_preallocate(), isc_mem_valid(), isc_mem_setsplit(), and
isc_mem_restore()
2001-02-09 19:05:23 +00:00
Andreas Gustafsson c674a8d5e7 documented the isc_mem_* interface 2001-02-09 18:51:20 +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
Andreas Gustafsson 780db05762 use the UNUSED() macro 2001-02-09 18:27:18 +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
Andreas Gustafsson 3f53ec3bd7 added missing copyright message; ISC_REFERENCE_H -> ISC_REFCOUNT_H 2001-02-09 00:26:20 +00:00
Andreas Gustafsson 97f26b88f6 removed more needless attaching and detaching of the blackhole ACL 2001-02-09 00:23:16 +00:00