Hi,

I believe that this patch makes pinpointing
of config errors a little easier. Especially
when using sssctl tool that currently refuses
to start a command when there are syntax errors in
sssd.conf, but by default it does not print
problematic line number. Compare:

ldb: unable to dlopen /usr/lib64/ldb/modules/ldb/memberof.la : /usr/lib64/ldb/modules/ldb/memberof.la: invalid ELF header (Wed Jul 27 14:05:39:185114 2016) [sssd] [sss_ini_get_config] (0x0010): Failed to parse configuration. Error 5. (Wed Jul 27 14:05:39:185192 2016) [sssd] [sss_ini_get_config] (0x0010): Errors detected while parsing: /etc/sssd/sssd.conf (Wed Jul 27 14:05:39:185229 2016) [sssd] [confdb_init_db] (0x0010): Failed to load configuration (Wed Jul 27 14:05:39:185255 2016) [sssd] [confdb_setup] (0x0010): ConfDB initialization has failed [5]: Input/output error (Wed Jul 27 14:05:39:185288 2016) [sssd] [sss_tool_confdb_init] (0x0010): Unable to setup ConfDB [5]: Input/output error


and:

ldb: unable to dlopen /usr/lib64/ldb/modules/ldb/memberof.la : /usr/lib64/ldb/modules/ldb/memberof.la: invalid ELF header (Wed Jul 27 14:22:51:096949 2016) [sssd] [sss_ini_get_config] (0x0010): Failed to parse configuration. Error 5. (Wed Jul 27 14:22:51:097173 2016) [sssd] [sss_ini_get_config] (0x0010): Errors detected while parsing: /etc/sssd/sssd.conf (Wed Jul 27 14:22:51:097490 2016) [sssd] [sss_ini_config_print_errors] (0x0010): Error (2) on line 10: No closing bracket. (Wed Jul 27 14:22:51:097946 2016) [sssd] [confdb_init_db] (0x0010): Failed to load configuration (Wed Jul 27 14:22:51:098452 2016) [sssd] [confdb_setup] (0x0010): ConfDB initialization has failed [5]: Input/output error (Wed Jul 27 14:22:51:098651 2016) [sssd] [sss_tool_confdb_init] (0x0010): Unable to setup ConfDB [5]: Input/output error

Patch is attached.

Michal
>From 85f45ddb9b0c270c684ee6eae3da0baa14a3c1de Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michal=20=C5=BDidek?= <mzi...@redhat.com>
Date: Wed, 27 Jul 2016 14:14:33 +0200
Subject: [PATCH] Change debug level of config error msgs

Syntax errors in configuration files
prevent SSSD or sssctl to start completely.
It would be good to display these errors
by default with the highest level.
---
 src/util/sss_ini.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/util/sss_ini.c b/src/util/sss_ini.c
index d9bc46a..e56006c 100644
--- a/src/util/sss_ini.c
+++ b/src/util/sss_ini.c
@@ -182,7 +182,7 @@ int sss_ini_get_mtime(struct sss_ini_initdata *init_data,
 
 /* Print ini_config errors */
 
-void sss_ini_config_print_errors(char **error_list)
+static void sss_ini_config_print_errors(char **error_list)
 {
 #ifdef HAVE_LIBINI_CONFIG_V1
     unsigned count = 0;
@@ -192,7 +192,7 @@ void sss_ini_config_print_errors(char **error_list)
     }
 
     while (error_list[count]) {
-        DEBUG(SSSDBG_CRIT_FAILURE, "%s\n", error_list[count]);
+        DEBUG(SSSDBG_FATAL_FAILURE, "%s\n", error_list[count]);
         count++;
     }
 #endif
-- 
2.5.0

_______________________________________________
sssd-devel mailing list
sssd-devel@lists.fedorahosted.org
https://lists.fedorahosted.org/admin/lists/sssd-devel@lists.fedorahosted.org

Reply via email to