2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-31 06:25:31 +00:00

567. [bug] Setting the zone transfer timeout to zero caused an

assertion failure. [RT #302]

 566.   [func]          New public function dns_timer_setidle().
This commit is contained in:
Andreas Gustafsson
2000-11-17 19:04:51 +00:00
parent 4d56f59ad0
commit ba6fd25808
7 changed files with 26 additions and 33 deletions

View File

@@ -1,3 +1,9 @@
567. [bug] Setting the zone transfer timeout to zero caused an
assertion failure. [RT #302]
566. [func] New public function dns_timer_setidle().
565. [func] Log queries more like BIND 8. Query logging is done
to category "general", module "query", debug level 1.
[RT #169]

View File

@@ -15,7 +15,7 @@
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: xfrout.c,v 1.81 2000/11/03 23:01:58 bwelling Exp $ */
/* $Id: xfrout.c,v 1.82 2000/11/17 19:04:51 gson Exp $ */
#include <config.h>
@@ -34,6 +34,7 @@
#include <dns/rdataset.h>
#include <dns/rdatasetiter.h>
#include <dns/result.h>
#include <dns/timer.h>
#include <dns/view.h>
#include <dns/zone.h>
#include <dns/zt.h>
@@ -1113,8 +1114,6 @@ xfrout_ctx_create(isc_mem_t *mctx, ns_client_t *client, unsigned int id,
isc_result_t result;
unsigned int len;
void *mem;
isc_interval_t maxinterval, idleinterval;
isc_time_t expires;
INSIST(xfrp != NULL && *xfrp == NULL);
xfr = isc_mem_get(mctx, sizeof(*xfr));
@@ -1173,14 +1172,8 @@ xfrout_ctx_create(isc_mem_t *mctx, ns_client_t *client, unsigned int id,
xfr->txmem = mem;
xfr->txmemlen = len;
isc_interval_set(&maxinterval, maxtime, 0);
CHECK(isc_time_nowplusinterval(&expires, &maxinterval));
isc_interval_set(&idleinterval, idletime, 0);
CHECK(isc_timer_reset(xfr->client->timer,
isc_timertype_once,
&expires, &idleinterval,
ISC_FALSE));
CHECK(dns_timer_setidle(xfr->client->timer,
maxtime, idletime, ISC_FALSE));
/*
* Register a shutdown callback with the client, so that we

View File

@@ -13,7 +13,7 @@
# NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
# WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
# $Id: Makefile.in,v 1.112 2000/11/16 02:05:54 bwelling Exp $
# $Id: Makefile.in,v 1.113 2000/11/17 19:04:45 gson Exp $
srcdir = @srcdir@
VPATH = @srcdir@
@@ -97,7 +97,7 @@ OBJS = a6.@O@ acl.@O@ adb.@O@ byaddr.@O@ \
rbt.@O@ rbtdb.@O@ rbtdb64.@O@ rdata.@O@ rdatalist.@O@ \
rdataset.@O@ rdatasetiter.@O@ rdataslab.@O@ request.@O@ \
resolver.@O@ result.@O@ rootns.@O@ sdb.@O@ ssu.@O@ \
tcpmsg.@O@ time.@O@ tkey.@O@ \
tcpmsg.@O@ time.@O@ timer.@O@ tkey.@O@ \
tsig.@O@ ttl.@O@ validator.@O@ \
version.@O@ view.@O@ xfrin.@O@ zone.@O@ zt.@O@ \
${DSTOBJS} @DST_OPENSSL_OBJS@ ${CONFOBJS}
@@ -112,7 +112,7 @@ SRCS = a6.c acl.c adb.c byaddr.c \
rbt.c rbtdb.c rbtdb64.c rdata.c rdatalist.c \
rdataset.c rdatasetiter.c rdataslab.c request.c \
resolver.c result.c rootns.c sdb.c ssu.c \
tcpmsg.c time.c tkey.c \
tcpmsg.c time.c timer.c tkey.c \
tsig.c ttl.c validator.c \
version.c view.c xfrin.c zone.c zt.c

View File

@@ -15,7 +15,7 @@
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: zone.h,v 1.88 2000/11/11 01:15:33 gson Exp $ */
/* $Id: zone.h,v 1.89 2000/11/17 19:04:50 gson Exp $ */
#ifndef DNS_ZONE_H
#define DNS_ZONE_H 1
@@ -790,7 +790,6 @@ dns_zone_setmaxxfrin(dns_zone_t *zone, isc_uint32_t maxxfrin);
*
* Requires:
* 'zone' to be valid initialised zone.
* 'xfrtime' to be non zero.
*/
isc_uint32_t
@@ -812,7 +811,6 @@ dns_zone_setmaxxfrout(dns_zone_t *zone, isc_uint32_t maxxfrout);
*
* Requires:
* 'zone' to be valid initialised zone.
* 'xfrtime' to be non zero.
*/
isc_uint32_t
@@ -835,7 +833,7 @@ dns_zone_setjournal(dns_zone_t *zone, const char *journal);
*
* Requires:
* 'zone' to be a valid zone.
* 'journal' to be non NULL.
* 'journal' to be non-NULL.
*
* Returns:
* ISC_R_SUCCESS

View File

@@ -15,7 +15,7 @@
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: xfrin.c,v 1.105 2000/11/13 20:12:29 gson Exp $ */
/* $Id: xfrin.c,v 1.106 2000/11/17 19:04:47 gson Exp $ */
#include <config.h>
@@ -36,6 +36,7 @@
#include <dns/rdataset.h>
#include <dns/result.h>
#include <dns/tcpmsg.h>
#include <dns/timer.h>
#include <dns/tsig.h>
#include <dns/view.h>
#include <dns/xfrin.h>
@@ -669,8 +670,6 @@ xfrin_create(isc_mem_t *mctx,
{
dns_xfrin_ctx_t *xfr = NULL;
isc_result_t result;
isc_interval_t maxinterval, idleinterval;
isc_time_t expires;
isc_uint32_t tmp;
xfr = isc_mem_get(mctx, sizeof(*xfr));
@@ -735,13 +734,12 @@ xfrin_create(isc_mem_t *mctx,
CHECK(dns_name_dup(zonename, mctx, &xfr->name));
isc_interval_set(&maxinterval, dns_zone_getmaxxfrin(xfr->zone), 0);
CHECK(isc_time_nowplusinterval(&expires, &maxinterval));
isc_interval_set(&idleinterval, dns_zone_getidlein(xfr->zone), 0);
CHECK(isc_timer_create(timermgr, isc_timertype_once,
&expires, &idleinterval, task,
xfrin_timeout, xfr, &xfr->timer));
CHECK(isc_timer_create(timermgr, isc_timertype_inactive, NULL, NULL,
task, xfrin_timeout, xfr, &xfr->timer));
CHECK(dns_timer_setidle(xfr->timer,
dns_zone_getmaxxfrin(xfr->zone),
dns_zone_getidlein(xfr->zone),
ISC_FALSE));
xfr->masteraddr = *masteraddr;

View File

@@ -15,7 +15,7 @@
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: zone.c,v 1.252 2000/11/17 02:49:11 bwelling Exp $ */
/* $Id: zone.c,v 1.253 2000/11/17 19:04:48 gson Exp $ */
#include <config.h>
@@ -4157,7 +4157,6 @@ message_count(dns_message_t *msg, dns_section_t section, dns_rdatatype_t type)
void
dns_zone_setmaxxfrin(dns_zone_t *zone, isc_uint32_t maxxfrin) {
REQUIRE(DNS_ZONE_VALID(zone));
REQUIRE(maxxfrin != 0);
zone->maxxfrin = maxxfrin;
}
@@ -4172,7 +4171,6 @@ dns_zone_getmaxxfrin(dns_zone_t *zone) {
void
dns_zone_setmaxxfrout(dns_zone_t *zone, isc_uint32_t maxxfrout) {
REQUIRE(DNS_ZONE_VALID(zone));
REQUIRE(maxxfrout != 0);
zone->maxxfrout = maxxfrout;
}
@@ -4240,8 +4238,6 @@ void
dns_zone_setidleout(dns_zone_t *zone, isc_uint32_t idleout) {
REQUIRE(DNS_ZONE_VALID(zone));
if (idleout == 0)
idleout = DNS_DEFAULT_IDLEOUT;
zone->idleout = idleout;
}

View File

@@ -933,6 +933,7 @@
./lib/dns/include/dns/ssu.h C 2000
./lib/dns/include/dns/tcpmsg.h C 1999,2000
./lib/dns/include/dns/time.h C 1999,2000
./lib/dns/include/dns/timer.h C 2000
./lib/dns/include/dns/tkey.h C 1999,2000
./lib/dns/include/dns/tkeyconf.h C 1999,2000
./lib/dns/include/dns/tsig.h C 1999,2000
@@ -1092,6 +1093,7 @@
./lib/dns/ssu.c C 2000
./lib/dns/tcpmsg.c C 1999,2000
./lib/dns/time.c C 1998,1999,2000
./lib/dns/timer.c C 2000
./lib/dns/tkey.c C 1999,2000
./lib/dns/tsig.c C 1999,2000
./lib/dns/ttl.c C 1999,2000