Update rspamd to 0.9.5 0.9.5: * Avoid double free when extending HTTP message. * Fix double free if multiple classifiers are defined. * Fix misprint in spamassassin plugin. * Fix cpuid invocation on i386. * Fix ownership issues for zero-copy decode. * Allow __len metamethod on rspamd{text}. * Add base64 decoding lua utility. * Fix build on FreeBSD * Skip spaces at the beginning of mime messages. * DBL_ABUSE_REDIR should not have significant weight. * Allow to split by lua_regexp rspamd{text} objects. * Allow to specify custom stop pattern for lua_tcp. 0.9.4: * Fix critical bugs in tokenization algorithm * Write unit tests for tokenization * Add documentation for lua_tcp * Switch off legacy tokenization by default. * Fix critical bugs in words normalization * Add lua bindings to tokenizer. * Implement storing of HTTP headers inside task * Add lua API to accerss HTTP headers data * Implemented base64 encoding suitable for MIME * Use caseless hash and equal functions for HTTP request headers. * Improve debian architectures support (by @dottedmag) 0.9.3: * Revert incorrect regexp change that broke the default rules * Fix lua_tcp module 0.9.2: * Fix error on spawning unique workers. * Add preliminary version of generic LUA TCP requests API. * Use lua 5.1 if luajit is not available (Arm64, PowerPC, s390x etc) * Fix fuzzy mime strings with only type. * Improve thunderbird sanity checks. * Fix critical bug on matching regular expressions. * Make hiredis optional dependency. * Fix multiple bugs in daemon reloading 0.9.1: * Restore utf8 validation for regular expressions to avoid crashes * Fix symbols displaying in the interface * Add symbol groups to the interface * Fix maps ID parsing in the controller * Add multimap and regexp modules documentation * Backport fixes from libucl * Fix debian package (by @dottedmag) * Rework XXH32 invocations 0.9.0: * Add support of the fast and secure protocol level encryption: - curve25519 is used for key exchange; - chacha20/poly1305 cryptobox construction for bulk encryption; - zero latency overhead; - encrypting and balancing HTTP proxy worker * Rework expressions and create new expressions library: - aggressive optimizations based on the abstract syntax tree; - abstract expressions support (regular expressions, functions, lua modules composites and so on) - New comparision and '+' operators support - New greedy algorithm to minimize execution time of expressions and all symbols - Dynamic expressions benchmark and reoptimizations * Many improvements to the LUA API: - reworked logger module allowing to do pretty print of the most of lua types (including tables and userdata classes) - reworked lua redis and lua HTTP to support more features - added opaque type for passing large text chunks without copying - new regexp module with many auxiliary functions (e.g. `re:split`) * LuaJIT is now the default requirement for rspamd allowing to speed up lua execution by a large margin (however, plain lua is still supported) * New plugins: - spamassassin rules plugin that allows to load and re-use the most of SA rules natively - DMARC plugin that evaluates SPF and DKIM policies to the domain policies - many old plugins has been reworked to implement new features and improve stability * New aho-corasic trie implementation from @mischasan that allows to load and use hundreds of thousands of patterns with no influence on load * Support of PCRE JIT and PCRE JIT fast path modes that significantly improves the performance of regular expressions if supported by PCRE * New URLs parser and extractor: - removed legacy code that was useless for url finding - reworked algorithms of URL parsing for more precise and accurate results - added top-level-domains tree from http://publicsuffix.org - improved emails parsing - removed many phishing false positives due to TLD tree check * New statistics infrastructure: - created a separate layer of statistic library - improved OSB-Bayes by re-weighting tokens according to the original academic paper and `crm114` implementation, which reduced false positives rate significantly - created learn cache to avoid double learning of statistics and providing an efficient way to re-learn class for a message - created abstract layers for different statistics backends - implemented new tokenization algorithms with fast or secure (siphash) hashes to generate statistics features * Reworked utf8 tokenization that previously corrupted all UTF8 words (minor incompatibility with old fuzzy hashes with utf-8 symbols) * SPF module has been completely rewritten to support complex cases of `include` and `redirect` within SPF records * DKIM module now supports multiple signatures * Controller passwords can now be stored encrypted by `PBKDF2-HMAC` in the configuration file * Many hand-written HTTP clients has been replaced with the common rspamd http module * New test framework: - import lua `telescope` test framework - add unit tests for many rspamd modules and routines - create a unit test for each possible bug found - use luajit ffi for testing C code - added preliminary support of functional testing by creating tasks from lua * Randomize hash seed to avoid certain hash tables vulnerabilities * Documentation improvements: - added documentation for the vast majority of rspamd modules - added documentation for rspamd protocol - added documentation for the most of rspamd LUA extensions * Fixed tonns of bugs and memory leaks * Added tonns of minor features 0.8.3: * Various critical fixes in distribution (by @dottedmag and @fatalbanana) * Fixed bugs in url detector to parse certain patterns * Add default host and helo for a client * Some sanity checks for tokenizer and classifier * Reiterate on systemd support * Fix missing symbol registration * Add support of spamc compatible output * Filter double-dots in rbl.lua validate_dns (by @fatalbanana) * Update ucl submodule due to critical bugfix 0.8.2: * Create fuzzy db if it does not exist * Fix: Centos init script: configtest() (by @AlexeySa) * Enable one_shot for RECEIVED_SPAMHAUS_XBL - Fixes #102 (by @fatalbanana) * Update Exim patch (by @fatalbanana) * Fix processing of unix sockets. * Allow applying settings to authenticated users (by @fatalbanana) * Make settings priorities work as documented (by @fatalbanana) * Fix race condition in symbols planner * Add DNSWL_BLOCKED symbol (by @fatalbanana) * Make Exim pass usernames to rspamd (by @fatalbanana) * Update RBL module (by @fatalbanana): - fix indentation; - collapse loops; - avoid calling for un-needed information; - allow disabling RBLs for authenticated users * once_received.lua: Fix indentation & add exclusion for authenticated users (by @fatalbanana) * hfilter.lua: Add exclusion for authenticated users (by @AlexeySa) * Updates to hfilter rules (by @AlexeySa) * Set empty <> user or addr for msgs without FROM (by @eneq123) * Fix: attempt to index field '?' (a nil value) (by @eneq123) * Fix: if not exist Date-header (by @AlexeySa) * Add task:get_content() method. * rbl.lua: Ignore private IP space (by @fatalbanana) * Allow to check radix maps from lua by rspamd{ip} * Make local exclusions configurable per-RBL (by @fatalbanana) * Add rspamd_config:radix_from_config() (by @fatalbanana) * Support emails dnsbl in rbl (by @fatalbanana) * Complete rework of url extraction logic * Allow customizations for unix sockets. (fixes #182) * Set lua path according to rspamd settings. * Import lua-functional for plugins stuff. * Completely rewrite multimap plugin in functional style. * Fix FORGED_MUA_THUNDERBIRD_MSGID (fixes #186) * Check IPv6 addresses at dnswl.org and Spamhaus whitelist (by @fatalbanana) * Add lowercase utility for utf8 strings. * Various fixes to build system * Updated debian configuration infrastructure (by @dottedmag)diff -r1.11 -r1.12 pkgsrc/mail/rspamd/Makefile
(wiedi)
@@ -1,56 +1,60 @@ | @@ -1,56 +1,60 @@ | |||
1 | # $NetBSD: Makefile,v 1.11 2015/04/06 08:17:32 adam Exp $ | 1 | # $NetBSD: Makefile,v 1.12 2015/06/05 00:49:35 wiedi Exp $ | |
2 | 2 | |||
3 | DISTNAME= rspamd-0.8.1 | 3 | DISTNAME= rspamd-0.9.5 | |
4 | PKGREVISION= 1 | |||
5 | CATEGORIES= mail | 4 | CATEGORIES= mail | |
6 | MASTER_SITES= http://www.rspamd.com/downloads/ | 5 | MASTER_SITES= http://www.rspamd.com/downloads/ | |
7 | EXTRACT_SUFX= .tar.xz | 6 | EXTRACT_SUFX= .tar.xz | |
8 | 7 | |||
9 | MAINTAINER= wiedi@frubar.net | 8 | MAINTAINER= wiedi@frubar.net | |
10 | HOMEPAGE= https://www.rspamd.com/ | 9 | HOMEPAGE= https://www.rspamd.com/ | |
11 | COMMENT= Fast, free and open-source spam filtering system | 10 | COMMENT= Fast, free and open-source spam filtering system | |
12 | LICENSE= 2-clause-bsd | 11 | LICENSE= 2-clause-bsd | |
13 | 12 | |||
14 | USE_CMAKE= yes | 13 | USE_CMAKE= yes | |
15 | USE_TOOLS+= perl pkg-config | 14 | USE_TOOLS+= perl pkg-config | |
16 | USE_LANGUAGES= c99 | 15 | USE_LANGUAGES= c99 | |
17 | CPPFLAGS.SunOS+= -D__EXTENSIONS__ | 16 | CPPFLAGS.SunOS+= -D__EXTENSIONS__ | |
18 | LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/rspamd | 17 | LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/rspamd | |
18 | TEST_TARGET= run-test | |||
19 | 19 | |||
20 | PKG_SYSCONFSUBDIR= rspamd | 20 | PKG_SYSCONFSUBDIR= rspamd | |
21 | EGDIR= ${PREFIX}/share/examples/${PKGBASE} | 21 | EGDIR= ${PREFIX}/share/examples/${PKGBASE} | |
22 | 22 | |||
23 | CMAKE_ARGS+= -DMANDIR:PATH=${PREFIX}/${PKGMANDIR} | 23 | CMAKE_ARGS+= -DMANDIR:PATH=${PREFIX}/${PKGMANDIR} | |
24 | CMAKE_ARGS+= -DCONFDIR:PATH=${EGDIR} | 24 | CMAKE_ARGS+= -DCONFDIR:PATH=${EGDIR} | |
25 | CMAKE_ARGS+= -DENABLE_LUAJIT=OFF | |||
25 | 26 | |||
26 | MAKE_DIRS+= ${PKG_SYSCONFDIR}/lua | 27 | MAKE_DIRS+= ${PKG_SYSCONFDIR}/lua | |
27 | MAKE_DIRS+= ${PKG_SYSCONFDIR}/lua/regexp | 28 | MAKE_DIRS+= ${PKG_SYSCONFDIR}/lua/regexp | |
28 | 29 | |||
29 | CONF_FILES= ${EGDIR}/2tld.inc ${PKG_SYSCONFDIR}/2tld.inc | 30 | CONF_FILES= ${EGDIR}/2tld.inc ${PKG_SYSCONFDIR}/2tld.inc | |
31 | CONF_FILES+= ${EGDIR}/common.conf ${PKG_SYSCONFDIR}/common.conf | |||
30 | CONF_FILES+= ${EGDIR}/composites.conf ${PKG_SYSCONFDIR}/composites.conf | 32 | CONF_FILES+= ${EGDIR}/composites.conf ${PKG_SYSCONFDIR}/composites.conf | |
31 | CONF_FILES+= ${EGDIR}/logging.conf ${PKG_SYSCONFDIR}/logging.conf | 33 | CONF_FILES+= ${EGDIR}/logging.inc ${PKG_SYSCONFDIR}/logging.inc | |
32 | CONF_FILES+= ${EGDIR}/lua/hfilter.lua ${PKG_SYSCONFDIR}/lua/hfilter.lua | 34 | CONF_FILES+= ${EGDIR}/lua/hfilter.lua ${PKG_SYSCONFDIR}/lua/hfilter.lua | |
33 | CONF_FILES+= ${EGDIR}/lua/regexp/drugs.lua ${PKG_SYSCONFDIR}/lua/regexp/drugs.lua | 35 | CONF_FILES+= ${EGDIR}/lua/regexp/drugs.lua ${PKG_SYSCONFDIR}/lua/regexp/drugs.lua | |
34 | CONF_FILES+= ${EGDIR}/lua/regexp/fraud.lua ${PKG_SYSCONFDIR}/lua/regexp/fraud.lua | 36 | CONF_FILES+= ${EGDIR}/lua/regexp/fraud.lua ${PKG_SYSCONFDIR}/lua/regexp/fraud.lua | |
35 | CONF_FILES+= ${EGDIR}/lua/regexp/headers.lua ${PKG_SYSCONFDIR}/lua/regexp/headers.lua | 37 | CONF_FILES+= ${EGDIR}/lua/regexp/headers.lua ${PKG_SYSCONFDIR}/lua/regexp/headers.lua | |
36 | CONF_FILES+= ${EGDIR}/lua/regexp/lotto.lua ${PKG_SYSCONFDIR}/lua/regexp/lotto.lua | 38 | CONF_FILES+= ${EGDIR}/lua/regexp/lotto.lua ${PKG_SYSCONFDIR}/lua/regexp/lotto.lua | |
37 | CONF_FILES+= ${EGDIR}/lua/rspamd.classifiers.lua ${PKG_SYSCONFDIR}/lua/rspamd.classifiers.lua | 39 | CONF_FILES+= ${EGDIR}/lua/rspamd.classifiers.lua ${PKG_SYSCONFDIR}/lua/rspamd.classifiers.lua | |
38 | CONF_FILES+= ${EGDIR}/lua/rspamd.lua ${PKG_SYSCONFDIR}/lua/rspamd.lua | 40 | CONF_FILES+= ${EGDIR}/lua/rspamd.lua ${PKG_SYSCONFDIR}/lua/rspamd.lua | |
39 | CONF_FILES+= ${EGDIR}/metrics.conf ${PKG_SYSCONFDIR}/metrics.conf | 41 | CONF_FILES+= ${EGDIR}/metrics.conf ${PKG_SYSCONFDIR}/metrics.conf | |
40 | CONF_FILES+= ${EGDIR}/modules.conf ${PKG_SYSCONFDIR}/modules.conf | 42 | CONF_FILES+= ${EGDIR}/modules.conf ${PKG_SYSCONFDIR}/modules.conf | |
41 | CONF_FILES+= ${EGDIR}/options.conf ${PKG_SYSCONFDIR}/options.conf | 43 | CONF_FILES+= ${EGDIR}/options.inc ${PKG_SYSCONFDIR}/options.inc | |
42 | CONF_FILES+= ${EGDIR}/rspamd.conf ${PKG_SYSCONFDIR}/rspamd.conf | 44 | CONF_FILES+= ${EGDIR}/rspamd.conf ${PKG_SYSCONFDIR}/rspamd.conf | |
43 | CONF_FILES+= ${EGDIR}/statistic.conf ${PKG_SYSCONFDIR}/statistic.conf | 45 | CONF_FILES+= ${EGDIR}/statistic.conf ${PKG_SYSCONFDIR}/statistic.conf | |
44 | CONF_FILES+= ${EGDIR}/surbl-whitelist.inc ${PKG_SYSCONFDIR}/surbl-whitelist.inc | 46 | CONF_FILES+= ${EGDIR}/surbl-whitelist.inc ${PKG_SYSCONFDIR}/surbl-whitelist.inc | |
45 | CONF_FILES+= ${EGDIR}/workers.conf ${PKG_SYSCONFDIR}/workers.conf | 47 | CONF_FILES+= ${EGDIR}/worker-controller.inc ${PKG_SYSCONFDIR}/worker-controller.inc | |
48 | CONF_FILES+= ${EGDIR}/worker-normal.inc ${PKG_SYSCONFDIR}/worker-normal.inc | |||
46 | 49 | |||
47 | post-extract: | 50 | post-extract: | |
48 | ${FIND} ${WRKSRC}/conf -type d -exec ${CHMOD} ${PKGDIRMODE} {} \; | 51 | ${FIND} ${WRKSRC}/conf -type d -exec ${CHMOD} ${PKGDIRMODE} {} \; | |
49 | ${FIND} ${WRKSRC}/conf -type f -exec ${CHMOD} ${DOCMODE} {} \; | 52 | ${FIND} ${WRKSRC}/conf -type f -exec ${CHMOD} ${DOCMODE} {} \; | |
50 | 53 | |||
51 | .include "../../devel/libevent/buildlink3.mk" | 54 | .include "../../devel/libevent/buildlink3.mk" | |
52 | .include "../../devel/glib2/buildlink3.mk" | 55 | .include "../../devel/glib2/buildlink3.mk" | |
53 | .include "../../mail/gmime/buildlink3.mk" | 56 | .include "../../mail/gmime/buildlink3.mk" | |
54 | .include "../../databases/sqlite3/buildlink3.mk" | 57 | .include "../../databases/sqlite3/buildlink3.mk" | |
55 | .include "../../lang/lua/buildlink3.mk" | 58 | .include "../../lang/lua/buildlink3.mk" | |
59 | .include "../../databases/hiredis/buildlink3.mk" | |||
56 | .include "../../mk/bsd.pkg.mk" | 60 | .include "../../mk/bsd.pkg.mk" |
@@ -1,58 +1,52 @@ | @@ -1,58 +1,52 @@ | |||
1 | @comment $NetBSD: PLIST,v 1.2 2015/01/17 17:34:07 wiedi Exp $ | 1 | @comment $NetBSD: PLIST,v 1.3 2015/06/05 00:49:35 wiedi Exp $ | |
2 | bin/rspamc | 2 | bin/rspamc | |
3 | bin/rspamc-${PKGVERSION} | 3 | bin/rspamc-${PKGVERSION} | |
4 | bin/rspamd | 4 | bin/rspamd | |
5 | bin/${PKGNAME} | 5 | bin/${PKGNAME} | |
6 | lib/rspamd/librspamd-cdb.so | 6 | lib/rspamd/librspamd-actrie.so | |
7 | lib/rspamd/librspamd-cdb.so.${PKGVERSION} | |||
8 | lib/rspamd/librspamd-http-parser.so | |||
9 | lib/rspamd/librspamd-http-parser.so.${PKGVERSION} | |||
10 | lib/rspamd/librspamd-lua.so | |||
11 | lib/rspamd/librspamd-lua.so.${PKGVERSION} | |||
12 | lib/rspamd/librspamd-mime.so | |||
13 | lib/rspamd/librspamd-mime.so.${PKGVERSION} | |||
14 | lib/rspamd/librspamd-server.so | |||
15 | lib/rspamd/librspamd-server.so.${PKGVERSION} | |||
16 | lib/rspamd/librspamd-util.so | |||
17 | lib/rspamd/librspamd-util.so.${PKGVERSION} | |||
18 | lib/rspamd/librspamdclient.so | |||
19 | man/man1/rspamc.1 | 7 | man/man1/rspamc.1 | |
20 | man/man8/rspamd.8 | 8 | man/man8/rspamd.8 | |
21 | share/examples/rspamd/2tld.inc | 9 | share/examples/rspamd/2tld.inc | |
10 | share/examples/rspamd/common.conf | |||
22 | share/examples/rspamd/composites.conf | 11 | share/examples/rspamd/composites.conf | |
23 | share/examples/rspamd/logging.conf | 12 | share/examples/rspamd/logging.inc | |
24 | share/examples/rspamd/lua/hfilter.lua | 13 | share/examples/rspamd/lua/hfilter.lua | |
25 | share/examples/rspamd/lua/regexp/drugs.lua | 14 | share/examples/rspamd/lua/regexp/drugs.lua | |
26 | share/examples/rspamd/lua/regexp/fraud.lua | 15 | share/examples/rspamd/lua/regexp/fraud.lua | |
27 | share/examples/rspamd/lua/regexp/headers.lua | 16 | share/examples/rspamd/lua/regexp/headers.lua | |
28 | share/examples/rspamd/lua/regexp/lotto.lua | 17 | share/examples/rspamd/lua/regexp/lotto.lua | |
29 | share/examples/rspamd/lua/rspamd.classifiers.lua | 18 | share/examples/rspamd/lua/rspamd.classifiers.lua | |
30 | share/examples/rspamd/lua/rspamd.lua | 19 | share/examples/rspamd/lua/rspamd.lua | |
31 | share/examples/rspamd/metrics.conf | 20 | share/examples/rspamd/metrics.conf | |
32 | share/examples/rspamd/modules.conf | 21 | share/examples/rspamd/modules.conf | |
33 | share/examples/rspamd/options.conf | 22 | share/examples/rspamd/options.inc | |
34 | share/examples/rspamd/rspamd.conf | 23 | share/examples/rspamd/rspamd.conf | |
35 | share/examples/rspamd/statistic.conf | 24 | share/examples/rspamd/statistic.conf | |
36 | share/examples/rspamd/surbl-whitelist.inc | 25 | share/examples/rspamd/surbl-whitelist.inc | |
37 | share/examples/rspamd/workers.conf | 26 | share/examples/rspamd/worker-controller.inc | |
27 | share/examples/rspamd/worker-normal.inc | |||
28 | share/rspamd/effective_tld_names.dat | |||
29 | share/rspamd/lua/dmarc.lua | |||
38 | share/rspamd/lua/emails.lua | 30 | share/rspamd/lua/emails.lua | |
39 | share/rspamd/lua/forged_recipients.lua | 31 | share/rspamd/lua/forged_recipients.lua | |
32 | share/rspamd/lua/fun.lua | |||
40 | share/rspamd/lua/ip_score.lua | 33 | share/rspamd/lua/ip_score.lua | |
41 | share/rspamd/lua/maillist.lua | 34 | share/rspamd/lua/maillist.lua | |
42 | share/rspamd/lua/multimap.lua | 35 | share/rspamd/lua/multimap.lua | |
43 | share/rspamd/lua/once_received.lua | 36 | share/rspamd/lua/once_received.lua | |
44 | share/rspamd/lua/phishing.lua | 37 | share/rspamd/lua/phishing.lua | |
45 | share/rspamd/lua/ratelimit.lua | 38 | share/rspamd/lua/ratelimit.lua | |
46 | share/rspamd/lua/rbl.lua | 39 | share/rspamd/lua/rbl.lua | |
47 | share/rspamd/lua/settings.lua | 40 | share/rspamd/lua/settings.lua | |
41 | share/rspamd/lua/spamassassin.lua | |||
48 | share/rspamd/lua/trie.lua | 42 | share/rspamd/lua/trie.lua | |
49 | share/rspamd/www/README.md | 43 | share/rspamd/www/README.md | |
50 | share/rspamd/www/css/rspamd.css | 44 | share/rspamd/www/css/rspamd.css | |
51 | share/rspamd/www/img/asc.png | 45 | share/rspamd/www/img/asc.png | |
52 | share/rspamd/www/img/desc.png | 46 | share/rspamd/www/img/desc.png | |
53 | share/rspamd/www/img/spinner.gif | 47 | share/rspamd/www/img/spinner.gif | |
54 | share/rspamd/www/img/spinner.png | 48 | share/rspamd/www/img/spinner.png | |
55 | share/rspamd/www/index.html | 49 | share/rspamd/www/index.html | |
56 | share/rspamd/www/js/jquery.paginatetable.js | 50 | share/rspamd/www/js/jquery.paginatetable.js | |
57 | share/rspamd/www/js/rspamd.js | 51 | share/rspamd/www/js/rspamd.js | |
58 | share/rspamd/www/plugins.txt | 52 | share/rspamd/www/plugins.txt |
@@ -1,5 +1,5 @@ | @@ -1,5 +1,5 @@ | |||
1 | $NetBSD: distinfo,v 1.4 2015/01/23 21:47:44 wiedi Exp $ | 1 | $NetBSD: distinfo,v 1.5 2015/06/05 00:49:35 wiedi Exp $ | |
2 | 2 | |||
3 | SHA1 (rspamd-0.8.1.tar.xz) = 7ffe119d8ddfb05e298d740c2ad66156385170db | 3 | SHA1 (rspamd-0.9.5.tar.xz) = c298e7e02f77fc1577008ef5aa1da3ec5c8e2723 | |
4 | RMD160 (rspamd-0.8.1.tar.xz) = 16817053945d234122a93aee39287320f8c5cf75 | 4 | RMD160 (rspamd-0.9.5.tar.xz) = 786b767f11328d4914db29dbbc13896742ee96a2 | |
5 | Size (rspamd-0.8.1.tar.xz) = 750724 bytes | 5 | Size (rspamd-0.9.5.tar.xz) = 802752 bytes |