Commit graph

784 commits

Author SHA1 Message Date
Michael Sawyer
c7868e2262 Modify dns_message_totext, dns_message_sectiontotext,
dns_message_pseudosectiontotext to use bitfields instead of flags
2000-05-24 18:17:53 +00:00
Brian Wellington
19d1b1667d notify and zone soa queries are now tsig signed when appropriate. 2000-05-24 17:30:41 +00:00
David Lawrence
ed019cabc1 fixed lines > 79 columns wide 2000-05-24 05:10:00 +00:00
David Lawrence
94bd549175 updated comments with regards to chains and parent pointers, and added caveat
about what happens with "name" and "origin" parameters when a chain
points to ".".
2000-05-24 02:56:26 +00:00
Brian Wellington
41faaa9b35 If an incoming message contains a SIG(0), store the rdataset owner name
in the message structure, even though it should be the root.  Also,
return this name in dns_message_getsig0().
2000-05-23 23:35:54 +00:00
Mark Andrews
00b67c06b9 Add contract notes for dns_requestmgr_{attach,detach}(). 2000-05-23 00:11:45 +00:00
Michael Sawyer
1ed4ba5a1f Add pseudosection printing, and dns_message_pseudosectiontotext(). 2000-05-22 21:22:06 +00:00
Andreas Gustafsson
cd01c9716f Reintroduced separate internal/external reference counts for zones,
reversing part of the changes made on 2000/05/17.  Doing an explicit
zone shutdown on destruction of the zone table caused the zone to
be shut down prematurely on server reload when the zone table was
destroyed but the zone had already been attached to a new zone table.
An external reference count is needed to correctly handle this situation.
2000-05-22 17:23:15 +00:00
Mark Andrews
0103f42343 Add comment about requiring pointers to memory block to be NULL if the
corresponding length is 0, non-NULL otherwise.
2000-05-22 12:34:16 +00:00
Michael Graff
341323e0e7 move dns_db_getsoaserial() from journal.c to db.c 2000-05-20 01:32:03 +00:00
Michael Sawyer
9dca36b2ab Remove unused no_rdata_or_ttl flag from message_totext and message_sectiontotest routines. 2000-05-20 01:29:58 +00:00
Michael Graff
46993e1d9d Merge the mlg-20000518 branch onto the mainline. Change summary:
dns_dispatch_create() no longer exists.  dns_dispatch_createtcp()
	and dns_dispatch_getudp() are the replacements.  _createtcp() takes
	a bound, connected TCP socket, while _getudp() will search for
	a sharable UDP socket, and if found, attach to it and return a
	pointer to it.  If one is not found, it will create a udp socket,
	bind it to a supplied local address, and create a new dispatcher
	around it.

	dns_dispatch_remove{request,response}() no longer take the dispatch
	as an argument.

	query-source can now be set per view.

	The dispatch manager holds onto three memory pools, one for
	allocating dispatchers from, one for events, and one for
	requests/replies.  The free list on these pools is hard-coded,
	but set to 1024.  This keeps us from having to dig into the
	isc_mem_t the pools draw from as often.

	dns_resolver_create() and dns_view_createresolver() require that
	valid dispatchers be passed in; dispatchers are no longer created
	for the caller.
2000-05-19 21:46:46 +00:00
Brian Wellington
e49c834de8 Replaced dns_keynode_next by the more correct dns_keytable_findnextkeynode 2000-05-19 20:25:55 +00:00
Brian Wellington
ea14aa24aa added dns_keynode_next 2000-05-19 18:38:27 +00:00
James Brister
8977ab7ca0 Zone configuration validation is now done at end of config file parsing,
and before loading callbacks.
2000-05-18 23:20:21 +00:00
Mark Andrews
59abb512d3 186 [func] dns_request_getresponse() has an additional arguement
'preserve_order'.
2000-05-18 02:59:20 +00:00
Brian Wellington
2ee24549b3 Added DNS_R_NOTINSECURE 2000-05-18 01:42:40 +00:00
Andreas Gustafsson
22608315e8 Fixed multiple shutdown cleanup bugs in the zone object. This
involved extensive restructuring of the reference counting of
zones and related objects.

Zones now attach to their views.  To avoid a circular dependency that
would keep views from ever shutting down, this is done using the new
functions dns_view_weakattach() / dns_view_weakdetach() which
guarantee that the view will not be freed but still allow it
to be shut down.

The zones themselves now only have a single reference count, with
similar "weak" semantics.  Managed zones must now be shut down
explicitly by calling dns_zone_shutdown().  To shut down all
zones in a zone table, call dns_zt_shutdown().

The zone manager is now reference counted, weakly. To shut down the
zone manager, you must explicitly call dns_zonemgr_shutdown().
2000-05-17 19:45:36 +00:00
David Lawrence
34b394b43e DNS_R_RANGE -> ISC_R_RANGE 2000-05-15 21:14:38 +00:00
Michael Sawyer
c95a89b433 Added dns_message_sectiontotext() and dns_message_totext() functions. 2000-05-15 17:49:57 +00:00
James Brister
4932a54ed6 - options named.conf statement *must* now come before any zone or view
statements.

- Post-load of named.conf check verifies a slave zone has non-empty list
  of masters defined.

- New per-zone boolean:

	enable-zone yes | no ;

- intended to let a zone be disabled without having to comment out the
  entire zone statement.

- New global and per-view option:

	max-cache-ttl number

- New global and per-view option:

	addition-data internal | minimal | maximal;
