On (19/11/13 13:10), Pavel Reichl wrote:
>More specific error message is logged using sss_log.
>From 623eb7f163ac3f28a06aed6965ffa4ecc9f47e5d Mon Sep 17 00:00:00 2001
>From: Pavel Reichl <pavel.reichl(a)redhat.com>
>Date: Tue, 19 Nov 2013 11:24:31 +0000
>Subject: [PATCH] monitor: Specific error message for missing sssd.conf
>
>Specific error message is logged for missing sssd.conf file using sss_log function.
>
>Resolves:
>https://fedorahosted.org/sssd/ticket/2156
>---
> src/confdb/confdb_setup.c | 3 +--
> src/monitor/monitor.c | 6 ++++++
> 2 files changed, 7 insertions(+), 2 deletions(-)
>
>diff --git a/src/confdb/confdb_setup.c b/src/confdb/confdb_setup.c
>index
b13553eaa560bb83ecf7a53b32ab116f38f7f480..0bb13d229987d42c14b81113f8898ad7522f4622 100644
>--- a/src/confdb/confdb_setup.c
>+++ b/src/confdb/confdb_setup.c
>@@ -155,8 +155,7 @@ int confdb_init_db(const char *config_file, struct confdb_ctx
*cdb)
> /* Open config file */
> ret = sss_ini_config_file_open(init_data, config_file);
> if (ret != EOK) {
>- DEBUG(SSSDBG_CRIT_FAILURE, ("Failed to open configuration
file.\n"));
It would be better to print debug message with higher level (SSSDBG_TRACE_FUNC)
instead of removing debug message.
Something like: "sss_ini_config_file_open failed: %s [%d], strerror(ret), ret
>- ret = EIO;
>+ ret = ENOENT;
sss_ini_config_file_open will return ENOENT if config_file does not exist.
It is not needed to overwrite error code. This is a reason why current error
message was confusing.
> goto done;
> }
>
>diff --git a/src/monitor/monitor.c b/src/monitor/monitor.c
>index
f8a02b8b8be083860a4ae342a27b1297613af996..e8d18fad3e16c9b111f85707180993019cc1399a 100644
>--- a/src/monitor/monitor.c
>+++ b/src/monitor/monitor.c
>@@ -2785,6 +2785,12 @@ int main(int argc, const char *argv[])
> ret = load_configuration(tmp_ctx, config_file, &monitor);
> if (ret != EOK) {
> switch (ret) {
>+ case ENOENT:
>+ DEBUG(SSSDBG_CRIT_FAILURE,
>+ ("Failed to open configuration file: %s.\n",
config_file));
>+ sss_log(SSS_LOG_ALERT,
>+ "Failed to open configuration file.\n");
ENOENT means "No such file or directory", Please add more specific error
message and syslog message (sss_log) should also contain information about path
to config_file
>+ break;
> case EPERM:
> case EACCES:
> DEBUG(SSSDBG_CRIT_FAILURE,
>--
>1.8.3.1
>
LS
_______________________________________________
sssd-devel mailing list
sssd-devel(a)lists.fedorahosted.org
https://lists.fedorahosted.org/mailman/listinfo/sssd-devel