From: Yorgos Thessalonikefs Date: Fri, 26 Apr 2024 12:50:39 +0000 (+0200) Subject: - Fix #876: [FR] can unbound-checkconf be silenced when configuration X-Git-Tag: release-1.20.0rc1~5 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=cd4a017e9650661b37af40fa860c2dccd050a29f;p=thirdparty%2Funbound.git - Fix #876: [FR] can unbound-checkconf be silenced when configuration is valid? --- diff --git a/doc/Changelog b/doc/Changelog index 4f10939b7..5af376f4a 100644 --- a/doc/Changelog +++ b/doc/Changelog @@ -6,6 +6,10 @@ the ecs reply expires. - Add unit tests for cachedb and subnet cache expired data. +26 April 2024: Yorgos + - Fix #876: [FR] can unbound-checkconf be silenced when configuration + is valid? + 25 April 2024: Wouter - Fix configure flto check error, by finding grep for it. - Merge #1041: Stub and Forward unshare. This has one structure diff --git a/smallapp/unbound-checkconf.c b/smallapp/unbound-checkconf.c index 8b45578fa..508b40fc0 100644 --- a/smallapp/unbound-checkconf.c +++ b/smallapp/unbound-checkconf.c @@ -88,6 +88,7 @@ usage(void) printf("file if omitted %s is used.\n", CONFIGFILE); printf("-o option print value of option to stdout.\n"); printf("-f output full pathname with chroot applied, eg. with -o pidfile.\n"); + printf("-q quiet (suppress output on success).\n"); printf("-h show this usage help.\n"); printf("Version %s\n", PACKAGE_VERSION); printf("BSD licensed, see LICENSE in source package for details.\n"); @@ -965,7 +966,7 @@ check_auth(struct config_file* cfg) /** check config file */ static void -checkconf(const char* cfgfile, const char* opt, int final) +checkconf(const char* cfgfile, const char* opt, int final, int quiet) { char oldwd[4096]; struct config_file* cfg = config_create(); @@ -998,7 +999,7 @@ checkconf(const char* cfgfile, const char* opt, int final) check_fwd(cfg); check_hints(cfg); check_auth(cfg); - printf("unbound-checkconf: no errors in %s\n", cfgfile); + if(!quiet) { printf("unbound-checkconf: no errors in %s\n", cfgfile); } config_delete(cfg); } @@ -1012,6 +1013,7 @@ int main(int argc, char* argv[]) { int c; int final = 0; + int quiet = 0; const char* f; const char* opt = NULL; const char* cfgfile = CONFIGFILE; @@ -1024,7 +1026,7 @@ int main(int argc, char* argv[]) cfgfile = CONFIGFILE; #endif /* USE_WINSOCK */ /* parse the options */ - while( (c=getopt(argc, argv, "fho:")) != -1) { + while( (c=getopt(argc, argv, "fhqo:")) != -1) { switch(c) { case 'f': final = 1; @@ -1032,6 +1034,9 @@ int main(int argc, char* argv[]) case 'o': opt = optarg; break; + case 'q': + quiet = 1; + break; case '?': case 'h': default: @@ -1045,7 +1050,7 @@ int main(int argc, char* argv[]) if(argc == 1) f = argv[0]; else f = cfgfile; - checkconf(f, opt, final); + checkconf(f, opt, final, quiet); checklock_stop(); return 0; }