2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-29 05:28:00 +00:00

729 Commits

Author SHA1 Message Date
David Lawrence
f8dd2e939e Make sure chain_name and dns_rbtnodechain_current do not try to do
NODENAME() on a NULL chain->end (such as after the chain has been reset.)
1999-04-17 15:43:10 +00:00
David Lawrence
c234ac00b8 The _real_ fix for the callback_name generation problem in findnode.
It wasn't that chain->end was being included (it should have been) but
that the chain had already been expanded to point down a level before
the call to chain_name that needed the state of things before the
descent.
1999-04-17 15:19:45 +00:00
Bob Halley
b975721c0c fix versioning; iterator support 1999-04-17 01:38:04 +00:00
Bob Halley
ca3b094a06 add not-already-paused requirement to pause method 1999-04-17 01:37:12 +00:00
Bob Halley
c1737c417d db iterator support 1999-04-17 01:36:42 +00:00
Bob Halley
6bb7b678f5 do not pass the version to dns_db_createiterator() 1999-04-16 21:28:00 +00:00
Bob Halley
a8166bf1be versions are no longer part of dbiterators 1999-04-16 21:27:26 +00:00
Bob Halley
828870c41a lint 1999-04-16 21:26:41 +00:00
David Lawrence
678bd7ab4b Fixed handling of the name generation for callbacks in findnode. 1999-04-16 21:01:58 +00:00
David Lawrence
c40654ee44 Made addnode and findnode aware of the case where the result of the
comparison is "subdomain" but the full name at the existing node is
not in common with the input name -- when the last label is a bitstring
with some common bits.
1999-04-16 18:30:03 +00:00
David Lawrence
737807299d added "check" command to test dns_rbt_findnode and dns_rbtnodechain_current.
input can now have comments.
1999-04-16 16:18:01 +00:00
David Lawrence
ec80744ad6 The ADD_ANCESTOR macro now checks for the required memory, since it is used
in a lot of places now.  It _returns_ if it fails to get the necessary memory,
so any function using it should be returning a dns_result_t.

chain_name moved toward start of file, for inlining by findnode.

move_chain_to_last broke out some functionality of dns_rbtnodechain_last
(which now calls it), also for the benefit of findnode.

dns_rbtnodechain_init on the chain used by addnode.

All of the new_foundname concatenation gook was removed from findnode,
which now just sets foundname by using chain_name.

The chain set up by findnode points to the predecessor when the searched
for name is not found.

nodechain_current was changed to take name, origin and node parameters while
returning a dns_result_t.  This allows the chain returned by findnode to
be named.

The nodechain_{first,last,prev} use nodechain_current to set their
names and origins.  nodechain_next does not need it because it will never
have to do the "set the origin to '.' and remove '.' from names in the
root level" bit.  The root level will never be more than one name, and
everything in the megatree is a successor to that node, so 'next' never
reaches the root level.
1999-04-16 16:12:15 +00:00
Bob Halley
066ae48be3 include string.h to get memset() prototype 1999-04-14 17:40:22 +00:00
David Lawrence
6d74580f08 Documentation for chains. 1999-04-14 14:39:15 +00:00
David Lawrence
266655efae When using chains, the foundname does not need to be a fixedname, just
a regular dns_name_t.
1999-04-14 14:24:51 +00:00
David Lawrence
40526b8cbe Oops, untested change of removing DNS_NAMEATTR_ABSOLUTE from names
in top level tree during chain moves didn't actually compile as written.
Surprise.
1999-04-14 14:12:34 +00:00
David Lawrence
c0dc77bd4a Test forward/backward iteration. 1999-04-14 12:37:00 +00:00
David Lawrence
dafabe62df Changed a goto into a conditional block that works the same way. 1999-04-14 12:29:39 +00:00
David Lawrence
1adfd0a911 Top level tree always has an origin of "." and all names are relative to "."
in it.

chain _first and _last now work.

Other stuff I can't recall.  Lots of little fiddling with chains.
1999-04-14 12:03:18 +00:00
Mark Andrews
a2b97d054f Convert compress_find to use PARTIAL_MATCH result. 1999-04-14 06:03:15 +00:00
Bob Halley
b8a07403d1 dbtable support; loading of multiple zones now works 1999-04-14 02:37:44 +00:00
Bob Halley
405a4d66d7 Always lock the dbtable when operating on it.
Attach and detach from the db.
Simplify the API by not requiring the name to be specfied for add and remove,
and by not requiring the db to be specified for removedefault.
Calls to dns_rbt_findname were failing because stored_data was not initialized
to NULL.
1999-04-14 02:37:08 +00:00
Bob Halley
8259b7b150 API simplification 1999-04-14 02:33:19 +00:00
Mark Andrews
95f78a208a Bring local compression into line with draft 04.
'dns_rootname' should be marked read_only.
	Supply 'dns_rootname' with offsets.
