[strongSwan-dev] [PATCH] conftest: Fix log level settings for stdout

Thomas Klute thomas2.klute at uni-dortmund.de
Thu Jan 3 16:03:44 CET 2013

This patch fixes bug #272 ("conftest ignores log settings for stdout").

According to the documentation of add_logger in src/libcharon/bus/bus.h,
the relevant log levels of a logger are registered with the logging
subsystem when adding the logger. If the log levels change later, the
logger must be re-added to propagate the new settings. In conftest.c,
the stdout logger is initialized and added before reading the logging
settings, but wasn't re-added after reading the settings.
 src/conftest/conftest.c |    3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/conftest/conftest.c b/src/conftest/conftest.c
index bb4c5ed..e8c257d 100644
--- a/src/conftest/conftest.c
+++ b/src/conftest/conftest.c
@@ -386,6 +386,9 @@ static void load_loggers(file_logger_t *logger)
 	char *section;
 	load_log_levels(logger, "stdout");
+	/* Re-add the logger to propagate configuration changes to the
+	 * logging system */
+	charon->bus->add_logger(charon->bus, &logger->logger);
 	enumerator = conftest->test->create_section_enumerator(conftest->test, "log");
 	while (enumerator->enumerate(enumerator, &section))

More information about the Dev mailing list