Bind 9.9.3 configuration message: missing 'file' entry
Spain, Dr. Jeffry A.
spainj at countryday.net
Sun Jun 2 14:27:25 UTC 2013
For bind 9.9.3 build on Ubuntu 12.04LTS x64, I see log messages, for example, "/etc/bind/named.conf.local:4: zone 'jaspain.biz': missing 'file' entry" for each slave zone configured for inline signing. The file clause is, in fact, present in the configuration file, for example:
zone "jaspain.biz" {
type slave;
file "/var/cache/bind/jaspain.biz.db";
key-directory "/var/lib/bind/jaspain.biz";
auto-dnssec maintain;
inline-signing yes;
masters { stealthMasters; };
notify explicit;
also-notify { publicSlaves; };
allow-transfer { localhost; transferees; };
};
The message does not occur for a similar slave zone that does not have key-directory, auto-dnssec, or inline-signing configured. The bind9 service appears to be functioning normally despite this log message.
The message originates from the code in /lib/bind9/check.c starting in line 1798.
isc_result_t res1;
obj = NULL;
tresult = cfg_map_get(zoptions, "file", &obj);
obj = NULL;
res1 = cfg_map_get(zoptions, "inline-signing", &obj);
if ((tresult != ISC_R_SUCCESS &&
(ztype == MASTERZONE || ztype == HINTZONE)) ||
(ztype == SLAVEZONE && res1 == ISC_R_SUCCESS)) {
cfg_obj_log(zconfig, logctx, ISC_LOG_ERROR,
"zone '%s': missing 'file' entry",
znamestr);
result = tresult;
}
Based on the code comments starting at line 1785, is the conditional expression of the "if" statement incorrectly parenthesized? Should it be as follows?
if (tresult != ISC_R_SUCCESS &&
(ztype == MASTERZONE || ztype == HINTZONE ||
(ztype == SLAVEZONE && res1 == ISC_R_SUCCESS))) {
Thanks. Jeff.
Jeffry A. Spain, Network Administrator
Cincinnati Country Day School
More information about the bind-users
mailing list