Hey,
The problem with a per-recipient white/blacklist is firstly assuring that messages with conflicting policies are not batched together - you could achieve this by deferring at SMTP time accordingly.
The way to do this with settings module would be to add a zero-value 'dummy' symbol to /all/ messages and use the settings module to adjust this symbol's value.
To enable such a dummy symbol, add the following to /etc/rspamd/lua/rspamd.local.lua
rspamd_config.R_DUMMY = function (task)
return true
end
... and register R_DUMMY in metrics.conf or equivalent.
Settings could be configured by adding something like:
settings = "
http://example.com/settings"
or:
settings = "file://$CONFDIR/settings"
... to config, where the referenced file could contain something like:
settings {
creative_blacklist_name_one {
priority = high;
from = "@
example.com";
rcpt = "@
example.net";
apply "default" {
R_DUMMY = 100.0;
}
}
}
Best,
-AL.