551ad1601b
1.6.5: 22 Oct 2017 - [CritFix] Another portion of tokenization fixes - [CritFix] Fix memory leak in spf caching logic - [CritFix] Fix milter commands pipelining - [CritFix] Fix newlines detection - [Feature] Filter nan and inf when adding scores - [Feature] Implement headers flags in mime parser - [Feature] Support Expires header when using HTTP maps - [Fix] Actively load skip hashes map in fuzzy storage - [Fix] Add workaround for IPv6 in sendmail - [Fix] Authentication Results: Fix SPF smtp.mail_from - [Fix] Check for magic when checking for an archive - [Fix] Deal with another case when processing exceptions - [Fix] Deal with URLs with no slashes after protocol - [Fix] Do not allow garbadge when checking url domain - [Fix] Do not ignore short words - [Fix] Do not strip last character in the last word - [Fix] Do not treat script content as text - [Fix] Erase unknown HTML entities - [Fix] Fix another tokenization issue - [Fix] Fix DKIM forgeries via multiple headers - [Fix] Fix emails detection - [Fix] Fix empty threshold check in greylisting module - [Fix] Fix enormous scores for R_WHITE_ON_WHITE - [Fix] Fix loading of per-user redis backend for statistics - [Fix] Fix multiple headers in DKIM headers list - [Fix] Fix obscured url in format user@@example.com - [Fix] Further tokenization fixes - [Fix] Load skip map from all processes as shared cache is unavailable - [Fix] Lowercase words - [Fix] Milter headers: skip_local / skip_authenticated settings - [Fix] Milter headers: X-Spamd-Result header if X-Virus ran first - [Fix] Ratelimit: fix whitelisted_rcpts matching - [Fix] Some more fixes towards emails detection - [Fix] SpamAssassin: Fail check_freemail_header if regexp didn't match - [Fix] Use greylisting threshold in greylisting module 1.6.4: 10 Sep 2017 - [Feature] Add method to get all content-type attributes in Lua - [Feature] Add some sanity checks for actions and controller - [Feature] Allow randomly select User-Agent from a list - [Feature] Deal with obscured URLs with @ symbols - [Feature] Milter headers: support adding/removing arbitrary headers from config - [Fix] Add another workaround to display history properly - [Fix] Add missing rspamadm control options to help - [Fix] Auth-Results: Multiple DKIM signatures - [Fix] Crash in URL processing - [Fix] Default monitoring domain for surbl plugin - [Fix] Detection of maillist optimized and fixed - [Fix] Do not cache SPF records with PTR elements - [Fix] Fix blacklists and DMARC in whitelist - [Fix] Fix exceptions list in surbl - [Fix] Fix processing of closed tags - [Fix] Fix PTR processing in SPF - [Fix] Lowercase HTTP headers to make them searchable from Lua - [Fix] options.local_networks setting - [Fix] Ratelimit: lowercase email addresses - [Fix] Rebalance and slightly rework MX check plugin - [Fix] Redis script loading in DMARC; URL tags; URL reputation - [Fix] Reject invalid bh for DKIM signatures earlier - [Fix] Remove incorrect method `task:set_metric_subject` - [Fix] Rewriting subjects via force actions module - [Fix] RPM postinstall - [Fix] Treat 'rewrite subject' as spam action - [Fix] Try harder to find urls - [Fix] Use full URL when making an HTTP request - [Fix] Use raw urls when sending requests to redirector - [Fix] Use weight from map for fuzzy scoring - [Rules] Penalise R_BAD_CTE_7BIT for utf8 messages 1.6.3: 26 Jul 2017 - [CritFix] Fix semicolons parsing in the content type - [Feature] Add EBL to the default config - [Feature] Allow to configure monitored - [Feature] Allow to skip specific hashes in fuzzy storage - [Feature] Multimap: checking of symbol options - [Feature] Redis settings: support checking multiple keys - [Fix] ARC: Fix Lua 5.3 compatibility; timestamp should be integer - [Fix] Avoid changing content-transfer-encoding header's value - [Fix] Don't use whitelist/greylist maps as regexp, but as map - [Fix] Fix get_content method - [Fix] Header checks: Fix get_raw_header method - [Fix] Header checks: REPLYTO_UNPARSEABLE rule - [Fix] Lua_http: freeing - [Fix] Milter headers: custom headers: removing headers - [Fix] Parse HREF urls without explicit prefix - [Fix] WHITE_ON_WHITE: Ensure score is matched to part that fired the rule - [WebUI] Escape strings inside HTML in history 1.6.2: 08 Jul 2017 - [Conf] Remove Rambler email bl for now - [Conf] Switch RAMBLER_URIBL to a locally managed source - [CritFix] Switch from ragel to C for Content-Type parsing - [Feature] Add `-e` option for lua_repl - [Feature] Add per-domain emails normalisation rules - [Feature] Add sessions cache to debug dangling sessions - [Feature] Add short_text_direct_hash for fuzzy check module - [Feature] Add text_part:get_stats function - [Feature] Allow to add custom processing script for surbl - [Feature] Allow to check reply-to email - [Feature] Allow to customize spam header, remove existing spam headers - [Feature] Allow to disable specific workers in the config - [Feature] Allow to discard messages instead of rejection - [Feature] Allow to specify custom delimiter in emails plugin - [Feature] Allow to specify custom User-Agent for rspamc - [Feature] Allow to store symbols data in Clickhouse - [Feature] Allow to use HTTPS when connecting to Clickhouse - [Feature] Enable sessions cache tracking for milter connections - [Feature] Implement per-line mode in lua_repl (like `perl -p`) - [Feature] Implement rdns-curve plugin based on rspamd cryptobox - [Feature] Improve maps cached data lifetime - [Feature] Improve maps checking frequency - [Feature] Improve monitored timeouts logic - [Feature] milter_headers: add `extended_headers_rcpt` option - [Feature] Milter headers: Add X-Spam-Flag to rmilter-compatibility headers - [Feature] Milter headers: remove-header routine - [Feature] Multimap: received filters for extracting TLDs from hostnames - [Feature] Normalize email aliases in emails module - [Feature] Re-add rambler email bl (as hashed list) - [Feature] Reload file maps more frequently - [Feature] Rework newlines strip parser one more time - [Feature] Skip updates for messages scanned via controller - [Feature] Split long DKIM public keys - [Feature] Store more data when stripping newlines - [Feature] Support SPF macros transformations - [Feature] Support suppressing DMARC reports for some domains - [Fix] Add missing `break` statement - [Fix] Allow modifiers in SPF macros - [Fix] DKIM sign tools: edge-cases around use_esld - [Fix] Do not cache SPF records with macros - [Fix] Do not overwrite score when setting pre-action - [Fix] Fix comparison logic - [Fix] Fix DKIM base64 folding for milter flagged messages - [Fix] Fix emails module configuration - [Fix] Fix folding for arc headers when milter interface is used - [Fix] Fix gmail dots removal - [Fix] Fix rspamc detection in greylist module - [Fix] Fix some more issues with HTTP maps - [Fix] Milter sessions can live forever - [Fix] Normalize fuzzy probability better - [Fix] Plug memory leak - [Fix] RBL: Fixed hashed email address lookups - [Fix] Try to deal with brain-damaged milter behaviour - [Fix] Use `\n` to fold headers for milter - [Rework] Allow to use custom callback for monitored checks - [Rework] Further steps towards one process monitoring - [Rework] Send health checks from a single worker - [WebUI] Round-up throughput summary values
144 lines
7.4 KiB
Makefile
144 lines
7.4 KiB
Makefile
# $NetBSD: Makefile,v 1.34 2018/02/01 09:58:11 fhajny Exp $
|
|
|
|
DISTNAME= rspamd-1.6.5
|
|
CATEGORIES= mail
|
|
MASTER_SITES= ${MASTER_SITE_GITHUB:=vstakhov/}
|
|
|
|
MAINTAINER= bartosz.kuzma@gmail.com
|
|
HOMEPAGE= https://www.rspamd.com/
|
|
COMMENT= Fast, free and open-source spam filtering system
|
|
LICENSE= 2-clause-bsd
|
|
|
|
.include "options.mk"
|
|
|
|
DEPENDS+= ${LUA_PKGPREFIX}-lpeg-[0-9]*:../../devel/lua-lpeg
|
|
DEPENDS+= ragel-[0-9]*:../../devel/ragel
|
|
|
|
USE_CMAKE= yes
|
|
USE_TOOLS+= perl pkg-config
|
|
USE_LANGUAGES= c99
|
|
BUILD_DEFS+= VARBASE
|
|
|
|
LUA_VERSIONS_ACCEPTED= 53
|
|
|
|
CPPFLAGS.SunOS+= -D__EXTENSIONS__
|
|
LDFLAGS+= ${COMPILER_RPATH_FLAG}${PREFIX}/lib/rspamd
|
|
TEST_TARGET= run-test
|
|
|
|
RSPAMD_USER?= rspamd
|
|
RSPAMD_GROUP?= rspamd
|
|
PKG_GROUPS= ${RSPAMD_GROUP}
|
|
PKG_USERS= ${RSPAMD_USER}:${RSPAMD_GROUP}
|
|
|
|
PKG_GROUPS_VARS= RSPAMD_GROUP
|
|
PKG_USERS_VARS= RSPAMD_USER
|
|
|
|
PKG_GECOS.${RSPAMD_USER}= rspamd user
|
|
|
|
PKG_SYSCONFSUBDIR= rspamd
|
|
EGDIR= ${PREFIX}/share/examples/${PKGBASE}
|
|
LOGDIR= ${VARBASE}/log/rspamd
|
|
DBDIR= ${VARBASE}/db/rspamd
|
|
RUNDIR= ${VARBASE}/run/rspamd
|
|
|
|
FILES_SUBST+= RSPAMD_USER=${RSPAMD_USER}
|
|
FILES_SUBST+= RSPAMD_GROUP=${RSPAMD_GROUP}
|
|
|
|
RCD_SCRIPTS= rspamd
|
|
|
|
CMAKE_ARGS+= -DMANDIR:PATH=${PREFIX}/${PKGMANDIR}
|
|
CMAKE_ARGS+= -DLOGDIR:PATH=${LOGDIR}
|
|
CMAKE_ARGS+= -DRUNDIR:PATH=${VARBASE}/run/rspamd
|
|
CMAKE_ARGS+= -DDBDIR:PATH=${DBDIR}
|
|
CMAKE_ARGS+= -DCONFDIR:PATH=${PKG_SYSCONFDIR}
|
|
CMAKE_ARGS+= -DRSPAMD_USER=${RSPAMD_USER}
|
|
CMAKE_ARGS+= -DRSPAMD_GROUP=${RSPAMD_GROUP}
|
|
CMAKE_ARGS+= -DENABLE_LUAJIT=OFF
|
|
CMAKE_ARGS+= -DENABLE_SQLITE=ON
|
|
|
|
REPLACE_PERL+= utils/rspamd_stats.pl
|
|
|
|
MAKE_DIRS+= ${PKG_SYSCONFDIR}/modules.d
|
|
|
|
OWN_DIRS_PERMS+= ${DBDIR} ${RSPAMD_USER} ${RSPAMD_GROUP} 0700
|
|
OWN_DIRS_PERMS+= ${LOGDIR} ${RSPAMD_USER} ${RSPAMD_GROUP} 0750
|
|
OWN_DIRS_PERMS+= ${RUNDIR} ${RSPAMD_USER} ${RSPAMD_GROUP} 0755
|
|
|
|
CONF_FILES= ${EGDIR}/2tld.inc ${PKG_SYSCONFDIR}/2tld.inc
|
|
CONF_FILES+= ${EGDIR}/common.conf ${PKG_SYSCONFDIR}/common.conf
|
|
CONF_FILES+= ${EGDIR}/composites.conf ${PKG_SYSCONFDIR}/composites.conf
|
|
CONF_FILES+= ${EGDIR}/dmarc_whitelist.inc ${PKG_SYSCONFDIR}/dmarc_whitelist.inc
|
|
CONF_FILES+= ${EGDIR}/logging.inc ${PKG_SYSCONFDIR}/logging.inc
|
|
CONF_FILES+= ${EGDIR}/maillist.inc ${PKG_SYSCONFDIR}/maillist.inc
|
|
CONF_FILES+= ${EGDIR}/metrics.conf ${PKG_SYSCONFDIR}/metrics.conf
|
|
CONF_FILES+= ${EGDIR}/mid.inc ${PKG_SYSCONFDIR}/mic.inc
|
|
CONF_FILES+= ${EGDIR}/mime_types.inc ${PKG_SYSCONFDIR}/mime_types.inc
|
|
CONF_FILES+= ${EGDIR}/modules.conf ${PKG_SYSCONFDIR}/modules.conf
|
|
CONF_FILES+= ${EGDIR}/options.inc ${PKG_SYSCONFDIR}/options.inc
|
|
CONF_FILES+= ${EGDIR}/redirectors.inc ${PKG_SYSCONFDIR}/redirectors.inc
|
|
CONF_FILES+= ${EGDIR}/rspamd.conf ${PKG_SYSCONFDIR}/rspamd.conf
|
|
CONF_FILES+= ${EGDIR}/spf_dkim_whitelist.inc ${PKG_SYSCONFDIR}/spf_dkim_whitelist.inc
|
|
CONF_FILES+= ${EGDIR}/statistic.conf ${PKG_SYSCONFDIR}/statistic.conf
|
|
CONF_FILES+= ${EGDIR}/surbl-whitelist.inc ${PKG_SYSCONFDIR}/surbl-whitelist.inc
|
|
CONF_FILES+= ${EGDIR}/worker-controller.inc ${PKG_SYSCONFDIR}/worker-controller.inc
|
|
CONF_FILES+= ${EGDIR}/worker-fuzzy.inc ${PKG_SYSCONFDIR}/worker-fuzzy.inc
|
|
CONF_FILES+= ${EGDIR}/worker-normal.inc ${PKG_SYSCONFDIR}/worker-normal.inc
|
|
CONF_FILES+= ${EGDIR}/worker-proxy.inc ${PKG_SYSCONFDIR}/worker-proxy.inc
|
|
CONF_FILES+= ${EGDIR}/modules.d/antivirus.conf ${PKG_SYSCONFDIR}/modules.d/antivirus.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/arc.conf ${PKG_SYSCONFDIR}/modules.d/arc.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/asn.conf ${PKG_SYSCONFDIR}/modules.d/asn.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/chartable.conf ${PKG_SYSCONFDIR}/modules.d/chartable.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/clickhouse.conf ${PKG_SYSCONFDIR}/modules.d/clickhouse.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/dcc.conf ${PKG_SYSCONFDIR}/modules.d/dcc.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/dkim.conf ${PKG_SYSCONFDIR}/modules.d/dkim.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/dkim_signing.conf ${PKG_SYSCONFDIR}/modules.d/dkim_signing.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/dmarc.conf ${PKG_SYSCONFDIR}/modules.d/dmarc.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/emails.conf ${PKG_SYSCONFDIR}/modules.d/emails.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/fann_redis.conf ${PKG_SYSCONFDIR}/modules.d/fann_redis.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/force_actions.conf ${PKG_SYSCONFDIR}/modules.d/force_actions.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/forged_recipients.conf ${PKG_SYSCONFDIR}/modules.d/forged_recipients.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/fuzzy_check.conf ${PKG_SYSCONFDIR}/modules.d/fuzzy_check.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/greylist.conf ${PKG_SYSCONFDIR}/modules.d/greylist.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/hfilter.conf ${PKG_SYSCONFDIR}/modules.d/hfilter.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/ip_score.conf ${PKG_SYSCONFDIR}/modules.d/ip_score.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/maillist.conf ${PKG_SYSCONFDIR}/modules.d/maillist.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/metadata_exporter.conf ${PKG_SYSCONFDIR}/modules.d/metadata_exporter.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/metric_exporter.conf ${PKG_SYSCONFDIR}/modules.d/metric_exporter.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/mid.conf ${PKG_SYSCONFDIR}/modules.d/mid.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/milter_headers.conf ${PKG_SYSCONFDIR}/modules.d/milter_headers.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/mime_types.conf ${PKG_SYSCONFDIR}/modules.d/mime_types.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/multimap.conf ${PKG_SYSCONFDIR}/modules.d/multimap.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/mx_check.conf ${PKG_SYSCONFDIR}/modules.d/mx_check.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/once_received.conf ${PKG_SYSCONFDIR}/modules.d/once_received.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/phishing.conf ${PKG_SYSCONFDIR}/modules.d/phishing.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/ratelimit.conf ${PKG_SYSCONFDIR}/modules.d/ratelimit.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/rbl.conf ${PKG_SYSCONFDIR}/modules.d/rbl.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/redis.conf ${PKG_SYSCONFDIR}/modules.d/redis.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/regexp.conf ${PKG_SYSCONFDIR}/modules.d/regexp.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/replies.conf ${PKG_SYSCONFDIR}/modules.d/replies.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/rspamd_update.conf ${PKG_SYSCONFDIR}/modules.d/rspamd_update.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/spamassassin.conf ${PKG_SYSCONFDIR}/modules.d/spamassassin.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/spamtrap.conf ${PKG_SYSCONFDIR}/modules.d/spamtrap.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/spf.conf ${PKG_SYSCONFDIR}/modules.d/spf.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/surbl.conf ${PKG_SYSCONFDIR}/modules.d/surbl.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/trie.conf ${PKG_SYSCONFDIR}/modules.d/trie.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/url_redirector.conf ${PKG_SYSCONFDIR}/modules.d/url_redirector.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/url_reputation.conf ${PKG_SYSCONFDIR}/modules.d/url_reputation.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/url_tags.conf ${PKG_SYSCONFDIR}/modules.d/url_tags.conf
|
|
CONF_FILES+= ${EGDIR}/modules.d/whitelist.conf ${PKG_SYSCONFDIR}/modules.d/whitelist.conf
|
|
|
|
post-extract:
|
|
${FIND} ${WRKSRC}/conf -type d -exec ${CHMOD} ${PKGDIRMODE} {} \;
|
|
${FIND} ${WRKSRC}/conf -type f -exec ${CHMOD} ${DOCMODE} {} \;
|
|
|
|
.include "../../databases/hiredis/buildlink3.mk"
|
|
.include "../../databases/sqlite3/buildlink3.mk"
|
|
.include "../../devel/fann/buildlink3.mk"
|
|
.include "../../devel/glib2/buildlink3.mk"
|
|
.include "../../devel/libevent/buildlink3.mk"
|
|
.include "../../lang/lua/buildlink3.mk"
|
|
.include "../../mail/gmime/buildlink3.mk"
|
|
.include "../../security/openssl/buildlink3.mk"
|
|
.include "../../sysutils/file/buildlink3.mk"
|
|
.include "../../textproc/icu/buildlink3.mk"
|
|
.include "../../mk/bsd.pkg.mk"
|