1999-04-13 05:50:12 +00:00
Bob Halley
f2fbcd9195 Version locking fixes:
The commit_ok and changed_list were sometimes being accessed without
	holding the lock.
	Comments in structure.
Do not allow an rdataset to be added to a non-writer version.
Do not allow closeversion() to commit a writer version unless the ref count
is one.
We were not incrementing the version ref count when creating an rdataset
iterator.
1999-04-13 01:58:17 +00:00
Bob Halley
c9a8413dcb Require that only the last reference of a writable version may be committed. 1999-04-13 01:54:02 +00:00
Bob Halley
a3e2ec2dfe dns_db_deleterdataset() needed the same REQUIRE fix as dns_db_addrdataset() 1999-04-13 01:52:58 +00:00
Bob Halley
73f4d29ef4 add 1999-04-10 00:37:31 +00:00
Bob Halley
46d74dd316 fix typo 1999-04-10 00:34:18 +00:00
David Lawrence
675f7c879a Do not return the full name when chain iterating, just relative to the origin. 1999-04-09 22:55:20 +00:00
David Lawrence
c9eae31249 That last checkin was dain-bramaged, because I was thinking solely of
what happens at ".".  For most origins, they do NOT include themself in
a zone file ... that is, the record for "rc" appears in the $ORIGIN for
".vix.com."
1999-04-09 22:49:46 +00:00
Bob Halley
063a4a82f6 Since rollback_node() no longer frees rdatasets, we must mark the node as
dirty if anything was rolled back, because otherwise the node cleaning
routine will not run when the node reference count becomes 0.
1999-04-09 19:25:55 +00:00
Bob Halley
a7fbdbf0aa add holdmode and VC command 1999-04-09 19:18:52 +00:00
Bob Halley
88c2d3ad0d Eliminate the "prev" pointer in the rdataset header.
rollback_node() incorrectly required that node->references == 0.  We cannot
assume that a node has no references when an update is rolled back.  We now
mark any rolled back rdatasets with the RDATASET_ATTR_IGNORE attribute.  When
the node eventually has a zero reference count, IGNOREd rdatasets will be
cleaned up.  In the meantime, they will be ignored.
1999-04-09 19:18:04 +00:00
Bob Halley
5c6d49484b fix incorrect REQUIRE statement in dns_db_addrdataset() 1999-04-09 19:14:06 +00:00
David Lawrence
93a0e33450 Include the origin node in it its own cut. IE, when coming through
ab.rc.vix.com, bb.rc.vix.com, ... back to rc.vix.com, don't declare
a new origin until _after_ rc.vix.com has been returned.
1999-04-09 15:27:58 +00:00
David Lawrence
33950f0a02 Preliminary work on iterators. 1999-04-09 15:21:15 +00:00
David Lawrence
7bd28cb40b Preliminary testing of new iterator methods. 1999-04-09 15:17:57 +00:00
Bob Halley
0370190a68 REQUIRE that target is a valid name in dns_name_getlabelsequence() 1999-04-09 01:27:54 +00:00
Bob Halley
6a6a1f94df quiet mode; timing; glue validation; update db interfaces 1999-04-09 01:15:12 +00:00
Bob Halley
130606560b the interface to dns_db_findrdataset changed 1999-04-09 01:13:38 +00:00
Bob Halley
b5cad0c59e update 1999-04-09 01:12:58 +00:00
Bob Halley
0b1f55d73f Pass time to routines which add or create rdatasets.
Add TTL aging and removal of stale rdatasets (cache databases only).
1999-04-09 01:12:30 +00:00
Bob Halley
63e6086ef9 pass time to routines which add or create rdatasets 1999-04-09 01:10:19 +00:00
Bob Halley
aa9f70c1e1 add now 1999-04-09 01:09:23 +00:00
Bob Halley
120e76fc54 add stdtime 1999-04-09 01:08:46 +00:00
Michael Graff
a6a0f27083 msg.h -> message.h, and dns_msg* to dns_message* 1999-04-08 21:13:31 +00:00
Bob Halley
3c11c87769 update comments 1999-04-06 04:15:49 +00:00
Bob Halley
95e0ab8284 add glue validation 1999-04-06 04:15:29 +00:00
Michael Graff
cf608835a3 add resolver skeleton doc 1999-04-06 02:50:53 +00:00