aboutsummaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorVsevolod Stakhov <vsevolod@highsecure.ru>2016-01-28 14:56:55 +0000
committerVsevolod Stakhov <vsevolod@highsecure.ru>2016-01-28 14:56:55 +0000
commit84dee1fa312a90488de799712b5640bd5942a60b (patch)
tree09e2ace35b96b77c50f1d5f23ab213feab8ee253 /doc
parent6d0833e5ab01b0bde51b4219eb027d2ba75c1a01 (diff)
downloadrspamd-84dee1fa312a90488de799712b5640bd5942a60b.tar.gz
rspamd-84dee1fa312a90488de799712b5640bd5942a60b.zip
Document new filters in multimap
Diffstat (limited to 'doc')
-rw-r--r--doc/markdown/modules/multimap.md15
1 files changed, 13 insertions, 2 deletions
diff --git a/doc/markdown/modules/multimap.md b/doc/markdown/modules/multimap.md
index 06e680bd1..597416143 100644
--- a/doc/markdown/modules/multimap.md
+++ b/doc/markdown/modules/multimap.md
@@ -44,7 +44,7 @@ Type attribute means what is matched with this map. The following types are supp
DNS maps has historic support.
Maps can also have a special URL format in style:
-
+
map = "cdb:///path/to/file.cdb";
which is treated as CDB map by rspamd.
@@ -54,7 +54,18 @@ Here is an example configuration of multimap module:
~~~nginx
multimap {
test { type = "ip"; map = "/tmp/ip.map"; symbol = "TESTMAP"; }
- spamhaus { type = "dnsbl"; map = "pbl.spamhaus.org"; symbol = "R_IP_PBL";
+ spamhaus { type = "dnsbl"; map = "pbl.spamhaus.org"; symbol = "R_IP_PBL";
description = "PBL dns block list"; } # Better use RBL module instead
}
~~~
+
+### Map filters
+
+It is also possible to apply a filtering expression before checking value against some map. This is mainly useful
+for `header` rules. Filters are specified with `filter` option. Rspamd supports the following filters so far:
+
+* `email` or `email:addr` - parse header value and extract email address from it (`Somebody <user@example.com>` -> `user@example.com`)
+* `email:user` - parse header value as email address and extract user name from it (`Somebody <user@example.com>` -> `user`)
+* `email:domain` - parse header value as email address and extract user name from it (`Somebody <user@example.com>` -> `example.com`)
+* `email:name` - parse header value as email address and extract displayed name from it (`Somebody <user@example.com>` -> `Somebody`)
+* `regexp:/re/` - extracts generic information using the specified regular expression