]> source.dussan.org Git - rspamd.git/commitdiff
[Fix] Detect confighelp in plugins initialisation
authorVsevolod Stakhov <vsevolod@highsecure.ru>
Sat, 22 Apr 2017 22:17:13 +0000 (23:17 +0100)
committerVsevolod Stakhov <vsevolod@highsecure.ru>
Sat, 22 Apr 2017 22:17:13 +0000 (23:17 +0100)
40 files changed:
src/lua/lua_common.c
src/plugins/lua/antivirus.lua
src/plugins/lua/asn.lua
src/plugins/lua/clickhouse.lua
src/plugins/lua/dcc.lua
src/plugins/lua/dkim_signing.lua
src/plugins/lua/dmarc.lua
src/plugins/lua/dynamic_conf.lua
src/plugins/lua/emails.lua
src/plugins/lua/fann_classifier.lua
src/plugins/lua/fann_redis.lua
src/plugins/lua/fann_scores.lua
src/plugins/lua/force_actions.lua
src/plugins/lua/forged_recipients.lua
src/plugins/lua/fuzzy_collect.lua
src/plugins/lua/greylist.lua
src/plugins/lua/hfilter.lua
src/plugins/lua/history_redis.lua
src/plugins/lua/ip_score.lua
src/plugins/lua/maillist.lua
src/plugins/lua/metadata_exporter.lua
src/plugins/lua/metric_exporter.lua
src/plugins/lua/mid.lua
src/plugins/lua/mime_types.lua
src/plugins/lua/multimap.lua
src/plugins/lua/mx_check.lua
src/plugins/lua/once_received.lua
src/plugins/lua/phishing.lua
src/plugins/lua/ratelimit.lua
src/plugins/lua/rbl.lua
src/plugins/lua/replies.lua
src/plugins/lua/rmilter_headers.lua
src/plugins/lua/rspamd_update.lua
src/plugins/lua/settings.lua
src/plugins/lua/spamassassin.lua
src/plugins/lua/trie.lua
src/plugins/lua/url_redirector.lua
src/plugins/lua/url_reputation.lua
src/plugins/lua/url_tags.lua
src/plugins/lua/whitelist.lua

index 4f494971b47a03b1da6d9ebe2dfba2130ea0ee3f..634f7c56916d16a0782afa5323507e3a8aaadeaf 100644 (file)
@@ -390,7 +390,9 @@ rspamd_init_lua_filters (struct rspamd_config *cfg, gboolean force_load)
                                continue;
                        }
 
-                       msg_info_config ("init lua module %s", module->name);
+                       if (!force_load) {
+                               msg_info_config ("init lua module %s", module->name);
+                       }
 
                        lua_pop (L, 1); /* Error function */
                }
index e83308b4e7b304d151fb1560818fc0091a74d138..63d2685ec72fc37b41a7314ea84b8a1a4ff18326 100644 (file)
@@ -23,6 +23,46 @@ local redis_params
 
 local N = "antivirus"
 
+if confighelp then
+  rspamd_config:add_example(nil, 'antivirus',
+    "Check messages for viruses",
+    [[
+antivirus {
+  # multiple scanners could be checked, for each we create a configuration block with an arbitrary name
+  clamav {
+    # If set force this action if any virus is found (default unset: no action is forced)
+    # action = "reject";
+    # if `true` only messages with non-image attachments will be checked (default true)
+    attachments_only = true;
+    # If `max_size` is set, messages > n bytes in size are not scanned
+    max_size = 20000000;
+    # symbol to add (add it to metric if you want non-zero weight)
+    symbol = "CLAM_VIRUS";
+    # type of scanner: "clamav", "fprot", "sophos" or "savapi"
+    type = "clamav";
+    # For "savapi" you must also specify the following variable
+    product_id = 12345;
+    # You can enable logging for clean messages
+    log_clean = true;
+    # servers to query (if port is unspecified, scanner-specific default is used)
+    # can be specified multiple times to pool servers
+    # can be set to a path to a unix socket
+    # Enable this in local.d/antivirus.conf
+    servers = "127.0.0.1:3310";
+    # if `patterns` is specified virus name will be matched against provided regexes and the related
+    # symbol will be yielded if a match is found. If no match is found, default symbol is yielded.
+    patterns {
+      # symbol_name = "pattern";
+      JUST_EICAR = "^Eicar-Test-Signature$";
+    }
+    # `whitelist` points to a map of IP addresses. Mail from these addresses is not scanned.
+    whitelist = "/etc/rspamd/antivirus.wl";
+  }
+}
+]])
+  return
+end
+
 local function match_patterns(default_sym, found, patterns)
   if not patterns then return default_sym end
   for sym, pat in pairs(patterns) do
