Commit ba6fd258 authored by Andreas Gustafsson's avatar Andreas Gustafsson
Browse files

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

                        assertion failure. [RT #302]

 566.   [func]          New public function dns_timer_setidle().
parent 4d56f59a
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]
......
......@@ -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
......
......@@ -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
......
......@@ -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
......
......@@ -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;
......
......@@ -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;
}
......
......@@ -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
......
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