Commit 031f9084 authored by Mark Andrews's avatar Mark Andrews
Browse files

394. [bug] Current name was not propagated via $INCLUDE.

 393.   [func]          Initial answer while loading (awl) support.
                        Entry points: dns_master_loadfileinc(),
                        dns_master_loadstreaminc(), dns_master_loadbufferinc().
                        Note: calls to dns_master_load*inc() should be rate
                        be rate limited so as to not use up all file
                        descriptors.
parent 44215b93
394. [bug] Current name was not propagated via $INCLUDE.
393. [func] Initial answer while loading (awl) support.
Entry points: dns_master_loadfileinc(),
dns_master_loadstreaminc(), dns_master_loadbufferinc().
Note: calls to dns_master_load*inc() should be rate
be rate limited so as to not use up all file
descriptors.
392. [func] Add ISC_R_FAMILYNOSUPPORT. Returned when OS does
not support the given address family requested.
......
......@@ -15,7 +15,7 @@
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: events.h,v 1.28 2000/08/01 01:24:10 tale Exp $ */
/* $Id: events.h,v 1.29 2000/08/15 03:33:50 marka Exp $ */
#ifndef DNS_EVENTS_H
#define DNS_EVENTS_H 1
......@@ -52,6 +52,7 @@
#define DNS_EVENT_NOTIFYSENDTOADDR (ISC_EVENTCLASS_DNS + 23)
#define DNS_EVENT_ZONE (ISC_EVENTCLASS_DNS + 24)
#define DNS_EVENT_ZONESTARTXFRIN (ISC_EVENTCLASS_DNS + 25)
#define DNS_EVENT_MASTERQUANTUM (ISC_EVENTCLASS_DNS + 26)
#define DNS_EVENT_FIRSTEVENT (ISC_EVENTCLASS_DNS + 0)
#define DNS_EVENT_LASTEVENT (ISC_EVENTCLASS_DNS + 65535)
......
......@@ -15,7 +15,7 @@
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: master.h,v 1.22 2000/08/01 01:24:19 tale Exp $ */
/* $Id: master.h,v 1.23 2000/08/15 03:33:51 marka Exp $ */
#ifndef DNS_MASTER_H
#define DNS_MASTER_H 1
......@@ -63,6 +63,39 @@ dns_master_loadbuffer(isc_buffer_t *buffer,
dns_rdatacallbacks_t *callbacks,
isc_mem_t *mctx);
isc_result_t
dns_master_loadfileinc(const char *master_file,
dns_name_t *top,
dns_name_t *origin,
dns_rdataclass_t zclass,
isc_boolean_t age_ttl,
dns_rdatacallbacks_t *callbacks,
isc_task_t *task,
dns_loaddonefunc_t done, void *done_arg,
isc_mem_t *mctx);
isc_result_t
dns_master_loadstreaminc(FILE *stream,
dns_name_t *top,
dns_name_t *origin,
dns_rdataclass_t zclass,
isc_boolean_t age_ttl,
dns_rdatacallbacks_t *callbacks,
isc_task_t *task,
dns_loaddonefunc_t done, void *done_arg,
isc_mem_t *mctx);
isc_result_t
dns_master_loadbufferinc(isc_buffer_t *buffer,
dns_name_t *top,
dns_name_t *origin,
dns_rdataclass_t zclass,
isc_boolean_t age_ttl,
dns_rdatacallbacks_t *callbacks,
isc_task_t *task,
dns_loaddonefunc_t done, void *done_arg,
isc_mem_t *mctx);
/*
* Loads a RFC 1305 master file from a file, stream, or buffer into rdatasets
* and then calls 'callbacks->commit' to commit the rdatasets. Rdata memory
......@@ -76,6 +109,9 @@ dns_master_loadbuffer(isc_buffer_t *buffer,
* 'callbacks->commit' is assumed to call 'callbacks->error' or
* 'callbacks->warn' to generate any error messages required.
*
* 'done' is called with 'done_arg' and a result code when the loading
* is completed or has failed if 'done' is non NULL.
*
* Requires:
* 'master_file' points to a valid string.
* 'top' points to a valid name.
......@@ -83,7 +119,9 @@ dns_master_loadbuffer(isc_buffer_t *buffer,
* 'callbacks->commit' points to a valid function.
* 'callbacks->error' points to a valid function.
* 'callbacks->warn' points to a valid function.
* 'callbacks->done' points to a valid function or NULL.
* 'mctx' points to a valid memory context.
* 'task' and 'done' to be NULL or 'task' and 'done' to be valid.
*
* Returns:
* ISC_R_SUCCESS upon successfully loading the master file.
......@@ -94,6 +132,7 @@ dns_master_loadbuffer(isc_buffer_t *buffer,
* DNS_R_NOOWNER failed to specify a ownername.
* DNS_R_NOTTL failed to specify a ttl.
* DNS_R_BADCLASS record class did not match zone class.
* DNS_R_CONTINUE load still in progress (dns_master_load*inc() only).
* Any dns_rdata_fromtext() error code.
* Any error code from callbacks->commit().
*/
......
......@@ -15,7 +15,7 @@
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: types.h,v 1.91 2000/08/01 01:24:53 tale Exp $ */
/* $Id: types.h,v 1.92 2000/08/15 03:33:52 marka Exp $ */
#ifndef DNS_TYPES_H
#define DNS_TYPES_H 1
......@@ -249,6 +249,9 @@ typedef enum {
/*
* Functions.
*/
typedef void
(*dns_loaddonefunc_t)(void *, isc_result_t);
typedef isc_result_t
(*dns_addrdatasetfunc_t)(void *, dns_name_t *, dns_rdataset_t *);
......
This diff is collapsed.
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment