From 5c9f2916da73dd4e776fa6c3a57f5be95efbdf8ad753732fa886e0e0813de9f9 Mon Sep 17 00:00:00 2001 From: Marcus Rueckert Date: Wed, 16 Oct 2024 11:20:44 +0000 Subject: [PATCH 1/2] - Update to 3.10.1 - [Fix] Use correct type for keylen in lua_ucl_newindex by @arkamar in #5169 - Update hiredis library removing all hacks by @vstakhov in #5167 - Remove proxy from url_redirector.conf as it not the option by @dragoangel in #5164 - chore(publicsuffix): update effective_tld_names.dat by @wdhdev in #5176 - [Fix] Avoid null-bytes in Log-Tag header value by @smarsching in #5179 - [Fix] Do not abort when OpenSSL is broken, report that to a user by @vstakhov in #5188 - Some build fixes by @vstakhov in #5189 - Some more fixes by @vstakhov in #5190 OBS-URL: https://build.opensuse.org/package/show/server:mail/rspamd?expand=0&rev=126 --- .gitattributes | 23 + .gitignore | 1 + fix_missing_return.patch | 12 + rspamd-3.10.0.tar.gz | 3 + rspamd-3.10.1.tar.gz | 3 + rspamd-3.8.4.tar.gz | 3 + rspamd-3.9.0.tar.gz | 3 + rspamd-after-redis-target.patch | 17 + rspamd-conf.patch | 14 + rspamd.changes | 2066 +++++++++++++++++++++++++++++++ rspamd.spec | 725 +++++++++++ usr.bin.rspamd | 35 + 12 files changed, 2905 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 fix_missing_return.patch create mode 100644 rspamd-3.10.0.tar.gz create mode 100644 rspamd-3.10.1.tar.gz create mode 100644 rspamd-3.8.4.tar.gz create mode 100644 rspamd-3.9.0.tar.gz create mode 100644 rspamd-after-redis-target.patch create mode 100644 rspamd-conf.patch create mode 100644 rspamd.changes create mode 100644 rspamd.spec create mode 100644 usr.bin.rspamd diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/fix_missing_return.patch b/fix_missing_return.patch new file mode 100644 index 0000000..d2ab69d --- /dev/null +++ b/fix_missing_return.patch @@ -0,0 +1,12 @@ +Index: rspamd-3.7.5/src/libserver/symcache/symcache_item.hxx +=================================================================== +--- rspamd-3.7.5.orig/src/libserver/symcache/symcache_item.hxx ++++ rspamd-3.7.5/src/libserver/symcache/symcache_item.hxx +@@ -78,6 +78,7 @@ constexpr static auto item_type_to_str(s + case symcache_item_type::VIRTUAL: + return "virtual"; + } ++ return "should_not_reach_this_bug_found"; + } + + /** diff --git a/rspamd-3.10.0.tar.gz b/rspamd-3.10.0.tar.gz new file mode 100644 index 0000000..cd34bff --- /dev/null +++ b/rspamd-3.10.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:528d7f8e2e6263378d043a41c4b1c5dbf1b3e54f3085619f68b04e283efa4a69 +size 6008518 diff --git a/rspamd-3.10.1.tar.gz b/rspamd-3.10.1.tar.gz new file mode 100644 index 0000000..91fbf17 --- /dev/null +++ b/rspamd-3.10.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:68fa02f468edd126783df225bcabe82f4578468a1a8c83764fbd130fd8497d45 +size 6047582 diff --git a/rspamd-3.8.4.tar.gz b/rspamd-3.8.4.tar.gz new file mode 100644 index 0000000..37eb0cf --- /dev/null +++ b/rspamd-3.8.4.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ebea263f60a3d6036c153df0766b4aa03690e8caf59946d24ee54d8bb595c75d +size 5915680 diff --git a/rspamd-3.9.0.tar.gz b/rspamd-3.9.0.tar.gz new file mode 100644 index 0000000..0ca5f74 --- /dev/null +++ b/rspamd-3.9.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e7e1ba150f8535ec0f25647d56448257098d4791bdbf3a572f197bf169d73b1f +size 5955138 diff --git a/rspamd-after-redis-target.patch b/rspamd-after-redis-target.patch new file mode 100644 index 0000000..8674109 --- /dev/null +++ b/rspamd-after-redis-target.patch @@ -0,0 +1,17 @@ +Ensure that network is up when rspamd is started + +otherwise, it can fail to reach remote rspamd hosts + +Index: rspamd-2.6/rspamd.service +=================================================================== +--- rspamd-2.6.orig/rspamd.service ++++ rspamd-2.6/rspamd.service +@@ -1,6 +1,7 @@ + [Unit] + Description=rapid spam filtering system +-After=nss-lookup.target network-online.target ++After=nss-lookup.target network-online.target redis.target ++Wants=network-online.target + Documentation=https://rspamd.com/doc/ + + [Service] diff --git a/rspamd-conf.patch b/rspamd-conf.patch new file mode 100644 index 0000000..82a3c51 --- /dev/null +++ b/rspamd-conf.patch @@ -0,0 +1,14 @@ +Index: rspamd-3.7.5/conf/rspamd.conf +=================================================================== +--- rspamd-3.7.5.orig/conf/rspamd.conf ++++ rspamd-3.7.5/conf/rspamd.conf +@@ -34,7 +34,8 @@ lang_detection { + .include(try=true; priority=1,duplicate=merge) "$LOCAL_CONFDIR/local.d/cgp.inc" + + logging { +- type = "file"; ++ type = "console"; ++ systemd = true; + filename = "$LOGDIR/rspamd.log"; + .include "$CONFDIR/logging.inc" + .include(try=true; priority=1,duplicate=merge) "$LOCAL_CONFDIR/local.d/logging.inc" diff --git a/rspamd.changes b/rspamd.changes new file mode 100644 index 0000000..c8e89a3 --- /dev/null +++ b/rspamd.changes @@ -0,0 +1,2066 @@ +------------------------------------------------------------------- +Wed Oct 16 11:09:33 UTC 2024 - Marcus Rueckert + +- Update to 3.10.1 + - [Fix] Use correct type for keylen in lua_ucl_newindex by + @arkamar in #5169 + - Update hiredis library removing all hacks by @vstakhov in #5167 + - Remove proxy from url_redirector.conf as it not the option by + @dragoangel in #5164 + - chore(publicsuffix): update effective_tld_names.dat by @wdhdev + in #5176 + - [Fix] Avoid null-bytes in Log-Tag header value by @smarsching + in #5179 + - [Fix] Do not abort when OpenSSL is broken, report that to a + user by @vstakhov in #5188 + - Some build fixes by @vstakhov in #5189 + - Some more fixes by @vstakhov in #5190 + +------------------------------------------------------------------- +Wed Oct 2 11:11:02 UTC 2024 - Marcus Rueckert + +- Actually for all distros to use luajit and lua 5.1 ABI modules + for the additional modules +- for non luajit enabled distros we also use lua 5.1 to build + against as rspamd does not really support newer lua APIs + + https://github.com/rspamd/rspamd/issues/5163 + +------------------------------------------------------------------- +Wed Oct 2 10:28:56 UTC 2024 - Marcus Rueckert + +- restore the overriden CMAKE_SHARED_LINKER_FLAGS but only remove + the --undefined option as rspamd doesnt have its dependencies + between parts of the code correct + +------------------------------------------------------------------- +Wed Oct 2 09:59:49 UTC 2024 - Marcus Rueckert + +- Simplify lua handling + +------------------------------------------------------------------- +Mon Sep 30 20:05:56 UTC 2024 - Marcus Rueckert + +- fix building the binaries with PIE + +------------------------------------------------------------------- +Mon Sep 30 19:40:24 UTC 2024 - Marcus Rueckert + +- Update to 3.10.0 + - [FIX] Arc regex to no longer match on dmarc= by + @JasonStephenson in #4960 + - [Conf] Add SenderScore RPBL return codes by @moisseev in #5077 + - Add name in statistic.conf by @dragoangel in #5079 + - [Minor] Improve errors reporting for lua_redis by @vstakhov in + #5086 + - [Feature] Allow to set negative group score limit via min_score + by @vstakhov in #5084 + - [Fix] Fix Redis scripts uploading when Redis is not ready by + @vstakhov in #5091 + - [Conf] Add SenderScore Reputationlist RBL by @moisseev in #5088 + - [Test] Add tests for milter_headers by @fatalbanana in #5083 + - [Project] Allow to change log tag from HTTP request by + @vstakhov in #5092 + - [Rework] Resolve rdns in a separate function by @vstakhov in + #5093 + - [Dep] Update doctest to 2.4.11 by @vstakhov in #5094 + - Pull Request for OpenSSL 3.0 support by @left-try in #5072 + - Remove NIST mode from cryptobox by @vstakhov in #5099 + - Fix keypairs encryption/decryption by @vstakhov in #5100 + - [Project] Allow manipulations with opaque UCL objects by + @vstakhov in #5104 + - Provide OpenSSL 3.0 support for lua_rsa by @left-try in #5101 + - Fix issue with broken HTTP message to learn endpoints by + @vstakhov in #5106 + - [Test] Improve grow_factor tests by @fatalbanana in #5110 + - Set expiration for history_redis to 5 days by default by + @dragoangel in #5115 + - Fix for issue #5089 - learning of the empty tasks by @vstakhov + in #5118 + - Update URIBL_RED/GREY scores by @slavkoja in #5119 + - [Fix] Preserve the previous behaviour of RDNS_* checks by + @vstakhov in #5121 + - [Test] Improve startup error handling by @fatalbanana in #5114 + - [Fix] Unify lua symbols registration by @vstakhov in #5125 + - [PATCH] ICAP: encode constructed path to be URL safe. by + @oliyks in #5111 + - [Rework] Change the logic of skipping symbols by @vstakhov in + #5126 + - Draft pull request for issue #5095 by @left-try in #5116 + - Rework fuzzy symbols by @vstakhov in #5127 + - [Fix] Another fix for Redis schema by @vstakhov in #5129 + - [Feature] Allow differen modes for fuzzy rules by @vstakhov in + #5131 + - Implement individual limits for fuzzy keys by @vstakhov in + #5135 + - [Fix] Rework DMARC grammar to correctly handle spaces in values + by @spacefreak86 in #5139 + - [Test] Upgrade linters by @moisseev in #5133 + - [Feature] DMARC: Implement reporting.only_domains setting by + @fatalbanana in #5142 + - Draft pull request for PR#5116 by @left-try in #5132 + - Detect CPU using __builtin_cpu_supports where it's possible by + @vstakhov in #5140 + - [Rework] Allow more flexible keypair encoding by @vstakhov in + #5144 + - Add more build targets by @vstakhov in #5153 + - Fixes for OpenSSL by @vstakhov in #5154 + - [Fix] Iterate over dynamic keys in fuzzy storage by @vstakhov + in #5156 + - [Rework] Remove control block support by @vstakhov in #5160 + - MIME UTF8 support by @vstakhov in #5056 + - [Fix] Fix DCC rep handling by @vstakhov in #5161 + +------------------------------------------------------------------- +Sun Sep 29 23:24:57 UTC 2024 - Marcus Rueckert + +- disable luajit until we actually package all the lua extensions + for all interpreters. mixing luajit with lua built extensions + is not working properly apparently + https://github.com/rspamd/rspamd/discussions/4898 + https://github.com/rspamd/rspamd/discussions/4819 +- loosen the Buildrequires for fmt to allow all versions. For older + distros we will use the intree copy. We added the bundled + provides in that case. + +------------------------------------------------------------------- +Wed Jul 31 10:21:39 UTC 2024 - Marcus Rueckert + +- Update to 3.9.1 + - [Test] Use actions/setup-node by @moisseev in #5058 + - [Feature] Treat SPF +all in a special way by @vstakhov in #5059 + - [Test] Migrate ESLint to 9.7.0 by @moisseev in #5063 + - Some tunes and fixes for GPT by @vstakhov in #5068 + +------------------------------------------------------------------- +Fri Jul 12 12:57:21 UTC 2024 - Marcus Rueckert + +- New BR pkgconfig(libarchive) >= 3.0 +- For pkgconfig(fmt) we need to allow the intree copy until our + package is upgraded from 10 to at least 11 + +------------------------------------------------------------------- +Fri Jul 12 12:42:34 UTC 2024 - Marcus Rueckert + +- Update to 3.9.0 + This ships a chatgpt feature, which is explained here: + + https://rspamd.com/misc/2024/07/03/gpt.html + + + - [Feature] Add extraction type for from maps by @vstakhov in + #4794 + - [Rework] Breaking: Do not report module as action by @moisseev + in #4795 + - [Minor] Move server selection logic to common.js by @moisseev + in #4796 + - [WebUI] Show pass-through module in History by @moisseev in + #4798 + - [Feature] Allow to add templates to redis history prefix by + @vstakhov in #4801 + - Deal with Connection and Host headers on proxying by @vstakhov + in #4802 + - [Minor] configwizard: really use LOCAL_CONFDIR by @fatalbanana + in #4804 + - [Fix] Resolve issue with bayes stat in rspamadm mode by + @vstakhov in #4805 + - [Minor] rspamd_task API docs: fix broken link by @fatalbanana + in #4807 + - [Minor] Add more returnbits to surbl configuration by + @fatalbanana in #4803 + - [Feature] Support JSON logging when in syslog mode by @vstakhov + in #4813 + - Fix issues with URL fragment in HTTP requests by @vstakhov in + #4814 + - [Fix] Encode headers in metadata exporter by @vstakhov in #4816 + - Improve Kaspersky AS integration by @vstakhov in #4806 + - Allow dynamic keypairs loading in fuzzy storage by @vstakhov in + #4818 + - Build tests with CTest in Cmake by @vstakhov in #4822 + - [Fix] Fix history key, as we use {= and not {{ in templates by + @vstakhov in #4826 + - Revert "[Fix] Fix history key, as we use {= and not {{ in + templates" by @vstakhov in #4829 + - [Fix] Allow different template expansion parameters by + @vstakhov in #4830 + - [WebUI] Disable buttons until tables are ready by @moisseev in + #4838 + - Rework jinja_template functions to avoid LUPA global state + dependency by @vstakhov in #4839 + - Support libarchive by @vstakhov in #4843 + - [Test] Use Robot-native process management by @fatalbanana in + #4834 + - [Minor] Add HAS_FILE_URL rule for messages containing a file:// + URL by @twesterhever in #4846 + - [Test] rspamadm tests: override DBDIR by @fatalbanana in #4847 + - Sync public suffix list by @fatalbanana in #4845 + - [WebUI] Add file input and drop area to scan tab by @moisseev + in #4849 + - Update nconns in proxy by @vstakhov in #4852 + - [Minor] Improve minWidth calculation by @moisseev in #4853 + - [Minor] Align items in card headers and buttons by @moisseev in + #4855 + - [Minor] Fix status tables borders by @moisseev in #4856 + - [Project] Optimization of userdata hashing by @vstakhov in + #4857 + - Further optimization to the hot path of lua userdata checks by + @vstakhov in #4860 + - [Minor] Serve SVG with the correct CT by @moisseev in #4861 + - [Minor] Add background icon to drop area by @moisseev in #4862 + - [Minor] Add HTTP_MAGIC_SVG key by @moisseev in #4863 + - [WebUI] Add check/uncheck all checkboxes buttons by @moisseev + in #4864 + - Vault signing improvements by @vstakhov in #4866 + - [Feature] Support reply in message pack format by @vstakhov in + #4867 + - Fix parsing of maps definitions by @vstakhov in #4869 + - Use zstd compression in client all the time by @vstakhov in + #4870 + - Remove demjson dependency as it is clearly outdated and broken + by @vstakhov in #4871 + - Migrate to Github Actions by @fatalbanana in #4823 + - [Test] Use actions/checkout by @fatalbanana in #4874 + - Do not save multipatterns to FS in certain cases by @vstakhov + in #4873 + - [Minor] README: update build status badge by @fatalbanana in + #4875 + - [Test] Really fix saving test logs... by @fatalbanana in #4876 + - [WebUI] Add column display mode settings by @moisseev in #4877 + - [Minor] Change FooTable breakpoints to match Bootstrap 5 by + @moisseev in #4878 + - [Rework] Remove some of the GLib types in lieu of standard ones + by @vstakhov in #4880 + - Fix inconsistent nesting in mime parts by @vstakhov in #4882 + - Protect regexp matcher from regexps with empty patterns by + @vstakhov in #4887 + - [Minor] Fix format of example setting (rspamd/rspamd.com#736) + by @fatalbanana in #4891 + - [Enhancement] Add more symbols for Reply-To header + characteristics by @twesterhever in #4889 + - [Minor] Add rule for localhost HELOs in Received headers by + @twesterhever in #4890 + - Several improvements to the Cloudmark integration by @vstakhov + in #4894 + - Allow custom milter quarantine and tempfail messages by + @vstakhov in #4901 + - Fix shared memory proxying when compression is set by @vstakhov + in #4903 + - [Test] Try break greylisting tests by @fatalbanana in #4911 + - Update greylisting threshold on each scan as it can be easily + dynamic by @vstakhov in #4910 + - Rework grow factor by @vstakhov in #4912 + - [WebUI] Escape HTML characters in errors history by @moisseev + in #4913 + - [Test] Fix uploading of test logs when tests are failed by + @fatalbanana in #4917 + - Add tests for grow_factor by @fatalbanana in #4918 + - [Minor] Increase RDNS_NONE score to 2.0 by @twesterhever in + #4916 + - [Enhancement] Exclude false positives of + MIME_DOUBLE_BAD_EXTENSION by @dragoangel in #4920 + - [Minor] Cloudmark scores_symbols: convert keys to numeric + values by @fatalbanana in #4924 + - [WebUI] Add missing handler for file input by @moisseev in + #4922 + - [WebUI] Prevent navbar layout shift by @moisseev in #4927 + - [Minor] Add selector to get rspamd_hostname by @lucasRolff in + #4926 + - [Fix] Relearn messages in bayes filter by @aduernberger in + #4930 + - Fix statfile symbols disabling by @vstakhov in #4932 + - Support UTF8 flag for the received headers by @vstakhov in + #4933 + - Fix error in headers_checks.lua by @dragoangel in #4934 + - [Minor] Update Bootstrap by @moisseev in #4935 + - Serialize control commands by @vstakhov in #4937 + - Implement backpressure for fuzzy check by @vstakhov in #4939 + - Do not read out-of-boundary when doing base64 encoding by + @vstakhov in #4942 + - Rework composites for spam injected into compromised accounts + by @twesterhever in #4914 + - [Minor] Add bad file types commonly found in archives attached + to malspam by @twesterhever in #4949 + - Apply detection phase if fasttext could not detect language by + @vstakhov in #4951 + - Add detection for freemail and disposable e-mail usage for + message delivery notification by @twesterhever in #4915 + - Add Content-Description header rules by @twesterhever in #4950 + - Implement DNSBL checks for Message-ID RHS by @twesterhever in + #4888 + - [Minor] Remove redundant sub-property by @moisseev in #4954 + - [Fix] SUBJ_ALL_CAPS is overkill with some unicase scripts by + @ikedas in #4953 + - [Minor] Properly make use of selectors for checking MID RHSs + against DNSBLs by @twesterhever in #4955 + - Enable fasttext support on debianalikes by @fatalbanana in + #4961 + - [Test] Disable @stylistic/multiline-comment-style by @moisseev + in #4966 + - Revert "[Minor] debian: enable fasttext" by @fatalbanana in + #4963 + - [Fix] Check nconns when firing the final termination event by + @vstakhov in #4965 + - Fix parsing of DMARC records with spaces by @vstakhov in #4973 + - Add bayes_expiry.conf to provide ability to set custom settings + by @dragoangel in #4972 + - Verify l= tag in DKIM signatures by @vstakhov in #4975 + - [Minor] Exclude User-Agent: Mozilla Thunderbird from + XM_UA_NO_VERSION by @ishisora in #4967 + - Fix multimaps with dynamic symbols by @vstakhov in #4976 + - [Test] Test multimap regexp_multi map by @fatalbanana in #4988 + - [FIX] call get_words_count method on the textpart in AV Scan by + @PxPert in #4992 + - [Minor] Fix typo in Prometheus helper message for + rspamd_ham_total by @lucasRolff in #4995 + - Fix hfilter checks_hello_badip by @dragoangel in #4997 + - Upgraded replies and known senders modules by @LeftTry in #4895 + - [Minor] Treat *.txz attachments as archives and harmful by + @twesterhever in #4987 + - [Feature] milter_headers: support not removing headers by + @fatalbanana in #5003 + - Update broken writing rules url by @spithash in #5001 + - Updated broken quickstart url by @spithash in #5000 + - [Rules] Added rules for detecting likely malware by + @fatalbanana in #4980 + - [Minor] Set negative default scores by @moisseev in #5006 + - Upstreams: make min_resolve_interval configurable by @vstakhov + in #5007 + - [WebUI] Fix "Avg. time" column sorting by @moisseev in #5012 + - [Fix] Use explicit timeouts in the metadata exporter by + @vstakhov in #5015 + - Experiments and research different bayes modes by @vstakhov in + #5011 + - [Rework] Rething slow timer by @vstakhov in #5020 + - [Rework] Allow metrics endpoint to be enabled for each scanner + by @vstakhov in #5026 + - Fixed bug with task:inject() function according to the issue + #5010 by @LeftTry in #5021 + - Exclude MIME_BAD_UNICODE false positive by @dragoangel in #5030 + - Add GPT plugin by @vstakhov in #5032 + - Update embedded fmtlib to 11.0 by @vstakhov in #5034 + - Trying to test various things with GPT by @vstakhov in #5035 + - [Minor] Fix description (#3867) by @fatalbanana in #5042 + - [Fix] metric_exporter: avoid sending nil in metric values + (#5027) by @fatalbanana in #5041 + - Improve some functions in the GPT plugin by @vstakhov in #5043 + - [Test] Add tests for ratelimit module by @fatalbanana in #5048 + - [Test] Fix ratelimit tests by @fatalbanana in #5051 + - Introduce dynamic_rate_limit for ratelimits plugin by @vstakhov + in #5045 + - Update comments in ratelimit.conf example by @moisseev in #5053 + +------------------------------------------------------------------- +Wed May 22 12:19:36 UTC 2024 - Dominique Leuenberger + +- BuildRequire pkgconfig(libhs) instead of vectorscan-devel: allow + to work with the free hyperscan variant. + +------------------------------------------------------------------- +Mon Feb 26 11:23:38 UTC 2024 - Marcus Rueckert + +- Update to 3.8.4 + - [Fix] Allow different template expansion parameters by + @vstakhov in #4830 + +------------------------------------------------------------------- +Sun Feb 25 20:30:01 UTC 2024 - Marcus Rueckert + +- Update to 3.8.3 + - This release includes a fix for a regression in redis_history + which caused history to be recorded to a misnamed key. No other + changes were introduced in this release + +------------------------------------------------------------------- +Tue Feb 20 18:18:16 UTC 2024 - Marcus Rueckert + +- Update to 3.8.2 + - [Feature] Add extraction type for from maps by @vstakhov in + #4794 + - [Rework] Breaking: Do not report module as action by @moisseev + in #4795 + - [Minor] Move server selection logic to common.js by @moisseev + in #4796 + - [WebUI] Show pass-through module in History by @moisseev in + #4798 + - [Feature] Allow to add templates to redis history prefix by + @vstakhov in #4801 + - Deal with Connection and Host headers on proxying by @vstakhov + in #4802 + - [Minor] configwizard: really use LOCAL_CONFDIR by @fatalbanana + in #4804 + - [Fix] Resolve issue with bayes stat in rspamadm mode by + @vstakhov in #4805 + - [Minor] rspamd_task API docs: fix broken link by @fatalbanana + in #4807 + - [Minor] Add more returnbits to surbl configuration by + @fatalbanana in #4803 + - [Feature] Support JSON logging when in syslog mode by @vstakhov + in #4813 + - Fix issues with URL fragment in HTTP requests by @vstakhov in + #4814 + - [Fix] Encode headers in metadata exporter by @vstakhov in #4816 + - Improve Kaspersky AS integration by @vstakhov in #4806 + - Allow dynamic keypairs loading in fuzzy storage by @vstakhov in + #4818 + - Build tests with CTest in Cmake by @vstakhov in #4822 + +------------------------------------------------------------------- +Fri Jan 26 16:01:44 UTC 2024 - Marcus Rueckert + +- Add Provides for user and group which are created in the %pre + scriptlet. + https://lists.opensuse.org/archives/list/factory@lists.opensuse.org/thread/HG2JKUIKDTWQQIQSA43A4VWHX7YKJQT3/ + +------------------------------------------------------------------- +Fri Jan 26 15:57:00 UTC 2024 - Marcus Rueckert + +- Update to 3.8.1 + - [Fix] Replace comment types by @arkamar in #4785 + - [Test] statistics: per-user by @fatalbanana in #4789 + - [Minor] rbl: fix warning by @fatalbanana in #4790 + +------------------------------------------------------------------- +Sat Jan 20 14:36:28 UTC 2024 - Marcus Rueckert + +- drop fix_stack_smash.patch: + solved in a better way in 3.8.0 + +------------------------------------------------------------------- +Sat Jan 20 14:31:26 UTC 2024 - Marcus Rueckert + +- Update to 3.8.0 + - [WebUI] Update map editor by @moisseev in #4668 + - [Minor] Make Robot Framework loop unfunny by @fatalbanana in + #4672 + - [Project] Support of JSON logging by @vstakhov in #4674 + - [Minor] Add missing include for gcc 14 by @arkamar in #4675 + - [Minor] Add rule for messages missing both X-Mailer and + User-Agent header by @twesterhever in #4682 + - [Minor] Treat *.zpaq attachments as archives and harmful by + @twesterhever in #4680 + - [Enhancement] Add composite rule for suspicious URLs in + suspicious messages by @twesterhever in #4681 + - [Minor] Improve FREEMAIL_AFF capture rates by @twesterhever in + #4683 + - [Fix] rbl: unbreak exclude_local by @fatalbanana in #4678 + - [Minor] force_actions: set a group for symbols by @fatalbanana + in #4685 + - [Minor] doxydown: fix elements containing few spaces by + @fatalbanana in #4687 + - [Fix] known_senders: fix config handling by @fatalbanana in + #4693 + - [Feature] Reiterate on gtube patterns by @vstakhov in #4691 + - [Minor] Try improve test stability by @fatalbanana in #4695 + - [Feature] Support ping command in fuzzy storage by @vstakhov in + #4694 + - [Test] Set umask where it's useful by @fatalbanana in #4699 + - [Minor] Remove obsolete code by @moisseev in #4700 + - [WebUI] Load modules dynamically by @moisseev in #4705 + - Add support for loongarch by @wuruilong01 in #4704 + - [Test] Try correct settings test by @fatalbanana in #4706 + - [Minor] Get rid of 'var' declarations by @moisseev in #4707 + - [Test] Fix dummy http server on python 3.6 by @fatalbanana in + #4710 + - [Test] Skip miltertest tests if it is not installed by + @fatalbanana in #4709 + - [Test] Restore stylistic rules check by @moisseev in #4711 + - [Minor] Re-sign YAML by @fatalbanana in #4713 + - [Minor] Use consistent object key/value spacing by @moisseev in + #4712 + - Fix fuzzy stat by @vstakhov in #4714 + - [Minor] Convert callbacks to arrow functions by @moisseev in + #4715 + - Fix issues with the raw header on header insertion/modification + by @vstakhov in #4716 + - [Fix] dkim_signing: siging_table: lowercase before lookup by + @fatalbanana in #4717 + - [Minor] Replace Dockerfile with advertisement for image by + @fatalbanana in #4721 + - [WebUI] Refine symbols score input boxes by @moisseev in #4723 + - [Test] Remove default ESLint Stylistic rule by @moisseev in + #4724 + - [Test] Exercise rspamadm lua logger in functional tests by + @fatalbanana in #4728 + - [Test] Use npm ls to show versions by @moisseev in #4725 + - [Test] Unbreak ESLint by @moisseev in #4730 + - [Test] Test systemd logging by @fatalbanana in #4733 + - [CritFix] - Fix reported length of logging structure by + @AdamMajer in #4732 + - [Test] Remove deprecated Stylelint rule by @moisseev in #4735 + - Migrate bayes redis backend to Lua scripts by @vstakhov in + #4718 + - [Minor] Have bayes use global redis settings by @fatalbanana in + #4739 + - [Feature] rbl: support disabling or replacing url_whitelist per + RBL by @fatalbanana in #4742 + - [Minor] rbl: try harder to identify lua patterns by + @fatalbanana in #4743 + - [Minor] rbl: revisit previous change by @fatalbanana in #4747 + - [WebUI] Symbols: replace individual save buttons by @moisseev + in #4748 + - [WebUI] Send only altered symbols in save requests by @moisseev + in #4749 + - [Minor] docs: rspamd_html: fix some copypasta by @fatalbanana + in #4750 + - [Minor] ratelimit: make per-bucket symbol behave like global + symbol by @fatalbanana in #4755 + - [Minor] Log a debug message when ratelimit skipped by @moisseev + in #4757 + - [WebUI] Show pass-through module in scan result by @moisseev in + #4758 + - [Minor] debian: add missing stuff to rspamd-asan package by + @fatalbanana in #4761 + - [Minor] Fix typo in hfilter map by @moisseev in #4759 + - [Minor] Move common stuff to separate files by @moisseev in + #4762 + - Fix an overzealous s/NULL/nullptr/g by @jvoisin in #4764 + - [WebUI] Show message size in IEC (base 1024) units by @moisseev + in #4765 + - [WebUI] Normalize IPv4 for column sorting by @moisseev in #4766 + - [Test] Some more tests for logging by @fatalbanana in #4767 + - [Feature] Support suppressing DMARC reporting for particular + recipients by @fatalbanana in #4772 + - [Test] Fix tests on Robot Framework 7.0 by @fatalbanana in + #4775 + - Rewrite redis_cache logic in statistics by @vstakhov in #4774 + - [Fix] multimap: rawtext: use decoded parts by @fatalbanana in + #4781 + +------------------------------------------------------------------- +Fri Dec 15 16:59:47 UTC 2023 - Marcus Rueckert + +- Update to 3.7.5 + - Test updates for rspamd-3.7 branch by @fatalbanana in #4708 + - Fix rspamadm lua logger in rspamd-3.7 (#/4727) by @fatalbanana + in #4729 + - Some picks for rspamd-3.7 by @fatalbanana in #4731 + - rspamd-3.7: fix systemd logging by @fatalbanana in #4734 + - rspamd-3.7: [Fix] dkim_signing: siging_table: lowercase before + lookup by @fatalbanana in #4737 +- drop pwatches included in update: + rspamd-d907a95.patch +- refreshed patches to apply cleanly again: + fix_missing_return.patch + rspamd-conf.patch +- While the fix for the logging bug was accepted into master. The + 3.7.5 release uses a different solution apparently. Update patch + fix_stack_smash.patch. + + https://github.com/rspamd/rspamd/pull/4732#issuecomment-1858255236 + +------------------------------------------------------------------- +Wed Dec 6 15:28:07 UTC 2023 - Adam Majer + +- fix_stack_smash.patch: upstream rework of logging doesn't allocate + enough memory for an array (bsc#1216830) + +------------------------------------------------------------------- +Wed Nov 22 10:06:42 UTC 2023 - Guillaume GARDET + +- Add upstream patch to fix build without hyperscan: + * rspamd-d907a95.patch + +------------------------------------------------------------------- +Tue Nov 14 20:41:32 UTC 2023 - Marcus Rueckert + +- Update to 3.7.4 + - [Enhancement] Add composite rule for suspicious URLs in + suspicious messages + - [Fix] Another try to fix setproctitle + - [Fix] Do not cleanup hyperscan files unless new ones are loaded + - [Fix] Fix various issues with canonicalisation of the paths + - [Fix] Properly set config field when creating tasks from Lua + - [Fix] Set loaded variable explicitly + - [Fix] known_senders: fix config handling + - [Fix] rbl: fix exclude_local + - [Minor] Add missing include for gcc 14 + - [Minor] Add rule for messages missing both X-Mailer and + User-Agent header + - [Minor] Bundle fasttext as linux distributives are just useless + - [Minor] Enable fasttext on RPM based linux + - [Minor] Forgot it in one more place + - [Minor] Improve FREEMAIL_AFF capture rates + - [Minor] Limit fasttext to amd64 only + - [Minor] Properly search for fasttext include + - [Minor] Treat *.zpaq attachments as archives and harmful + - [Minor] force_actions: set a group for symbols + - [WebUI] Update map editor + +------------------------------------------------------------------- +Fri Oct 27 08:03:52 UTC 2023 - Marcus Rueckert + +- Update to 3.7.3 + - [Fix] Emergency fix for the hyperscan path error + +------------------------------------------------------------------- +Thu Oct 26 18:25:54 UTC 2023 - Marcus Rueckert + +- Update to 3.7.2 + - [Minor] Make compiling with backward-cpp optional by + @a16bitsysop in #4639 + - [Rules] Blank spam detection by @fatalbanana in #4644 + - [Minor] Treat *.cue attachments as harmful by @twesterhever in + #4642 + - Dzjaivnt patch 1 by @dzjaivnt in #4640 + - [WebUI] Add control to invert action filter by @moisseev in + #4645 + - [Fix] DMARC reporting: fix reporting for subdomains by + @fatalbanana in #4587 + - [Test] Banish luacheck from functional tests by @fatalbanana in + #4648 + - [Minor] RSPAMD_SHAREDIR is called SHAREDIR in configuration by + @fatalbanana in #4649 + - [WebUI] Fix history table vanishing by @moisseev in #4661 + - Tighten rspamd's attachment policy by @twesterhever in #4656 + - [Minor] rbl: support use of different matchers for return codes + by @fatalbanana in #4657 + +------------------------------------------------------------------- +Sat Oct 7 21:56:26 UTC 2023 - Marcus Rueckert + +- Update to 3.7.1 + - [Fix] CMakeLists.txt remove whitespace added by linter as it + makes te… by @a16bitsysop in #4560 + - fix: redis schema parsing by @Conni2461 in #4562 + - [Minor] Update JS libraries by @moisseev in #4567 + - [WebUI] Restore contrasting foreground color by @moisseev in + #4569 + - Add new exporter to push JSON to a raw TCP socket by @lingfish + in #4572 + - [WebUI] Tweak bootstrap colors for accessibility by @moisseev + in #4577 + - Rewrite configuration utils in C++ by @vstakhov in #4573 + - [Minor] Slightly adjust DNSBL scores by @twesterhever in #4557 + - Added support for Redis 6 ACL (username/password) by @laodc in + #4578 + - [Feature] Support feed exclusions in phishing module by + @dragoangel in #4575 + - [Minor] Remove unwanted debug logging by @fatalbanana in #4585 + - Fix regression in invokation of rspamd-test by @ln5 in #4588 + - [Fix] Correct format pattern for RE tree tempfile name by @ln5 + in #4590 + - [Minor] Remove unused variables by @ln5 in #4591 + - [Fix] Correct format string for unw_word_t by @ln5 in #4592 + - [Fix] rbl: really fix dependency registration when + symbols_prefixes i… by @fatalbanana in #4594 + - [Fix] rspamadm mime: arguments beginning with letter t by + @fatalbanana in #4597 + - [Minor] API docs: lua_ip: fix function name by @fatalbanana in + #4598 + - [Feature] rbl: support checking numeric URLs in isolation by + @fatalbanana in #4596 + - [Feature] Add ICAP Content-Type and Filename from TODO List by + @lbahtarliev in #4595 + - [Minor] Try fix CI by @fatalbanana in #4603 + - [Fix] MISSING_MIMEOLE: avoid matching messages from Android + GMail app (#4561) by @fatalbanana in #4600 + - [WebUI] Set locale on UI load by @moisseev in #4607 + - Update configwizard.lua by @Dani778 in #4605 + - [Minor] Revisit numeric_urls by @fatalbanana in #4602 + - [Fix] Change Date: header location to conform with RFC by + @lbahtarliev in #4608 + - Implement known senders plugin by @vstakhov in #4610 + - [Test] Rudimentary tests for known_senders plugin by + @fatalbanana in #4612 + - [Test] Ignore encoding errors by @fatalbanana in #4616 + - Merge tests into master branch by @fatalbanana in #4615 + - Run CI on ARM by @fatalbanana in #4617 + - [Minor] Try fix test logs by @fatalbanana in #4620 + - Minor improvements for CI by @fatalbanana in #4621 + - Fix wrong copypasta & mis-named file by @fatalbanana in #4624 + - [Test] Use Robot Framework native IF by @fatalbanana in #4625 + - [Fix] Prevent DNSWL sabotage by @mdierksen in #4627 + +------------------------------------------------------------------- +Thu Aug 3 21:34:15 UTC 2023 - Marcus Rueckert + +- Update to 3.6 + - [WebUI] Migrate to Bootstrap v5.2 by @moisseev in #4444 + - fix: avoid double-dip of nrcpt when calculating ratelimit + condition by @simbuerg in #4448 + - [WebUI] Fix "Clean history" button enabling/disabling in the + Scan tab by @moisseev in #4453 + - [Minor] Use a scalar variable as a dir handle by @moisseev in + #4457 + - Fix arc by @jendis in #4449 + - [Minor] Fix pagination control border radius by @moisseev in + #4461 + - [Fix] remove obsolete rspamd-redirector files by @a16bitsysop + in #4422 + - Add fasttext language detector to Rspamd by @vstakhov in #4473 + - [Minor] Fix rows background coloring by @moisseev in #4490 + - [WebUI] Add ability to compute fuzzy hashes by @moisseev in + #4499 + - [Fix] rbl: fix dependency registration when symbols_prefixes is + used by @fatalbanana in #4498 + - [Enhancement] Add composite rule for messages only containing a + redirector URL by @twesterhever in #4496 + - [WebUI] Show validation feedback inside login modal by + @moisseev in #4504 + - [Minor] Improve HACKED_WP_PHISHING coverage by @twesterhever in + #4506 + - [Minor] Add additional bad extensions by @twesterhever in #4508 + - [Minor] Assorted cleanup and housekeeping of configuration + files, take 2 by @twesterhever in #4505 + - [Rules] Add thread hijacking composite rule by @twesterhever in + #4507 + - [Minor] Move HAS_ONION_URI from "experimental" to "url" group + by @twesterhever in #4495 + - [Enhancement] Make Google Firebase rule productive by + @twesterhever in #4494 + - Use the correct mime format for 7z by @JasonStephenson in #4517 + - [Minor] Increase score for .chm attachments by @twesterhever in + #4518 + - [Enhancement] Improve detection of Google redirection URLs by + @twesterhever in #4497 + - if elasticsearch_version >= 7 we should not send the _type to + elastic… by @mariojansen in #4520 + - [Enhancement] Treat HTML attachments as (slightly) bad by + @twesterhever in #4519 + - Dockerfile: Switch to bookworm by @mrueg in #4532 + - [Feature] external_relay: add ip_map strategy by @moesoha in + #4537 + - [Feature] Detect Apple Mail and remove scores for their known + common behavior by @dragoangel in #4538 + - [Minor] A bit better apple_x_mailer regex by @dragoangel in + #4539 + - replace ECDSA_sign_setup/ECDSA_sign_ex with ECDSA_sign by + @sthen in #4541 + - [Fix] dmarc gramar - allow spaces before ";" by @rheoli in + #4547 + - [Minor] Minor fixes for previous ratelimit changes by + @fatalbanana in #4549 + - [Minor] Improve catch rates of FREEMAIL_AFF by @twesterhever in + #4556 + - [Minor] Test & fix has_only_html_part regression by + @fatalbanana in #4559 + - [Minor] Tweak HAS_GOOGLE_REDIR to detect Google AMP URLs as + well by @twesterhever in #4558 + +------------------------------------------------------------------- +Fri Mar 17 21:53:38 UTC 2023 - Marcus Rueckert + +- Enable more features + - Enable nice stacktraces for crashes. New BR: libunwind-devel + - use system xxhash: New BR: xxhash-devel + - enable blas/lapack support for the neural network processing + New BR: lapack-devel, libopenblas_openmp-devel, openblas-common-devel + +------------------------------------------------------------------- +Fri Mar 17 21:21:47 UTC 2023 - Marcus Rueckert + +- Update to 3.5 + - [Test] Remove test case with non-deterministic result by + @arkamar in #4323 + - [WebUI] Add legacy history version badge by @moisseev in #4326 + - [Feature] Enable Mime part filters on antivirus module by + @jonmoesli in #4328 + - [Test] Use TMPDIR if available by @arkamar in #4327 + - metadata_exporter http pusher: Extend valid return codes by + @yo000 in #4334 + - [Minor] debian package: disable luajit on arm64 by @fatalbanana + in #4335 + - Support external maps in Rspamd by @vstakhov in #4324 + - [Fix] Return true from has_urls(true) if only emails are + present by @cpragadeesh in #4365 + - [Fix] received: filtering of artificial header by @kakochang in + #4367 + - [Fix] Replace broken strict_domains with phishing_exceptions by + @dupondje in #4376 + - Fix build with gcc 13 by including by @heirecka in #4375 + - rspamc: add -R option for human readable report by @amishmm in + #4377 + - rspamc: optimize indentation condition by @amishmm in #4381 + - Set required_score = reject score and minor change to the + report by @amishmm in #4383 + - conf/modules.d/arc.conf: fix parameter name by @jendis in #4387 + - Fixes to support global lua maps in user settings by @dpetrov67 + in #4393 + - [Enhancement] Make Google URL redirection rules productive by + @twesterhever in #4399 + - [Enhancement] Add rule to detect Google Firebase URLs by + @twesterhever in #4401 + - [Minor] Assorted cleanup and housekeeping of configuration + files by @twesterhever in #4397 + - addition: add Betterbird to user_agent_thunderbird by + @georglauterbach in #4404 + - [Minor] Replace "Spamhaus XBL any" hack with a more clear + solution by @twesterhever in #4398 + - [Enhancement] Add IPFS URL heuristic by @twesterhever in #4310 + - Checking for redirector url in mail by @korgoth1 in #4351 + - fix incorrect asn references in bimi.conf by @mta59066 in #4410 + - [Minor] Account for one more undisclosed-recipients address + variant by @citrin in #4413 + - Fix for x-rspamd-action in Milter headers module by @nishils in + #4416 + - [WebUI] Update JS libraries by @moisseev in #4414 + - [WebUI] Update bootstrap by @moisseev in #4420 + - [Minor] remove check for sys/cdefs.h in CMakelists.txt by + @a16bitsysop in #4430 + - [Minor] Fix some compiler warnings by @a16bitsysop in #4436 +- Drop 068714f9f5a96fbd94560211cec75775ee023d02.patch: +- this drops the rspamd-director binary + +------------------------------------------------------------------- +Wed Jan 25 11:11:42 UTC 2023 - Thorsten Kukuk + +- Don't build against libnsl, it's not used and deprecated + +------------------------------------------------------------------- +Mon Nov 14 16:35:33 UTC 2022 - Marcus Rueckert + +- Move cleanup code to %pre because otherwise it doesnt trigger + early enough + +------------------------------------------------------------------- +Mon Nov 14 16:21:40 UTC 2022 - Marcus Rueckert + +- Upgrade to 3.4 again + - Fix metadata_exporter with many recipients by @yo000 in #4294 + - [Fix] Fix favicon.ico Content-Type header by @moisseev in #4302 + - [Minor] Fix copy-paste error by @moisseev in #4305 + - Add basic auth to metadata_exporter http pusher by @yo000 in + #4300 + - [Enhancement] Add composite rule against AFF involving + freemailers by @twesterhever in #4304 + - Penalize bounce spam by @frederikbosch in #4308 +- Added 068714f9f5a96fbd94560211cec75775ee023d02.patch: + Official patch for the unaligned memory issue described in + https://github.com/rspamd/rspamd/issues/4329 +- Add cleanup code to the %postun scriptlet to remove bad files, + created by earlier/unpatched 3.4 versions, during package upgrade + +------------------------------------------------------------------- +Wed Nov 9 01:42:46 UTC 2022 - Marcus Rueckert + +- Downgrade to 3.3 until https://github.com/rspamd/rspamd/issues/4329 + is solved. + +------------------------------------------------------------------- +Tue Nov 1 21:41:46 UTC 2022 - Marcus Rueckert + +- Update to 3.4 + - Fix metadata_exporter with many recipients by @yo000 in #4294 + - [Fix] Fix favicon.ico Content-Type header by @moisseev in #4302 + - [Minor] Fix copy-paste error by @moisseev in #4305 + - Add basic auth to metadata_exporter http pusher by @yo000 in + #4300 + - [Enhancement] Add composite rule against AFF involving + freemailers by @twesterhever in #4304 + - Penalize bounce spam by @frederikbosch in #4308 + +------------------------------------------------------------------- +Tue Oct 4 12:27:58 UTC 2022 - Marcus Rueckert + +- added fix_missing_return.patch: + case statement without a default return. +- drop outdated patch comment + +------------------------------------------------------------------- +Tue Oct 4 11:23:37 UTC 2022 - Marcus Rueckert + +- Update to 3.3 + see upgrades notes in: + + https://rspamd.com/doc/migration.html#migration-to-rspamd-33 + + - [Minor] Fix typo in config documentation in statistic.conf by + @kamilsztuke in #4137 + - New SYSTEM_XXHASH option and zstd MODULES fix by @arkamar in + #4138 + - Migrate ZSTD_reset{C,D}Stream to a new API by @arkamar in #4140 + - [Fix] Disable IPv6 lookups for Blocklist.de RBL by + @twesterhever in #4143 + - [Fix] Do not exclude authenticated users from URIBL lookups by + @twesterhever in #4144 + - [Enhancement] Adjust scores of Spamhaus SBL hits by + @twesterhever in #4142 + - [Enhancement] Query HELOs, PTRs, and Reply-To's against SURBL + and URIBL as well by @twesterhever in #4141 + - [Test] Allow linters to fail by @moisseev in #4150 + - [WebUI] Add HTTP (Ajax) request timeout setting by @moisseev in + #4151 + - [Minor] Query EBLs for authenticated users as well by + @twesterhever in #4153 + - [WebUI] Learn a random server of "All SERVERS" by @moisseev in + #4160 + - Rework symcache by @vstakhov in #4130 + - [Minor] Add scan_time and hostname to metadata_exporter by + @lucasRolff in #4166 + - fix missing preprocessor macro for SSSE3 support by @msuslu in + #4168 + - [Minor] fix lower transformation for utf symbols by @tierpod in + #4173 + - [Enhancement] Add expire to history redis by @vitalvas in #4175 + - [WebUI] Add option to choose map editor by @moisseev in #4183 + - [WebUI] Fix privileged access for secure_ip by @moisseev in + #4189 + - [Fix] Upstreams: Don't ignore revive_time config option by + @citrin in #4208 + - [WebUI] Tweak history table layout by @moisseev in #4209 + - Update rspamd.spec, delete old el6 files by @ghtm2 in #4206 + - Update rspamd.spec to fix Fedora 36 build by @ghtm2 in #4211 + - [Minor] rspamc: fix crash on non-string element in messages by + @fatalbanana in #4214 + - [Fix] Empty envelopes should not be emitted as arrays, drop + from schema instead by @JasonStephenson in #4216 + - [Minor] Mimedump improvements by @JasonStephenson in #4222 + - [Minor] Set diacritics flag for more languages by @fatalbanana + in #4233 + - Add MIME types commonly used for mp3 and wav attachments by + @citrin in #4239 + - [Fix] Skip sending dmarc reports in no-opt mode by @rekup in + #4242 + - Fix: BAD_REP_POLICIES does not trigger for Bayes by @Player701 + in #4244 + - [Minor] Remove references to Atom in CONTRIBUTING.md by + @fiirhok in #4248 + - [WebUI] Remove extra To column from filtering by @moisseev in + #4249 + - [WebUI] Hide symbol order toggle in search dropdown by + @moisseev in #4250 + - [WebUI] Hide extra To detail row on small screens by @moisseev + in #4254 + - [WebUI] Migrate to D3 v7 by @moisseev in #4256 + - [WebUI] Wrap Prism.highlightElement by @moisseev in #4257 + - milter_headers: Header fields may be inserted at wrong + position. by @ikedas in #4259 + - [WebUI] Put total in the center of pie charts by @moisseev in + #4262 + - [Fix] Avoid overriding IP with Sender IP by @dragoangel in + #4268 + - Allow fuzzy worker to listen on AF_UNIX sockets successfully by + @BtbN in #4283 + +------------------------------------------------------------------- +Mon Apr 4 09:18:43 UTC 2022 - Wolfgang Rosenauer + +- pcre2 is required; so removing any conditions around it + to fix build for Leap + +------------------------------------------------------------------- +Sat Mar 26 17:02:38 UTC 2022 - Michael Ströder + +- Update to 3.2 + * [Conf] Score MIME_OBFUSCATED_ARCHIVE to 8 points + * [Conf] Set one_shot for URIBL rules by default + * [CritFix] Fix upstreams name resolution when there is also a port + * [Feature] Add ROC feature to neural network plugin + * [Feature] Add public suffic compilation utility + * [Feature] Add support of Cloudmark + * [Feature] Allow hyperscan for ppc64, as vectorscan now suports it. + * [Feature] Allow to skip DNS resolution for keep-alive connections + * [Feature] Aws_s3: Allow to store large parts separately + * [Feature] BIMI: Add preliminary version of the BIMI plugin + * [Feature] JSON endpoint for querying maps + * [Feature] Lua_magic: Add a sane CSV heuristic + * [Feature] Lua_mime: Add schema for message transfer + * [Feature] Output average scan time in /stat endpoint + * [Feature] Show average scan time in `rspamc stat` output + * [Fix] Add guards to avoid race condition on TCP connection + * [Fix] Allow spaces in DKIM key records + * [Fix] Apply the similar fix to the url_reputation + * [Fix] Avoid overwriting whitelisted_signers_map + * [Fix] Backport PR from libucl + * [Fix] Clear SSL errors + * [Fix] ClickHouse cleanup of old partitions + * [Fix] Do not double call error handler on ssl errors in the timeout path + * [Fix] Do not forget to clear pointers on IOC reset + * [Fix] External_relay: Remove useless check of the map value + * [Fix] Find suspicious url encodings that could break url extraction + * [Fix] Fix HTTP(s) client timeout + * [Fix] Fix exclude flags setting + * [Fix] Fix expanding of the variables + * [Fix] Fix host header usage in lua_http + * [Fix] Fix http maps shared memory cache cleanup + * [Fix] Fix logic in HTML processing FSM + * [Fix] Fix parsing of the compound mailto urls + * [Fix] Fix processing captures from pcre2 + * [Fix] Fix removing from khash + * [Fix] Fix stuctured headers pushing + * [Fix] Further fix for i386 compilation + * [Fix] Improve duplicate settings error reporting + * [Fix] Lua: task:remove_result didn't work in some cases + * [Fix] Output service parts as well + * [Fix] Phishing: Deal with phishing + redirected URL + * [Fix] Phishing: Fix finding domains in the phishing map + * [Fix] Plug memory leak by using mempool for a copied address + * [Fix] Properly find the request and the number of requested entries + * [Fix] Rbl: Fix inversed logic of the url_full_hostname + * [Fix] Read file maps if they were not pre-read during preload + * [Fix] Restrict x86_64 assembly to x86_64 + * [Fix] Return a real number of recipients when dealing with aliases + * [Fix] Rework unshedule DNS request function + * [Fix] Support definition of ungrouped symbol in conf file, use group info from lua or other conf file + * [Fix] Unschedule DNS request when clearing IO channel + * [Fix] When checking for phishing, we need to convert punicode -> UTF8, not vice versa + * [Fix] lua_cfg_transform - actions without score (discard) + * [Fix] lua_cfg_transform - silly break break actions + * [Fix] ratelimit - symbol per bucket + * [Project] BIMI: Fix helper integration issues + * [Project] Further DNS over TCP architecturing + * [Project] Rdns: Add more functions for TCP based requests + * [Project] Rdns: Add preliminary reading logic for TCP channels + * [Project] Rdns: Add reaper for inactive TCP connections + * [Project] Rdns: Add timeout logic for TCP requests + * [Project] Rdns: Do not treat TCP channels failure as fatal + * [Project] Rdns: Fix TCP connection mess + * [Project] Rdns: Fix TCP stuff cleanup + * [Project] Rdns: Fix various ownership issues + * [Project] Rdns: Implement TCP writing logic + * [Project] Rdns: Initial support of TCP IO channels + * [Project] Rdns: More fixes in TCP handling + * [Project] Rdns: Restore the previous EDNS0 size + * [Project] Rdns: Send truncated replies via TCP + * [Project] Rdns: Unregister TCP requests + * [Rework] Allow to restore SSL handlers after keepalive pooling + * [Rework] Allow to set a different behaviour for actions from settings + * [Rework] Include SSL flag into keepalive hash + * [Rework] Make `rspamadm dmarc_report` default behaviour more sane + * [Rework] Mempool: Use explicit alignment + * [Rework] Rdns: Use faster and more compact hash table for DNS requests + * [Rework] Rework SSL flag operations + * [Rework] Take disabled flag into account + * [Rework] Timeouts are now global per event and not reseted by IO activity + * [Rework] Use xxh3 as a default hash and fix memory/alignment issues + * [Rules] Fix old rules to stop global functions usage + * [Rules] Fix symbol for DKIM temporary failure + * [Rules] Remove ancient and inefficient rules + * [Rules] Slightly reduce MULTIPLE_FROM score + +------------------------------------------------------------------- +Wed Nov 3 13:39:29 UTC 2021 - Marcus Rueckert + +- Update to 3.1 + - [Feature] Add junk_threshold for autolearn + - [Feature] Add neural test command + - [Feature] Antivirus: Allow to set fake eicar patterns for + testing AV engines + - [Feature] Lua_cdb: Add cdb building interface + - [Feature] Ratelimit: Add per bucket configurations + - [Feature] S3: Allow to store structured data in messagepack + - [Fix] Add concept of uncancellable events to prevent + use-after-free + - [Fix] Add temporary guard to prevent linked list exploitation + - [Fix] Allow spaces in DKIM key records + - [Fix] Another rework of the ucl hashing + - [Fix] Another try to fix references safety + - [Fix] Another try to fix rspamd_text passing in the selectors + - [Fix] Avoid copy for received structure as it has raw C + pointers + - [Fix] Avoid dangling reference + - [Fix] Correctly check numeric URLs in URL DNS lists + - [Fix] Delete the correct pointer type + - [Fix] Dmarc: Always lowercase domain + - [Fix] Fix compilation of the hyperscan databases with errors + - [Fix] Fix hash table lookup + - [Fix] Fix http message flag shift + - [Fix] Fix parsing of the from_hostname when it is an IP address + - [Fix] Fix parsing of the unquoted attributes in HTML + - [Fix] Fix passing of rspamd_text in selectors pipelines + - [Fix] Fix rubbish QP sequences decoding + - [Fix] Fix some complicated case with the closing tags parsing + - [Fix] Fix the case when l tag is too small + - [Fix] Html: Fix the case where only bgcolor is explicitly set + - [Fix] Libucl: Fix deletion from ucl objects + - [Fix] Namespace and add metadata for OpenMetrics, fix + interleaving + - [Fix] Plug memory leak in http settings reload + - [Fix] Preserve SPF top record in the mempool variable + - [Fix] Remove aarch64 GC64 workaround + - [Fix] Remove bogus G_LIKELY + - [Fix] Spf: Do not parse non TXT DNS replies as TXT replies + - [Fix] Try to use on_connect/on_disconnect callbacks to handle + internal Redis failures + - [Fix] buffer overflow in rspamc counters + - [Fix] fix static building + - [Fix] lua_scanners - message_min_words logic + - [Fix] src/lua/lua_mimepart.c: fix null dereference + - [Project] Add constant iterators + - [Project] Add helper library to handle mime strings in a more + safe matter + - [Project] Add preliminary support of CDB bayes dump + - [Project] Add trim operations + - [Project] Allow mempool allocated mime strings + - [Project] Cdb: Finish backend implementation + - [Project] Cdb: Fix configuration load + - [Project] Cdb: Use shared data between cdb statfiles + - [Project] Cdb: continue statistics backend implementation + - [Project] Finish received headers rework part + - [Project] Move C++ specific declarations to C++ header + - [Project] Rework received headers parsing to C++ + - [Project] Start using of the new received structure + - [Project] Start work on cdb backend + - [Rework] Further rework of the redis pool + - [Rework] Redis_pool: fix issues found + - [Rework] Rework learn and add classify condition + - [Rework] Save invisible content to a separate buffer + - [Rework] Start rewriting of the redis pool logic + - [Rules] Improve zero font rule + Full Changelog: https://github.com/rspamd/rspamd/compare/3.0...3.1 +- drop patches included in this update: + https://github.com/onqtam/doctest/commit/099d5414e97244ec44cf46b14cd176b3a3dc52e3.patch + https://github.com/rspamd/rspamd/commit/cdedeb9f4.patch + https://github.com/rspamd/rspamd/commit/309bb213cf.patch + +------------------------------------------------------------------- +Thu Sep 30 17:58:39 UTC 2021 - Marcus Rueckert + +- backported https://github.com/onqtam/doctest/commit/099d5414e97244ec44cf46b14cd176b3a3dc52e3.patch + slighty modified to match rspamd + +------------------------------------------------------------------- +Fri Sep 17 22:31:22 UTC 2021 - Marcus Rueckert + +- backport https://github.com/rspamd/rspamd/commit/cdedeb9f4.patch + improve lua 5.4 support + +------------------------------------------------------------------- +Fri Sep 17 21:18:15 UTC 2021 - Marcus Rueckert + +- switch to autosetup, all target distros are new enough + +------------------------------------------------------------------- +Fri Sep 17 21:17:54 UTC 2021 - Marcus Rueckert + +- backport https://github.com/rspamd/rspamd/commit/309bb213cf.patch + to actually make it use system fmt + +------------------------------------------------------------------- +Fri Sep 17 20:42:24 UTC 2021 - Marcus Rueckert + +- force gcc 9 all distros before Tumbleweed: + leap default compiler is gcc7 which is not enough anymore + +------------------------------------------------------------------- +Fri Sep 17 20:30:05 UTC 2021 - Marcus Rueckert + +- use system libfmt and libzstd instead of building the intree copy + +------------------------------------------------------------------- +Thu Aug 19 23:06:34 UTC 2021 - Michael Ströder + +- removed obsolete rspamd-add-lua-5.4.patch +- update to 3.0 + * [Conf] Align ARC scores with DKIM scores + * [CritFix] Neural: Fix sorting application + * [Feature] Add a simple dumper for bayes tokens + * [Feature] Add lua_maps.fill_config_maps function + * [Feature] Add preliminary exporter to AWS S3 + * [Feature] Add preliminary restore bayes support + * [Feature] Add race condition protection against hs_helper restarts + * [Feature] Add rspamd_utf8_strcmp utility + * [Feature] Add zstd streaming API + * [Feature] Allow to log severity level explicitly + * [Feature] Allow to save and show attachment name when inserting AV scan results + * [Feature] Allow to sort urls for Lua + * [Feature] Allow to specify different timeouts/retransmits for fuzzy rules + * [Feature] Aws_s3: Allow to compress data stored + * [Feature] CMakeLists.txt: Change check and run-test to use rspamd-test-cxx * fixes #3807 + * [Feature] Dmarc_report: allow sending reports in batches + * [Feature] Fuzzy_check: Allow to disable subject when making short text hash + * [Feature] Lua_cryptobox: Add keyed ssl hash functions via HMAC + * [Feature] Lua_task: Add get_urls_filtered method + * [Feature] Make monitored checks less frequent + * [Feature] Milter_headers: Add x-rspamd-pre-result header + * [Feature] Neural: Allow to balance FP/FN for the network + * [Feature] Ppopagate monitored errors from rbl module + * [Feature] Pyzor calculate score dynamically Count - WL-Count of default_score in percent + * [Feature] Rbl: Distinguish flattened and non-flattened selectors in RBL requests + * [Feature] Re-add pyzor support + * [Feature] Settings: add ip_map check and rework structure slightly + * [Feature] Spamassassin: Allow to set the default priority for SA scores + * [Feature] Strip smtp comments from message id + * [Feature] add SYSTEM_ZSTD cmake option To use the system zstd instead on the bundled version + * [Feature] external_relay plugin + * [Feature] rspamadm clickhouse neural_train subcommand + * [Fix] #3400 milter_headers: fix inverted logic for extended_headers_rcpt + * [Fix] ASN: fix _FAIL symbol for when main symbol is disabled + * [Fix] Add a special logic for text part with no text extraction + * [Fix] Add diacritics flag for several eu languages + * [Fix] Another FSM fix to accomodate possibility of multiple consequent ? + * [Fix] Avoid curse of dynamic array referencing + * [Fix] Avoid reinitialising neural settings + * [Fix] Check remain before processing TXT records + * [Fix] Enable error multiplier on http errors + * [Fix] Finally rework parsing entities logic + * [Fix] Fix '==' parsing in the content type attributes parser + * [Fix] Fix IPv6 expansion for SPF macros + * [Fix] Fix Mozilla Message-ID detection + * [Fix] Fix an edge case in BITCOIN_ADDR rule + * [Fix] Fix brain-damaged behaviour when http request has a custom Host header + * [Fix] Fix check of limits in email address parsing + * [Fix] Fix copy&paste error and rework + * [Fix] Fix expressions logic for and/or and float values + * [Fix] Fix fuzzy retransmits + * [Fix] Fix http maps with no or invalid expires data + * [Fix] Fix last quote character parsing in the content-type state machine + * [Fix] Fix normalisation flags propagation + * [Fix] Fix overflow when appending many broken tags + * [Fix] Fix parsing of rfc2047 tokens with '?' inside + * [Fix] Fix phishing flag set + * [Fix] Fix rfc2047 embedded into rfc2231 pieces in special headers + * [Fix] Fix round-robin rotation + * [Fix] Fix searching for symbols + * [Fix] Fix storing of the regexps inside variant + * [Fix] Fix tokenization near exceptions + * [Fix] Fix visibility calculations + * [Fix] Html: Attach inline tags to the structure + * [Fix] Html: Do not treat empty tags as block tags + * [Fix] Ical: Do not extract urls from all flags using merely specific ones + * [Fix] Initialise symcache even if it cannot be loaded properly + * [Fix] Lua_fuzzy: Remove text parts check when checking image dimensions + * [Fix] Lua_maps: Fix adjustments for the map type in the complex map definitions + * [Fix] Lua_task: Fix deleted symbols in has_symbol/get_symbol + * [Fix] Move metric and symcache link from validation to the init stage + * [Fix] Oletools: Another try to fix table sorting + * [Fix] One more default behaviour fix + * [Fix] Phishing: Rework urls processing + * [Fix] RBL: was missing some config schema + * [Fix] Replies: Fix 'Reply-To' handling in task:get_reply_sender + * [Fix] Rework metrics handling + * [Fix] Save symcache on exit + * [Fix] Selectors: Filter nil elements in lists + * [Fix] Selectors: Properly fix implicit tostring for nils + * [Fix] Try to fix some broken code in DMARC reporting plugin + * [Fix] Urls: Fix processing of html urls when it comes to the flags + * [Fix] Use proper buffer length + * [Fix] Various visibility fixes + * [Fix]: ASN: dns cb func should also return in case of an error + * [Project] Add a simple css rule definition + * [Project] Add css style skeleton + * [Project] Add css syntax (adopted from ebnf) + * [Project] Add css_selectors + * [Project] Add doctest unit testing library + * [Project] Add expected library + * [Project] Add fmt library for simple string ops + * [Project] Add fu2 library to better functions abstractions + * [Project] Add hashing method + * [Project] Add parsers skeleton + * [Project] Add preliminary support of vcard parser + * [Project] Add process exceptions for invisible text + * [Project] Add some methods for css parser + * [Project] Allow static libstdc++ + * [Project] Another whitespace hack + * [Project] CSS: Various fixes in the declarations and values parsing + * [Project] Cpp: Add robin-hood hash map library + * [Project] Css: Add AST debug + * [Project] Css: Add colors conversion functions + * [Project] Css: Add dimensions handling + * [Project] Css: Add display value support + * [Project] Css: Add frozen library from https://github.com/serge-sans-paille/frozen/ + * [Project] Css: Add opacity support + * [Project] Css: Add parser helpers to simplify debugging + * [Project] Css: Add preliminary stylesheet support + * [Project] Css: Add rules processing functions and tests + * [Project] Css: Add simple selectors unit tests + * [Project] Css: Add some c++ unit tests + * [Project] Css: Add some debug methods + * [Project] Css: Add some debug statements for the css parser + * [Project] Css: Add some logical skeleton for declarations parser + * [Project] Css: Add url/function tokens + * [Project] Css: Allow at rules parsing + * [Project] Css: Declarations parsing logic skeleton + * [Project] Css: Enable conditional css parsing support from the HTML parser + * [Project] Css: Finish generic lexer cases + * [Project] Css: Fix HSL conversion + * [Project] Css: Fix minus parsing + * [Project] Css: Fix parser consumers nesting + * [Project] Css: Fix parsing of the qualified rules + * [Project] Css: Fix rules merging + * [Project] Css: Further fixes to lexer + * [Project] Css: Further steps to parse css colors + rework + * [Project] Css: Further work on parser's methods + * [Project] Css: Implement backlog of css tokens + * [Project] Css: Implement numbers and ident parsers + * [Project] Css: Implement simple css selectors lookup + * [Project] Css: Implement styles merging + * [Project] Css: Make debug strings json like to simplify tests + * [Project] Css: Minor adjustments + * [Project] Css: More meat to the lexer + * [Project] Css: Move some of the tests to the doctest + * [Project] Css: Projected a parser + * [Project] Css: Properties attachment logic + * [Project] Css: Remove ragel from build targets (maybe keep for reference) + * [Project] Css: Rework css block structure + * [Project] Css: Rework flags of css properties + * [Project] Css: Rework tokens structure + * [Project] Css: Several fixes + tests + * [Project] Css: Simplify checks + * [Project] Css: Simplify debug code + * [Project] Css: Start css selectors parsing logic + * [Project] Css: Start semantic parsing for rules + * [Project] Css: Start stylesheet implementation + * [Project] Css: Tidy up lambdas + * [Project] Css: rework tokeniser + * [Project] Dmarc: Add dmarc report tool (WIP) + * [Project] Dmarc: Add munging configuration + * [Project] Dmarc: Add preliminary munging logic + * [Project] Dmarc: Fix header removal + * [Project] Dmarc: Fix munging logic + * [Project] Dmarc: Use full recipient address instead of a domain map + * [Project] Dmarc: Use zlists for dmarc reports + * [Project] Dmarc_report: Add message generation logic + * [Project] Dmarc_report: Add preliminary sending support + * [Project] Fix lua bindings + * [Project] Fix xml/sgml tags processing + * [Project] Handle new modification + * [Project] Html/CSS: Add transform from a CSS rule to html block + * [Project] Html/CSS: Link html and css styles + * [Project] Html/CSS: Switch styles parsing to css parser + * [Project] Html/Css: Fix some issues found + * [Project] Html/Css: Implement visibility rules for a block + * [Project] Html: Add more tests cases and fix some more corner issues + * [Project] Html: Add rows display type support + * [Project] Html: Allow decode entities function to normalise spaces + unit tests + * [Project] Html: Another rework of the tags structure + * [Project] Html: Another try to fix unbalanced cases + * [Project] Html: Fix crossing spans + * [Project] Html: Fix parent propagation + * [Project] Html: Further rework of the html parsing stuff + * [Project] Html: Implement logic for tags pairing + * [Project] Html: Implement rawtext state machine + * [Project] Html: Insert closing tags as well :( + * [Project] Html: More fixes + * [Project] Html: More fixes + * [Project] Html: More spaces logic fixes + * [Project] Html: One more attempt to write text content + * [Project] Html: Replace \0 in html content + * [Project] Html: Rework img/a tags handling + * [Project] Html: Rework propagation method + * [Project] Html: Rework tags placement + * [Project] Html: Rework transparency logic + * [Project] Html: Support 'hidden' attribute + * [Project] Html: Try another approach to append tags content + * [Project] Html: Try to deal with bad unknown tags properly + * [Project] Lua_aws: Add canonicalisation utility + * [Project] Lua_aws: Add function to produce AWS Authorisation header + * [Project] Lua_aws: Implement request signing + * [Project] Lua_mime: Add lua_mime.modify_headers routine + * [Project] Lua_task: Add modify_header method + * [Project] Lua_task: Allow to extract modified headers + * [Project] Make unescape code public for unit testing + * [Project] More fixes for closed tags + * [Project] More fixes to calculations + * [Project] Rework API for the modified headers + * [Project] Rework html visibility rule + * [Project] Skeleton of the css library + * [Project] Start headers modification API structure + * [Project] Start working on AWS Lua API + * [Project] Use lua_mime to modify headers + * [Project] Use modified headers on dkim signing + * [Project] Use string_view to constexpr variant unpacking + * [Rework] Add composites manager concept + * [Rework] Add tags definitions + * [Rework] Allow C code to be compiled with C++ compiler + * [Rework] Clickhouse: Store url flags + * [Rework] Composites: Rewrite the composites logic + * [Rework] Composites: Start rework of the composites framework + * [Rework] Dmarc: Move check policy function to the common utils + * [Rework] Dmarc: Rework reports keys structure + * [Rework] Further work to make html content private + * [Rework] Html/CSS: Remove css C bindings as they are useless now + * [Rework] Html/CSS: Rework Lua bindings + * [Rework] Html/Css: Start rework of the html blocks + * [Rework] Html: Add images processing logic + * [Rework] Html: Add traverse function + * [Rework] Html: Another steps to get rid of gnode + * [Rework] Html: Convert to variant + * [Rework] Html: Deal with the utf_content part + * [Rework] Html: Final rework part for the html processing code + * [Rework] Html: Fix Lua bindings + * [Rework] Html: Forgot to add the internal include + * [Rework] Html: Further html urls rework + * [Rework] Html: Further rework of the tags content extraction + * [Rework] Html: Make parameters as a vector again + * [Rework] Html: Move blocks part + * [Rework] Html: Move images processing stuff + * [Rework] Html: Rework lua bindings + * [Rework] Html: Start html text extraction rework + * [Rework] Html: Start refactoring of the html tags handling + * [Rework] Html: Start removing of GNode stuff + * [Rework] Html: Start rework of the html content structure + * [Rework] Lua_magic: Try to detect text parts with 8bit characters for non-utf8 encodings + * [Rework] Move HTML url functions and rework them + * [Rework] Move and adopt entities handling logic + * [Rework] Move common and rarely used dmarc code to the library + * [Rework] Move compression routines outside of rspamd_util library + * [Rework] Move entities/tags handling + * [Rework] Phishing: Split from redirectors usage + * [Rework] Redesign html blocks propagation logic + * [Rework] Remove tag name string + * [Rework] Rename phished url to a linked url + * [Rework] Reorganize dmarc plugin and remove unsupported reporting code + * [Rework] Reputation: Use more flexible types in get/set functions + * [Rework] Require proper C++ environment for Rspamd build + * [Rework] Rework extended urls output + * [Rework] Rework tags parsing machine + * [Rework] Slightly improve old regexp API + * [Rework] Start conversion of the redis pool code to c++ + * [Rework] Try to resolve failed upstreams more agressively + * [Rework] Use C++ utf8 library with unit tests to trim whitespaces + * [Rework] Use C++ version for unicode normalisation + * [Rework] Use C++ version of the lua threads pool + * [Rules] Add raw addresses to MULTIPLE_FROM options + * [Rules] Another fix to HTTP_TO_HTTPS rule + * [Rules] Do not trigger HTML_SHORT_LINK_IMG on external images + * [Rules] Extend FORGED_X_MAILER + * [Rules] Extend OLD_X_MAILER + * [Rules] Fix CTYPE_MIXED_BOGUS for text attachments + * [Rules] Fix FPs for CTYPE_MIXED_BOGUS + * [Rules] Fix HTTP_TO_HTTPS rule + * [Rules] Fix HTTP_TO_HTTPS rule + * [Rules] Fix zerofont rule (partially) + * [Rules] Micro-optimize X_PHP_EVAL + * [Rules] Reduce default weight for R_MISSING_CHARSET + +------------------------------------------------------------------- +Wed Jun 2 13:55:50 UTC 2021 - Marcus Rueckert + +- use systemd_ordering + +------------------------------------------------------------------- +Wed Jun 2 13:55:08 UTC 2021 - Marcus Rueckert + +- add Requires(pre) to shadow to fix %pre scriptlet + +------------------------------------------------------------------- +Wed Jun 2 00:19:41 UTC 2021 - Marcus Rueckert + +- disable PCRE2 for now: + https://bugzilla.opensuse.org/show_bug.cgi?id=1182864#c10 + +------------------------------------------------------------------- +Tue Mar 2 11:04:58 UTC 2021 - Guillaume GARDET + +- Add patch to fix build with lua 5.4: + * rspamd-add-lua-5.4.patch + +------------------------------------------------------------------- +Fri Feb 19 01:02:52 UTC 2021 - Bernhard Wiedemann + +- Fix i586 build + +------------------------------------------------------------------- +Fri Jan 8 20:22:15 UTC 2021 - Michael Ströder + +- update to 2.7 + * [Conf] Add R_DKIM_PERMFAIL to the metric + * [CritFix] Dkim: Fix simple canonicalisation if multiple signatures are presented + * [CritFix] Fix controller paths normalisation + * [Feature] Add INVALID_DATE rule + * [Feature] Add controller endpoint for training neural + * [Feature] Add sanity checks for actions thresholds + * [Feature] Add support of '==' and '!=' in Rspamd expressions + * [Feature] Composites: Improve composite atoms parser + * [Feature] Docker: use Debian slim variant + * [Feature] Elastic: Add some missing fields + * [Feature] Extract text from img alt attributes + * [Feature] Improve charset detection logic + * [Feature] Lua_clickhouse: Add optional row callback for large selections + * [Feature] Lua_dns_resolver: Add idna_convert_utf8 method + * [Feature] Lua_mime: Add ability to do multipattern replacement + * [Feature] Lua_trie: Allow to report start of the match + * [Feature] Multimap: support adding map values as extra options + * [Feature] Neural: Move PCA learning to a subprocess + * [Feature] RBL: support matching content/image URLs only + * [Feature] RBL: support use of multiple selectors + * [Feature] Reputation: Allow to specify ip masks + * [Feature] Support SMIME signed messages container + * [Feature] Support multiple conditions for symbols + * [Feature] Support ping in milter mode + * [Feature] Support rspamd_text in selector regexps + * [Feature] Use own daemonization routine + * [Feature] Vadesecure: Implement settings_outbound feature as recommended by Vade + * [Feature] `rspamadm clickhouse` command + * [Feature] allow hyperscan for aarch64 + * [Fix] Allow to set priorities between post init scripts + * [Fix] Allow to use maps for strings that are not zero terminated + * [Fix] Apply max_lua_urls limit for emails as well + * [Fix] Arc: Fix CV check on signing + * [Fix] Arc: Fix signing of the broken ARC chains + * [Fix] Clickhouse: escape carriage return + * [Fix] Composites: Allow partial match + * [Fix] Deduct type of a table methods + * [Fix] Do not load errored hyperscan database + * [Fix] Do not process links in ignored html tags + * [Fix] Fix ClamAV result for cached encrypted file (#3395) + * [Fix] Fix canonicalisation when l= tag is presented + * [Fix] Fix flag shift + * [Fix] Fix handling of skip/skip_process http flags + * [Fix] Fix html attachments checks + * [Fix] Fix issue with pushing binary formats to Lua strings + * [Fix] Fix logging for rspamadm + * [Fix] Fix off-by-one with init check + * [Fix] Fix parsing of escape characters in quoted pairs + * [Fix] Fix pushing ucl strings with \0 inside + * [Fix] Fix quoted-printable soft newlines bugged case + * [Fix] Fix settings in case actions are set to null (#3415) + * [Fix] Fix several issues with auth results producing + * [Fix] Fix smtp comments exclusion + * [Fix] Fix smtp date syntax definition + * [Fix] Fix substring search in case if srchlen == inlen + * [Fix] Fix text selectors + * [Fix] Honour `systemd` setting when logging to console (#3514) + * [Fix] Html: Add entities collisions prevention logic (e.g. for mathml entities) + * [Fix] Lua_auth_results: Quote potentially bad values in AR header + * [Fix] Multimap: Fix flags usage + * [Fix] Multimap: Fix scoring for combined maps + * [Fix] Plug GList * leak in redis pool + * [Fix] RBL: allow for multiple matches of the same label if types are different + * [Fix] Rely on libev checks for file maps + * [Fix] Restore simple dkim canonicalisation mode + * [Fix] Return MimeCharset as we work with emails... + * [Fix] Spamassassin: Fix pcre_only flags + * [Fix] Spamassassin: Preserve 'pcre_only' flag when dealing with regexp replacements + * [Fix] Try to fix GError leak + * [Fix] Try to fix a mess with settings loading by adding priorities + * [Fix] Try to move setings initialisation to a later stage + * [Fix] Use dup fd in milter handler to avoid races with the proxy + * [Fix] Use message pointer to avoid obsolete data to be cached + * [Project] Rbl: Migrate to `checks` + * [Project] Rbl: Move config code outside of the plugin + * [Project] Ressurect empty prefilters as connection filters + * [Project] Support connection filters registration from Lua + * [Rework] Add final cleanup logic + * [Rework] Add preliminary support of hyperscan caching for re maps + * [Rework] Add stale cache removal + * [Rework] Clickhouse: Improve performance + * [Rework] Distinguish between strict config test mode + * [Rework] Furhter logging improvements + * [Rework] Milter_headers: improve extended_headers_rcpt support + * [Rework] Move parsers to a separate lua library + * [Rework] Neural: Skip composite symbols + * [Rework] Rbl: Rework defaults logic + * [Rework] Some tunes to cache saving + * [Rework] Track maps origins + * [Rework] Use full crypto hash for regexp maps + * [Rules] Remove broken rule + +------------------------------------------------------------------- +Thu Nov 26 12:05:28 UTC 2020 - Bernhard Wiedemann + +- Wait for network to be up before starting + +------------------------------------------------------------------- +Fri Oct 9 17:51:10 UTC 2020 - Marcus Rueckert + +- fix apparmor profile + - allow reading the webapp dir to make the builtin webserver work + - modernize the profile to use a short profile name + - remove php abstraction, replaced with rule to read the icu data + files + - remove all file rules that are covered by the base and + nameservice abstraction + - allow include (with "if exists) for local/rspamd and + local/usr.bin.rspamd (for backrwards compat) + +------------------------------------------------------------------- +Mon Oct 5 10:42:14 UTC 2020 - Bernhard Wiedemann + +- Add usr.bin.rspamd apparmor profile + +------------------------------------------------------------------- +Thu Oct 1 09:39:29 UTC 2020 - Bernhard Wiedemann + +- update to 2.6 + * https://rspamd.com/announce/2020/09/30/rspamd-2.6.html + * Rework neural network plugin + * Rework bitcoin detection library + * Fix IDNA bugs + * Send more fuzzy module telemetry data to rspamd servers + * Drop upstream rspamd-gcc10-buildfix.patch + * Drop rspamd-moonjit.patch + +------------------------------------------------------------------- +Wed Aug 12 03:34:28 UTC 2020 - Bernhard Wiedemann + +- Add rspamd-gcc10-buildfix.patch for Factory +- Skip rspamd-moonjit.patch on SLE to fix build + +------------------------------------------------------------------- +Thu Apr 16 20:49:12 UTC 2020 - Hans-Peter Jansen + +- apply rspamd-moonjit.patch in order to allow using moonjit + +------------------------------------------------------------------- +Wed Apr 1 21:48:03 UTC 2020 - Wolfgang Rosenauer + +- update to 2.5 + https://rspamd.com/announce/2020/04/01/rspamd-2.5.html + +------------------------------------------------------------------- +Fri Feb 28 06:41:59 UTC 2020 - Wolfgang Rosenauer + +- update to 2.4 + https://rspamd.com/announce/2020/02/26/rspamd-2.4.html + +------------------------------------------------------------------- +Sun Feb 9 17:09:51 UTC 2020 - Wolfgang Rosenauer + +- update to 2.3 + https://rspamd.com/announce/2020/02/04/rspamd-2.3.html + +------------------------------------------------------------------- +Thu Nov 28 16:22:35 UTC 2019 - Marcus Rueckert + +- only use hyperscan on x86_64 + +------------------------------------------------------------------- +Thu Nov 28 15:11:52 UTC 2019 - Marcus Rueckert + +- update to 2.2 + https://rspamd.com/announce/2019/11/19/rspamd-2.2.html + +------------------------------------------------------------------- +Mon Oct 28 16:52:41 UTC 2019 - Marcus Rueckert + +- update to 2.1 + https://rspamd.com/announce/2019/10/28/rspamd-2.1.html +- dropped rspamd-fix-crash-on-startup.patch + +------------------------------------------------------------------- +Sun Oct 13 20:30:34 UTC 2019 - Wolfgang Rosenauer + +- update to 2.0 + https://rspamd.com/announce/2019/10/11/rspamd-2.0.html + Please verify the upgrade notes for incompatible changes: + https://rspamd.com/doc/migration.html#migration-to-rspamd-20 +- changed build requires +- added rspamd-fix-crash-on-startup.patch to fix startup crash + (https://github.com/rspamd/rspamd/issues/3079) + +------------------------------------------------------------------- +Thu Jun 6 12:50:16 UTC 2019 - Wolfgang Rosenauer + +- update to 1.9.4 + https://rspamd.com/changes.html#release-194-23-may-2019 + https://rspamd.com/announce/2019/05/13/rspamd-1.9.3.html + +------------------------------------------------------------------- +Fri Apr 19 15:42:58 UTC 2019 - Michael Ströder + +- update to 1.9.2 + https://rspamd.com/announce/2019/04/16/rspamd-1.9.2.html + https://rspamd.com/announce/2019/04/05/rspamd-1.9.1.html + +------------------------------------------------------------------- +Wed Mar 13 17:03:30 UTC 2019 - Marcus Rueckert + +- update to 1.9.0 + https://rspamd.com/announce/2019/03/12/rspamd-1.9.0.html + +------------------------------------------------------------------- +Wed Jan 23 16:14:21 UTC 2019 - Marcus Rueckert + +- overrides.d should be override.d, this might require changes to + your configuration, please verify. + +------------------------------------------------------------------- +Wed Jan 23 16:10:28 UTC 2019 - Marcus Rueckert + +- update to 1.8.3 + - [CritFix] Make flags mutually exclusive for mime parts + - [CritFix] Strictly deny unencoded bad utf8 sequences in + headers + - [Feature] Add Kaspersky antivirus support + - [Feature] Add method to get dkim results + - [Feature] Add more words regexp classes + - [Feature] Allow to choose words format in `rspamadm mime` + - [Feature] Allow to get all types of words from Lua + - [Feature] Allow to get task flags in C expressions + - [Feature] Allow to require encryption when accepting + connections + - [Feature] Ignore bogus whitespaces in the words + - [Feature] Implement more strict configuration tests + - [Feature] Improve SPF results in Authentication-Results + - [Feature] Support ClickHouse database + - [Fix] Add failsafety for utf8 regexps + - [Fix] Do not trigger BROKEN_CONTENT_TYPE on innocent text + parts + - [Fix] Emit error if connection has been terminated with no + stop pattern + - [Fix] Fix boundaries checks in embedded messages + - [Fix] Fix double free + - [Fix] Perform policy downgrade on sample out, add tests + - [Fix] Properly escape utf8 regexps in hyperscan mode + - [Fix] Selectors - attachments args condition + - [Fix] Some fixes for raw parts + - [Fix] Treat learning errors as non-fatal + - [Fix] Use tld when looking for DKIM domains + - [Project] Words unicode structure rework + - [Project] Add preliminary Redis Sentinel support + - [Project] Improve Authentication-Results header + - [Project] Rework DKIM checks results + - [Project] Use more generalised API to produce meta words + +------------------------------------------------------------------- +Mon Nov 19 13:17:01 UTC 2018 - Marcus Rueckert + +- update to 1.8.2 + - [Conf] Add DWL support in the default configuration + - [Conf] Disable rspamd_update by default (again) + - [Conf] Fix configuration sample for ratelimit + - [CritFix] Disable broken url tags by default + - [CritFix] Fix \0 processing when doing RSA sign + - [CritFix] Fix adding symbols to their primary groups + - [Feature] Add `rspamadm cookie` utility + - [Feature] Add specialised functions for generating encrypted cookies + - [Feature] Add support of cookies in replies module + - [Feature] Add support of words regexps + - [Feature] Allow to add 3rd party clang plugins + - [Feature] Allow to create lua regexps from glob or plain patterns + - [Feature] Allow to set custom limits for upstream lists + - [Feature] Detect orphaned parts and attach them to message + - [Feature] Filter tokens in bayes + - [Feature] Fold b= value when doing arc sealing + - [Feature] Ignore cookies in the future and too old in the past + - [Feature] Skip stop words in statistics + - [Feature] Store stop words and allow to query them + - [Feature] Support query arguments in controller's custom commands + - [Feature] Tune upstream limits in Rspamd proxy + - [Feature] Use different callback symbols for different uribls + - [Feature] Write DKIM selector in dkim allow/reject symbols + - [Fix] Add obs_fws state support to eoh state machine + - [Fix] Add sanity check when applying mime boundaries heuristic + - [Fix] Antivirus - virus names with 0 were recognized as tables + - [Fix] Disable headernames in bayes temporarily + - [Fix] Do not allow syntax errors in include files... + - [Fix] Do not allow to merge an object with an array (or vice versa) + - [Fix] Don't perform forged recipients check for missing recipients + - [Fix] Fix DKIM based RBLs + - [Fix] Fix actrie implementation (sync from upstream), fixed OOB read + - [Fix] Fix explicit methods call in selectors + - [Fix] Fix extraction of additional parts + - [Fix] Fix finalization for internal plugins + - [Fix] Fix override_defaults function + - [Fix] Fix squeezed symbols when using settings + - [Fix] Fix urls insertion in Clickhouse module + - [Fix] Furhter fixes to ratelimits logic + - [Fix] Ignore signatures when looking for boundaries + - [Fix] Properly set learned count + - [Fix] Really fix ratelimits configuration and work + - [Fix] Remove ambigious format flag from printf + - [Fix] Restore URLs exporting in ClickHouse plugin + - [Fix] Rework bayes calculations... + - [Fix] Switch from chi-square to naive for large Fisher value + - [Fix] Treat normal password as enable password if there is no enable password + - [Fix] Use proper syntax for making DNS requests + - [Fix] Various fixes in embedded plugins + - [Project] Change fuzzy check selection logic to lua_fuzzy library + - [Project] Rework async events and symbols + - [Project] Move all metatokens in Bayes to lua_stat from C + - [WebUI] Add history rows per page control +- somehow the Patch/%patch lines for + rspamd-after-redis-target.patch were missing, adding them back. + +------------------------------------------------------------------- +Sat Oct 27 01:54:35 UTC 2018 - Marcus Rueckert + +- simplify the feature conditionals: + mostly to enable luajit and torch on more platforms +- add -fopenmp to the CFLAGS to fix a warning in torch + +------------------------------------------------------------------- +Fri Oct 19 18:20:09 UTC 2018 - Marcus Rueckert + +- update to 1.8.1 + - [CritFix] Fix options insertion + - [CritFix] Fix words decay one more time (affects long messages) + - [CritFix] Increase default words_decay + - [CritFix] Plug memory leak in redis pool + - [Feature] Add `check_violation` feature to DKIM/ARC signing + - [Feature] Add only unique elements to Clickhouse url arrays + - [Feature] Allow `g+:` and `g-:` composite atoms + - [Feature] Allow dkim domains check in surbl + - [Feature] Allow maps with HTTP auth + - [Feature] Allow to disable actions by users settings + - [Feature] Extend whitelisting options + - [Feature] Store url object in images + - [Feature] Use verdict instead of the plain action in plugins + - [Fix] Allow to call fstring append with NULL string + - [Fix] DCC - luacheck + - [Fix] Do not load torch on each rspamadm invocation + - [Fix] Fix boundaries detection and rework stop words algorithm + - [Fix] Fix dependencies for DNS_SIGNED symbol + - [Fix] Fix errors when dealing with dynamic rates/bursts in + Ratelimit + - [Fix] Fix groups mess + - [Fix] Fix groups mess + - [Fix] Fix parsing address with comments + - [Fix] Fix resolving in DMARC reports + - [Fix] Fix various issues with parsing of the received headers + - [Fix] Fix watchers issue in lua_tcp when doing no resolving + - [Fix] Plug memory leak in language detector (affects reloads) + - [Fix] Remove one letter stop words + - [Fix] Slashing: backport chunk logic from libucl + - [Fix] Stop libevent from using cached time in rspamadm + - [Fix] Try to fix watchers chaining + - [Fix] Various fixes in redis sync interface + - [Fix] ip_score - respect check_authed and check_local settings + from config + - [Project] Rework passthrough actions + - [Project] Clustering module + - [Rework] Always create result for a task + - [Rework] Completely rewrite DMARC checks logic + - [Rework] Rework and fix whitelist plugin + - [WebUI] Add symbols sorting buttons + - [WebUI] Change symbols order without updating history + - [WebUI] Colorize symbols + - [WebUI] Do not display password form when secure_ip is set + - [WebUI] Fix symbol description tooltips display + - [WebUI] History: add sorting by symbol score value +- drop 5093631ddd4d3389cddaaa95865dc4a23143a10f.patch + +------------------------------------------------------------------- +Mon Oct 1 14:48:13 UTC 2018 - Marcus Rueckert + +- backport 5093631ddd4d3389cddaaa95865dc4a23143a10f.patch: + can be removed in 1.8.1 + +------------------------------------------------------------------- +Mon Sep 24 22:39:44 UTC 2018 - Marcus Rueckert + +- update to 1.8.0 + The most important features and fixes + - New selectors framework + This framework allows to combine and process different data + extracted from messages and use that in different plugins, such + as multimap, reputation or ratelimits. It is also possible to + use data extracted in Rspamd regular expressions. + - Coroutines API support in Lua + Now you can write code in a usual imperative manner but you + still will not block any other tasks. Each potentially blocking + operation creates a yielding-point. In turn, this means the + code is suspended until the operation is done (just like + blocking) and resumes only when there is some result. + Meanwhile, other tasks are processed as usual. + - Clickhouse optimization + Rspamd now uses a flat table to optimize ClickHouse SQL + requests. In fact, joins are not recommended by the ClickHouse + developers as multiple joins have proven to be slow. Hence, + Rspamd has moved all data to a single table. Schema migration + is done automatically, however, please read the migration notes + in case of any doubts. Old data is not migrated nor deleted + automatically. + There is now optional data retention support in the ClickHouse + module. You can set retention policies for the data stored in + Clickhouse to conform different regulations (e.g. GDPR). + - Unicode processing improvements + Rspamd now normalizes all unicode data using NFKC schema prior + to processing. This helps to prevent “glyph” attacks used by + some spammers nowadays. Unicode conversion has also been + improved to continue on bad symbols instead of giving up and + working with raw data. + - Language detection improvements + We have reworked the language detector to use stop-words and + rely on unicode glyphs more extensively. As the result of this + work, the speed of language detection has been increased + significantly (by 10 times in some cases). The preciseness of + the detection has also been improved. + - Fixed various bugs in sesssions handling + We have located and fixed various hidden issues caused by async + rules chaining. It might cause inconsistencies in the + dependencies processing, crashes in rare cases and other “bad + things”. + - Various Web Interface improvements and fixes + There are multiple improvements and fixes in the Web Interface. + In particular, the issues with cluster support and aggregation + have been addressed. + + For all the fixes see + https://rspamd.com/announce/2018/09/24/rspamd-1.8.0.html +- drop patch 66ffcdfa880daeb3b50c7ef3bcb5511abb6d92f6.patch + included in update + +------------------------------------------------------------------- +Thu Aug 30 14:06:44 UTC 2018 - Marcus Rueckert + +- add conflicts on rspamd-client to ease switching between the 2 + modes + +------------------------------------------------------------------- +Thu Aug 30 13:48:21 UTC 2018 - Marcus Rueckert + +- undo the split by guarding it with split_out_client: + osc build --with=split_out_client if you want to build with it + +------------------------------------------------------------------- +Thu Aug 30 13:39:03 UTC 2018 - Marcus Rueckert + +- replace our copy of rspamd.conf with a patch rspamd-conf.patch: + currently we only replace the logging to rspamd.conf with console + and set systemd mode + +------------------------------------------------------------------- +Wed Aug 29 15:53:10 UTC 2018 - Marcus Rueckert + +- split out rspamc and rspamadm into a rspamd-client package. + the main package will still require it so nothing would change + from this perspective. + + This allows administration and training from other machines + without installing the whole stack. + +------------------------------------------------------------------- +Wed Aug 29 15:52:31 UTC 2018 - Marcus Rueckert + +- added rspamd-after-redis-target.patch: + make sure we start rspamd after redis.target + +------------------------------------------------------------------- +Wed Aug 8 08:09:26 UTC 2018 - iippolitov@gmail.com + +- updated version to 1.7.8 + https://github.com/vstakhov/rspamd/releases/tag/1.7.9 +- patch included to fix lua builds on i586 + https://github.com/vstakhov/rspamd/commit/66ffcdfa880daeb3b50c7ef3bcb5511abb6d92f6.patch +- 2338.patch is removed: included in the upstream tarball + +------------------------------------------------------------------- +Fri Jul 13 16:42:32 UTC 2018 - mrueckert@suse.de + +- updated version to 1.7.8 + https://github.com/vstakhov/rspamd/releases/tag/1.7.7 + https://github.com/vstakhov/rspamd/releases/tag/1.7.8 +- added https://github.com/vstakhov/rspamd/pull/2338.patch + +------------------------------------------------------------------- +Fri Jul 13 16:37:41 UTC 2018 - mrueckert@suse.de + +- limit pcre2 to 15.0 and newer + +------------------------------------------------------------------- +Fri Jul 13 16:09:32 UTC 2018 - mrueckert@suse.de + +- we had a buildrequires for libfann but the cmake flag was in a + conditional. removed the conditional. +- enable pcre2 support +- prepare building utils but they are broken atm +- enable hyperscan for TW and newer +- enable openblas for 15.0 and newer +- gd library had a BR but was not enabled + +------------------------------------------------------------------- +Wed Jun 20 12:00:00 UTC 2018 - iippolitov@gmail.com + +- changed default configuration to match current rules + https://rspamd.com/doc/workers/ + +------------------------------------------------------------------- +Tue Jun 19 12:00:00 UTC 2018 - iippolitov@gmail.com + +- updated version to 1.7.6 + https://github.com/vstakhov/rspamd/releases/tag/1.7.6 + +------------------------------------------------------------------- +Mon Apr 30 16:52:25 UTC 2018 - pieter@hollants.com + +- updated version to 1.7.3 + https://github.com/vstakhov/rspamd/releases/tag/1.7.3 +- removed obsolete protocol.c.patch (incorporated into 1.7.3) + +------------------------------------------------------------------- +Tue Mar 27 17:20:28 UTC 2018 - iippolitov@gmail.com + +- updated version to 1.7.2 + https://github.com/vstakhov/rspamd/releases/tag/1.7.2 +- fix for https://github.com/vstakhov/rspamd/issues/2120 included + +------------------------------------------------------------------- +Thu Mar 22 07:07:35 UTC 2018 - iippolitov@gmail.com + +- updated version to 1.7.1 + https://github.com/vstakhov/rspamd/releases/tag/1.7.1 +- fixed ix86 build + conditional jemalloc, luajit, external hiredis and torch build +- fixed build without LUA JIT + https://github.com/vstakhov/rspamd/pull/2100 +- fixed Leap 42.1 build (cmake used wrong ASM compiler) + +------------------------------------------------------------------- +Mon Mar 19 18:33:42 UTC 2018 - iippolitov@gmail.com + +- updated version to 1.7.0 + https://github.com/vstakhov/rspamd/releases/tag/1.7.0 +- disabled ENABLE_OPTIMIZE for Leap due to old GCC + https://github.com/vstakhov/rspamd/issues/2091 +- luajit enabled by default (required by torch) + +------------------------------------------------------------------- +Mon Mar 12 11:57:47 UTC 2018 - asn@cryptomilk.org + +- Add missing runtime requirement for lua-lpeg + +------------------------------------------------------------------- +Thu Mar 8 23:03:46 UTC 2018 - mrueckert@suse.de + +- BR libnsl to fix build on suse_version >= 1500 + +------------------------------------------------------------------- +Sat Feb 17 09:10:30 UTC 2018 - thomas@cupracer.de + +- updated version to 1.6.6 + https://github.com/vstakhov/rspamd/releases/tag/1.6.6 + +------------------------------------------------------------------- +Thu Jul 27 12:15:45 UTC 2017 - iippolitov@gmail.com + +- updated version to 1.6.3 + https://github.com/vstakhov/rspamd/releases/tag/1.6.3 + +------------------------------------------------------------------- +Tue Jul 11 08:36:19 UTC 2017 - iippolitov@gmail.com + +- updated version to 1.6.2 + https://github.com/vstakhov/rspamd/releases/tag/1.6.2 + +------------------------------------------------------------------- +Wed Jun 14 18:34:59 UTC 2017 - iippolitov@gmail.com + +- updated version to 1.6.1 + +------------------------------------------------------------------- +Tue Jun 13 10:10:53 UTC 2017 - iippolitov@gmail.com + +- updated version to 1.6.0 +- rspamd.conf with logging to console added to sources + +------------------------------------------------------------------- +Tue Jun 6 17:30:00 UTC 2017 - iippolitov@gmail.com + +- updated version to 1.5.9 + +------------------------------------------------------------------- +Mon Apr 3 18:48:46 UTC 2017 - jengelh@inai.de + +- Ensure description is neutral. Replace unnecessary + %__-type macro indirections. + +------------------------------------------------------------------- +Fri Mar 17 16:08:17 UTC 2017 - asn@cryptomilk.org + +- Update to version 1.5.3 + https://rspamd.com/announce/2017/03/17/rspamd-1.5.3.html + +------------------------------------------------------------------- +Wed Mar 15 08:22:49 UTC 2017 - asn@cryptomilk.org + +- Update to version 1.5.2 + https://rspamd.com/announce/2017/03/01/rspamd-1.5.0.html + +------------------------------------------------------------------- +Thu Dec 1 08:35:40 UTC 2016 - asn@cryptomilk.org + +- Update to version 1.4.1 + +------------------------------------------------------------------- +Tue Nov 29 13:02:36 UTC 2016 - asn@cryptomilk.org + +- Update to version 1.4.0 + +------------------------------------------------------------------- +Wed Jul 27 22:04:41 UTC 2016 - mrueckert@suse.de + +- initial package + diff --git a/rspamd.spec b/rspamd.spec new file mode 100644 index 0000000..83a8f58 --- /dev/null +++ b/rspamd.spec @@ -0,0 +1,725 @@ +# +# spec file for package rspamd +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%{echo: building for suse: ver:%{suse_version} arch:%{_arch} o:%{is_opensuse} "\n"} + +%bcond_with split_out_client + +%if 0%{?suse_version} > 1230 || 0%{?rhel_version} > 600 || 0%{?centos_version} > 600 || 0%{?fedora_version} >= 20 || 0%{?el7}%{?fc20}%{?fc21}%{?fc22}%{?fc23}%{?fc24}%{?fc25} +%bcond_without systemd +%else +%bcond_with systemd +%endif + +%global lua_abi_version 51 + +%ifarch %{ix86} x86_64 + %if 0%{?suse_version} > 1500 + %bcond_without hyperscan + %endif + %if 0%{?suse_version} >= 1500 + %bcond_without luajit + %else + %bcond_with luajit + %endif +%endif + +%if 0%{?suse_version} >= 1500 && ! 0%{?sle_version} + %bcond_without ext_hiredis +%endif + +%if 0%{?suse_version} >= 1500 + %bcond_without openblas +%endif + +# fails to build atm +%bcond_with utils + +%define rspamd_user _rspamd +%define rspamd_group %{rspamd_user} + +%global _wwwdir /srv/www/webapps + +%if 0%{?suse_version} && 0%{?suse_version} < 1550 +%global force_gcc_version 9 +%endif + +Name: rspamd +Version: 3.10.1 +Release: 0 +Summary: Spam filtering system +License: Apache-2.0 +Group: Productivity/Networking/Email/Utilities +URL: https://rspamd.com/ +Source0: https://github.com/rspamd/rspamd/archive/%{version}/%{name}-%{version}.tar.gz +Source1: usr.bin.rspamd +Patch0: rspamd-conf.patch +Patch1: rspamd-after-redis-target.patch +Patch2: fix_missing_return.patch +%if !0%{?is_opensuse} +# because 80-check-malware-scan-clamav triggered in SLE-15-SP2 +BuildRequires: -post-build-checks-malwarescan +%endif +BuildRequires: cmake >= 3.12 +BuildRequires: curl-devel +BuildRequires: db-devel +BuildRequires: file-devel +BuildRequires: gcc%{?force_gcc_version}-c++ +BuildRequires: gd-devel +%if %{with hyperscan} +BuildRequires: pkgconfig(libhs) +%endif +%if %{with jemalloc} +BuildRequires: jemalloc-devel +%endif +BuildRequires: libfann-devel +BuildRequires: libicu-devel +%if %{with luajit} +BuildRequires: luajit-devel +%else +BuildRequires: lua%{?lua_abi_version}-devel +%endif +BuildRequires: lua%{?lua_abi_version}-lpeg +Requires: lua%{?lua_abi_version}-lpeg +%if %{with openblas} +BuildRequires: openblas-devel +%endif +BuildRequires: pcre2-devel +BuildRequires: pkgconfig +BuildRequires: pkgconfig(fmt) +%if !%{pkg_vcmp fmt-devel > 11} +Provides: bundled(fmt) = 11.0.0 +%endif +BuildRequires: pkgconfig(glib-2.0) >= 2.28 +%if %{with ext_hiredis} +BuildRequires: pkgconfig(hiredis) +%endif +BuildRequires: pkgconfig(libev) +%if 0%{?suse_version} >= 1500 && 0%{?suse_version} < 1599 +BuildRequires: pkgconfig(libnsl) +%endif +BuildRequires: ragel +BuildRequires: pkgconfig(libarchive) >= 3.0 +BuildRequires: pkgconfig(libsodium) +BuildRequires: pkgconfig(openssl) +BuildRequires: pkgconfig(sqlite3) +%if %{with systemd} +BuildRequires: pkgconfig(systemd) +%{?systemd_ordering} +%endif +BuildRequires: lapack-devel +BuildRequires: pkgconfig(libunwind) +BuildRequires: pkgconfig(libxxhash) +BuildRequires: pkgconfig(libzstd) +BuildRequires: pkgconfig(openblas) +%if 0%{?with split_out_client} +Requires: rspamd-client = %{version} +%else +Conflicts: rspamd-client +%endif +BuildRequires: apparmor-abstractions +Requires: apparmor-abstractions +Requires(pre): shadow +Provides: group(%{rspamd_group}) +Provides: user(%{rspamd_user}) + +%description +Rspamd is a spam filtering system that allows evaluation of messages +by a number of rules including regular expressions, statistical analysis and +custom services such as URL black lists. Each message is analysed by rspamd and +given a "spam score". + +According to this spam score and the user's settings, rspamd recommends an +action for the MTA to apply to the message, for example to pass, reject or add +a header. Rspamd is designed to process hundreds of messages per second +simultaneously and has a number of features available. + +%if 0%{?with split_out_client} +%package client +# +Summary: Spam filtering system - Client tools +Group: Productivity/Networking/Email/Utilities + +%description client +Rspamd is a spam filtering system that allows evaluation of messages +by a number of rules including regular expressions, statistical analysis and +custom services such as URL black lists. Each message is analysed by rspamd and +given a "spam score". + +According to this spam score and the user's settings, rspamd recommends an +action for the MTA to apply to the message, for example to pass, reject or add +a header. Rspamd is designed to process hundreds of messages per second +simultaneously and has a number of features available. + +This package holds the client tools (rspamc and rspamadm) +%endif + +%prep +%autosetup -p1 + +%build +%if %{with luajit} +if ! [ "%{lua_abi_version}" = "$(pkg-config --variable=abiver luajit | tr -d '.')" ] ; then + echo "the lua_abi_version define and the abi version of luajit do not match. please investigate. exiting." + exit 1 +fi +%endif +%if 0%{?force_gcc_version} +export CC="gcc-%{?force_gcc_version}" +export CXX="g++-%{?force_gcc_version}" +%endif +%cmake \ +%if 0%{?force_gcc_version} + -DCMAKE_ASM_COMPILER="gcc-%{?force_gcc_version}" \ +%else + -DCMAKE_ASM_COMPILER="gcc" \ +%endif +%if 0%{suse_version} == 1315 + -DCMAKE_USER_MAKE_RULES_OVERRIDE="" \ +%endif + -DCMAKE_SHARED_LINKER_FLAGS='-flto=auto -Wl,--as-needed -Wl,-z,now' \ + -DCMAKE_EXE_LINKER_FLAGS="%{?build_ldflags} -Wl,--as-needed -Wl,-z,now -pie" \ + -DRSPAMD_LIBDIR=%{_libdir}/rspamd \ + -DCONFDIR=%{_sysconfdir}/rspamd \ + -DMANDIR=%{_mandir} \ + -DDBDIR=%{_localstatedir}/lib/rspamd \ + -DRUNDIR=%{_localstatedir}/run/rspamd \ + -DLOGDIR=%{_localstatedir}/log/rspamd \ + -DEXAMPLESDIR=%{_datadir}/examples/rspamd \ + -DPLUGINSDIR=%{_datadir}/rspamd \ + -DLIBDIR=%{_libdir}/rspamd \ + -DINCLUDEDIR=%{_includedir} \ + -DWWWDIR=%{_wwwdir}/%{name} \ + %if 0%{suse_version} > 1315 + -DENABLE_OPTIMIZATION=ON \ + %endif + -DENABLE_REDIRECTOR=ON \ + -DENABLE_LIBUNWIND:BOOL=ON \ + -DENABLE_BLAS:BOOL=ON \ + -DSYSTEM_XXHASH:BOOL=ON \ + -DCMAKE_SKIP_INSTALL_RPATH=ON \ + -DCMAKE_SKIP_RPATH=OFF \ + %if %{with luajit} + -DENABLE_LUAJIT=ON \ + %else + -DENABLE_LUAJIT=OFF \ + %endif + -DENABLE_DB=ON \ + -DENABLE_SQLITE=ON \ + -DENABLE_HIREDIS=ON \ + -DENABLE_URL_INCLUDE=ON \ + -DNO_SHARED=ON \ + -DINSTALL_EXAMPLES=ON \ + -DINSTALL_WEBUI=ON \ + %if %{with systemd} + -DWANT_SYSTEMD_UNITS=ON \ + -DSYSTEMDDIR=%{_unitdir} \ + %else + -DWANT_SYSTEMD_UNITS=OFF \ + %endif + %if %{with hyperscan} + -DENABLE_HYPERSCAN=ON \ + %endif + -DENABLE_GD=ON \ + -DENABLE_FANN=ON \ + %if %{with utils} + -DENABLE_UTILS=ON \ + %endif + -DENABLE_PCRE2=ON \ + %if %{with jemalloc} + -DENABLE_JEMALLOC=ON \ + %endif + %if %{pkg_vcmp fmt-devel > 11} + -DSYSTEM_FMT=ON \ + %else + -DSYSTEM_FMT=OFF \ + %endif + -DSYSTEM_ZSTD=ON \ + -DDEBIAN_BUILD=1 \ + -DRSPAMD_GROUP=%{rspamd_group} \ + -DRSPAMD_USER=%{rspamd_user} +make %{?_smp_mflags} + +%install +%cmake_install +mkdir -p \ + %{buildroot}%{_sbindir} \ + %{buildroot}%{_localstatedir}/lib/rspamd \ + %{buildroot}%{_localstatedir}/run/rspamd \ + %{buildroot}%{_localstatedir}/log/rspamd + +%if %{with systemd} +ln -fs %{_sbindir}/service %{buildroot}%{_sbindir}/rc%{name} +%endif +ln -s rspamd/librspamd-actrie.so %{buildroot}%{_libdir} +ln -s rspamd/librspamd-server.so %{buildroot}%{_libdir} +ln -s rspamd/librspamd-ev.so %{buildroot}%{_libdir} +ln -s rspamd/librspamd-kann.so %{buildroot}%{_libdir} +ln -s rspamd/librspamd-replxx.so %{buildroot}%{_libdir} + +install -d -m 0755 %{buildroot}%{_sysconfdir}/%{name}/local.d +cat > %{buildroot}%{_sysconfdir}/%{name}/local.d/worker-normal.inc << EOF +# If the mailer is running on the same host use a unix socket +#bind_socket = "/run/rspamd/worker.socket mode=0666"; +EOF + +cat > %{buildroot}%{_sysconfdir}/%{name}/local.d/worker-controller.inc << EOF +# If the mailer is running on the same host use a unix socket +#bind_socket = "/run/rspamd/worker-controller.socket mode=0666"; +EOF + +cat > %{buildroot}%{_sysconfdir}/%{name}/local.d/worker-proxy.inc << EOF +# If the mailer is running on the same host use a unix socket +#bind_socket = "/run/rspamd/worker-proxy.socket mode=0666"; +EOF + +install -d -m 0755 %{buildroot}%{_sysconfdir}/%{name}/override.d +mkdir -p %{buildroot}%{_sysconfdir}/apparmor.d/local/ +install -D -m644 %{SOURCE1} %{buildroot}%{_sysconfdir}/apparmor.d/usr.bin.rspamd +echo "# Site-specific additions and overrides for 'usr.bin.rspamd'" > %{buildroot}%{_sysconfdir}/apparmor.d/local/usr.bin.rspamd + +%pre +%{_sbindir}/groupadd -r %{rspamd_group} 2>/dev/null || : +%{_sbindir}/useradd -g %{rspamd_group} -c "Rmilter user" -s /bin/false -r %{rspamd_user} 2>/dev/null || : +# +# cleanup bad unser files from earlier 3.4 builds +# see https://github.com/rspamd/rspamd/issues/4329 for the details +# +echo "Cleaning up '*.unser' files in /var/lib/rspamd" +find /var/lib/rspamd/ -type f -name '*.unser' -delete -print ||: +%if 0%{?suse_version} && %{with systemd} +%service_add_pre %{name}.service + +%post +#systemd-tmpfiles --create /usr/lib/tmpfiles.d/%%{name}.conf ||: +%service_add_post %{name}.service +%endif + +%if 0%{?suse_version} +%preun +%if %{with systemd} +%service_del_preun %{name}.service +%else +%stop_on_removal %{name} +%endif +%endif + +%if 0%{?suse_version} +%postun +%if %{with systemd} +%service_del_postun %{name}.service +%else +%restart_on_update %{name} +%insserv_cleanup +%endif +%endif + +%files +%defattr(-,root,root) +%{_sbindir}/rc%{name} +%{_bindir}/rspamd +%{_bindir}/rspamd-%{version} +%{_bindir}/rspamd_stats +%{_libdir}/librspamd-actrie.so +%{_libdir}/librspamd-server.so +%{_libdir}/librspamd-ev.so +%{_libdir}/librspamd-kann.so +%{_libdir}/librspamd-replxx.so + +%dir %{_libdir}/rspamd/ +%{_libdir}/rspamd/librspamd-actrie.so +%{_libdir}/rspamd/librspamd-server.so +%{_libdir}/rspamd/librspamd-ev.so +%{_libdir}/rspamd/librspamd-kann.so +%{_libdir}/rspamd/librspamd-replxx.so + +%config %{_sysconfdir}/apparmor.d/usr.bin.rspamd +%config(noreplace) %{_sysconfdir}/apparmor.d/local/usr.bin.rspamd + +%dir %{_sysconfdir}/rspamd/ +%config %{_sysconfdir}/rspamd/actions.conf +%config %{_sysconfdir}/rspamd/cgp.inc +%config %{_sysconfdir}/rspamd/common.conf +%config %{_sysconfdir}/rspamd/composites.conf +%config %{_sysconfdir}/rspamd/groups.conf +%config %{_sysconfdir}/rspamd/logging.inc +%config %{_sysconfdir}/rspamd/metrics.conf +%config %{_sysconfdir}/rspamd/modules.conf +%config %{_sysconfdir}/rspamd/options.inc +%config %{_sysconfdir}/rspamd/rspamd.conf +%config %{_sysconfdir}/rspamd/settings.conf +%config %{_sysconfdir}/rspamd/statistic.conf +%config %{_sysconfdir}/rspamd/worker-controller.inc +%config %{_sysconfdir}/rspamd/worker-fuzzy.inc +%config %{_sysconfdir}/rspamd/worker-normal.inc +%config %{_sysconfdir}/rspamd/worker-proxy.inc +%config %{_sysconfdir}/rspamd/lang_detection.inc + +%dir %{_sysconfdir}/rspamd/local.d +%config(noreplace) %{_sysconfdir}/rspamd/local.d/worker-controller.inc +%config(noreplace) %{_sysconfdir}/rspamd/local.d/worker-normal.inc +%config(noreplace) %{_sysconfdir}/rspamd/local.d/worker-proxy.inc + +%dir %{_sysconfdir}/rspamd/scores.d +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/content_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/fuzzy_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/headers_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/hfilter_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/mime_types_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/mua_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/phishing_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/policies_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/rbl_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/statistics_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/subject_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/surbl_group.conf +%config(noreplace) %{_sysconfdir}/rspamd/scores.d/whitelist_group.conf + +%dir %{_sysconfdir}/rspamd/maps.d +%config(noreplace) %{_sysconfdir}/rspamd/maps.d/dmarc_whitelist.inc +%config(noreplace) %{_sysconfdir}/rspamd/maps.d/exe_clickbait.inc +%config(noreplace) %{_sysconfdir}/rspamd/maps.d/maillist.inc +%config(noreplace) %{_sysconfdir}/rspamd/maps.d/mid.inc +%config(noreplace) %{_sysconfdir}/rspamd/maps.d/mime_types.inc +%config(noreplace) %{_sysconfdir}/rspamd/maps.d/redirectors.inc +%config(noreplace) %{_sysconfdir}/rspamd/maps.d/spf_dkim_whitelist.inc +%config(noreplace) %{_sysconfdir}/rspamd/maps.d/surbl-whitelist.inc + +%dir %{_sysconfdir}/rspamd/modules.d +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/antivirus.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/aws_s3.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/arc.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/asn.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/bayes_expiry.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/bimi.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/chartable.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/clickhouse.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/dcc.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/dkim.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/dkim_signing.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/dmarc.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/elastic.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/emails.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/external_relay.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/external_services.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/force_actions.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/forged_recipients.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/fuzzy_check.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/greylist.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/gpt.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/history_redis.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/hfilter.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/http_headers.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/known_senders.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/maillist.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/metadata_exporter.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/metric_exporter.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/mid.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/mime_types.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/multimap.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/mx_check.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/neural.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/once_received.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/p0f.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/phishing.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/ratelimit.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/rbl.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/redis.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/regexp.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/replies.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/reputation.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/milter_headers.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/rspamd_update.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/spamassassin.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/spamtrap.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/spf.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/surbl.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/trie.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/url_redirector.conf +%config(noreplace) %{_sysconfdir}/rspamd/modules.d/whitelist.conf + +%dir %{_sysconfdir}/rspamd/override.d + +%dir %{_datadir}/rspamd +%{_datadir}/rspamd/aws_s3.lua +%{_datadir}/rspamd/bimi.lua +%{_datadir}/rspamd/effective_tld_names.dat +%{_datadir}/rspamd/external_relay.lua +%{_datadir}/rspamd/http_headers.lua + +%dir %{_datadir}/rspamd/elastic +%{_datadir}/rspamd/elastic/kibana.json +%{_datadir}/rspamd/elastic/rspamd_template.json + +%dir %{_datadir}/rspamd/languages +%{_datadir}/rspamd/languages/* + +%{_datadir}/rspamd/antivirus.lua +%{_datadir}/rspamd/arc.lua +%{_datadir}/rspamd/asn.lua +%{_datadir}/rspamd/bayes_expiry.lua +%{_datadir}/rspamd/clickhouse.lua +%{_datadir}/rspamd/clustering.lua +%{_datadir}/rspamd/dcc.lua +%{_datadir}/rspamd/dkim_signing.lua +%{_datadir}/rspamd/dmarc.lua +%{_datadir}/rspamd/dynamic_conf.lua +%{_datadir}/rspamd/elastic.lua +%{_datadir}/rspamd/emails.lua +%{_datadir}/rspamd/external_services.lua +%{_datadir}/rspamd/force_actions.lua +%{_datadir}/rspamd/forged_recipients.lua +%{_datadir}/rspamd/fuzzy_collect.lua +%{_datadir}/rspamd/greylist.lua +%{_datadir}/rspamd/gpt.lua +%{_datadir}/rspamd/hfilter.lua +%{_datadir}/rspamd/history_redis.lua +%{_datadir}/rspamd/ip_score.lua +%{_datadir}/rspamd/known_senders.lua +%{_datadir}/rspamd/maillist.lua +%{_datadir}/rspamd/maps_stats.lua +%{_datadir}/rspamd/metadata_exporter.lua +%{_datadir}/rspamd/metric_exporter.lua +%{_datadir}/rspamd/mid.lua +%{_datadir}/rspamd/milter_headers.lua +%{_datadir}/rspamd/mime_types.lua +%{_datadir}/rspamd/multimap.lua +%{_datadir}/rspamd/mx_check.lua +%{_datadir}/rspamd/neural.lua +%{_datadir}/rspamd/once_received.lua +%{_datadir}/rspamd/p0f.lua +%{_datadir}/rspamd/phishing.lua +%{_datadir}/rspamd/ratelimit.lua +%{_datadir}/rspamd/rbl.lua +%{_datadir}/rspamd/replies.lua +%{_datadir}/rspamd/reputation.lua +%{_datadir}/rspamd/rspamd_update.lua +%{_datadir}/rspamd/settings.lua +%{_datadir}/rspamd/spamassassin.lua +%{_datadir}/rspamd/spamtrap.lua +%{_datadir}/rspamd/spf.lua +%{_datadir}/rspamd/trie.lua +%{_datadir}/rspamd/url_redirector.lua +%{_datadir}/rspamd/whitelist.lua + +%dir %{_datadir}/rspamd/lualib +%{_datadir}/rspamd/lualib/ansicolors.lua +%{_datadir}/rspamd/lualib/argparse.lua +%{_datadir}/rspamd/lualib/fun.lua +%{_datadir}/rspamd/lualib/global_functions.lua +%{_datadir}/rspamd/lualib/lpegre.lua +%{_datadir}/rspamd/lualib/lua_auth_results.lua +%{_datadir}/rspamd/lualib/lua_aws.lua +%{_datadir}/rspamd/lualib/lua_bayes_learn.lua +%{_datadir}/rspamd/lualib/lua_cfg_transform.lua +%{_datadir}/rspamd/lualib/lua_cfg_utils.lua +%{_datadir}/rspamd/lualib/lua_clickhouse.lua +%{_datadir}/rspamd/lualib/lua_dkim_tools.lua +%{_datadir}/rspamd/lualib/lua_fuzzy.lua +%{_datadir}/rspamd/lualib/lua_lexer.lua +%{_datadir}/rspamd/lualib/lua_maps.lua +%{_datadir}/rspamd/lualib/lua_maps_expressions.lua +%{_datadir}/rspamd/lualib/lua_meta.lua +%{_datadir}/rspamd/lualib/lua_mime.lua +%{_datadir}/rspamd/lualib/lua_mime_types.lua +%{_datadir}/rspamd/lualib/lua_redis.lua +%{_datadir}/rspamd/lualib/lua_settings.lua +%{_datadir}/rspamd/lualib/lua_smtp.lua +%{_datadir}/rspamd/lualib/lua_stat.lua +%{_datadir}/rspamd/lualib/lua_tcp_sync.lua +%{_datadir}/rspamd/lualib/lua_urls_compose.lua +%{_datadir}/rspamd/lualib/lua_util.lua +%{_datadir}/rspamd/lualib/lua_verdict.lua +%{_datadir}/rspamd/lualib/lupa.lua +%{_datadir}/rspamd/lualib/plugins_stats.lua +%{_datadir}/rspamd/lualib/tableshape.lua +%{_datadir}/rspamd/lualib/lua_bayes_redis.lua + +%dir %{_datadir}/rspamd/lualib/lua_content +%{_datadir}/rspamd/lualib/lua_content/ical.lua +%{_datadir}/rspamd/lualib/lua_content/init.lua +%{_datadir}/rspamd/lualib/lua_content/pdf.lua +%{_datadir}/rspamd/lualib/lua_content/vcard.lua + +%dir %{_datadir}/rspamd/lualib/lua_ffi +%{_datadir}/rspamd/lualib/lua_ffi/common.lua +%{_datadir}/rspamd/lualib/lua_ffi/dkim.lua +%{_datadir}/rspamd/lualib/lua_ffi/init.lua +%{_datadir}/rspamd/lualib/lua_ffi/linalg.lua +%{_datadir}/rspamd/lualib/lua_ffi/spf.lua + +%dir %{_datadir}/rspamd/lualib/lua_magic +%{_datadir}/rspamd/lualib/lua_magic/heuristics.lua +%{_datadir}/rspamd/lualib/lua_magic/init.lua +%{_datadir}/rspamd/lualib/lua_magic/patterns.lua +%{_datadir}/rspamd/lualib/lua_magic/types.lua + +%dir %{_datadir}/rspamd/lualib/lua_scanners +%{_datadir}/rspamd/lualib/lua_scanners/avast.lua +%{_datadir}/rspamd/lualib/lua_scanners/clamav.lua +%{_datadir}/rspamd/lualib/lua_scanners/cloudmark.lua +%{_datadir}/rspamd/lualib/lua_scanners/common.lua +%{_datadir}/rspamd/lualib/lua_scanners/dcc.lua +%{_datadir}/rspamd/lualib/lua_scanners/fprot.lua +%{_datadir}/rspamd/lualib/lua_scanners/icap.lua +%{_datadir}/rspamd/lualib/lua_scanners/init.lua +%{_datadir}/rspamd/lualib/lua_scanners/kaspersky_av.lua +%{_datadir}/rspamd/lualib/lua_scanners/kaspersky_se.lua +%{_datadir}/rspamd/lualib/lua_scanners/oletools.lua +%{_datadir}/rspamd/lualib/lua_scanners/p0f.lua +%{_datadir}/rspamd/lualib/lua_scanners/pyzor.lua +%{_datadir}/rspamd/lualib/lua_scanners/razor.lua +%{_datadir}/rspamd/lualib/lua_scanners/savapi.lua +%{_datadir}/rspamd/lualib/lua_scanners/sophos.lua +%{_datadir}/rspamd/lualib/lua_scanners/spamassassin.lua +%{_datadir}/rspamd/lualib/lua_scanners/vadesecure.lua +%{_datadir}/rspamd/lualib/lua_scanners/virustotal.lua + +%dir %{_datadir}/rspamd/lualib/lua_selectors +%{_datadir}/rspamd/lualib/lua_selectors/common.lua +%{_datadir}/rspamd/lualib/lua_selectors/extractors.lua +%{_datadir}/rspamd/lualib/lua_selectors/init.lua +%{_datadir}/rspamd/lualib/lua_selectors/maps.lua +%{_datadir}/rspamd/lualib/lua_selectors/transforms.lua + +%dir %{_datadir}/rspamd/lualib/rspamadm +%{_datadir}/rspamd/lualib/rspamadm/clickhouse.lua +%{_datadir}/rspamd/lualib/rspamadm/configgraph.lua +%{_datadir}/rspamd/lualib/rspamadm/confighelp.lua +%{_datadir}/rspamd/lualib/rspamadm/configwizard.lua +%{_datadir}/rspamd/lualib/rspamadm/cookie.lua +%{_datadir}/rspamd/lualib/rspamadm/classifier_test.lua +%{_datadir}/rspamd/lualib/rspamadm/corpus_test.lua +%{_datadir}/rspamd/lualib/rspamadm/dmarc_report.lua +%{_datadir}/rspamd/lualib/rspamadm/dns_tool.lua +%{_datadir}/rspamd/lualib/rspamadm/fuzzy_convert.lua +%{_datadir}/rspamd/lualib/rspamadm/fuzzy_stat.lua +%{_datadir}/rspamd/lualib/rspamadm/grep.lua +%{_datadir}/rspamd/lualib/rspamadm/keypair.lua +%{_datadir}/rspamd/lualib/rspamadm/mime.lua +%{_datadir}/rspamd/lualib/rspamadm/publicsuffix.lua +%{_datadir}/rspamd/lualib/rspamadm/stat_convert.lua +%{_datadir}/rspamd/lualib/rspamadm/statistics_dump.lua +%{_datadir}/rspamd/lualib/rspamadm/template.lua +%{_datadir}/rspamd/lualib/rspamadm/vault.lua +%{_datadir}/rspamd/lualib/rspamadm/neural_test.lua +%{_datadir}/rspamd/lualib/rspamadm/dkim_keygen.lua +%{_datadir}/rspamd/lualib/rspamadm/fuzzy_ping.lua +%{_datadir}/rspamd/lualib/rspamadm/secretbox.lua + +%dir %{_datadir}/rspamd/lualib/plugins +%{_datadir}/rspamd/lualib/plugins/dmarc.lua +%{_datadir}/rspamd/lualib/plugins/neural.lua +%{_datadir}/rspamd/lualib/plugins/rbl.lua +%{_datadir}/rspamd/lualib/plugins/ratelimit.lua + +%dir %{_datadir}/rspamd/lualib/redis_scripts/ +%{_datadir}/rspamd/lualib/redis_scripts/neural_maybe_invalidate.lua +%{_datadir}/rspamd/lualib/redis_scripts/neural_maybe_lock.lua +%{_datadir}/rspamd/lualib/redis_scripts/neural_save_unlock.lua +%{_datadir}/rspamd/lualib/redis_scripts/neural_train_size.lua +%{_datadir}/rspamd/lualib/redis_scripts/ratelimit_check.lua +%{_datadir}/rspamd/lualib/redis_scripts/ratelimit_cleanup_pending.lua +%{_datadir}/rspamd/lualib/redis_scripts/ratelimit_update.lua +%{_datadir}/rspamd/lualib/redis_scripts/bayes_cache_check.lua +%{_datadir}/rspamd/lualib/redis_scripts/bayes_cache_learn.lua +%{_datadir}/rspamd/lualib/redis_scripts/bayes_classify.lua +%{_datadir}/rspamd/lualib/redis_scripts/bayes_learn.lua +%{_datadir}/rspamd/lualib/redis_scripts/bayes_stat.lua + +%dir %{_datadir}/rspamd/rules +%{_datadir}/rspamd/rules/archives.lua +%{_datadir}/rspamd/rules/bitcoin.lua +%{_datadir}/rspamd/rules/bounce.lua +%{_datadir}/rspamd/rules/content.lua +%{_datadir}/rspamd/rules/forwarding.lua +%{_datadir}/rspamd/rules/headers_checks.lua +%{_datadir}/rspamd/rules/html.lua +%{_datadir}/rspamd/rules/mid.lua +%{_datadir}/rspamd/rules/misc.lua +%{_datadir}/rspamd/rules/parts.lua +%{_datadir}/rspamd/rules/rspamd.lua +%{_datadir}/rspamd/rules/subject_checks.lua + +%dir %{_datadir}/rspamd/rules/regexp +%{_datadir}/rspamd/rules/regexp/compromised_hosts.lua +%{_datadir}/rspamd/rules/regexp/headers.lua +%{_datadir}/rspamd/rules/regexp/misc.lua +%{_datadir}/rspamd/rules/regexp/upstream_spam_filters.lua +%{_datadir}/rspamd/rules/controller + +%{_mandir}/man8/rspamd.8* + +%{_unitdir}/rspamd.service + +%dir %attr(750,%{rspamd_user},%{rspamd_group}) %{_localstatedir}/lib/rspamd +%dir %attr(750,%{rspamd_user},%{rspamd_group}) %{_localstatedir}/log/rspamd + +%dir %{_wwwdir} +%dir %{_wwwdir}/%{name} +%{_wwwdir}/%{name}/apple-touch-icon.png +%{_wwwdir}/%{name}/browserconfig.xml +%{_wwwdir}/%{name}/README.md +%{_wwwdir}/%{name}/favicon.ico +%{_wwwdir}/%{name}/favicon-16x16.png +%{_wwwdir}/%{name}/favicon-32x32.png +%{_wwwdir}/%{name}/index.html +%{_wwwdir}/%{name}/mstile-150x150.png +%{_wwwdir}/%{name}/safari-pinned-tab.svg + +%{_wwwdir}/%{name}/css + +%dir %{_wwwdir}/%{name}/fonts +%{_wwwdir}/%{name}/fonts/glyphicons-halflings-regular.ttf +%{_wwwdir}/%{name}/fonts/glyphicons-halflings-regular.woff +%{_wwwdir}/%{name}/fonts/glyphicons-halflings-regular.woff2 + +%dir %{_wwwdir}/%{name}/img +%{_wwwdir}/%{name}/img/asc.png +%{_wwwdir}/%{name}/img/desc.png +%{_wwwdir}/%{name}/img/rspamd_logo_navbar.png +%{_wwwdir}/%{name}/img/drop-area.svg + +%dir %{_wwwdir}/%{name}/js +%{_wwwdir}/%{name}/js/main.js + +%dir %{_wwwdir}/%{name}/js/app +%{_wwwdir}/%{name}/js/app/config.js +%{_wwwdir}/%{name}/js/app/graph.js +%{_wwwdir}/%{name}/js/app/history.js +%{_wwwdir}/%{name}/js/app/rspamd.js +%{_wwwdir}/%{name}/js/app/selectors.js +%{_wwwdir}/%{name}/js/app/stats.js +%{_wwwdir}/%{name}/js/app/symbols.js +%{_wwwdir}/%{name}/js/app/upload.js +%{_wwwdir}/%{name}/js/app/common.js +%{_wwwdir}/%{name}/js/app/libft.js + +%{_wwwdir}/%{name}/js/lib + +%if 0%{?with split_out_client} +%files client +%endif +%{_mandir}/man1/rspamadm.1* +%{_mandir}/man1/rspamc.1* +%{_bindir}/rspamadm +%{_bindir}/rspamadm-%{version} +%{_bindir}/rspamc +%{_bindir}/rspamc-%{version} + +%changelog diff --git a/usr.bin.rspamd b/usr.bin.rspamd new file mode 100644 index 0000000..aa65088 --- /dev/null +++ b/usr.bin.rspamd @@ -0,0 +1,35 @@ +# Last Modified: Mon Oct 5 10:19:40 2020 +#include + +# based on https://github.com/progmaticltd/homebox/blob/master/install/playbooks/roles/rspamd/templates/apparmor.d/usr.bin.rspamd + +profile rspamd /usr/bin/rspamd { + #include + #include + #include + #include + + /usr/bin/rspamd mr, + + /etc/rspamd/** r, + + /srv/www/webapps/rspamd/ r, + /srv/www/webapps/rspamd/** r, + /usr/share/rspamd/ r, + /usr/share/rspamd/** r, + + /var/lib/rspamd/ r, + /var/lib/rspamd/** rwk, + + /var/log/rspamd/rspamd.log* rwk, + /{var/,}run/rspamd/* rwk, + + /dev/shm/rhm.* rw, + /etc/magic r, + /proc/sys/kernel/random/uuid r, + + /usr/share/icu/*/icu*.dat r, + + #include if exists + #include if exists +} \ No newline at end of file From cdc3aabc2a523f6499b7b2d97f398a3f00281e6e3504f9da3e855efaa5d186be Mon Sep 17 00:00:00 2001 From: Marcus Rueckert Date: Wed, 16 Oct 2024 11:40:05 +0000 Subject: [PATCH 2/2] fix filelist OBS-URL: https://build.opensuse.org/package/show/server:mail/rspamd?expand=0&rev=127 --- rspamd.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/rspamd.spec b/rspamd.spec index 83a8f58..c4de832 100644 --- a/rspamd.spec +++ b/rspamd.spec @@ -670,6 +670,7 @@ find /var/lib/rspamd/ -type f -name '*.unser' -delete -print ||: %dir %attr(750,%{rspamd_user},%{rspamd_group}) %{_localstatedir}/lib/rspamd %dir %attr(750,%{rspamd_user},%{rspamd_group}) %{_localstatedir}/log/rspamd +%dir /srv/www %dir %{_wwwdir} %dir %{_wwwdir}/%{name} %{_wwwdir}/%{name}/apple-touch-icon.png