summaryrefslogtreecommitdiffstats
path: root/cfg_file.h
diff options
context:
space:
mode:
authorcebka@mailsupport.rambler.ru <cebka@mailsupport.rambler.ru>2008-10-14 05:03:54 +0400
committercebka@mailsupport.rambler.ru <cebka@mailsupport.rambler.ru>2008-10-14 05:03:54 +0400
commitfd84d363d87414274dc24e77f301ab5c966ede0b (patch)
tree4e9042c4e58882cb85a63263db524b7c22cc4ab4 /cfg_file.h
parentda93e9d6351e238ff66d04b9a7a712f161e2defc (diff)
downloadrspamd-fd84d363d87414274dc24e77f301ab5c966ede0b.tar.gz
rspamd-fd84d363d87414274dc24e77f301ab5c966ede0b.zip
* Add utility function for parsing regexp from given string (type flags and pcre flags)
Diffstat (limited to 'cfg_file.h')
-rw-r--r--cfg_file.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/cfg_file.h b/cfg_file.h
index 5b4e2d84b..21c8b26fa 100644
--- a/cfg_file.h
+++ b/cfg_file.h
@@ -50,6 +50,20 @@
enum { VAL_UNDEF=0, VAL_TRUE, VAL_FALSE };
+enum rspamd_regexp_type {
+ REGEXP_NONE = 0,
+ REGEXP_HEADER,
+ REGEXP_MIME,
+ REGEXP_MESSAGE,
+ REGEXP_URL,
+};
+
+struct rspamd_regexp {
+ enum rspamd_regexp_type type;
+ char *regexp_text;
+ GRegex *regexp;
+};
+
struct memcached_server {
struct upstream up;
struct in_addr addr;
@@ -117,6 +131,7 @@ unsigned int parse_seconds (const char *t);
char parse_flag (const char *str);
char* substitute_variable (struct config_file *cfg, char *str, u_char recursive);
void post_load_config (struct config_file *cfg);
+struct rspamd_regexp* parse_regexp (memory_pool_t *pool, char *line);
int yylex (void);
int yyparse (void);