#include <config.h>
#include <stdlib.h>
#include <isc/base64.h>
#include <isc/buffer.h>
#include <isc/file.h>
#include <isc/hex.h>
#include <isc/log.h>
#include <isc/mem.h>
#include <isc/netaddr.h>
#include <isc/parseint.h>
#include <isc/platform.h>
#include <isc/region.h>
#include <isc/result.h>
#include <isc/sockaddr.h>
#include <isc/string.h>
#include <isc/symtab.h>
#include <isc/util.h>
#include <dns/acl.h>
#include <dns/fixedname.h>
#include <dns/rdataclass.h>
#include <dns/rdatatype.h>
#include <dns/secalg.h>
#include <dst/dst.h>
#include <isccfg/aclconf.h>
#include <isccfg/cfg.h>
#include <bind9/check.h>
Go to the source code of this file.
Definition in file check.c.
#define MASTERZONE 1 |
#define SLAVEZONE 2 |
#define STUBZONE 4 |
#define HINTZONE 8 |
#define FORWARDZONE 16 |
#define DELEGATIONZONE 32 |
#define STATICSTUBZONE 64 |
#define REDIRECTZONE 128 |
#define STREDIRECTZONE 0 |
#define CHECKACL 512 |
typedef struct keyalgorithms algorithmtable |
enum optlevel_t |
static isc_result_t fileexist | ( | const cfg_obj_t * | obj, | |
isc_symtab_t * | symtab, | |||
isc_boolean_t | writeable, | |||
isc_log_t * | logctxlogc | |||
) | [static] |
Definition at line 2265 of file check.c.
References isc_symvalue::as_cpointer, cfg_obj_asstring(), cfg_obj_file(), cfg_obj_line(), cfg_obj_log(), ISC_LOG_ERROR, ISC_R_EXISTS, ISC_R_SUCCESS, isc_symexists_reject, isc_symtab_define(), and isc_symtab_lookup().
Referenced by check_zoneconf().
static void freekey | ( | char * | key, | |
unsigned int | type, | |||
isc_symvalue_t | value, | |||
void * | userarg | |||
) | [static] |
Definition at line 70 of file check.c.
References isc_mem_free, and UNUSED.
Referenced by add(), check_options(), and check_viewconf().
static isc_result_t check_orderent | ( | const cfg_obj_t * | ent, | |
isc_log_t * | logctx | |||
) | [static] |
Definition at line 77 of file check.c.
References isc_textregion::base, cfg_obj_asstring(), cfg_obj_isstring(), cfg_obj_log(), cfg_tuple_get(), DE_CONST, dns_fixedname_init, dns_fixedname_name, dns_name_fromtext(), dns_rdataclass_fromtext(), dns_rdatatype_fromtext(), dns_rootname, fixed, isc_buffer_add, isc_buffer_constinit, ISC_LOG_ERROR, ISC_LOG_WARNING, ISC_R_FAILURE, ISC_R_SUCCESS, isc_textregion::length, r, rdclass, and str.
Referenced by check_order().
static isc_result_t check_order | ( | const cfg_obj_t * | options, | |
isc_log_t * | logctx | |||
) | [static] |
Definition at line 160 of file check.c.
References cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_get(), check_orderent(), and ISC_R_SUCCESS.
Referenced by bind9_check_namedconf(), and check_viewconf().
static isc_result_t check_dual_stack | ( | const cfg_obj_t * | options, | |
isc_log_t * | logctx | |||
) | [static] |
Definition at line 181 of file check.c.
References buffer, cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_get(), cfg_obj_asstring(), cfg_obj_asuint32(), cfg_obj_issockaddr(), cfg_obj_isuint32(), cfg_obj_log(), cfg_tuple_get(), dns_fixedname_init, dns_fixedname_name, dns_name_fromtext(), dns_rootname, fixed, isc_buffer_add, isc_buffer_constinit, ISC_LOG_ERROR, ISC_R_FAILURE, ISC_R_SUCCESS, ISC_UINT16_MAX, name, and str.
Referenced by bind9_check_namedconf(), and check_viewconf().
static isc_result_t check_forward | ( | const cfg_obj_t * | options, | |
const cfg_obj_t * | global, | |||
isc_log_t * | logctx | |||
) | [static] |
Definition at line 241 of file check.c.
References cfg_map_get(), cfg_obj_file(), cfg_obj_line(), cfg_obj_log(), ISC_LOG_ERROR, ISC_R_FAILURE, and ISC_R_SUCCESS.
Referenced by check_viewconf(), and check_zoneconf().
static isc_result_t disabled_algorithms | ( | const cfg_obj_t * | disabled, | |
isc_log_t * | logctx | |||
) | [static] |
Definition at line 268 of file check.c.
References isc_textregion::base, cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_obj_asstring(), cfg_obj_log(), cfg_tuple_get(), DE_CONST, dns_fixedname_init, dns_fixedname_name, dns_name_fromtext(), dns_rootname, dns_secalg_fromtext(), fixed, isc_buffer_add, isc_buffer_constinit, ISC_LOG_ERROR, ISC_R_SUCCESS, isc_textregion::length, name, r, and str.
Referenced by check_options().
static isc_result_t disabled_ds_digests | ( | const cfg_obj_t * | disabled, | |
isc_log_t * | logctx | |||
) | [static] |
Definition at line 315 of file check.c.
References isc_textregion::base, cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_obj_asstring(), cfg_obj_log(), cfg_tuple_get(), DE_CONST, digest, dns_dsdigest_fromtext(), dns_fixedname_init, dns_fixedname_name, dns_name_fromtext(), dns_rootname, fixed, isc_buffer_add, isc_buffer_constinit, ISC_LOG_ERROR, ISC_R_SUCCESS, isc_textregion::length, name, r, and str.
Referenced by check_options().
static isc_result_t nameexist | ( | const cfg_obj_t * | obj, | |
const char * | name, | |||
int | value, | |||
isc_symtab_t * | symtab, | |||
const char * | fmt, | |||
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 363 of file check.c.
References isc_symvalue::as_cpointer, cfg_obj_file(), cfg_obj_line(), cfg_obj_log(), ISC_LOG_ERROR, isc_mem_free, isc_mem_strdup, ISC_R_EXISTS, ISC_R_NOMEMORY, ISC_R_SUCCESS, isc_symexists_reject, isc_symtab_define(), isc_symtab_lookup(), key, and RUNTIME_CHECK.
Referenced by check_options(), check_zoneconf(), and mustbesecure().
static isc_result_t mustbesecure | ( | const cfg_obj_t * | secure, | |
isc_symtab_t * | symtab, | |||
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 397 of file check.c.
References cfg_obj_asstring(), cfg_obj_log(), cfg_tuple_get(), dns_fixedname_init, dns_fixedname_name, dns_name_format(), DNS_NAME_FORMATSIZE, dns_name_fromtext(), dns_rootname, fixed, isc_buffer_add, isc_buffer_constinit, ISC_LOG_ERROR, ISC_R_SUCCESS, name, namebuf, nameexist(), and str.
Referenced by check_options(), and configure_view().
static isc_result_t checkacl | ( | const char * | aclname, | |
cfg_aclconfctx_t * | actx, | |||
const cfg_obj_t * | zconfig, | |||
const cfg_obj_t * | voptions, | |||
const cfg_obj_t * | config, | |||
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 429 of file check.c.
References cfg_acl_fromconfig(), cfg_map_get(), cfg_tuple_get(), dns_acl_detach(), and ISC_R_SUCCESS.
Referenced by check_viewacls(), and check_zoneconf().
static isc_result_t check_viewacls | ( | cfg_aclconfctx_t * | actx, | |
const cfg_obj_t * | voptions, | |||
const cfg_obj_t * | config, | |||
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 460 of file check.c.
References checkacl(), and ISC_R_SUCCESS.
Referenced by check_viewconf().
static isc_result_t check_dns64 | ( | cfg_aclconfctx_t * | actx, | |
const cfg_obj_t * | voptions, | |||
const cfg_obj_t * | config, | |||
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 483 of file check.c.
References AF_INET6, cfg_acl_fromconfig(), cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_get(), cfg_map_getname(), cfg_obj_asnetprefix(), cfg_obj_assockaddr(), cfg_obj_log(), dns_acl_detach(), isc_netaddr::family, isc_netaddr::in6, ISC_LOG_ERROR, isc_netaddr_format(), ISC_NETADDR_FORMATSIZE, isc_netaddr_fromsockaddr(), ISC_R_FAILURE, ISC_R_SUCCESS, map, isc_netaddr::type, and zeros.
Referenced by check_viewconf().
static isc_result_t check_recursionacls | ( | cfg_aclconfctx_t * | actx, | |
const cfg_obj_t * | voptions, | |||
const char * | viewname, | |||
const cfg_obj_t * | config, | |||
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 585 of file check.c.
References cfg_acl_fromconfig(), cfg_map_get(), cfg_obj_asboolean(), cfg_obj_log(), dns_acl_detach(), dns_acl_isnone(), ISC_FALSE, ISC_LOG_WARNING, ISC_R_SUCCESS, and ISC_TRUE.
Referenced by check_viewconf().
static isc_result_t check_filteraaaa | ( | cfg_aclconfctx_t * | actx, | |
const cfg_obj_t * | voptions, | |||
const char * | viewname, | |||
const cfg_obj_t * | config, | |||
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 656 of file check.c.
References cfg_acl_fromconfig(), cfg_map_get(), cfg_obj_asboolean(), cfg_obj_isboolean(), cfg_obj_log(), dns_aaaa_break_dnssec, dns_aaaa_filter, dns_aaaa_ok, dns_acl_detach(), dns_acl_isnone(), ISC_LOG_WARNING, ISC_R_FAILURE, and ISC_R_SUCCESS.
Referenced by check_viewconf().
static isc_result_t check_dscp | ( | const cfg_obj_t * | options, | |
isc_log_t * | logctx | |||
) | [static] |
Definition at line 765 of file check.c.
References cfg_map_get(), cfg_obj_asuint32(), cfg_obj_log(), ISC_LOG_ERROR, ISC_R_FAILURE, and ISC_R_SUCCESS.
Referenced by check_options().
static isc_result_t check_name | ( | const char * | str | ) | [static] |
Definition at line 787 of file check.c.
References dns_fixedname_init, dns_fixedname_name, dns_name_fromstring(), and fixed.
Referenced by check_options().
static isc_result_t check_options | ( | const cfg_obj_t * | options, | |
isc_log_t * | logctx, | |||
isc_mem_t * | mctx, | |||
optlevel_t | optlevel | |||
) | [static] |
Definition at line 795 of file check.c.
References arg, cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_get(), cfg_obj_asstring(), cfg_obj_asuint32(), cfg_obj_isstring(), cfg_obj_isvoid(), cfg_obj_log(), cfg_tuple_get(), check_dscp(), check_name(), disabled_algorithms(), disabled_ds_digests(), dlv, dns_fixedname_init, dns_fixedname_name, dns_name_equal(), dns_name_fromstring(), dns_rootname, fixed, freekey(), ISC_AES128_KEYLENGTH, isc_buffer_init, isc_buffer_usedlength, ISC_FALSE, isc_hex_decodestring(), ISC_LOG_ERROR, ISC_LOG_WARNING, ISC_R_FAILURE, ISC_R_NOSPACE, ISC_R_RANGE, ISC_R_SUCCESS, ISC_SHA1_DIGESTLENGTH, ISC_SHA256_DIGESTLENGTH, isc_symtab_create(), isc_symtab_destroy(), ISC_UINT32_MAX, mustbesecure(), name, nameexist(), optlevel_zone, secret, str, and symtab.
Referenced by bind9_check_namedconf(), check_viewconf(), and check_zoneconf().
static isc_result_t get_masters_def | ( | const cfg_obj_t * | cctx, | |
const char * | name, | |||
const cfg_obj_t ** | ret | |||
) | [static] |
Definition at line 1235 of file check.c.
References cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_get(), cfg_obj_asstring(), cfg_tuple_get(), ISC_R_NOTFOUND, and ISC_R_SUCCESS.
Referenced by ns_config_getipandkeylist(), and validate_masters().
static isc_result_t validate_masters | ( | const cfg_obj_t * | obj, | |
const cfg_obj_t * | config, | |||
isc_uint32_t * | countp, | |||
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 1261 of file check.c.
References isc_symvalue::as_cpointer, cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_obj_asstring(), cfg_obj_issockaddr(), cfg_obj_isvoid(), cfg_obj_log(), cfg_tuple_get(), cleanup(), DE_CONST, get_masters_def(), ISC_FALSE, ISC_LOG_ERROR, isc_mem_get, isc_mem_put, ISC_R_EXISTS, ISC_R_FAILURE, ISC_R_SUCCESS, isc_symexists_reject, isc_symtab_create(), isc_symtab_define(), isc_symtab_destroy(), key, REQUIRE, and symtab.
Referenced by check_zoneconf().
static isc_result_t check_update_policy | ( | const cfg_obj_t * | policy, | |
isc_log_t * | logctx | |||
) | [static] |
Definition at line 1364 of file check.c.
References isc_textregion::base, cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_obj_asstring(), cfg_obj_isstring(), cfg_obj_log(), cfg_tuple_get(), DE_CONST, dns_fixedname_init, dns_fixedname_name, dns_name_fromtext(), dns_name_iswildcard(), dns_rdatatype_fromtext(), dns_rootname, fixed, isc_buffer_add, isc_buffer_constinit, ISC_LOG_ERROR, ISC_R_FAILURE, ISC_R_SUCCESS, isc_textregion::length, r, and str.
Referenced by check_zoneconf().
static isc_result_t check_nonzero | ( | const cfg_obj_t * | options, | |
isc_log_t * | logctx | |||
) | [static] |
Definition at line 1464 of file check.c.
References cfg_map_get(), cfg_obj_asuint32(), cfg_obj_log(), ISC_LOG_ERROR, ISC_R_FAILURE, and ISC_R_SUCCESS.
Referenced by check_viewconf(), and check_zoneconf().
static isc_result_t check_zoneconf | ( | const cfg_obj_t * | zconfig, | |
const cfg_obj_t * | voptions, | |||
const cfg_obj_t * | config, | |||
isc_symtab_t * | symtab, | |||
isc_symtab_t * | files, | |||
dns_rdataclass_t | defclass, | |||
cfg_aclconfctx_t * | actx, | |||
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 1487 of file check.c.
References allowed(), arg, isc_textregion::base, cfg_acl_fromconfig(), cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_count(), cfg_map_get(), cfg_obj_asboolean(), cfg_obj_assockaddr(), cfg_obj_asstring(), cfg_obj_asuint32(), cfg_obj_isboolean(), cfg_obj_isstring(), cfg_obj_log(), cfg_tuple_get(), check_forward(), check_nonzero(), check_options(), check_update_policy(), checkacl(), CHECKACL, DE_CONST, DELEGATIONZONE, dialup(), dns_acl_detach(), dns_acl_isnone(), dns_fixedname_init, dns_fixedname_name, dns_masterformat_map, dns_masterformat_raw, dns_masterformat_text, DNS_NAME_DOWNCASE, dns_name_equal(), dns_name_format(), DNS_NAME_FORMATSIZE, dns_name_fromtext(), dns_name_issubdomain(), dns_rdataclass_fromtext(), dns_rootname, fileexist(), FORWARDZONE, HINTZONE, INSIST, isc_buffer_add, isc_buffer_constinit, ISC_FALSE, isc_file_isdirectory(), ISC_LOG_ERROR, ISC_LOG_WARNING, isc_netaddr_fromsockaddr(), isc_netaddr_getzone(), ISC_R_FAILURE, ISC_R_FILENOTFOUND, ISC_R_INVALIDFILE, ISC_R_NOTFOUND, ISC_R_SUCCESS, isc_result_totext(), isc_sockaddr_getport(), ISC_TRUE, isc_textregion::length, MASTERZONE, name, namebuf, nameexist(), optlevel_zone, r, REDIRECTZONE, root, SLAVEZONE, STATICSTUBZONE, str, STREDIRECTZONE, STUBZONE, validate_masters(), and zname.
Referenced by check_viewconf().
isc_result_t bind9_check_key | ( | const cfg_obj_t * | key, | |
isc_log_t * | logctx | |||
) |
Same as bind9_check_namedconf(), but for a single 'key' statement.
Definition at line 2173 of file check.c.
References algorithm, algorithms, cfg_map_get(), cfg_map_getname(), cfg_obj_asstring(), cfg_obj_log(), digestbits, isc_base64_decodestring(), isc_buffer_init, ISC_LOG_ERROR, ISC_LOG_WARNING, isc_parse_uint16(), ISC_R_FAILURE, ISC_R_NOTFOUND, ISC_R_RANGE, ISC_R_SUCCESS, isc_result_totext(), name, and keyalgorithms::name.
Referenced by check_keylist(), and get_rndckey().
static isc_result_t check_keylist | ( | const cfg_obj_t * | keys, | |
isc_symtab_t * | symtab, | |||
isc_mem_t * | mctx, | |||
isc_log_t * | logctx | |||
) | [static] |
Definition at line 2312 of file check.c.
References isc_symvalue::as_cpointer, bind9_check_key(), cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_getname(), cfg_obj_asstring(), cfg_obj_file(), cfg_obj_line(), cfg_obj_log(), dns_fixedname_init, dns_fixedname_name, dns_name_format(), DNS_NAME_FORMATSIZE, dns_name_fromtext(), dns_rootname, isc_buffer_add, isc_buffer_constinit, ISC_LOG_ERROR, isc_mem_free, isc_mem_strdup, ISC_R_EXISTS, ISC_R_NOMEMORY, ISC_R_SUCCESS, isc_symexists_reject, isc_symtab_define(), isc_symtab_lookup(), key, name, namebuf, and RUNTIME_CHECK.
Referenced by check_viewconf().
static isc_boolean_t rndckey_exists | ( | const cfg_obj_t * | keylist, | |
const char * | keyname | |||
) | [static] |
Definition at line 2396 of file check.c.
References cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_getname(), cfg_obj_asstring(), ISC_FALSE, ISC_TRUE, and str.
Referenced by bind9_check_controlskeys().
static isc_result_t check_servers | ( | const cfg_obj_t * | config, | |
const cfg_obj_t * | voptions, | |||
isc_symtab_t * | symtab, | |||
isc_log_t * | logctx | |||
) | [static] |
Definition at line 2417 of file check.c.
References cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_get(), cfg_map_getname(), cfg_obj_asnetprefix(), cfg_obj_asstring(), cfg_obj_file(), cfg_obj_line(), cfg_obj_log(), dns_fixedname_init, dns_fixedname_name, dns_name_format(), DNS_NAME_FORMATSIZE, dns_name_fromtext(), dns_rootname, isc_netaddr::family, INSIST, isc_buffer_add, isc_buffer_constinit, ISC_LOG_ERROR, isc_netaddr_equal(), isc_netaddr_format(), ISC_NETADDR_FORMATSIZE, isc_netaddr_prefixok(), ISC_R_FAILURE, ISC_R_SUCCESS, isc_symtab_lookup(), namebuf, servers, sources, v1, v2, and v4.
Referenced by check_viewconf().
static isc_result_t check_trusted_key | ( | const cfg_obj_t * | key, | |
isc_boolean_t | managed, | |||
isc_log_t * | logctx | |||
) | [static] |
Definition at line 2527 of file check.c.
References isc_region::base, cfg_obj_asstring(), cfg_obj_asuint32(), cfg_obj_log(), cfg_tuple_get(), dns_fixedname_init, dns_fixedname_name, dns_name_fromtext(), dns_rootname, DST_ALG_RSAMD5, DST_ALG_RSASHA1, isc_base64_decodestring(), isc_buffer_add, isc_buffer_constinit, isc_buffer_init, isc_buffer_usedregion, ISC_LOG_ERROR, ISC_LOG_WARNING, ISC_R_FAILURE, ISC_R_SUCCESS, isc_result_totext(), keystr, isc_region::length, and r.
Referenced by check_viewconf().
static isc_result_t check_viewconf | ( | const cfg_obj_t * | config, | |
const cfg_obj_t * | voptions, | |||
const char * | viewname, | |||
dns_rdataclass_t | vclass, | |||
isc_symtab_t * | files, | |||
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 2610 of file check.c.
References cfg_aclconfctx_create(), cfg_aclconfctx_detach(), cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_get(), cfg_obj_asboolean(), cfg_obj_isboolean(), cfg_obj_log(), check_dns64(), check_dual_stack(), check_filteraaaa(), check_forward(), check_keylist(), check_nonzero(), check_options(), check_order(), check_recursionacls(), check_servers(), check_trusted_key(), check_viewacls(), check_zoneconf(), cleanup(), freekey(), ISC_FALSE, ISC_LOG_WARNING, ISC_R_EXISTS, ISC_R_FAILURE, ISC_R_NOMEMORY, ISC_R_SUCCESS, isc_symtab_create(), isc_symtab_destroy(), ISC_TRUE, keylist, optlevel_config, optlevel_view, symtab, and zone.
Referenced by bind9_check_namedconf().
static isc_result_t bind9_check_logging | ( | const cfg_obj_t * | config, | |
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 2869 of file check.c.
References isc_symvalue::as_cpointer, categories, cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_get(), cfg_map_getname(), cfg_obj_asstring(), cfg_obj_log(), cfg_tuple_get(), default_channels, ISC_FALSE, isc_log_categorybyname(), ISC_LOG_ERROR, ISC_R_FAILURE, ISC_R_SUCCESS, isc_symexists_replace, isc_symtab_create(), isc_symtab_define(), isc_symtab_destroy(), isc_symtab_lookup(), and symtab.
Referenced by bind9_check_namedconf().
static isc_result_t bind9_check_controlskeys | ( | const cfg_obj_t * | control, | |
const cfg_obj_t * | keylist, | |||
isc_log_t * | logctx | |||
) | [static] |
Definition at line 2977 of file check.c.
References cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_obj_asstring(), cfg_obj_isvoid(), cfg_obj_log(), cfg_tuple_get(), ISC_LOG_ERROR, ISC_R_NOTFOUND, ISC_R_SUCCESS, key, and rndckey_exists().
Referenced by bind9_check_controls().
static isc_result_t bind9_check_controls | ( | const cfg_obj_t * | config, | |
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) | [static] |
Definition at line 3007 of file check.c.
References bind9_check_controlskeys(), cfg_acl_fromconfig(), cfg_aclconfctx_create(), cfg_aclconfctx_detach(), cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_get(), cfg_obj_asstring(), cfg_obj_asuint32(), cfg_obj_log(), cfg_tuple_get(), dns_acl_detach(), ISC_LOG_ERROR, ISC_LOG_WARNING, ISC_R_NOSPACE, ISC_R_SUCCESS, isc_sockaddr_frompath(), and keylist.
Referenced by bind9_check_namedconf().
isc_result_t bind9_check_namedconf | ( | const cfg_obj_t * | config, | |
isc_log_t * | logctx, | |||
isc_mem_t * | mctx | |||
) |
Check the syntactic validity of a configuration parse tree generated from a named.conf file.
Requires:
Definition at line 3104 of file check.c.
References isc_symvalue::as_cpointer, isc_textregion::base, bind9_check_controls(), bind9_check_logging(), cfg_list_first(), cfg_list_next(), cfg_listelt_value(), cfg_map_get(), cfg_obj_asstring(), cfg_obj_file(), cfg_obj_isstring(), cfg_obj_line(), cfg_obj_log(), cfg_tuple_get(), check_dual_stack(), check_options(), check_order(), check_viewconf(), DE_CONST, dns_rdataclass_fromtext(), ISC_FALSE, ISC_LOG_ERROR, ISC_R_EXISTS, ISC_R_FAILURE, ISC_R_SUCCESS, isc_symexists_reject, isc_symtab_create(), isc_symtab_define(), isc_symtab_destroy(), isc_symtab_lookup(), ISC_TRUE, key, isc_textregion::length, name, optlevel_options, r, RUNTIME_CHECK, and symtab.
Referenced by load_configuration(), and main().
const unsigned char zeros[16] [static] |
Definition at line 480 of file check.c.
Referenced by check_dns64(), dns_dns64_create(), ip2name(), and isc_netaddr_prefixok().
const char* v4 |
struct { ... } sources[] [static] |
Referenced by check_servers(), cleanup_entropy(), and setup_entropy().
const char* default_channels[] [static] |
Initial value:
{ "default_syslog", "default_stderr", "default_debug", "null", NULL }
Definition at line 2860 of file check.c.
Referenced by bind9_check_logging().