Commit Graph

1142 Commits

Author SHA1 Message Date
Andreas Gustafsson
7cd4c3ddd1 The 'cache-ttl' and 'ncache-ttl' options now work 2000-05-26 23:17:56 +00:00
Brian Wellington
af60263664 Added dns_tsigkey_attach & _detach, to simplify reference counting.
Added dns_message_get/settsigkey to deuglify tsig key handling in message code.
2000-05-26 00:16:46 +00:00
David Lawrence
82a30bf0a0 in dns_name_fromtext, REQUIRE() that the source buffer not have an
isc_buffer_remaininglength of 0.  this finds problems like isc_buffer_init
not followed by isc_buffer_add much sooner.

also, enforce the already documented contract requirements of needing
a valid source buffer and either a valid target buffer or a name
with a dedicated buffer.
2000-05-25 23:57:25 +00:00
Andreas Gustafsson
c885fad9b8 Wired up the view-specific 'key' statement. 2000-05-25 22:06:51 +00:00
Andreas Gustafsson
c6cdf39bb2 Removed the function dns_zone_validate(). It was unused,
undocumented, marked XXX, and buggy (it contained a switch
statement that compared an rdclass to a set of zone types).
2000-05-25 21:13:39 +00:00
Andreas Gustafsson
e6aae9483e removed code for hint, forward, and cache "zones" as those
no longer have zone objects associated with them
2000-05-25 21:07:43 +00:00
Andreas Gustafsson
c90b021ea3 renamed dns_zone_setnotifyalso() to dns_zone_setalsonotify(),
to be consistent with the name of the config file option
2000-05-25 15:34:26 +00:00
Brian Wellington
5d83b561ad Added dns_tsigrcode_totext/fromtext 2000-05-25 00:46:32 +00:00
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