David Lawrence
a685d9c3b6
Preliminary implementation of db mounting.
1999-03-18 19:37:30 +00:00
David Lawrence
f39a760ab0
formatting fixups (a few lines were over 79 char).
1999-03-16 22:57:32 +00:00
David Lawrence
eca5913a47
Made calls to dns_rbt_find{name,node} compatible with the just-committed
...
changes to rbt.c by passing a NULL pointer for the dns_name_t that
receives the full name of the node that is found. There is probably something
better to do, but this just keeps things compiling.
1999-03-16 16:15:44 +00:00
David Lawrence
194f54f4da
New parameter to dns_rbt_find{name,node} will return the full dns_name_t
...
of the node that is found.
Avoids doing any memory allocation when building ancestor chain in 99%
of the cases.
1999-03-16 16:10:36 +00:00
David Lawrence
cdd824cc88
documentation updates.
...
removed some print support function declarations; made static to rbt.c.
1999-03-12 05:01:42 +00:00
David Lawrence
bd1190c84b
no more need for mem_failure in rbt_nodechain_t, since findnode now
...
returns a dns_result_t.
dns_rbt_created requires deleter_arg NULL if deleter is NULL.
dns_rbt_addnode always returns DNS_R_EXISTS if the node is found, regardless
of if it has data.
dns_rbt_addname will add the data and return SUCCESS if addnode says
EXISTS but there is no data at the node.
make sure memory is freed even when get_ancestor_mem to reallocate fails.
partialmatch returned by findnode must have data associated with it.
fixed up deletename; prematurely exited without freeing chain memory if
the node was not found. made deletename responsible for identifying whether
a node could be removed rather than zapnode.
turned a few of the print support functions static.
1999-03-12 05:00:32 +00:00
David Lawrence
62f178f499
Preserve the storage location of the down node of a pair of joined nodes
...
when deleting, where possible.
1999-03-11 22:04:24 +00:00
David Lawrence
7f9a18ab45
Move the data pointer further down in the struct, near the second set of
...
bitfields that are used by RBT DB.
1999-03-11 21:15:12 +00:00
David Lawrence
6a0cb547d4
When splitting a node, increment PADBYTES by the amount that is truncated,
...
instead of just setting PADBYTES to that amount (this affects when a node
is split twice.)
1999-03-11 20:07:49 +00:00
Bob Halley
0cc67b5a2a
add DNS_R_UNCHANGED
1999-03-11 20:06:56 +00:00
David Lawrence
f036af2c71
rbtnode struct adapted with more bitfields to represent color,
...
name attributes, name length, offset length, and number of bytes
of "padding" that are left over when a node is split.
adjusted node splitting algorithm to preserve the original location
of the lower portion of the split node (eg, when a node has "a.b" as
its name and is split into "a" and "b", "a" retains the same address
space as "a.b".)
1999-03-11 18:54:31 +00:00
Bob Halley
b7ff8128f0
implement rdataset iteration
1999-03-11 06:02:28 +00:00
Bob Halley
bc5c129744
fix typo
1999-03-11 06:02:00 +00:00
Bob Halley
5245f4c5f9
have next method return DNS_R_NOMORE if cursor is already invalid
1999-03-11 06:01:31 +00:00
Bob Halley
efe6d8f066
add dns_db_allrdatasets
1999-03-11 06:00:22 +00:00
Bob Halley
b70e90d44f
make current return void
1999-03-11 05:59:40 +00:00
Bob Halley
184aadebb8
rdataset.h is not required
1999-03-11 05:58:56 +00:00
Bob Halley
4054230359
remove old rdataiterator; add rdatasetiter
1999-03-11 05:58:32 +00:00
Bob Halley
84c3294183
improved concatenation
1999-03-11 00:44:17 +00:00
Bob Halley
d7eef25fbe
rdataset iterator support
1999-03-11 00:43:43 +00:00
Bob Halley
7a9ded7b5f
minor cleanups
1999-03-11 00:43:04 +00:00
Mark Andrews
285b63e90f
Added {} to prevent 'ambigious else' warnings.
1999-03-11 00:29:10 +00:00
Mark Andrews
de10b83a23
* local label offset 255 is reserved.
...
* don't add domainnames with local compression pointers as
valid global compression targets unless edns is high enough.
1999-03-11 00:26:21 +00:00
Bob Halley
9b8123723a
add comment
1999-03-09 22:50:13 +00:00
Bob Halley
4a8b521fd7
remove typedef; add dns_fixedname_name()
1999-03-08 19:31:48 +00:00
Bob Halley
84d3cd8fed
add dns_fixedname_t
1999-03-08 19:31:30 +00:00
Bob Halley
a301df6a92
add dbiterator
1999-03-08 19:01:49 +00:00
Bob Halley
bb8263521b
unimplemented db iterator support
1999-03-08 19:01:18 +00:00
Bob Halley
8c65ae482a
db iterator support
1999-03-08 19:00:55 +00:00
Bob Halley
dbef4f7fb7
add
1999-03-08 19:00:11 +00:00
Bob Halley
544021d7e1
add dbiterator.h and fixedname.h
1999-03-08 18:59:27 +00:00
Bob Halley
ce3761f64d
add dedicated buffer support; cleanups to dns_name_concatenate()
1999-03-08 18:55:28 +00:00
Bob Halley
4c154a9f38
add
1999-03-08 18:53:44 +00:00
Bob Halley
ddbbc5a1c9
add dns_dbiterator_t
1999-03-08 18:51:51 +00:00
Bob Halley
0b7c2a096d
add DNS_R_NEWORIGIN
1999-03-08 18:51:14 +00:00
Bob Halley
a823c4f11a
requirement update
1999-03-07 19:21:49 +00:00
Bob Halley
b929562c6c
start adding interface comments
1999-03-07 19:21:37 +00:00
Bob Halley
8eea0575a0
update
1999-03-06 18:38:24 +00:00
Bob Halley
4c1132f344
update copyright
1999-03-06 04:12:06 +00:00
Bob Halley
7270737ca9
update copyrights
1999-03-06 04:03:53 +00:00
Bob Halley
c46bcd7c69
update copyright
1999-03-06 03:55:54 +00:00
Bob Halley
ff9104607c
add deletion
1999-03-06 00:51:12 +00:00
Bob Halley
12c0aff12a
printnode support; versioning fixes
1999-03-05 23:26:24 +00:00
Bob Halley
097c31fdea
add dns_db_printnode
1999-03-05 23:25:44 +00:00
David Lawrence
587fc7b519
Revised dns_rbt_findname and dns_rbt_findnode to find the closest match
...
when an exact match cannot be found. This changed the calling interface,
which necessitated changes to rbtdb.c and compress.c.
1999-03-04 21:03:29 +00:00
David Lawrence
f85b8869df
new result type, DNS_R_PARTIALMATCH, for dns_rbt_find*
1999-03-04 20:55:57 +00:00
Bob Halley
904a573437
C++ compatibility
1999-03-04 02:48:47 +00:00
Bob Halley
e371b7a70f
basic versioning; 64-bit version support; C++ compatibility
1999-03-04 02:45:56 +00:00
Bob Halley
86921103ec
lint
1999-03-04 02:44:30 +00:00
Bob Halley
ca04d3fbf9
additional assertions, C++ compatibility
1999-03-04 02:43:05 +00:00