Module: ngircd.git Branch: master Commit: bc88b2cb06a1663210de5f517a99687713ec91c3 URL: http://ngircd.barton.de/cgi-bin/gitweb.cgi?p=ngircd.git&a=commit;h=bc88b...
Author: Florian Westphal fw@strlen.de Date: Sat Oct 17 14:31:27 2009 +0200
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 files changed, 22 insertions(+), 18 deletions(-)
diff --git a/src/ngircd/conf.c b/src/ngircd/conf.c index c728d55..2b592b1 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 = <secret>" ); + puts(" SSLKeyFilePassword = <secret>"); + array_free_wipe(&Conf_SSLOptions.KeyFilePassword);
return ret;