Check that primary key names are syntactically valid
This commit is contained in:
15
bin/tests/system/checkconf/bad-primaries-key.conf
Normal file
15
bin/tests/system/checkconf/bad-primaries-key.conf
Normal file
@@ -0,0 +1,15 @@
|
||||
/*
|
||||
* Copyright (C) Internet Systems Consortium, Inc. ("ISC")
|
||||
*
|
||||
* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
*
|
||||
* See the COPYRIGHT file distributed with this work for additional
|
||||
* information regarding copyright ownership.
|
||||
*/
|
||||
|
||||
zone example {
|
||||
type secondary;
|
||||
primaries { 1.2.3.4 key a..b; };
|
||||
};
|
||||
@@ -2121,6 +2121,20 @@ resume:
|
||||
|
||||
if (cfg_obj_issockaddr(addr)) {
|
||||
count++;
|
||||
if (cfg_obj_isstring(key)) {
|
||||
const char *str = cfg_obj_asstring(key);
|
||||
dns_fixedname_t fname;
|
||||
dns_name_t *nm = dns_fixedname_initname(&fname);
|
||||
tresult = dns_name_fromstring(nm, str, 0, NULL);
|
||||
if (tresult != ISC_R_SUCCESS) {
|
||||
cfg_obj_log(key, logctx, ISC_LOG_ERROR,
|
||||
"'%s' is not a valid name",
|
||||
str);
|
||||
if (result == ISC_R_SUCCESS) {
|
||||
result = tresult;
|
||||
}
|
||||
}
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (!cfg_obj_isvoid(key)) {
|
||||
|
||||
Reference in New Issue
Block a user