mirror of
https://gitlab.isc.org/isc-projects/bind9
synced 2025-08-30 14:07:59 +00:00
3249. [bug] Update log message when saving slave zones files for
analysis after load failures. [RT #27087] 3248. [bug] Configure options --enable-fixed-rrset and --enable-exportlib were incompatible with each other. [RT #27087] 3247. [bug] 'raw' format zones failed to preserve load order breaking 'fixed' sort order. [RT #27087] 3246. [bug] Named failed to start with a empty also-notify list. [RT #27087]
This commit is contained in:
13
CHANGES
13
CHANGES
@@ -1,3 +1,16 @@
|
|||||||
|
3249. [bug] Update log message when saving slave zones files for
|
||||||
|
analysis after load failures. [RT #27087]
|
||||||
|
|
||||||
|
3248. [bug] Configure options --enable-fixed-rrset and
|
||||||
|
--enable-exportlib were incompatible with each
|
||||||
|
other. [RT #27087]
|
||||||
|
|
||||||
|
3247. [bug] 'raw' format zones failed to preserve load order
|
||||||
|
breaking 'fixed' sort order. [RT #27087]
|
||||||
|
|
||||||
|
3246. [bug] Named failed to start with a empty also-notify list.
|
||||||
|
[RT #27087]
|
||||||
|
|
||||||
3245. [bug] Don't report a error unchanged serials unless there
|
3245. [bug] Don't report a error unchanged serials unless there
|
||||||
were other changes when thawing a zone with
|
were other changes when thawing a zone with
|
||||||
ixfr-fromdifferences. [RT #26845]
|
ixfr-fromdifferences. [RT #26845]
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* PERFORMANCE OF THIS SOFTWARE.
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* $Id: zoneconf.c,v 1.185 2011/10/26 15:23:36 each Exp $ */
|
/* $Id: zoneconf.c,v 1.186 2011/12/20 00:06:54 marka Exp $ */
|
||||||
|
|
||||||
/*% */
|
/*% */
|
||||||
|
|
||||||
@@ -1045,8 +1045,11 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
|||||||
result = dns_zone_setalsonotifywithkeys(zone, addrs,
|
result = dns_zone_setalsonotifywithkeys(zone, addrs,
|
||||||
keynames,
|
keynames,
|
||||||
addrcount);
|
addrcount);
|
||||||
ns_config_putipandkeylist(mctx, &addrs, &keynames,
|
if (addrcount != 0)
|
||||||
addrcount);
|
ns_config_putipandkeylist(mctx, &addrs,
|
||||||
|
&keynames, addrcount);
|
||||||
|
else
|
||||||
|
INSIST(addrs == NULL && keynames == NULL);
|
||||||
RETERR(result);
|
RETERR(result);
|
||||||
} else
|
} else
|
||||||
RETERR(dns_zone_setalsonotify(zone, NULL, 0));
|
RETERR(dns_zone_setalsonotify(zone, NULL, 0));
|
||||||
@@ -1458,8 +1461,11 @@ ns_zone_configure(const cfg_obj_t *config, const cfg_obj_t *vconfig,
|
|||||||
&count));
|
&count));
|
||||||
result = dns_zone_setmasterswithkeys(mayberaw, addrs,
|
result = dns_zone_setmasterswithkeys(mayberaw, addrs,
|
||||||
keynames, count);
|
keynames, count);
|
||||||
ns_config_putipandkeylist(mctx, &addrs, &keynames,
|
if (count != 0)
|
||||||
count);
|
ns_config_putipandkeylist(mctx, &addrs,
|
||||||
|
&keynames, count);
|
||||||
|
else
|
||||||
|
INSIST(addrs == NULL && keynames == NULL);
|
||||||
} else
|
} else
|
||||||
result = dns_zone_setmasters(mayberaw, NULL, 0);
|
result = dns_zone_setmasters(mayberaw, NULL, 0);
|
||||||
RETERR(result);
|
RETERR(result);
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* PERFORMANCE OF THIS SOFTWARE.
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* $Id: named.conf,v 1.22 2011/10/17 23:46:33 tbox Exp $ */
|
/* $Id: named.conf,v 1.23 2011/12/20 00:06:54 marka Exp $ */
|
||||||
|
|
||||||
controls { /* empty */ };
|
controls { /* empty */ };
|
||||||
|
|
||||||
@@ -39,4 +39,6 @@ zone "." {
|
|||||||
zone "example" {
|
zone "example" {
|
||||||
type master;
|
type master;
|
||||||
file "example.db";
|
file "example.db";
|
||||||
|
// Check that named can handle a empty also-notify.
|
||||||
|
also-notify { /* empty */ };
|
||||||
};
|
};
|
||||||
|
@@ -14,7 +14,7 @@
|
|||||||
* PERFORMANCE OF THIS SOFTWARE.
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* $Id: ecdb.c,v 1.9 2011/10/11 13:33:45 marka Exp $ */
|
/* $Id: ecdb.c,v 1.10 2011/12/20 00:06:53 marka Exp $ */
|
||||||
|
|
||||||
#include "config.h"
|
#include "config.h"
|
||||||
|
|
||||||
@@ -37,10 +37,6 @@
|
|||||||
#define ECDBNODE_MAGIC ISC_MAGIC('E', 'C', 'D', 'N')
|
#define ECDBNODE_MAGIC ISC_MAGIC('E', 'C', 'D', 'N')
|
||||||
#define VALID_ECDBNODE(ecdbn) ISC_MAGIC_VALID(ecdbn, ECDBNODE_MAGIC)
|
#define VALID_ECDBNODE(ecdbn) ISC_MAGIC_VALID(ecdbn, ECDBNODE_MAGIC)
|
||||||
|
|
||||||
#if DNS_RDATASET_FIXED
|
|
||||||
#error "Fixed rdataset isn't supported in this implementation"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*%
|
/*%
|
||||||
* The 'ephemeral' cache DB (ecdb) implementation. An ecdb just provides
|
* The 'ephemeral' cache DB (ecdb) implementation. An ecdb just provides
|
||||||
* temporary storage for ongoing name resolution with the common DB interfaces.
|
* temporary storage for ongoing name resolution with the common DB interfaces.
|
||||||
@@ -662,7 +658,11 @@ rdataset_first(dns_rdataset_t *rdataset) {
|
|||||||
rdataset->private5 = NULL;
|
rdataset->private5 = NULL;
|
||||||
return (ISC_R_NOMORE);
|
return (ISC_R_NOMORE);
|
||||||
}
|
}
|
||||||
|
#if DNS_RDATASET_FIXED
|
||||||
|
raw += 2 + (4 * count);
|
||||||
|
#else
|
||||||
raw += 2;
|
raw += 2;
|
||||||
|
#endif
|
||||||
/*
|
/*
|
||||||
* The privateuint4 field is the number of rdata beyond the cursor
|
* The privateuint4 field is the number of rdata beyond the cursor
|
||||||
* position, so we decrement the total count by one before storing
|
* position, so we decrement the total count by one before storing
|
||||||
@@ -688,7 +688,11 @@ rdataset_next(dns_rdataset_t *rdataset) {
|
|||||||
rdataset->privateuint4 = count;
|
rdataset->privateuint4 = count;
|
||||||
raw = rdataset->private5;
|
raw = rdataset->private5;
|
||||||
length = raw[0] * 256 + raw[1];
|
length = raw[0] * 256 + raw[1];
|
||||||
|
#if DNS_RDATASET_FIXED
|
||||||
|
raw += length + 4;
|
||||||
|
#else
|
||||||
raw += length + 2;
|
raw += length + 2;
|
||||||
|
#endif
|
||||||
rdataset->private5 = raw;
|
rdataset->private5 = raw;
|
||||||
|
|
||||||
return (ISC_R_SUCCESS);
|
return (ISC_R_SUCCESS);
|
||||||
@@ -704,7 +708,11 @@ rdataset_current(dns_rdataset_t *rdataset, dns_rdata_t *rdata) {
|
|||||||
REQUIRE(raw != NULL);
|
REQUIRE(raw != NULL);
|
||||||
|
|
||||||
length = raw[0] * 256 + raw[1];
|
length = raw[0] * 256 + raw[1];
|
||||||
|
#if DNS_RDATASET_FIXED
|
||||||
|
raw += 4;
|
||||||
|
#else
|
||||||
raw += 2;
|
raw += 2;
|
||||||
|
#endif
|
||||||
if (rdataset->type == dns_rdatatype_rrsig) {
|
if (rdataset->type == dns_rdatatype_rrsig) {
|
||||||
if (*raw & DNS_RDATASLAB_OFFLINE)
|
if (*raw & DNS_RDATASLAB_OFFLINE)
|
||||||
flags |= DNS_RDATA_OFFLINE;
|
flags |= DNS_RDATA_OFFLINE;
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* PERFORMANCE OF THIS SOFTWARE.
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* $Id: masterdump.c,v 1.112 2011/12/08 23:46:48 tbox Exp $ */
|
/* $Id: masterdump.c,v 1.113 2011/12/20 00:06:53 marka Exp $ */
|
||||||
|
|
||||||
/*! \file */
|
/*! \file */
|
||||||
|
|
||||||
@@ -932,6 +932,7 @@ dump_rdataset_raw(isc_mem_t *mctx, dns_name_t *name, dns_rdataset_t *rdataset,
|
|||||||
REQUIRE(buffer->length > 0);
|
REQUIRE(buffer->length > 0);
|
||||||
REQUIRE(DNS_RDATASET_VALID(rdataset));
|
REQUIRE(DNS_RDATASET_VALID(rdataset));
|
||||||
|
|
||||||
|
rdataset->attributes |= DNS_RDATASETATTR_LOADORDER;
|
||||||
restart:
|
restart:
|
||||||
totallen = 0;
|
totallen = 0;
|
||||||
result = dns_rdataset_first(rdataset);
|
result = dns_rdataset_first(rdataset);
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* PERFORMANCE OF THIS SOFTWARE.
|
* PERFORMANCE OF THIS SOFTWARE.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/* $Id: zone.c,v 1.655 2011/12/19 23:46:12 marka Exp $ */
|
/* $Id: zone.c,v 1.656 2011/12/20 00:06:53 marka Exp $ */
|
||||||
|
|
||||||
/*! \file */
|
/*! \file */
|
||||||
|
|
||||||
@@ -14049,8 +14049,9 @@ zone_saveunique(dns_zone_t *zone, const char *path, const char *templat) {
|
|||||||
if (result != ISC_R_SUCCESS)
|
if (result != ISC_R_SUCCESS)
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
|
||||||
dns_zone_log(zone, ISC_LOG_WARNING, "saved '%s' as '%s'",
|
dns_zone_log(zone, ISC_LOG_WARNING, "unable to load from '%'; "
|
||||||
path, buf);
|
"renaming file to '%s' for failure analysis and "
|
||||||
|
"retransferring.", path, buf);
|
||||||
|
|
||||||
cleanup:
|
cleanup:
|
||||||
isc_mem_put(zone->mctx, buf, buflen);
|
isc_mem_put(zone->mctx, buf, buflen);
|
||||||
|
Reference in New Issue
Block a user