From 44d4ab7a960cf143c43d1645f2985cc9d74e3077 Mon Sep 17 00:00:00 2001 From: Ondrej Zajicek Date: Wed, 7 Apr 2010 11:00:36 +0200 Subject: Configurable syslog name. Also fixes a bug in syslog initialization. --- sysdep/unix/config.Y | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'sysdep/unix/config.Y') diff --git a/sysdep/unix/config.Y b/sysdep/unix/config.Y index ac5be7e..844f53d 100644 --- a/sysdep/unix/config.Y +++ b/sysdep/unix/config.Y @@ -14,12 +14,13 @@ CF_HDR CF_DECLS CF_KEYWORDS(LOG, SYSLOG, ALL, DEBUG, TRACE, INFO, REMOTE, WARNING, ERROR, AUTH, FATAL, BUG, STDERR, SOFT) -CF_KEYWORDS(TIMEFORMAT, ISO, SHORT, LONG, BASE) +CF_KEYWORDS(TIMEFORMAT, ISO, SHORT, LONG, BASE, NAME) %type log_mask log_mask_list log_cat %type log_file %type cfg_name %type timeformat_which +%type syslog_name CF_GRAMMAR @@ -33,13 +34,18 @@ log_config: LOG log_file log_mask ';' { } ; +syslog_name: + NAME TEXT { $$ = $2; } + | { $$ = bird_name; } + ; + log_file: TEXT { FILE *f = tracked_fopen(new_config->pool, $1, "a"); if (!f) cf_error("Unable to open log file `%s': %m", $1); $$ = f; } - | SYSLOG { $$ = NULL; } + | SYSLOG syslog_name { $$ = NULL; new_config->syslog_name = $2; } | STDERR { $$ = stderr; } ; -- cgit v1.2.3