summaryrefslogtreecommitdiff
path: root/grammar
diff options
context:
space:
mode:
authorMichael Biebl <biebl@debian.org>2012-10-11 22:22:19 +0200
committerMichael Biebl <biebl@debian.org>2012-10-11 22:22:19 +0200
commit64b89c604c6cec4fd0de51f2776f95b34e388bae (patch)
treecfa1988f2f451baaa4a0e145d7263b8e888a8cef /grammar
parent5b0595cc98c012dfa5ac0f214dbc543a11c982cb (diff)
downloadrsyslog-64b89c604c6cec4fd0de51f2776f95b34e388bae.tar.gz
Imported Upstream version 7.1.10upstream/7.1.10
Diffstat (limited to 'grammar')
-rw-r--r--grammar/Makefile.in6
-rw-r--r--grammar/rainerscript.c10
-rw-r--r--grammar/rainerscript.h1
3 files changed, 14 insertions, 3 deletions
diff --git a/grammar/Makefile.in b/grammar/Makefile.in
index 61fc931..609f3aa 100644
--- a/grammar/Makefile.in
+++ b/grammar/Makefile.in
@@ -38,7 +38,11 @@ subdir = grammar
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in grammar.c \
grammar.h lexer.c
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
-am__aclocal_m4_deps = $(top_srcdir)/configure.ac
+am__aclocal_m4_deps = $(top_srcdir)/m4/atomic_operations.m4 \
+ $(top_srcdir)/m4/atomic_operations_64bit.m4 \
+ $(top_srcdir)/m4/libtool.m4 $(top_srcdir)/m4/ltoptions.m4 \
+ $(top_srcdir)/m4/ltsugar.m4 $(top_srcdir)/m4/ltversion.m4 \
+ $(top_srcdir)/m4/lt~obsolete.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
mkinstalldirs = $(install_sh) -d
diff --git a/grammar/rainerscript.c b/grammar/rainerscript.c
index ad6a32e..9483e11 100644
--- a/grammar/rainerscript.c
+++ b/grammar/rainerscript.c
@@ -2186,10 +2186,14 @@ cnfstmtNewAct(struct nvlst *lst)
{
struct cnfstmt* cnfstmt;
char namebuf[256];
+ rsRetVal localRet;
if((cnfstmt = cnfstmtNew(S_ACT)) == NULL)
goto done;
- if(actionNewInst(lst, &cnfstmt->d.act) != RS_RET_OK) {
- // TODO:RS_RET_WARN?
+ localRet = actionNewInst(lst, &cnfstmt->d.act);
+ if(localRet == RS_RET_OK_WARN) {
+ parser_errmsg("warnings occured in file '%s' around line %d",
+ cnfcurrfn, yylineno);
+ } else if(localRet != RS_RET_OK) {
parser_errmsg("errors occured in file '%s' around line %d",
cnfcurrfn, yylineno);
cnfstmt->nodetype = S_NOP; /* disable action! */
@@ -2199,6 +2203,8 @@ cnfstmtNewAct(struct nvlst *lst)
modGetName(cnfstmt->d.act->pMod));
namebuf[255] = '\0'; /* be on safe side */
cnfstmt->printable = (uchar*)strdup(namebuf);
+ nvlstChkUnused(lst);
+ nvlstDestruct(lst);
done: return cnfstmt;
}
diff --git a/grammar/rainerscript.h b/grammar/rainerscript.h
index 8ff0d70..5cfce79 100644
--- a/grammar/rainerscript.h
+++ b/grammar/rainerscript.h
@@ -327,6 +327,7 @@ struct cnfstmt * cnfstmtNewLegaAct(char *actline);
struct cnfstmt * cnfstmtNewSet(char *var, struct cnfexpr *expr);
struct cnfstmt * cnfstmtNewUnset(char *var);
struct cnfstmt * cnfstmtNewCall(es_str_t *name);
+struct cnfstmt * cnfstmtNewContinue(void);
void cnfstmtDestruct(struct cnfstmt *root);
void cnfstmtOptimize(struct cnfstmt *root);
struct cnfarray* cnfarrayNew(es_str_t *val);