]> source.dussan.org Git - rspamd.git/log
rspamd.git
8 years agoAllow converting of learn cache from sqlite to redis
Vsevolod Stakhov [Wed, 27 Jan 2016 17:39:17 +0000 (17:39 +0000)]
Allow converting of learn cache from sqlite to redis

8 years agoAdd base32 decode/encode routines to lua util
Vsevolod Stakhov [Wed, 27 Jan 2016 17:37:30 +0000 (17:37 +0000)]
Add base32 decode/encode routines to lua util

8 years agoAdd warning for slow regexps
Vsevolod Stakhov [Wed, 27 Jan 2016 14:33:44 +0000 (14:33 +0000)]
Add warning for slow regexps

8 years agoNever set negative learn counts
Vsevolod Stakhov [Wed, 27 Jan 2016 14:06:17 +0000 (14:06 +0000)]
Never set negative learn counts

Issue: #496

8 years agoShow slow rules in log
Vsevolod Stakhov [Tue, 26 Jan 2016 23:11:44 +0000 (23:11 +0000)]
Show slow rules in log

8 years agoImprove planning of asynchronous tasks
Vsevolod Stakhov [Tue, 26 Jan 2016 22:40:30 +0000 (22:40 +0000)]
Improve planning of asynchronous tasks

8 years agoTry to fix build issue
Vsevolod Stakhov [Tue, 26 Jan 2016 21:23:41 +0000 (21:23 +0000)]
Try to fix build issue

8 years agoTry to read from HTTP socket even if we have timeout
Vsevolod Stakhov [Tue, 26 Jan 2016 18:00:52 +0000 (18:00 +0000)]
Try to read from HTTP socket even if we have timeout

8 years agoMerge pull request #504 from fatalbanana/master
Vsevolod Stakhov [Tue, 26 Jan 2016 17:50:47 +0000 (17:50 +0000)]
Merge pull request #504 from fatalbanana/master

