Accepting request 1132069 from server:mail

fix_stack_smash.patch: upstream rework of logging doesn't allocate
  enough memory for an array (bsc#1216830)

OBS-URL: https://build.opensuse.org/request/show/1132069
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/rspamd?expand=0&rev=20
This commit is contained in:
Ana Guerrero 2023-12-08 21:33:19 +00:00 committed by Git OBS Bridge
commit df93fb9018
3 changed files with 54 additions and 0 deletions

47
fix_stack_smash.patch Normal file
View File

@ -0,0 +1,47 @@
https://bugzilla.suse.com/show_bug.cgi?id=1216830
https://github.com/rspamd/rspamd/pull/4732
The caller uses the value to size its memory allocation:
gsize niov = rspamd_log_fill_iov(NULL, now, module, id, function, level_flags, message,
mlen, rspamd_log);
struct iovec *iov = g_alloca(sizeof(struct iovec) * niov);
and that faulted on aarch64.
Index: rspamd-3.7.4/src/libserver/logger/logger.c
===================================================================
--- rspamd-3.7.4.orig/src/libserver/logger/logger.c
+++ rspamd-3.7.4/src/libserver/logger/logger.c
@@ -1046,25 +1046,7 @@ gsize rspamd_log_fill_iov(struct iovec *
gint r;
if (iov == NULL) {
- if (log_rspamadm) {
- if (logger->log_level == G_LOG_LEVEL_DEBUG) {
- return 4;
- }
- else {
- return 3; /* No time component */
- }
- }
- else if (log_systemd) {
- return 3;
- }
- else {
- if (log_color) {
- return 5;
- }
- else {
- return 4;
- }
- }
+ return 5;
}
else {
static gchar timebuf[64], modulebuf[64];
@@ -1197,4 +1179,4 @@ gsize rspamd_log_fill_iov(struct iovec *
return niov;
}
}
-}
\ No newline at end of file
+}

View File

@ -1,3 +1,9 @@
-------------------------------------------------------------------
Wed Dec 6 15:28:07 UTC 2023 - Adam Majer <adam.majer@suse.de>
- 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 <guillaume.gardet@opensuse.org>

View File

@ -68,6 +68,7 @@ Patch0: rspamd-conf.patch
Patch1: rspamd-after-redis-target.patch
Patch2: fix_missing_return.patch
Patch3: rspamd-d907a95.patch
Patch4: fix_stack_smash.patch
%if !0%{?is_opensuse}
# because 80-check-malware-scan-clamav triggered in SLE-15-SP2
BuildRequires: -post-build-checks-malwarescan