From bc88b2cb06a1663210de5f517a99687713ec91c3 Mon Sep 17 00:00:00 2001 From: Florian Westphal Date: Sat, 17 Oct 2009 14:31:27 +0200 Subject: [PATCH] configtest: print ssl config options even when unset Print "SSLOptionVar =" instead of omitting the option when running --configtest with ssl enabled. This better matches the behaviour of other options, e.g. ChrootDir. --- src/ngircd/conf.c | 40 ++++++++++++++++++++++------------------ 1 file changed, 22 insertions(+), 18 deletions(-) diff --git a/src/ngircd/conf.c b/src/ngircd/conf.c index c728d55f..2b592b16 100644 --- a/src/ngircd/conf.c +++ b/src/ngircd/conf.c @@ -96,38 +96,42 @@ ConfSSL_Init(void) } static bool -can_open(const char *name, const char *file) +ssl_print_configvar(const char *name, const char *file) { - FILE *fp = fopen(file, "r"); + FILE *fp; + + if (!file) { + printf(" %s =\n", name); + return true; + } + + fp = fopen(file, "r"); if (fp) fclose(fp); else fprintf(stderr, "ERROR: %s \"%s\": %s\n", name, file, strerror(errno)); + + printf(" %s = %s\n", name, file); return fp != NULL; } static bool ConfSSL_Puts(void) { - bool ret = true; + bool ret; + + ret = ssl_print_configvar("SSLKeyFile", Conf_SSLOptions.KeyFile); + + if (!ssl_print_configvar("SSLCertFile", Conf_SSLOptions.CertFile)) + ret = false; + + if (!ssl_print_configvar("SSLDHFile", Conf_SSLOptions.DHFile)) + ret = false; - if (Conf_SSLOptions.KeyFile) { - printf( " SSLKeyFile = %s\n", Conf_SSLOptions.KeyFile); - ret = can_open("SSLKeyFile", Conf_SSLOptions.KeyFile); - } - if (Conf_SSLOptions.CertFile) { - printf( " SSLCertFile = %s\n", Conf_SSLOptions.CertFile); - if (!can_open("SSLCertFile", Conf_SSLOptions.CertFile)) - ret = false; - } - if (Conf_SSLOptions.DHFile) { - printf( " SSLDHFile = %s\n", Conf_SSLOptions.DHFile); - if (!can_open("SSLDHFile", Conf_SSLOptions.DHFile)) - ret = false; - } if (array_bytes(&Conf_SSLOptions.KeyFilePassword)) - puts(" SSLKeyFilePassword = " ); + puts(" SSLKeyFilePassword = "); + array_free_wipe(&Conf_SSLOptions.KeyFilePassword); return ret; -- 2.39.2