diff --git a/bin/named/server.c b/bin/named/server.c index 20111acfa7..f1d6abeebb 100644 --- a/bin/named/server.c +++ b/bin/named/server.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: server.c,v 1.368 2002/01/22 22:05:48 bwelling Exp $ */ +/* $Id: server.c,v 1.369 2002/01/24 09:58:39 bwelling Exp $ */ #include @@ -2868,7 +2868,10 @@ ns_server_freeze(ns_server_t *server, isc_boolean_t freeze, char *args) { } if (freeze) { - result = dns_zone_flush(zone); + if (dns_zone_getupdatedisabled(zone)) + result = DNS_R_FROZEN; + if (result == ISC_R_SUCCESS) + result = dns_zone_flush(zone); if (result == ISC_R_SUCCESS) { journal = dns_zone_getjournal(zone); if (journal != NULL) diff --git a/lib/dns/include/dns/result.h b/lib/dns/include/dns/result.h index 72bcdadf33..253e249ab2 100644 --- a/lib/dns/include/dns/result.h +++ b/lib/dns/include/dns/result.h @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: result.h,v 1.84 2001/12/11 20:37:16 marka Exp $ */ +/* $Id: result.h,v 1.85 2002/01/24 09:58:42 bwelling Exp $ */ #ifndef DNS_RESULT_H #define DNS_RESULT_H 1 @@ -117,8 +117,9 @@ #define DNS_R_NOTAUTHORITATIVE (ISC_RESULTCLASS_DNS + 78) #define DNS_R_NOVALIDKEY (ISC_RESULTCLASS_DNS + 79) #define DNS_R_OBSOLETE (ISC_RESULTCLASS_DNS + 80) +#define DNS_R_FROZEN (ISC_RESULTCLASS_DNS + 81) -#define DNS_R_NRESULTS 81 /* Number of results */ +#define DNS_R_NRESULTS 82 /* Number of results */ /* * DNS wire format rcodes. diff --git a/lib/dns/result.c b/lib/dns/result.c index 17ec7450c1..47882c2c53 100644 --- a/lib/dns/result.c +++ b/lib/dns/result.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: result.c,v 1.93 2001/12/11 20:37:13 marka Exp $ */ +/* $Id: result.c,v 1.94 2002/01/24 09:58:40 bwelling Exp $ */ #include @@ -122,7 +122,8 @@ static const char *text[DNS_R_NRESULTS] = { "not authoritative", /* 78 DNS_R_NOTAUTHORITATIVE */ "no valid KEY", /* 79 DNS_R_NOVALIDKEY */ - "obsolete" /* 80 DNS_R_OBSOLETE */ + "obsolete", /* 80 DNS_R_OBSOLETE */ + "already frozen" /* 81 DNS_R_FROZEN */ }; static const char *rcode_text[DNS_R_NRCODERESULTS] = {