summaryrefslogtreecommitdiffstats
path: root/grammar/grammar.y
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2012-09-04 14:51:35 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2012-09-04 14:51:35 +0200
commitc596f1c1b2b6df18a9209d436a8255d96f437b54 (patch)
treec98aea6002cf929ca9a69e63de1954320115d6a2 /grammar/grammar.y
parentb473bae2d7bd907b5e9a6ee9fc7cadf92dfe69b8 (diff)
downloadrsyslog-c596f1c1b2b6df18a9209d436a8255d96f437b54.tar.gz
rsyslog-c596f1c1b2b6df18a9209d436a8255d96f437b54.tar.bz2
rsyslog-c596f1c1b2b6df18a9209d436a8255d96f437b54.zip
new ruleengine: PROP and PRI legacy filter structures properly created
Diffstat (limited to 'grammar/grammar.y')
-rw-r--r--grammar/grammar.y23
1 files changed, 9 insertions, 14 deletions
diff --git a/grammar/grammar.y b/grammar/grammar.y
index 65a6e8dc..a9f179e0 100644
--- a/grammar/grammar.y
+++ b/grammar/grammar.y
@@ -148,20 +148,15 @@ script: stmt { $$ = $1; }
stmt: actlst { $$ = $1; }
| STOP { $$ = cnfstmtNew(S_STOP); }
| IF expr THEN block { $$ = cnfstmtNew(S_IF);
- $$->d.cond.expr = $2;
- $$->d.cond.t_then = $4;
- $$->d.cond.t_else = NULL; }
+ $$->d.s_if.expr = $2;
+ $$->d.s_if.t_then = $4;
+ $$->d.s_if.t_else = NULL; }
| IF expr THEN block ELSE block { $$ = cnfstmtNew(S_IF);
- $$->d.cond.expr = $2;
- $$->d.cond.t_then = $4;
- $$->d.cond.t_else = $6; }
- | PRIFILT block { $$ = cnfstmtNew(S_PRIFILT);
- $$->printable = $1;
- $$->d.cond.expr = $1;
- $$->d.cond.t_then = $2; }
- | PROPFILT block { $$ = cnfstmtNew(S_PROPFILT);
- $$->d.cond.expr = $1;
- $$->d.cond.t_then = $2; }
+ $$->d.s_if.expr = $2;
+ $$->d.s_if.t_then = $4;
+ $$->d.s_if.t_else = $6; }
+ | PRIFILT block { $$ = cnfstmtNewPRIFILT($1, $2); }
+ | PROPFILT block { $$ = cnfstmtNewPROPFILT($1, $2); }
block: stmt { $$ = $1; }
| '{' script '}' { $$ = $2; }
actlst: s_act { $$ = $1; }
@@ -170,7 +165,7 @@ s_act: BEGIN_ACTION nvlst ENDOBJ { $$ = cnfstmtNew(S_ACT);
$$->printable="action()";
dbgprintf("RRRR: action object\n"); }
| LEGACY_ACTION { $$ = cnfstmtNew(S_ACT);
- $$->printable = $1;
+ $$->printable = (uchar*) $1;
dbgprintf("RRRR: legacy action\n"); }
expr: expr AND expr { $$ = cnfexprNew(AND, $1, $3); }
| expr OR expr { $$ = cnfexprNew(OR, $1, $3); }