During initialization, log to both syslog and stderr. When a configuration
file has been read and it doesn't specify any logging, log to syslog only (if syslog is not available, then stderr).
This commit is contained in:
parent
0b3bf4b1d8
commit
5ddf4a58f9
3 changed files with 6 additions and 4 deletions
|
@ -184,7 +184,7 @@ debug(char *msg, ...)
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
log_init(int debug)
|
log_init(int debug, int init)
|
||||||
{
|
{
|
||||||
static struct log_config lc_stderr = { mask: ~0, terminal_flag: 1 };
|
static struct log_config lc_stderr = { mask: ~0, terminal_flag: 1 };
|
||||||
|
|
||||||
|
@ -197,6 +197,8 @@ log_init(int debug)
|
||||||
static struct log_config lc_syslog = { mask: ~0 };
|
static struct log_config lc_syslog = { mask: ~0 };
|
||||||
openlog("bird", LOG_CONS | LOG_NDELAY, LOG_DAEMON);
|
openlog("bird", LOG_CONS | LOG_NDELAY, LOG_DAEMON);
|
||||||
add_tail(current_log_list, &lc_syslog.n);
|
add_tail(current_log_list, &lc_syslog.n);
|
||||||
|
if (!init)
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -208,7 +210,7 @@ void
|
||||||
log_switch(list *l)
|
log_switch(list *l)
|
||||||
{
|
{
|
||||||
if (EMPTY_LIST(*l))
|
if (EMPTY_LIST(*l))
|
||||||
current_log_list = &init_log_list;
|
log_init(0, 0);
|
||||||
else
|
else
|
||||||
current_log_list = l;
|
current_log_list = l;
|
||||||
}
|
}
|
||||||
|
|
|
@ -408,7 +408,7 @@ main(int argc, char **argv)
|
||||||
parse_args(argc, argv);
|
parse_args(argc, argv);
|
||||||
if (debug_flag == 1)
|
if (debug_flag == 1)
|
||||||
log_init_debug("");
|
log_init_debug("");
|
||||||
log_init(debug_flag);
|
log_init(debug_flag, 1);
|
||||||
|
|
||||||
DBG("Initializing.\n");
|
DBG("Initializing.\n");
|
||||||
resource_init();
|
resource_init();
|
||||||
|
|
|
@ -49,7 +49,7 @@ void krt_io_init(void);
|
||||||
|
|
||||||
/* log.c */
|
/* log.c */
|
||||||
|
|
||||||
void log_init(int debug);
|
void log_init(int debug, int init);
|
||||||
void log_init_debug(char *); /* Initialize debug dump to given file (NULL=stderr, ""=off) */
|
void log_init_debug(char *); /* Initialize debug dump to given file (NULL=stderr, ""=off) */
|
||||||
void log_switch(struct list *);
|
void log_switch(struct list *);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue