From b73b879e85e2664d6b259544e9e831e68a9b5e85 Mon Sep 17 00:00:00 2001 From: Simon Schubert <2@0x2c.org> Date: Sat, 6 Jul 2013 21:00:05 +0200 Subject: [PATCH] aliases: log errors to syslog and abort --- aliases_parse.y | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/aliases_parse.y b/aliases_parse.y index dd8b88a..a5a9e7b 100644 --- a/aliases_parse.y +++ b/aliases_parse.y @@ -2,6 +2,7 @@ #include #include +#include #include "dma.h" extern int yylineno; @@ -12,7 +13,12 @@ int yylex(void); static void yyerror(const char *msg) { - warnx("aliases line %d: %s", yylineno, msg); + /** + * Because we do error '\n' below, we need to report the error + * one line above of what yylineno points to. + */ + syslog(LOG_CRIT, "aliases line %d: %s", yylineno - 1, msg); + fprintf(stderr, "aliases line %d: %s\n", yylineno - 1, msg); } int @@ -72,8 +78,7 @@ alias : T_IDENT ':' dests '\n' } | error '\n' { - yyerrok; - $$ = NULL; + YYABORT; } ; -- 2.47.3