Fix user/language learn count in sqlite statistics (#496)

8 years agoFix fuzzy relearning
Vsevolod Stakhov [Tue, 26 Jan 2016 17:48:39 +0000 (17:48 +0000)]
Fix fuzzy relearning

Issue: #489
Investigated by: @moisseev

8 years agoFix build with custom pcre
Vsevolod Stakhov [Tue, 26 Jan 2016 17:11:52 +0000 (17:11 +0000)]
Fix build with custom pcre

8 years agoFix user/language learn count in sqlite statistics (#496) 504/head
Andrew Lewis [Tue, 26 Jan 2016 16:11:14 +0000 (18:11 +0200)]
Fix user/language learn count in sqlite statistics (#496)

8 years agoTemporary enable pcre jit fast path
Vsevolod Stakhov [Tue, 26 Jan 2016 16:04:47 +0000 (16:04 +0000)]
Temporary enable pcre jit fast path

8 years agoIncrease severity of sqlite errors
Vsevolod Stakhov [Tue, 26 Jan 2016 14:18:14 +0000 (14:18 +0000)]
Increase severity of sqlite errors

8 years agoAnother fix to redis events logic
Vsevolod Stakhov [Tue, 26 Jan 2016 14:00:43 +0000 (14:00 +0000)]
Another fix to redis events logic

8 years agoTry to fix memory leak on redis stat
Vsevolod Stakhov [Tue, 26 Jan 2016 13:57:28 +0000 (13:57 +0000)]
Try to fix memory leak on redis stat

Issue: #500
Reported by: @mozzan

8 years agoFix redis stats
Vsevolod Stakhov [Tue, 26 Jan 2016 13:55:32 +0000 (13:55 +0000)]
Fix redis stats

8 years agoUse pipelined HINCRBY
Vsevolod Stakhov [Tue, 26 Jan 2016 13:16:42 +0000 (13:16 +0000)]
Use pipelined HINCRBY

8 years agoFix various issues
Vsevolod Stakhov [Tue, 26 Jan 2016 12:44:26 +0000 (12:44 +0000)]
Fix various issues

8 years agoImplement redis advanced lua api
Vsevolod Stakhov [Tue, 26 Jan 2016 12:14:10 +0000 (12:14 +0000)]
Implement redis advanced lua api

8 years agoStart improved redis lua api
Vsevolod Stakhov [Tue, 26 Jan 2016 10:04:45 +0000 (10:04 +0000)]
Start improved redis lua api

8 years agoFix stat migration script
Vsevolod Stakhov [Mon, 25 Jan 2016 23:40:49 +0000 (23:40 +0000)]
Fix stat migration script

8 years agoStore int64 as strings
Vsevolod Stakhov [Mon, 25 Jan 2016 23:40:09 +0000 (23:40 +0000)]
Store int64 as strings

There are no 64 bits integers in lua, so store them as strings

8 years agoMerge pull request #499 from fatalbanana/master
Vsevolod Stakhov [Mon, 25 Jan 2016 22:59:59 +0000 (22:59 +0000)]
Merge pull request #499 from fatalbanana/master

ratelimit: avoid possible indexing of nil value (Fixes #498)

8 years agoAdd stat_convert command
Vsevolod Stakhov [Mon, 25 Jan 2016 20:13:48 +0000 (20:13 +0000)]
Add stat_convert command

New command is intended to convert sqlite stats to redis stats

8 years agoFix parsing of redis args
Vsevolod Stakhov [Mon, 25 Jan 2016 20:13:26 +0000 (20:13 +0000)]
Fix parsing of redis args

8 years agoratelimit: avoid possible indexing of nil value (Fixes #498) 499/head
Andrew Lewis [Mon, 25 Jan 2016 17:31:51 +0000 (19:31 +0200)]
ratelimit: avoid possible indexing of nil value (Fixes #498)

8 years agoImplement synchronous redis call
Vsevolod Stakhov [Mon, 25 Jan 2016 16:36:36 +0000 (16:36 +0000)]
Implement synchronous redis call

8 years agoAdd lua_sqlite3 unit tests
Vsevolod Stakhov [Mon, 25 Jan 2016 16:16:19 +0000 (16:16 +0000)]
Add lua_sqlite3 unit tests

8 years agoFix locking issues with sqlite
Vsevolod Stakhov [Mon, 25 Jan 2016 16:10:21 +0000 (16:10 +0000)]
Fix locking issues with sqlite

8 years agoFix more issues
Vsevolod Stakhov [Mon, 25 Jan 2016 15:49:27 +0000 (15:49 +0000)]
Fix more issues

8 years agoFix sqlite3 API initialization
Vsevolod Stakhov [Mon, 25 Jan 2016 15:26:49 +0000 (15:26 +0000)]
Fix sqlite3 API initialization

8 years agoAdd lua sqlite3 module
Vsevolod Stakhov [Mon, 25 Jan 2016 15:15:01 +0000 (15:15 +0000)]
Add lua sqlite3 module

8 years agoFix HEADER_FORGED_MDN rule
Vsevolod Stakhov [Mon, 25 Jan 2016 14:34:16 +0000 (14:34 +0000)]
Fix HEADER_FORGED_MDN rule

8 years agoDo not require mempool to open sqlite3 db
Vsevolod Stakhov [Mon, 25 Jan 2016 13:23:29 +0000 (13:23 +0000)]
Do not require mempool to open sqlite3 db

8 years agoAdd parsing to MDN rules
Vsevolod Stakhov [Mon, 25 Jan 2016 11:37:36 +0000 (11:37 +0000)]
Add parsing to MDN rules

Issue: #480

8 years agoAdd util.parse_mail_address function to LUA API
Vsevolod Stakhov [Mon, 25 Jan 2016 11:31:34 +0000 (11:31 +0000)]
Add util.parse_mail_address function to LUA API

8 years agoMove internet address pushing to common routines
Vsevolod Stakhov [Mon, 25 Jan 2016 11:23:35 +0000 (11:23 +0000)]
Move internet address pushing to common routines

8 years agoDisable bad hfilter symbols in metrics
Vsevolod Stakhov [Mon, 25 Jan 2016 11:08:54 +0000 (11:08 +0000)]
Disable bad hfilter symbols in metrics

Issue: #497
Reported by: @MisterM74

8 years agoSame issue for [] addresses
Vsevolod Stakhov [Mon, 25 Jan 2016 00:12:17 +0000 (00:12 +0000)]
Same issue for [] addresses

8 years agoErm, fix issue with length calculation
Vsevolod Stakhov [Sun, 24 Jan 2016 23:51:57 +0000 (23:51 +0000)]
Erm, fix issue with length calculation

8 years agoFix names for parsed addresses
Vsevolod Stakhov [Sun, 24 Jan 2016 23:50:42 +0000 (23:50 +0000)]
Fix names for parsed addresses

8 years agoAdd logging macroes with guards
Vsevolod Stakhov [Sun, 24 Jan 2016 23:31:45 +0000 (23:31 +0000)]
Add logging macroes with guards

8 years agoRework parsing of IP addresses
Vsevolod Stakhov [Sun, 24 Jan 2016 23:23:37 +0000 (23:23 +0000)]
Rework parsing of IP addresses

8 years agoAdd rule to detect spammers attempts to cheat mime parsing
Vsevolod Stakhov [Sun, 24 Jan 2016 14:10:33 +0000 (14:10 +0000)]
Add rule to detect spammers attempts to cheat mime parsing

8 years agoFix misprint in the path
Vsevolod Stakhov [Sat, 23 Jan 2016 22:16:13 +0000 (22:16 +0000)]
Fix misprint in the path

8 years agoAdd symbols for mime_types to the default config
Vsevolod Stakhov [Sat, 23 Jan 2016 14:36:25 +0000 (14:36 +0000)]
Add symbols for mime_types to the default config

8 years agoAdd mime types checking plugin
Vsevolod Stakhov [Sat, 23 Jan 2016 13:44:49 +0000 (13:44 +0000)]
Add mime types checking plugin

8 years agoUse `task:get_from()` to get sender
Vsevolod Stakhov [Fri, 22 Jan 2016 19:00:45 +0000 (19:00 +0000)]
Use `task:get_from()` to get sender

8 years agoAllow `any`, `mime` and `smtp` for get_from/get_recipients
Vsevolod Stakhov [Fri, 22 Jan 2016 19:00:21 +0000 (19:00 +0000)]
Allow `any`, `mime` and `smtp` for get_from/get_recipients

8 years agoAdd support for forged confirmation headers
Vsevolod Stakhov [Fri, 22 Jan 2016 18:28:11 +0000 (18:28 +0000)]
Add support for forged confirmation headers

Issue: #480
Reported by: @AdUser
Patch by: @AdUser

8 years agoRework ratelimits documentation
Vsevolod Stakhov [Fri, 22 Jan 2016 18:20:09 +0000 (18:20 +0000)]
Rework ratelimits documentation

8 years agoAdd `BROKEN_HEADERS` rule
Vsevolod Stakhov [Fri, 22 Jan 2016 17:26:23 +0000 (17:26 +0000)]
Add `BROKEN_HEADERS` rule

8 years agoFix broken headers and task:has_flag
Vsevolod Stakhov [Fri, 22 Jan 2016 17:09:15 +0000 (17:09 +0000)]
Fix broken headers and task:has_flag

8 years agoErm, forgot to add the real fix to google groups
Vsevolod Stakhov [Fri, 22 Jan 2016 16:50:38 +0000 (16:50 +0000)]
Erm, forgot to add the real fix to google groups

8 years agoRework flags LUA API
Vsevolod Stakhov [Fri, 22 Jan 2016 16:47:58 +0000 (16:47 +0000)]
Rework flags LUA API

- Allow to check for a specific flag
- Add `learn_spam`, `learn_ham` and `broken_headers` flags
- Unify internal functions

8 years agoAdd broken headers flag
Vsevolod Stakhov [Fri, 22 Jan 2016 16:47:51 +0000 (16:47 +0000)]
Add broken headers flag

8 years agoFix googlegroups support in maillist plugin
Vsevolod Stakhov [Fri, 22 Jan 2016 16:27:25 +0000 (16:27 +0000)]
Fix googlegroups support in maillist plugin

8 years agoDon't crash if learn cache failed to initialize
Vsevolod Stakhov [Fri, 22 Jan 2016 16:24:04 +0000 (16:24 +0000)]
Don't crash if learn cache failed to initialize

8 years agoFix cache definitions in multiple classifier and no type
Vsevolod Stakhov [Fri, 22 Jan 2016 16:14:04 +0000 (16:14 +0000)]
Fix cache definitions in multiple classifier and no type

Issue: #493
Reported by: @wackerm

8 years agoDisable MID checks for hfilter by default
Vsevolod Stakhov [Fri, 22 Jan 2016 15:48:08 +0000 (15:48 +0000)]
Disable MID checks for hfilter by default

8 years agoFix issues with dual stack and hfilter
Vsevolod Stakhov [Fri, 22 Jan 2016 15:47:57 +0000 (15:47 +0000)]
Fix issues with dual stack and hfilter

8 years agoAdjust some weights
Vsevolod Stakhov [Fri, 22 Jan 2016 14:26:40 +0000 (14:26 +0000)]
Adjust some weights

8 years agoFaster curve25519 key generation via Edwards isomorphism
Vsevolod Stakhov [Fri, 22 Jan 2016 14:05:11 +0000 (14:05 +0000)]
Faster curve25519 key generation via Edwards isomorphism

8 years agoIncrease number of messages learned
Vsevolod Stakhov [Fri, 22 Jan 2016 13:38:49 +0000 (13:38 +0000)]
Increase number of messages learned

Issue: #492
Reported by: @mnik247

8 years agoDo not recompile lua generated headers all time
Vsevolod Stakhov [Thu, 21 Jan 2016 17:02:21 +0000 (17:02 +0000)]
Do not recompile lua generated headers all time

8 years agoUse the unified checkpoints function in fuzzy_backend
Vsevolod Stakhov [Thu, 21 Jan 2016 16:45:54 +0000 (16:45 +0000)]
Use the unified checkpoints function in fuzzy_backend

8 years agoAdd checkpoints to learn cache
Vsevolod Stakhov [Thu, 21 Jan 2016 16:45:42 +0000 (16:45 +0000)]
Add checkpoints to learn cache

8 years agoAdd dedicated function to checkpoint sqlite
Vsevolod Stakhov [Thu, 21 Jan 2016 16:45:18 +0000 (16:45 +0000)]
Add dedicated function to checkpoint sqlite

8 years agoFix stat_cache closing
Vsevolod Stakhov [Thu, 21 Jan 2016 16:37:00 +0000 (16:37 +0000)]
Fix stat_cache closing

8 years agoUpdate version to 1.1.2
Vsevolod Stakhov [Thu, 21 Jan 2016 16:15:09 +0000 (16:15 +0000)]
Update version to 1.1.2

8 years agoRelease 1.1.1 1.1.1
Vsevolod Stakhov [Thu, 21 Jan 2016 15:23:42 +0000 (15:23 +0000)]
Release 1.1.1

* Fix duplicated XBL symbol
* Reduce log severity for ratelimit missing servers
* Fix XBL composite to avoid duplicate symbols
* Reduce weight of URL_ONLY rule due to FP rate
* Disable fuzzy hashes from the metadata for now
* Fix processing of empty messages (#486)
* Always treat DNS timeouts as temporary fail for SPF
* Fix issue with SPF double IP stack (#483)
* Use X-Forwarded-For when checking secure_ip (#488)
* Fix hash calculation for sqlite stats
* Fix memory corruption on punycode
* Fix strings allocation in punycode
* Fix error message (#491)

Signed-off-by: Vsevolod Stakhov <vsevolod@highsecure.ru>
8 years agoFix error message
Vsevolod Stakhov [Thu, 21 Jan 2016 09:55:03 +0000 (09:55 +0000)]
Fix error message

Issue: #491
Reported by: @moisseev

8 years agoOops, fix typename for rnds
Vsevolod Stakhov [Wed, 20 Jan 2016 16:25:43 +0000 (16:25 +0000)]
Oops, fix typename for rnds

8 years agoAnother fix to punycode
Vsevolod Stakhov [Wed, 20 Jan 2016 16:24:22 +0000 (16:24 +0000)]
Another fix to punycode

8 years agoFix memory corruption on punycode
Vsevolod Stakhov [Wed, 20 Jan 2016 16:15:19 +0000 (16:15 +0000)]
Fix memory corruption on punycode

8 years agoRemove some chars from domain safe class
Vsevolod Stakhov [Wed, 20 Jan 2016 15:10:21 +0000 (15:10 +0000)]
Remove some chars from domain safe class

8 years agoAdd X-Real-IP support as well
Vsevolod Stakhov [Wed, 20 Jan 2016 14:37:47 +0000 (14:37 +0000)]
Add X-Real-IP support as well

8 years agoFix hash calculation for sqlite stats
Vsevolod Stakhov [Wed, 20 Jan 2016 10:00:24 +0000 (10:00 +0000)]
Fix hash calculation for sqlite stats

8 years agoAllow authorized IP without forwarded
Vsevolod Stakhov [Wed, 20 Jan 2016 08:38:35 +0000 (08:38 +0000)]
Allow authorized IP without forwarded

Issue: #488

8 years agoUse X-Forwarded-For when checking secure_ip
Vsevolod Stakhov [Wed, 20 Jan 2016 00:53:02 +0000 (00:53 +0000)]
Use X-Forwarded-For when checking secure_ip

Issue: #488

8 years agoFix issue with SPF double IP stack
Vsevolod Stakhov [Tue, 19 Jan 2016 21:09:07 +0000 (21:09 +0000)]
Fix issue with SPF double IP stack

Issue: #483

8 years agoAlways treat DNS timeouts as temporary fail for SPF
Vsevolod Stakhov [Tue, 19 Jan 2016 20:55:54 +0000 (20:55 +0000)]
Always treat DNS timeouts as temporary fail for SPF

8 years agoFix processing of empty messages.
Vsevolod Stakhov [Tue, 19 Jan 2016 20:48:14 +0000 (20:48 +0000)]
Fix processing of empty messages.

Issue: #486
Reported by: @moisseev

8 years agoDisable fuzzy hashes from the metadata
Vsevolod Stakhov [Tue, 19 Jan 2016 18:31:11 +0000 (18:31 +0000)]
Disable fuzzy hashes from the metadata

Issue: #486

8 years agoSlightly fix documentation.
Vsevolod Stakhov [Tue, 19 Jan 2016 18:25:59 +0000 (18:25 +0000)]
Slightly fix documentation.

8 years agoReduce weight of URL_ONLY rule due to FP rate
Vsevolod Stakhov [Tue, 19 Jan 2016 15:04:00 +0000 (15:04 +0000)]
Reduce weight of URL_ONLY rule due to FP rate

8 years agoUpdate version to 1.1.1
Vsevolod Stakhov [Tue, 19 Jan 2016 15:00:05 +0000 (15:00 +0000)]
Update version to 1.1.1

8 years agoFix XBL composite to avoid duplicate symbols
Vsevolod Stakhov [Tue, 19 Jan 2016 14:58:41 +0000 (14:58 +0000)]
Fix XBL composite to avoid duplicate symbols

8 years agoReduce log severity for ratelimit missing servers
Vsevolod Stakhov [Tue, 19 Jan 2016 14:32:49 +0000 (14:32 +0000)]
Reduce log severity for ratelimit missing servers

8 years agoFix duplicated XBL symbol
Vsevolod Stakhov [Tue, 19 Jan 2016 14:27:11 +0000 (14:27 +0000)]
Fix duplicated XBL symbol

8 years agoFix some compiler warnings
Vsevolod Stakhov [Mon, 18 Jan 2016 18:11:11 +0000 (18:11 +0000)]
Fix some compiler warnings

8 years agoAdd migration notes 1.0 -> 1.1
Vsevolod Stakhov [Mon, 18 Jan 2016 18:07:39 +0000 (18:07 +0000)]
Add migration notes 1.0 -> 1.1

8 years agoMerge pull request #484 from fatalbanana/master
Vsevolod Stakhov [Mon, 18 Jan 2016 18:03:54 +0000 (18:03 +0000)]
Merge pull request #484 from fatalbanana/master

Update CentOS7 service file patch again

8 years agoUpdate CentOS7 service file patch again 484/head
Andrew Lewis [Mon, 18 Jan 2016 17:38:24 +0000 (19:38 +0200)]
Update CentOS7 service file patch again

8 years agoRelease 1.1.0 1.1.0
Vsevolod Stakhov [Mon, 18 Jan 2016 16:25:39 +0000 (16:25 +0000)]
Release 1.1.0

* Incompatible change: sqlite3 and per_user behaviour:
Now both redis and sqlite3 follows the common principles for per-user
statistics:
1) If per-user statistics is enabled check per-user tokens ONLY
2) If per-user statistics is not enabled then check common tokens ONLY
If you need old behaviour, then you'd need to use separate classifier
for per-user statistics.
* Implement redis statistics backend and cache
* Implement autolearning for statistics
* Reworked statistics architecture from scratch
* Add hyperscan (https://github.com/01org/hyperscan) engine for regular
expressions:
- add lazy loader for hyperscan databases
- rework regexp cache to have joint pcre/hyperscan scanning
- implement hyperscan pre-filter support
- add compilation guards for bad expressions
- implement `rspamadm control recompile` command
- implement hyperscan cache monitoring
- slides: <https://highsecure.ru/rspamd-hyperscan.pdf>
* Implement flexible task logging
* Rework fuzzy worker:
- it is now possible to run multiple fuzzy workers;
- implement lazy writing as sqlite3 is bad at concurrent writing;
- add retries for simple sql commands in fuzzy backend;
- use fine-grained transactions for fuzzy;
- implement new multi-pubkeys mode;
- allow encrypted only storages;
- rework statistics for fuzzy;
- add `rspamadm control fuzzystat` command for extended statistics;
- implement human readable output for the previous command;
- add condition script for learning fuzzy storage;
* Various fixes to SPF:
- fix `redirect` records;
- fix domains when parsing mx/ptr/a records in includes/redirects;
- fix issues with multiple addresses in SPF records;
- ignore SPF results in case of DNS failure;
- adjust TTL of records when resolving subelements of SPF records;
- always select `v=spf1` line if it is available
- do not cache records with DNS failure in subrequests;
- ignore records with temporary fails during subrequests resolving;
- fix `RDNS_RC_NOREC` support;
* Add clang plugin for static analysis:
- implement static checks for `rspamd_printf` format strings;
* Add 'allow_raw_input' option for non-mime messages
* Recognize types using libmagic
* Fix parsing of IPv6 received headers
* Add new interface of communication between workers in rspamd
* Add support for named socketpairs
* Don't write URLs by default as it is too verbose
* Set status for HTTP replies
* Try load `rspamd.conf.override`
* Implement words decaying for text parts to limit many checks
* Improve support of SA rules and plugins:
- add check_for_shifted_date and check_for_missing_to_header eval rules;
- add 'check_relays_unparseable' support;
- add `check_for_mime('mime_attachement')` function;
- use new re_cache interface for all SA rules;
- add support for `Mail::SpamAssassin::Plugin::MIMEHeader`;
- add support of 'special' SA headers to `exists` function;
- fix issue when SA metas contain other metas;
- fix freemail rules;
* Many fixes to the URL parser
* Match any newline character in regexps
* Fix resolving of upstreams and detection of poor IPv6 configurations
* Parse upstreams selection algorithm from the configuration line
* Add `reresolve` command to the control interface
* Generate fuzzy hashes from task metadata (URLs and headers)
* Add method to check if IP is local and `local_addrs` option
* Implement forced timeout for delayed filters
* Disable fast path of pcre-jit as it seems to be broken
* Bayes fixes:
- new normalizer function;
- really use weights of tokens from the OSB algorithm;
- restore multiple classifiers support;
* Rules changes:
- add `R_SUSPICIOUS_URL` rule that detects obfuscated URL's;
- improve empty image rule;
- rework `FORGED_RECIPIENTS` rule;
- reduce weight of `SUSPICIOUS_RECIPS`;
- fix `*_NORESOLVE_MX` symbols in hfilter;
- add `SUBJ_ALL_CAPS` rule with support of UTF8
- add spamhaus SBL to uribl
- fix `SUSPICIOUS_RECIPS` and `SORTED_RECIPS` rules
- remove `R_TO_SEEMS_AUTO` as it generates a lot of FP;
- add new Message-ID regexp for Thunderbird (by @moisseev);
* Plugins changes:
- allow ratelimit plugin to set symbol instead of pre-result
- support IP DNS black lists for URIBL (e.g spamhaus SBL);
- drop deprecated SURBL bits (by @fatalbanana)
- rename `JP_SURBL_MULTI` to `ABUSE_SURBL` (by @fatalbanana)
- add `SURBL_BLOCKED` (by @fatalbanana)
- add `CR_SURBL`
- SURBL: allow fallthrough to default symbol (by @fatalbanana)
- Settings: fix IP match (by @fatalbanana)
- SURBL: add missing symbols to metric (by @fatalbanana)
- allow processing images urls for SURBL
- unconditionally disable SPF for authenticated users and local networks
* Rework ratelimit plugin
- switch to `rates` instead of old and stupid strings to setup;
- check if a bucket is zero and disable the corresponding limits'
- turn off all buckets by default;
- check either `rcpt` or `user` buckets, not all together'
- document new `rates` and `symbol` options;
- inform user about what buckets are used in the configuration;
* Add neural network **experimental** plugin
* Add a sample script to learn neural network from rspamd logs
* Add documentation strings support to rspamd:
- add strings for the main configuration options;
- document workers options;
- add internal plugin options;
- create `rspamadm confighelp` routine;
- implement human readable output for the previous command;
- add subtree search support;
- add keyword search support;
* Documentation improvements, tutorials section, statistics description
* Many other minor and major bugfixes not noted here

Signed-off-by: Vsevolod Stakhov <vsevolod@highsecure.ru>
8 years agoFix an awful memory leak
Vsevolod Stakhov [Mon, 18 Jan 2016 14:05:45 +0000 (14:05 +0000)]
Fix an awful memory leak

8 years agoSmall improvement of logging
Vsevolod Stakhov [Mon, 18 Jan 2016 09:56:48 +0000 (09:56 +0000)]
Small improvement of logging

8 years agoRework hyperscan notifies to reduce noise level
Vsevolod Stakhov [Mon, 18 Jan 2016 01:07:11 +0000 (01:07 +0000)]
Rework hyperscan notifies to reduce noise level

8 years agoDisable fast path of pcre as it seems to be broken
Vsevolod Stakhov [Mon, 18 Jan 2016 00:48:53 +0000 (00:48 +0000)]
Disable fast path of pcre as it seems to be broken