summaryrefslogtreecommitdiffstats
path: root/runtime/ruleset.c
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2012-10-01 17:48:36 +0200
committerRainer Gerhards <rgerhards@adiscon.com>2012-10-01 17:48:36 +0200
commit873e806df047de8ac59a90d850698d7b7c80e58f (patch)
treecccc23109028290c77d7752ddfb11df7f1ce4539 /runtime/ruleset.c
parent819c8167414a5056fb6a87b4b38ce656c78d5897 (diff)
downloadrsyslog-873e806df047de8ac59a90d850698d7b7c80e58f.tar.gz
rsyslog-873e806df047de8ac59a90d850698d7b7c80e58f.tar.xz
rsyslog-873e806df047de8ac59a90d850698d7b7c80e58f.zip
implement RainerScript "call" statement
Diffstat (limited to 'runtime/ruleset.c')
-rw-r--r--runtime/ruleset.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/runtime/ruleset.c b/runtime/ruleset.c
index 79e45249..230b376b 100644
--- a/runtime/ruleset.c
+++ b/runtime/ruleset.c
@@ -92,6 +92,7 @@ scriptIterateAllActions(struct cnfstmt *root, rsRetVal (*pFunc)(void*, void*), v
switch(stmt->nodetype) {
case S_NOP:
case S_STOP:
+ case S_CALL:/* call does not need to do anything - done in called ruleset! */
break;
case S_ACT:
DBGPRINTF("iterateAllActions calling into action %p\n", stmt->d.act);
@@ -509,6 +510,10 @@ dbgprintf("RRRR: scriptExec: batch of %d elements, active %p, stmt %p, nodetype
case S_UNSET:
execUnset(stmt, pBatch, active);
break;
+ case S_CALL:
+ DBGPRINTF("calling ruleset\n"); // TODO: add Name
+ scriptExec(stmt->d.s_call.stmt, pBatch, active);
+ break;
case S_IF:
execIf(stmt, pBatch, active);
break;