aboutsummaryrefslogtreecommitdiffstats
path: root/main.h
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@rambler-co.ru>2008-06-25 15:17:06 +0400
committerVsevolod Stakhov <vsevolod@rambler-co.ru>2008-06-25 15:17:06 +0400
commiteab76d300da4e6d5712efd1db68e40cb1fc86a2c (patch)
treea0e70a513d4bb4b297e9f7114de246ad0c45a44b /main.h
parent5c04a3b81677258da055dd686a21faf2896fa145 (diff)
downloadrspamd-eab76d300da4e6d5712efd1db68e40cb1fc86a2c.tar.gz
rspamd-eab76d300da4e6d5712efd1db68e40cb1fc86a2c.zip
* Add C api for calling perl filters
Diffstat (limited to 'main.h')
-rw-r--r--main.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/main.h b/main.h
index 9ed0bc2ec..3eaad29c5 100644
--- a/main.h
+++ b/main.h
@@ -51,6 +51,7 @@ struct rspamd_worker {
struct pidfh;
struct config_file;
+struct filter_chain;
/* Struct that determine main server object (for logging purposes) */
struct rspamd_main {
@@ -64,6 +65,13 @@ struct rspamd_main {
TAILQ_HEAD (workq, rspamd_worker) workers;
};
+struct filter_result {
+ const char *symbol;
+ struct filter_chain *chain;
+ int mark;
+ TAILQ_ENTRY (filter_result) next;
+};
+
struct worker_task {
struct rspamd_worker *worker;
enum {
@@ -80,6 +88,8 @@ struct worker_task {
int parts_count;
/* URLs extracted from message */
TAILQ_HEAD (uriq, uri) urls;
+ /* List of filter results */
+ TAILQ_HEAD (resultsq, filter_result) results;
};
void start_worker (struct rspamd_worker *worker, int listen_sock);