diff --git a/068714f9f5a96fbd94560211cec75775ee023d02.patch b/068714f9f5a96fbd94560211cec75775ee023d02.patch new file mode 100644 index 0000000..f095ac3 --- /dev/null +++ b/068714f9f5a96fbd94560211cec75775ee023d02.patch @@ -0,0 +1,32 @@ +From 068714f9f5a96fbd94560211cec75775ee023d02 Mon Sep 17 00:00:00 2001 +From: Vsevolod Stakhov +Date: Fri, 11 Nov 2022 20:34:51 +0000 +Subject: [PATCH] [CritFix] Deserialise hyperscan to the page-aligned space to + prevent alignment issues + +Issue: #4329 +--- + src/libserver/hyperscan_tools.cxx | 10 +++++++++- + 1 file changed, 9 insertions(+), 1 deletion(-) + +diff --git a/src/libserver/hyperscan_tools.cxx b/src/libserver/hyperscan_tools.cxx +index 6187208a9..96366067d 100644 +--- a/src/libserver/hyperscan_tools.cxx ++++ b/src/libserver/hyperscan_tools.cxx +@@ -306,7 +306,15 @@ auto load_cached_hs_file(const char *fname, std::int64_t offset = 0) -> tl::expe + msg_debug_hyperscan_lambda("multipattern: create new database in %s; %Hz size", + tmpfile_pattern.data(), unserialized_size); + void *buf; +- posix_memalign(&buf, 16, unserialized_size); ++#ifdef HAVE_GETPAGESIZE ++ auto page_size = getpagesize(); ++#else ++ auto page_size = sysconf(_SC_PAGESIZE); ++#endif ++ if (page_size == -1) { ++ page_size = 4096; ++ } ++ posix_memalign(&buf, page_size, unserialized_size); + if (buf == nullptr) { + return tl::make_unexpected(error {"Cannot allocate memory", errno, error_category::CRITICAL }); + } diff --git a/rspamd-3.4.tar.gz b/rspamd-3.4.tar.gz new file mode 100644 index 0000000..5f88fb1 --- /dev/null +++ b/rspamd-3.4.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:f8d3e2b9a1a6ed6521c60fe505e97086624407f67366f0ce882eee433a53c355 +size 5689732 diff --git a/rspamd.changes b/rspamd.changes index c2d79fd..460b3b9 100644 --- a/rspamd.changes +++ b/rspamd.changes @@ -1,3 +1,21 @@ +------------------------------------------------------------------- +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 diff --git a/rspamd.spec b/rspamd.spec index df8f253..155ceb7 100644 --- a/rspamd.spec +++ b/rspamd.spec @@ -56,7 +56,7 @@ %endif Name: rspamd -Version: 3.3 +Version: 3.4 Release: 0 Summary: Spam filtering system License: Apache-2.0 @@ -67,6 +67,7 @@ Source1: usr.bin.rspamd Patch0: rspamd-conf.patch Patch1: rspamd-after-redis-target.patch Patch2: fix_missing_return.patch +Patch3: https://github.com/rspamd/rspamd/commit/068714f9f5a96fbd94560211cec75775ee023d02.patch %if !0%{?is_opensuse} # because 80-check-malware-scan-clamav triggered in SLE-15-SP2 BuildRequires: -post-build-checks-malwarescan @@ -292,6 +293,11 @@ echo "# Site-specific additions and overrides for 'usr.bin.rspamd'" > %{buildroo %if 0%{?suse_version} %postun +# +# cleanup bad unser files from earlier 3.4 builds +# see https://github.com/rspamd/rspamd/issues/4329 for the details +# +find /var/lib/rspamd/ -type f -name '*.unser' -delete ||: %if %{with systemd} %service_del_postun %{name}.service %else