1
0
mirror of https://gitlab.labs.nic.cz/labs/bird.git synced 2024-05-11 16:54:54 +00:00

Unix: Refactor tracked files

We need access to resource in order to free it.
This commit is contained in:
Ondrej Zajicek (work)
2018-11-13 18:13:11 +01:00
parent d0b4597842
commit c68ba7d093
3 changed files with 30 additions and 14 deletions

View File

@@ -41,9 +41,9 @@ syslog_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;
struct rfile *f = rf_open(new_config->pool, $1, "a");
if (!f) cf_error("Unable to open log file '%s': %m", $1);
$$ = rf_file(f);
}
| SYSLOG syslog_name { $$ = NULL; new_config->syslog_name = $2; }
| STDERR { $$ = stderr; }
@@ -77,9 +77,9 @@ conf: mrtdump_base ;
mrtdump_base:
MRTDUMP PROTOCOLS mrtdump_mask ';' { new_config->proto_default_mrtdump = $3; }
| MRTDUMP text ';' {
FILE *f = tracked_fopen(new_config->pool, $2, "a");
struct rfile *f = rf_open(new_config->pool, $2, "a");
if (!f) cf_error("Unable to open MRTDump file '%s': %m", $2);
new_config->mrtdump_file = fileno(f);
new_config->mrtdump_file = rf_fileno(f);
}
;