From 0fd109448ce43a6a53866614423463788c278ff6 Mon Sep 17 00:00:00 2001 From: fatbob313 Date: Thu, 20 Jan 2011 08:45:18 +0000 Subject: [PATCH 1/1] Make configuration file errors print the error via standard logging function. Clean up interface. --- src/conf.c | 8 +++----- src/conf.h | 2 +- src/main.c | 9 +++------ 3 files changed, 7 insertions(+), 12 deletions(-) diff --git a/src/conf.c b/src/conf.c index 185e508..72fd8f1 100644 --- a/src/conf.c +++ b/src/conf.c @@ -48,17 +48,15 @@ static config_t configuration; const char defaultconfig[] = DEFAULT_CONFIG; -int Conf_init(const char *conffile) +void Conf_init(const char *conffile) { config_init(&configuration); if (conffile == NULL) conffile = defaultconfig; if (config_read_file(&configuration, conffile) != CONFIG_TRUE) { - fprintf(stderr, "Error in config file %s: %s at line %d\n", conffile, - config_error_text(&configuration), config_error_line(&configuration)); - exit(1); + Log_fatal("Error in config file %s line %d: %s", conffile, + config_error_line(&configuration), config_error_text(&configuration)); } - return 0; } void Conf_deinit() diff --git a/src/conf.h b/src/conf.h index 7967716..1b9b21e 100644 --- a/src/conf.h +++ b/src/conf.h @@ -57,7 +57,7 @@ typedef struct { const char *destination; } conf_channel_link_t; -int Conf_init(const char *conffile); +void Conf_init(const char *conffile); void Conf_deinit(); const char *getStrConf(param_t param); diff --git a/src/main.c b/src/main.c index 8a0573a..7bd8a0b 100644 --- a/src/main.c +++ b/src/main.c @@ -190,11 +190,6 @@ int main(int argc, char **argv) } } - if (Conf_init(conffile) != 0) { - fprintf(stderr, "Configuration error\n"); - exit(1); - } - if (!nodaemon) { Log_init(false); daemonize(); @@ -203,7 +198,9 @@ int main(int argc, char **argv) } else Log_init(true); - + + Conf_init(conffile); + signal(SIGCHLD, SIG_IGN); /* ignore child */ signal(SIGTSTP, SIG_IGN); /* ignore tty signals */ signal(SIGTTOU, SIG_IGN); -- 2.30.2