diff options
Diffstat (limited to 'src/plugins/lua/spamassassin.lua')
-rw-r--r-- | src/plugins/lua/spamassassin.lua | 35 |
1 files changed, 23 insertions, 12 deletions
diff --git a/src/plugins/lua/spamassassin.lua b/src/plugins/lua/spamassassin.lua index 9160b57c6..2e34201a4 100644 --- a/src/plugins/lua/spamassassin.lua +++ b/src/plugins/lua/spamassassin.lua @@ -1616,28 +1616,39 @@ if type(section) == "table" then for _, elt in ipairs(fn) do local files = util.glob(elt) + if not files or #files == 0 then + rspamd_logger.errx(rspamd_config, "cannot find any files matching pattern %s", elt) + else + for _,matched in ipairs(files) do + local f = io.open(matched, "r") + if f then + rspamd_logger.infox(rspamd_config, 'loading SA rules from %s', matched) + process_sa_conf(f) + has_rules = true + else + rspamd_logger.errx(rspamd_config, "cannot open %1", matched) + end + end + end + end + else + -- assume string + local files = util.glob(fn) + + if not files or #files == 0 then + rspamd_logger.errx(rspamd_config, "cannot find any files matching pattern %s", fn) + else for _,matched in ipairs(files) do local f = io.open(matched, "r") if f then + rspamd_logger.infox(rspamd_config, 'loading SA rules from %s', matched) process_sa_conf(f) has_rules = true else rspamd_logger.errx(rspamd_config, "cannot open %1", matched) end end - end - else - -- assume string - local files = util.glob(fn) - for _,matched in ipairs(files) do - local f = io.open(matched, "r") - if f then - process_sa_conf(f) - has_rules = true - else - rspamd_logger.errx(rspamd_config, "cannot open %1", matched) - end end end end |