diff --git a/CHANGES b/CHANGES index ff00f95543..fe6a32c8e9 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +1164. [bug] Empty masters clauses in slave / stub zones were not + handled gracefully. [RT #2262] + 1163. [func] isc_time_formattimestamp() now includes the year. 1162. [bug] The allow-notify option was not accepted in slave diff --git a/lib/bind9/check.c b/lib/bind9/check.c index a9a4fd1320..1483f900c5 100644 --- a/lib/bind9/check.c +++ b/lib/bind9/check.c @@ -15,7 +15,7 @@ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ -/* $Id: check.c,v 1.11 2001/12/13 06:20:40 bwelling Exp $ */ +/* $Id: check.c,v 1.12 2001/12/17 22:56:58 marka Exp $ */ #include @@ -120,6 +120,7 @@ check_zoneconf(cfg_obj_t *zconfig, isc_symtab_t *symtab, unsigned int ztype; cfg_obj_t *zoptions; cfg_obj_t *obj = NULL; + cfg_obj_t *addrlist = NULL; isc_symvalue_t symvalue; isc_result_t result = ISC_R_SUCCESS; isc_result_t tresult; @@ -263,6 +264,13 @@ check_zoneconf(cfg_obj_t *zconfig, isc_symtab_t *symtab, zname); result = ISC_R_FAILURE; } + addrlist = cfg_tuple_get(obj, "addresses"); + if (cfg_list_first(addrlist) == NULL) { + cfg_obj_log(zoptions, logctx, ISC_LOG_ERROR, + "zone '%s': empty 'masters' entry", + zname); + result = ISC_R_FAILURE; + } } /*