aboutsummaryrefslogtreecommitdiffstats
path: root/src/cfg_xml.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cfg_xml.c')
-rw-r--r--src/cfg_xml.c22
1 files changed, 20 insertions, 2 deletions
diff --git a/src/cfg_xml.c b/src/cfg_xml.c
index 030ec9b34..aeb64d1ae 100644
--- a/src/cfg_xml.c
+++ b/src/cfg_xml.c
@@ -382,6 +382,12 @@ static struct xml_parser_rule grammar[] = {
NULL
},
{
+ "rcpt",
+ handle_view_rcpt,
+ 0,
+ NULL
+ },
+ {
"symbols",
handle_view_symbols,
0,
@@ -913,19 +919,31 @@ handle_view_from (struct config_file *cfg, struct rspamd_xml_userdata *ctx, GHas
struct rspamd_view *view = ctx->section_pointer;
if (!add_view_from (view, data)) {
- msg_err ("invalid from line in view definition: ip = '%s'", data);
+ msg_err ("invalid from line in view definition: from = '%s'", data);
return FALSE;
}
return TRUE;
}
gboolean
+handle_view_rcpt (struct config_file *cfg, struct rspamd_xml_userdata *ctx, GHashTable *attrs, gchar *data, gpointer user_data, gpointer dest_struct, int offset)
+{
+ struct rspamd_view *view = ctx->section_pointer;
+
+ if (!add_view_rcpt (view, data)) {
+ msg_err ("invalid from line in view definition: rcpt = '%s'", data);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+gboolean
handle_view_symbols (struct config_file *cfg, struct rspamd_xml_userdata *ctx, GHashTable *attrs, gchar *data, gpointer user_data, gpointer dest_struct, int offset)
{
struct rspamd_view *view = ctx->section_pointer;
if (!add_view_symbols (view, data)) {
- msg_err ("invalid symbols line in view definition: ip = '%s'", data);
+ msg_err ("invalid symbols line in view definition: symbols = '%s'", data);
return FALSE;
}
cfg->domain_settings_str = memory_pool_strdup (cfg->cfg_pool, data);