remove duplicate code calling reload_config_file()
as a side effect of not updating the config pointer when loading the config file fails, the "FIXME" level comment to take appropriate action in that case has been removed. the only issue remaining when receiving a SIGHUP and encountering a malformed config file would now be the case that output to syslog/logfile won't be resumed, if initially so configured.
This commit is contained in:
parent
c63d5d26b4
commit
27d96df999
@ -114,11 +114,8 @@ void child_main_loop (void)
|
||||
|
||||
/* Handle log rotation if it was requested */
|
||||
if (received_sighup) {
|
||||
/*
|
||||
* Ignore the return value of reload_config for now.
|
||||
* This should actually be handled somehow...
|
||||
*/
|
||||
reload_config ();
|
||||
|
||||
reload_config (1);
|
||||
|
||||
#ifdef FILTER_ENABLE
|
||||
filter_reload ();
|
||||
|
12
src/main.c
12
src/main.c
@ -244,21 +244,22 @@ change_user (const char *program)
|
||||
* convenience wrapper around reload_config_file
|
||||
* that also re-initializes logging.
|
||||
*/
|
||||
int reload_config (void)
|
||||
int reload_config (int reload_logging)
|
||||
{
|
||||
int ret;
|
||||
|
||||
shutdown_logging ();
|
||||
if (reload_logging) shutdown_logging ();
|
||||
|
||||
ret = reload_config_file (config_file, &config_main,
|
||||
&config_defaults);
|
||||
|
||||
if (ret != 0) {
|
||||
goto done;
|
||||
}
|
||||
|
||||
config = &config_main;
|
||||
|
||||
ret = setup_logging ();
|
||||
if (reload_logging) ret = setup_logging ();
|
||||
|
||||
done:
|
||||
return ret;
|
||||
@ -310,12 +311,9 @@ main (int argc, char **argv)
|
||||
|
||||
initialize_config_defaults (&config_defaults);
|
||||
|
||||
if (reload_config_file (config_file,
|
||||
&config_main,
|
||||
&config_defaults)) {
|
||||
if (reload_config(0)) {
|
||||
exit (EX_SOFTWARE);
|
||||
}
|
||||
config = &config_main;
|
||||
|
||||
init_stats ();
|
||||
|
||||
|
@ -32,6 +32,6 @@
|
||||
extern struct config_s *config;
|
||||
extern unsigned int received_sighup; /* boolean */
|
||||
|
||||
extern int reload_config (void);
|
||||
extern int reload_config (int reload_logging);
|
||||
|
||||
#endif /* __MAIN_H__ */
|
||||
|
Loading…
Reference in New Issue
Block a user