index 32f3871a7a6225cc5019d7aa7f96452c23bc16db..e58f1be3b2156bc91983d146eac59c48f9a1caec 100644 (file)
@@ -18,6 +18,10 @@ limitations under the License.
 local rspamd_logger = require "rspamd_logger"
 local rspamd_regexp = require "rspamd_regexp"
 
+if confighelp then
+  return
+end
+
 local options = {
   provider_type = 'rspamd',
   provider_info = {
index e80b5652a0c3829f4ecafcb1c4dfb7b1692a8e7f..50808812b38ed414ebc96098efcfcc80f2032bfd 100644 (file)
@@ -17,6 +17,10 @@ limitations under the License.
 local rspamd_logger = require 'rspamd_logger'
 local rspamd_http = require "rspamd_http"
 
+if confighelp then
+  return
+end
+
 local E = {}
 
 local rows = {}
index cf44c32249ba4cd428bf89d91f169433119582c1..7995699b266b039903bd634f2791fe82219c9635 100644 (file)
@@ -24,6 +24,19 @@ local logger = require "rspamd_logger"
 local tcp = require "rspamd_tcp"
 local fun = require "fun"
 
+if confighelp then
+  rspamd_config:add_example(nil, 'dcc',
+    "Check messages for 'bulkiness' using DCC",
+    [[
+dcc {
+  host = "/var/dcc/dccifd"; # Unix socket or hostname
+  port = 1234 # Port to use (needed for TCP socket)
+  timeout = 2s; # Timeout to wait for checks
+}
+]])
+  return
+end
+
 local function check_dcc (task)
   -- Connection
   local client = '0.0.0.0'
@@ -127,14 +140,4 @@ if opts and opts['host'] then
   })
 else
   logger.infox('DCC module not configured');
-end
-
-rspamd_config:add_example(nil, 'dcc',
-  "Check messages for 'bulkiness' using DCC",
-[[
-dcc {
-  host = "/var/dcc/dccifd"; # Unix socket or hostname
-  port = 1234 # Port to use (needed for TCP socket)
-  timeout = 2s; # Timeout to wait for checks
-}
-]])
\ No newline at end of file
+end
\ No newline at end of file
index 71ec7fd381cd47d1cf94e6ffc2f986a23ac5b669..ec2f70dc5d80293aff573460b1a7617c9efd6f04 100644 (file)
@@ -18,6 +18,10 @@ limitations under the License.
 local rspamd_logger = require "rspamd_logger"
 local rspamd_util = require "rspamd_util"
 
+if confighelp then
+  return
+end
+
 local settings = {
   allow_envfrom_empty = true,
   allow_hdrfrom_mismatch = false,
index 936c3947c43ae020c8e9a5988b68ae343dda3a77..443b31e30f09ef3e725559fd6c80de4ad51e9e55 100644 (file)
@@ -22,6 +22,10 @@ local rspamd_util = require "rspamd_util"
 local check_local = false
 local check_authed = false
 
+if confighelp then
+  return
+end
+
 local symbols = {
   spf_allow_symbol = 'R_SPF_ALLOW',
   spf_deny_symbol = 'R_SPF_FAIL',
index b109c714f8aaf6e8b1cbf1db40b6ce536e77dcc2..9c017d6c9d5bfac1ab63f18dfd8e4b6fd13aa335 100644 (file)
@@ -19,6 +19,10 @@ local redis_params
 local ucl = require "ucl"
 local fun = require "fun"
 
+if confighelp then
+  return
+end
+
 local settings = {
   redis_key = "dynamic_conf",
   redis_watch_interval = 10.0,
index 1eac2792910b91e64259e5c668e0168838590cb0..bda3d4f773fdf2d438eed488416f9f198daeeb9b 100644 (file)
@@ -16,6 +16,10 @@ limitations under the License.
 
 -- Emails is module for different checks for emails inside messages
 
+if confighelp then
+  return
+end
+
 -- Rules format:
 -- symbol = sym, map = file:///path/to/file, domain_only = yes
 -- symbol = sym2, dnsbl = bl.somehost.com, domain_only = no
index c4110981d7ce2746f0db92af55f3b3796a9025d5..f4133eb9e700981041615cb73ded2a8804710908 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- This plugin is a concept of FANN scores adjustment
 -- NOT FOR PRODUCTION USE so far
 local rspamd_logger = require "rspamd_logger"
index ecbd7528c6081f994bdb31336cd510c13588f886..528d6535e03382d6cd4aa9a19c32d354a09bd592 100644 (file)
@@ -17,6 +17,10 @@ limitations under the License.
 -- This plugin is a concept of FANN scores adjustment
 -- NOT FOR PRODUCTION USE so far
 
+if confighelp then
+  return
+end
+
 local rspamd_logger = require "rspamd_logger"
 local rspamd_fann = require "rspamd_fann"
 local rspamd_util = require "rspamd_util"
index a96d27701bdb810224630f9925ff5099e013dac7..4737c7ba04ac68227b0a9b7e1df8ab9ffb6c2b37 100644 (file)
@@ -17,6 +17,10 @@ limitations under the License.
 -- This plugin is a concept of FANN scores adjustment
 -- NOT FOR PRODUCTION USE so far
 
+if confighelp then
+  return
+end
+
 local rspamd_logger = require "rspamd_logger"
 local rspamd_fann = require "rspamd_fann"
 local rspamd_util = require "rspamd_util"
index 2f87f728e5115ba5ebaa67db05a93cfc408d542c..88b09dfadb393a387a2d72e8077efa3f3838dd0e 100644 (file)
@@ -17,6 +17,10 @@ limitations under the License.
 
 -- A plugin that forces actions
 
+if confighelp then
+  return
+end
+
 local E = {}
 local N = 'force_actions'
 
index 0b6ff7911c5362f4e77ac1bc3c47cea7a04b3752..a07fc668c1999d30d5258bfd193cd2e623ed0008 100644 (file)
@@ -17,6 +17,10 @@ limitations under the License.
 -- Plugin for comparing smtp dialog recipients and sender with recipients and sender
 -- in mime headers
 
+if confighelp then
+  return
+end
+
 local symbol_rcpt = 'FORGED_RECIPIENTS'
 local symbol_sender = 'FORGED_SENDER'
 
index 663f48e1336b0985b120200b60b8edc5823d644f..b5dae4e20e1f917f1b2e2b6dbf33af2f8da19414 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]] --
 
+if confighelp then
+  return
+end
+
 local rspamd_logger = require "rspamd_logger"
 local rspamd_util = require "rspamd_util"
 local rspamd_http = require "rspamd_http"
index 37ebf6f02d759a34aa4235e7abec679535ce0391..dfcb29386bcef1af921bb2d9585bac054d25d672 100644 (file)
@@ -35,6 +35,10 @@ greylist {
 }
 --]]
 
