summaryrefslogtreecommitdiffstats
path: root/vm.h
diff options
context:
space:
mode:
authorRainer Gerhards <rgerhards@adiscon.com>2008-02-25 13:27:10 +0000
committerRainer Gerhards <rgerhards@adiscon.com>2008-02-25 13:27:10 +0000
commit5ebc0db1a6d4c75ce9c26449ef2a2e3d7b340e10 (patch)
treed9f34f80e487d70da9c764f7c050086eceaff5bf /vm.h
parenta24cee11b718603fbc681e4a7a23f50c8d785ad7 (diff)
downloadrsyslog-5ebc0db1a6d4c75ce9c26449ef2a2e3d7b340e10.tar.gz
rsyslog-5ebc0db1a6d4c75ce9c26449ef2a2e3d7b340e10.tar.xz
rsyslog-5ebc0db1a6d4c75ce9c26449ef2a2e3d7b340e10.zip
- added PUSHMSGVAR operation
- included expression support in filter module (and it works ;))
Diffstat (limited to 'vm.h')
-rw-r--r--vm.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/vm.h b/vm.h
index 1234349e..44db9c35 100644
--- a/vm.h
+++ b/vm.h
@@ -32,6 +32,7 @@
#ifndef INCLUDED_VM_H
#define INCLUDED_VM_H
+#include "msg.h"
#include "vmstk.h"
#include "vmprg.h"
@@ -39,6 +40,7 @@
typedef struct vm_s {
BEGINobjInstance; /* Data to implement generic object - MUST be the first data element! */
vmstk_t *pStk; /* The stack */
+ msg_t *pMsg; /* the current message (or NULL, if we have none) */
} vm_t;
@@ -50,6 +52,8 @@ BEGINinterface(vm) /* name must also be changed in ENDinterface macro! */
rsRetVal (*Destruct)(vm_t **ppThis);
rsRetVal (*ExecProg)(vm_t *pThis, vmprg_t *pProg);
rsRetVal (*PopBoolFromStack)(vm_t *pThis, var_t **ppVar); /* there are a few cases where we need this... */
+ rsRetVal (*PopVarFromStack)(vm_t *pThis, var_t **ppVar); /* there are a few cases where we need this... */
+ rsRetVal (*SetMsg)(vm_t *pThis, msg_t *pMsg); /* there are a few cases where we need this... */
ENDinterface(vm)
#define vmCURR_IF_VERSION 1 /* increment whenever you change the interface structure! */