The config checker checks for syntax and other errors in the unbound.conf file, and can be used to check for errors before the server is started or sigHUPped. More...
#include "config.h"
#include <ctype.h>
#include "util/log.h"
#include "util/config_file.h"
#include "util/module.h"
#include "util/net_help.h"
#include "util/regional.h"
#include "iterator/iterator.h"
#include "iterator/iter_fwd.h"
#include "iterator/iter_hints.h"
#include "validator/validator.h"
#include "services/localzone.h"
#include "services/listen_dnsport.h"
#include "services/view.h"
#include "services/authzone.h"
#include "respip/respip.h"
#include "sldns/sbuffer.h"
#include "sldns/str2wire.h"
Functions | |
static void | usage (void) |
Give checkconf usage, and exit (1). | |
static void | print_option (struct config_file *cfg, const char *opt, int final) |
Print given option to stdout. More... | |
static void | check_mod (struct config_file *cfg, struct module_func_block *fb) |
check if module works with config | |
static int | str_addr_is_localhost (const char *a) |
true if addr is a localhost address, 127.0.0.1 or ::1 (with maybe "@port" after it) | |
static void | donotquerylocalhostcheck (struct config_file *cfg) |
check do-not-query-localhost | |
static void | localzonechecks (struct config_file *cfg) |
check localzones | |
static void | acl_view_tag_checks (struct config_file *cfg, struct views *views) |
checks for acl and views | |
static void | view_and_respipchecks (struct config_file *cfg) |
check view and response-ip configuration | |
static void | warn_hosts (const char *typ, struct config_stub *list) |
emit warnings for IP in hosts | |
static void | interfacechecks (struct config_file *cfg) |
check interface strings | |
static void | ifautomaticportschecks (char *ifautomaticports) |
check interface-automatic-ports | |
static void | aclchecks (struct config_file *cfg) |
check acl ips | |
static void | tcpconnlimitchecks (struct config_file *cfg) |
check tcp connection limit ips | |
static int | is_file (const char *fname) |
true if fname is a file | |
static int | is_dir (const char *fname) |
true if fname is a directory | |
static char * | basedir (char *fname) |
get base dir of a fname | |
static void | check_chroot_string (const char *desc, char **ss, const char *chrootdir, struct config_file *cfg) |
check chroot for a file string | |
static void | check_chroot_filelist (const char *desc, struct config_strlist *list, const char *chrootdir, struct config_file *cfg) |
check file list, every file must be inside the chroot location | |
static void | check_chroot_filelist_wild (const char *desc, struct config_strlist *list, const char *chrootdir, struct config_file *cfg) |
check file list, with wildcard processing | |
static void | check_modules_exist (const char *module_conf) |
check that the modules exist, are compiled in | |
static void | morechecks (struct config_file *cfg) |
check configuration for errors | |
static void | check_fwd (struct config_file *cfg) |
check forwards | |
static void | check_hints (struct config_file *cfg) |
check hints | |
static void | check_auth (struct config_file *cfg) |
check auth zones | |
static void | checkconf (const char *cfgfile, const char *opt, int final, int quiet) |
check config file | |
int | main (int argc, char *argv[]) |
Main routine for checkconf. | |
Variables | |
int | optind |
getopt global, in case header files fail to declare it. | |
char * | optarg |
getopt global, in case header files fail to declare it. | |
The config checker checks for syntax and other errors in the unbound.conf file, and can be used to check for errors before the server is started or sigHUPped.
Exit status 1 means an error.
|
static |
Print given option to stdout.
cfg | config |
opt | option name without trailing :. This is different from config_set_option. |
final | if final pathname with chroot applied has to be printed. |
References fname_after_chroot(), and config_file::pidfile.