+if confighelp then
+  return
+end
+
 -- A plugin that implements greylisting using redis
 
 local redis_params
index 0e06f683c9ae4e7659346610553f56382e2722c1..19ded363f8b25e5fb0f9e6b734a531511c2679e0 100644 (file)
@@ -19,6 +19,10 @@ limitations under the License.
 -- Weight for checks_hellohost and checks_hello: 5 - very hard, 4 - hard, 3 - meduim, 2 - low, 1 - very low.
 -- From HFILTER_HELO_* and HFILTER_HOSTNAME_* symbols the maximum weight is selected in case of their actuating.
 
+if confighelp then
+  return
+end
+
 local rspamd_logger = require "rspamd_logger"
 local rspamd_regexp = require "rspamd_regexp"
 local rspamc_local_helo = "rspamc.local"
index 8a196854242ddfd99874bc508a18f880ede4257e..ad65184b927626043d3bfb8ce0a2a4d5e1f290e7 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 local redis_params
 
 local settings = {
index 4d9573382ab28f7612ff2ae5b8e262c4dd662cb2..a1a88d4b2a84efedfc3e2f007b4c5392da3fa8fe 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- IP score is a module that set ip score of specific ip, asn, country
 local rspamd_logger = require "rspamd_logger"
 local rspamd_regexp = require "rspamd_regexp"
index e63eba6dc64a9eb7c0a3ca5c4d773252b5201444..3b23e25f1d66456c54232164fd3dd8cb04ee3ac6 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- Module for checking mail list headers
 
 local symbol = 'MAILLIST'
index 3c0e1b2dceed3adbfd44e19d982df80fa12dcc9f..a6bf0fa5566a479b62a77b77aa266a366c115f4c 100644 (file)
@@ -15,6 +15,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- A plugin that pushes metadata (or whole messages) to external services
 
 local redis_params
index dfd7f64bd881b0079809403fdff2bce0cdbd9db2..c28e585601f1034058e69d289068bd4d6540b45a 100644 (file)
@@ -15,6 +15,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]] --
 
+if confighelp then
+  return
+end
+
 local N = 'metric_exporter'
 local logger = require "rspamd_logger"
 local mempool = require "rspamd_mempool"
index 959697cd95059a6e689d496a3b42a86279e4bf71..19c85dac0a0c7137200f2c4016bf45a16cace8af 100644 (file)
@@ -19,6 +19,10 @@ MID plugin - suppress INVALID_MSGID and MISSING_MID for messages originating
 from listed valid DKIM domains with missed or known proprietary Message-IDs
 ]]--
 
