Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package dovecot23 for openSUSE:Factory checked in at 2021-02-07 15:21:09 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/dovecot23 (Old) and /work/SRC/openSUSE:Factory/.dovecot23.new.28504 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "dovecot23" Sun Feb 7 15:21:09 2021 rev:37 rq:869704 version:2.3.13 Changes: -------- --- /work/SRC/openSUSE:Factory/dovecot23/dovecot23.changes 2021-01-05 18:14:41.647412591 +0100 +++ /work/SRC/openSUSE:Factory/.dovecot23.new.28504/dovecot23.changes 2021-02-07 15:23:56.662194058 +0100 @@ -1,0 +2,9 @@ +Thu Feb 4 07:06:00 UTC 2021 - Arjen de Korte <suse+bu...@de-korte.org> + +- add BuildRequires openssl-devel >= 1.0.1 +- add fix-timeval_cmp_margin-for-32bit-systems.patch + Fix timeval_cmp_margin for 32-bit systems + + https://github.com/dovecot/core/pull/149 + +------------------------------------------------------------------- New: ---- fix-timeval_cmp_margin-for-32bit-systems.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ dovecot23.spec ++++++ --- /var/tmp/diff_new_pack.CYEg5i/_old 2021-02-07 15:23:57.394194894 +0100 +++ /var/tmp/diff_new_pack.CYEg5i/_new 2021-02-07 15:23:57.398194899 +0100 @@ -82,6 +82,7 @@ BuildRequires: mysql-devel %endif BuildRequires: openldap2-devel +BuildRequires: openssl-devel >= 1.0.1 BuildRequires: pam-devel BuildRequires: pkgconfig BuildRequires: postgresql-devel @@ -149,6 +150,8 @@ Patch1: dovecot-2.3.0-better_ssl_defaults.patch # https://github.com/dovecot/core/pull/126 Patch2: allow-tls1.3-only.patch +# https://github.com/dovecot/core/pull/149 +Patch3: fix-timeval_cmp_margin-for-32bit-systems.patch Summary: IMAP and POP3 Server Written Primarily with Security in Mind License: BSD-3-Clause AND LGPL-2.1-or-later AND MIT Group: Productivity/Networking/Email/Servers @@ -329,6 +332,7 @@ %patch -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 gzip -9v ChangeLog # Fix plugins dir. sed -i 's|#mail_plugin_dir = /usr/lib/dovecot|mail_plugin_dir = %{_libdir}/dovecot/modules|' doc/example-config/conf.d/10-mail.conf ++++++ fix-timeval_cmp_margin-for-32bit-systems.patch ++++++ >From 2cc1feca9087651902a5ea3cda021c8a0b3217ce Mon Sep 17 00:00:00 2001 From: Paul Howarth <p...@city-fan.org> Date: Mon, 4 Jan 2021 16:31:03 +0000 Subject: [PATCH] lib: Fix timeval_cmp_margin for 32-bit systems The test suite compares times with seconds values of -INT_MAX and INT_MAX. The result of this comparison does not fit in a value of type int and so the test suite fails on 32-bit systems where time_t is an int. To fix this, calculations on seconds values are done using long long integers. Broken by 16ab5542 --- src/lib/time-util.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/lib/time-util.c b/src/lib/time-util.c index 294bb02310..3f4cd01c9e 100644 --- a/src/lib/time-util.c +++ b/src/lib/time-util.c @@ -38,21 +38,23 @@ int timeval_cmp(const struct timeval *tv1, const struct timeval *tv2) int timeval_cmp_margin(const struct timeval *tv1, const struct timeval *tv2, unsigned int usec_margin) { - long long usecs_diff; + long long secs_diff, usecs_diff; int sec_margin, ret; if (tv1->tv_sec < tv2->tv_sec) { sec_margin = ((int)usec_margin / 1000000) + 1; - if ((tv2->tv_sec - tv1->tv_sec) > sec_margin) + secs_diff = (long long)tv2->tv_sec - (long long)tv1->tv_sec; + if (secs_diff > sec_margin) return -1; - usecs_diff = (tv2->tv_sec - tv1->tv_sec) * 1000000LL + + usecs_diff = secs_diff * 1000000LL + (tv2->tv_usec - tv1->tv_usec); ret = -1; } else if (tv1->tv_sec > tv2->tv_sec) { sec_margin = ((int)usec_margin / 1000000) + 1; - if ((tv1->tv_sec - tv2->tv_sec) > sec_margin) + secs_diff = (long long)tv1->tv_sec - (long long)tv2->tv_sec; + if (secs_diff > sec_margin) return 1; - usecs_diff = (tv1->tv_sec - tv2->tv_sec) * 1000000LL + + usecs_diff = secs_diff * 1000000LL + (tv1->tv_usec - tv2->tv_usec); ret = 1; } else if (tv1->tv_usec < tv2->tv_usec) {