2000-05-15 12:36:33 +00:00
Andreas Gustafsson
f7d85bae58 Keep a queue of zones waiting for zone transfer quota so that a new
transfer can be dispatched immediately whenever quota becomes available
2000-05-14 20:01:34 +00:00
Andreas Gustafsson
7c74a7745d comments for dns_zone_setmasters() and dns_zone_setnotify()
said they add to a list; this is no longer true, they now set the whole list
2000-05-13 17:54:37 +00:00
Andreas Gustafsson
e1f16346db validator must not indicate a validation failure by returning
ISC_R_NOTFOUND as that seriously confuses query_find().  Introduced new
result codes DNS_R_NOVALIDSIG and DNS_R_NOVALIDNXT to use instead.
2000-05-12 21:25:17 +00:00
Mark Andrews
8adf1b9e74 Checkpoint ratelimiting refresh queries and notifies.
170.   [cleanup]       Remove inter server consistancy checks from zone,
                        these should return as a seperate module in 9.1.
                        dns_zone_checkservers(), dns_zone_checkparents(),
                        dns_zone_checkchildren(), dns_zone_checkglue().

                        Remove dns_zone_setadb(), dns_zone_setresolver(),
                        dns_zone_setrequestmgr() these should now be found
                        via the view.
2000-05-11 10:04:59 +00:00
Michael Graff
b9c8f4378a Add address searching to dns_disptach_find(). 2000-05-11 07:33:17 +00:00
Michael Graff
202ea9ccee make magic numbers be the first things in the structures 2000-05-10 23:58:12 +00:00
Michael Graff
ca9739800f implement dns_dispatchmgr_t, replacing dns_dispatchlist_t. Use it throughout the library/server. 2000-05-10 21:34:50 +00:00
Michael Graff
bc892aec31 implement _find() 2000-05-10 17:26:23 +00:00
Michael Graff
abf30e12ba declare dns_dispatchlist_t here 2000-05-10 17:24:55 +00:00
Michael Graff
1cf2ee1ef0 snapshot; dispatch list stuff 2000-05-10 07:28:33 +00:00
Andreas Gustafsson
84fcfe530b new logging module DNS_LOGMODULE_MASTERDUMP 2000-05-09 23:31:12 +00:00
Mark Andrews
8b61d20120 convert TRACE -> logging: ISC_LOG_DEBUG(3) 2000-05-09 05:12:49 +00:00
David Lawrence
1a69a1a78c Megacommit of dozens of files.
Cleanup of redundant/useless header file inclusion.

ISC style lint, primarily for function declarations and standalone
comments -- ie, those that appear on a line without any code, which
should be written as follows:
   /*
    * This is a comment.
    */
2000-05-08 14:38:29 +00:00
James Brister
65c9645ca7 Support new 'database' statement in zone.
database "quoted-string";
2000-05-06 10:18:48 +00:00
Andreas Gustafsson
a726ac16b3 updated comments 2000-05-05 00:18:16 +00:00
Michael Graff
c90f5e8d1e Split dns_log_init() into dns_log_init() which sets up module and category names, and dns_log_setcontext() which sets the logging context. Call isc_log_setcontext(), dns_log_init(), and dns_log_setcontext(). 2000-05-03 21:11:40 +00:00
Andreas Gustafsson
deb7afc49f documented the 'covers' argument of dns_ncache_add() 2000-05-03 21:08:14 +00:00
James Brister
e2cf9c2db3 support 'disabled' statement in zone config (causes
zone to be parsed and then ignored). Currently must
come after the 'type' clause.

support optional ports in masters and also-notify
statements:

	masters [ port xxx ] { y.y.y.y [ port zzz ] ; }

removed some unused arguments.

stop issuing some warnings about some features that
were not implemented, but now are.
2000-05-03 19:29:43 +00:00
David Lawrence
09f22ac5b0 Redundant header work, mostly removing <dns/result.h> from installed
headers and adding it to source files that need it.
2000-05-02 03:54:17 +00:00
David Lawrence
b09983678f 145. [cleanup] Added <isc/lang.h> and ISC_LANG_BEGINDECLS/
ISC_LANG_ENDDECLS to header files that had function
                        prototypes, and removed it from those that did not.
2000-05-01 17:59:10 +00:00
David Lawrence
4be63b1fd8 144. [cleanup] libdns header files too numerous to name were made
to conform to the same style for multiple inclusion
                        protection.
2000-04-29 02:02:38 +00:00
Andreas Gustafsson
014892d86d added dns_rdatatype_isknown() 2000-04-29 01:49:37 +00:00
Michael Graff
20c266cbc9 add dispatcher logging functions 2000-04-29 00:45:26 +00:00
Mark Andrews
efd55ce62e Add mctx comment for tostruct. 2000-04-28 23:18:01 +00:00
Mark Andrews
598b67856b dns_zone_{set,get}masterport() is gone. 2000-04-28 17:18:23 +00:00
Bob Halley
80cff01698 rdata.h 2000-04-28 16:29:58 +00:00
Bob Halley
3ae5393d7e Update contract of dns_name_rdatacompare to return < 0, 0, > 0 instead of
-1, 0, 1.
2000-04-28 16:29:48 +00:00
Mark Andrews
6c7e680943 115. [cleanup] libdns.a changes:
dns_zone_clearnotify() and dns_zone_addnotify()
                        are replaced by dns_zone_setnotifyalso().
                        dns_zone_clearmasters() and dns_zone_addmaster()
                        are replaced by dns_zone_setmasters().
2000-04-28 00:58:42 +00:00
David Lawrence
b3e7753518 108. [cleanup] DNS_SETBIT/DNS_GETBIT/DNS_CLEARBIT moved from
<dns/types.h> to <dns/bit.h> and renamed to
                        DNS_BIT_SET/DNS_BIT_GET/DNS_BIT_CLEAR.
2000-04-27 22:26:50 +00:00