From: Thomas Egerer Date: Wed, 29 Aug 2018 11:14:59 +0000 (+0200) Subject: custom-logger: Add optional reload method X-Git-Tag: 5.7.0rc1~37 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=32c190634c115050ea27c9a89f2c8891aaca9805;p=thirdparty%2Fstrongswan.git custom-logger: Add optional reload method The reload of the configuration of the loggers so far only included the log levels. In order to support the reload of all other options, a reload function may be implemented. Signed-off-by: Thomas Egerer --- diff --git a/src/libcharon/bus/listeners/custom_logger.h b/src/libcharon/bus/listeners/custom_logger.h index a256ad1ec3..4856163f4c 100644 --- a/src/libcharon/bus/listeners/custom_logger.h +++ b/src/libcharon/bus/listeners/custom_logger.h @@ -49,12 +49,17 @@ struct custom_logger_t { * @param group debug group to set * @param level max level to log (0..4) */ - void (*set_level) (custom_logger_t *this, debug_t group, level_t level); + void (*set_level)(custom_logger_t *this, debug_t group, level_t level); + + /** + * Reload custom logger configuration. + */ + void (*reload)(custom_logger_t *this); /** * Destroy the custom_logger_t object. */ - void (*destroy) (custom_logger_t *this); + void (*destroy)(custom_logger_t *this); }; /** diff --git a/src/libcharon/daemon.c b/src/libcharon/daemon.c index c02ab28f2b..2029921053 100644 --- a/src/libcharon/daemon.c +++ b/src/libcharon/daemon.c @@ -549,6 +549,10 @@ static void load_custom_logger(private_daemon_t *this, lib->settings->get_int(lib->settings, "%s.customlog.%s.%N", def, lib->ns, entry->name, debug_lower_names, group)); } + if (custom_logger->reload) + { + custom_logger->reload(custom_logger); + } charon->bus->add_logger(charon->bus, &custom_logger->logger); }