+if confighelp then
+  return
+end
+
 local rspamd_logger = require "rspamd_logger"
 local rspamd_regexp = require "rspamd_regexp"
 
index c1847f771bdb75c9428c7c1cb6a5c57adb47ec8d..e510b627c187b9a6ccf99d37eaa61c20dc2c6af3 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- This plugin implements mime types checks for mail messages
 local logger = require "rspamd_logger"
 local settings = {
index c859198811303a00618de3327db67d7aafcc98c5..ae63b47bd58d002bd9e45ea19b0fd139961339da 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- Multimap is rspamd module designed to define and operate with different maps
 
 local rules = {}
index f81d5ba932a5ad8a6038960e1bd6b4c9c0988238..b1d07209bdb47155176544b7dcac29ddb67eaccc 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- MX check plugin
 local rspamd_logger = require "rspamd_logger"
 local rspamd_tcp = require "rspamd_tcp"
index e1eea2ca502fac1b5bac8cd8c66f93ac0481c916..e6dd444364453ac1fb353c4c6f4cb8f2f3b791df 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- 0 or 1 received: = spam
 
 local symbol = 'ONCE_RECEIVED'
index 74909e9da1582cda3c6abc81ff4ab7de71cdc958..880b85b8f850152d20bfab97fbea41e648dd42d0 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- Phishing detection interface for selecting phished urls and inserting corresponding symbol
 --
 --
index 341f9e6585dc06590edf16242948543e3ba1f1ab..15cbe953c8080576fb7ae2be4a8db4ecc22b76fb 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- A plugin that implements ratelimits using redis or kvstorage server
 
 local E = {}
index 01c12baef8ea774fb73f798b84465289ae3c1b05..7d22c6fa868b94de874d26994754aeb978d057a7 100644 (file)
@@ -15,6 +15,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- This plugin implements various types of RBL checks
 -- Documentation can be found here:
 -- https://rspamd.com/doc/modules/rbl.html
index b8f60288bb61a4b729f3ab29856435946b37afb3..2f24f67e9e99614d68fdf30ab9b44d0e56035257 100644 (file)
@@ -15,6 +15,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- A plugin that implements replies check using redis
 
 -- Default port for redis upstreams
index 82a4de6bfbd955bec3dc966a8df118a52e93ad8b..3221aa4968982e451ff267849e9377353e9fbaff 100644 (file)
@@ -15,6 +15,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- A plugin that provides common header manipulations
 
 local logger = require "rspamd_logger"
index f53967317da289a3c0e0a1ec9500a7098b07ef37..c0a5a4d61855163d600da90bc6f13dd0032192da 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- This plugin implements dynamic updates for rspamd
 
 local ucl = require "ucl"
index 758bc9b94b84ecbdc76e35352bc08bcca202361d..81498dc7182f1d8cc830399723bd5f1f1d05cbba 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- This plugin implements user dynamic settings
 -- Settings documentation can be found here:
 -- https://rspamd.com/doc/configuration/settings.html
index 2a3c04bfc5b8f6d514ac07a602e193d6c92f9ab6..fdf2568b702ee42184fb8abe5c35f1294d0d6234 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- This plugin is intended to read and parse spamassassin rules with regexp
 -- rules. SA plugins or statistics are not supported
 
index d72526e62d9871454e2017a329628934eaf28d53..2794e80c890a5612cd0011d1c68eab61bf8effdd 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- Trie is rspamd module designed to define and operate with suffix trie
 
 local N = 'trie'
index d75de4a25d460d6a60e42d2924e39e3ce6b30463..cc654b1fa2823290146f65768c08db0c67a00973 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 local redis_params
 local N = 'url_redirector'
 local settings = {
index 056e6b30f1eb7e3176281bc8b98a0ef860f04e80..73043aa4e520deb3163025119c7f168e9c599d8f 100644 (file)
@@ -15,6 +15,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- A plugin that restores/persists URL tags & calculates reputation
 
 local E = {}
index 8cdc22a6cffe3503360e542d9018a46d0da19939..3fe01054678c0e361d3e0590ab9f98998fd4faef 100644 (file)
@@ -15,6 +15,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 -- A plugin that restores/persists URL tags
 
 local N = 'url_tags'
index 68a0d017d25c47466a46bb23983d5faa25b6d5a4..634591e03d60ffade28e48a56135595b6c1aa1cf 100644 (file)
@@ -14,6 +14,10 @@ See the License for the specific language governing permissions and
 limitations under the License.
 ]]--
 
+if confighelp then
+  return
+end
+
 local rspamd_logger = require "rspamd_logger"
 local rspamd_util = require "rspamd_util"
 local fun = require "fun"