Accepting request 953336 from server:mail

Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/953336
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/dovecot23?expand=0&rev=45
This commit is contained in:
Dominique Leuenberger 2022-02-11 22:07:41 +00:00 committed by Git OBS Bridge
commit a6a8fdfb9d
11 changed files with 162 additions and 96 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3cc4a3de6d7e27bd99ac59b99faa161287f78167272699a22591798ffcf84512
size 1952704

View File

@ -1,17 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQJLBAABCgA1FiEEK+dKqz7nVN+5yA0zGKNIru1AnaEFAmGvJbcXHGRvdmVjb3Qt
Y2VAZG92ZWNvdC5vcmcACgkQGKNIru1AnaHcmRAAswKv23SqQEqBq3exdXVKP+a2
Q6D5W4gvDlcKW5Qxn9ZrMvQ+MSG6WXZ0iEkVPz6Ie9RDgncIsh7U4yqIx7MjgEMg
XsnZzydqW96yLkl1vYVtbrTzLv57BwAL/SuKttUyE2qCaYs23RFzY/CRPgYvFRxz
ulIzU82uqZg9c47/QJQ4czWi8RN6QWIjpupYTgJfgnQJk2NIIfb1uHZ02JeG55E9
uMeO/CDAqO2PKy2M5VmoT4cS+3GF0BJ74cGjxzr6z8VcW01CDUM3viLWgsXiON8Y
sXJEOS6e/EmT1fnK0so6w+9flxuMchGPWoXzGXHwUyETeUT8d0ZteEBWNuxQ5a03
ybLDuDASQNi9/u3+NhLYNyFiWdQtt1q8bW/dhVB8+GT8ShHppTaws2YPTAA/SCZu
PIRmBCxh1DkrM23gbNRk44ZSyRuIboorDkisJaJP2pLvJ+jjBwwwfyBvv+29jqKs
m89ynZrVA5GJIf7rZXAUCiT7fgYqWMBZMA10aO+qPZVbZXGwdkeuRGnr78cEtMLd
5onGcBvz1VE6EcRqTX9PyTeFUAJV4by+Lv/Po/49RX36+Tz9W4PqB8a2Y8xvoP32
XPMd45CkqgzkuryOlrT0SISk911NpPaEyAJSriOC72FQhREzYRr8lVP4fOLGz6dT
YPHxOrUYmEvikziRYEk=
=8dq3
-----END PGP SIGNATURE-----

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:a6d828f8d6f2decba5105343ece5c7a65245bd94e46a8ae4432a6d97543108a5
size 1953892

View File

@ -0,0 +1,17 @@
-----BEGIN PGP SIGNATURE-----
iQJLBAABCgA1FiEEK+dKqz7nVN+5yA0zGKNIru1AnaEFAmH6hKUXHGRvdmVjb3Qt
Y2VAZG92ZWNvdC5vcmcACgkQGKNIru1AnaHDDQ/+OyHRRem+Bb4imsxAnUoqzw7R
91O/qQU0zRN1rwh5hfNFI+dI5o+dpGgj/4/IOIYFiTPLSe5qSYc/6FDqI8nE7AGN
g5mlg7JSQ05eA6AkewSBqUPn6VeWCtfjpLEm0RquTNSZ6YdVuQMdbrlIljGri1J/
LsKPyS8iTSdf6ZP87tDrusDWRD0Xpy0JXlJo7XSpQ3dW7qIu1sOIHDAqHhMlW4Hb
z+KnsjCA6p7fW7Fkmopo0hy+CTrW5cT1LyP881DY66pwMTh6LDzqPL+4r+6iQ6Q/
U8Rh05eSb4DcbgqjfYVpWygvA2a7sTN8RwyEoqvrXHKc+HaPeMSLicUFwrCNTl7t
8rL6L6SRQWfQhYjOI4b1wRvIlv7IlsNPZaJtPMhCKbU4RbmJv5bRwpz7R7FyetaF
aAcSpJbA8jE8BEh6EJ/Uz93FcW96XU9BsRSd8b1T4QNwHg88V7Cbz47vhNKHhTCy
4M6/QTYU/mzhRmyEgl1z8wQdoikioEPfOaYHfuc7kJdv8jVjKQmpwl3bWm4I4l4A
HlC5AA+ckPc9pSPoHC1ZOh72RqIvmvlze5PR8wWzbCQiXC7CCH+IlAUzvGSlhfP/
Aq6qKoHSJTYGns2tpNj0XS2lvW7qUdwPT3a5X79wj3h7G2kPayTu2NVth/g4mY2Q
P/UzvIoRI4/h8blgKCk=
=iBJ3
-----END PGP SIGNATURE-----

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:1c67ccccdc81a75007c01dedc02ad608c4d856c60a6b89b9cd246e79f72aa2b8
size 7700848

View File

@ -1,17 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQJLBAABCgA1FiEEK+dKqz7nVN+5yA0zGKNIru1AnaEFAmGvJTEXHGRvdmVjb3Qt
Y2VAZG92ZWNvdC5vcmcACgkQGKNIru1AnaHGTRAAjWmyXq6MbosOviWvfo2SvnTm
B2laIuY1E6klZg3b1jipXdS3zbC2b0PvKEGswLmJcRvMM1JYw6Ww5ueSMkSJk/AJ
fg6SjeGzJanL4gB1ADYRPeMVOqIM3PWjKKP+FGR13sG71dDO//5J30zkn3uflz0S
7colr5QS1fQF6i5DKG4mT427O3ae63UJgaHQmEfv6+5ahmjzvOQpXr62ELP6hUQC
IDNg1T4Q/S6w8XkWL5TAA7MzrPCcS8dz07glpyHZB1/FM4I5hFntMPz4krFJX8Zj
A2PlFUoa3LddXYHi+BGQnbrso2nL4YoOLWfJWHIhydtu3kHYwepv4qEbRMSwje5J
D+xtaNbQL3ngUxnjlAklfpn3kcNHUyS7d4KxSNkU46zBuhhsdtILRzjZpvJsZ7CH
SFE25cbEbN0MR6xLum0MCCjQb5LMnoSFwaGSWTjwx3lm7R1fATQ3HJqRPgE44jkS
N8K0eFWHupXPsvYiV3l/gkhHYmaQJG3u7eZcwHUZU1+mHzQjQcPVX/9Ekws4BpYK
JMnDKMV7ydDy5DusycyVWAN6LtR3gh16dkU/3N/A2trb1gUpCXrqRIRPTBdBCGEf
sXL7xohyPKDHR39qj62guOkcdS3eph1femAlcu9yTwf29FjqI4WlwQakpVI78M26
91OVMigATH2S5wZVb9s=
=s2hH
-----END PGP SIGNATURE-----

3
dovecot-2.3.18.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:06e73f668c6c093c45bdeeeb7c20398ab8dc49317234f4b5781ac5e2cc5d6c33
size 7763230

17
dovecot-2.3.18.tar.gz.sig Normal file
View File

@ -0,0 +1,17 @@
-----BEGIN PGP SIGNATURE-----
iQJLBAABCgA1FiEEK+dKqz7nVN+5yA0zGKNIru1AnaEFAmH6hJ0XHGRvdmVjb3Qt
Y2VAZG92ZWNvdC5vcmcACgkQGKNIru1AnaEMpQ//fivQoBcJTP5bcuxEj/HlQHeU
CHE4/jOqrOjec53n59kGZOO7JtYKnOWviL+cJl8bgAPG0ZShZ/Fg2jEbB93Ts4mI
K3vboQKpDCKJ4cJ8fj9/v7Hl07Kay6aehTo/6E+yT8IiCjfPRf+tg72Nnto6wIe+
y3SQnQN2FlLi6qrzYVsJACDLYd/A+xSTl1JM3FwRFN8WzxPU9swWjB9CRbw+0a4Q
At9mG01mNU8YkGETx3puYUOLWw8mlo6V5v8w2+dd3Splz+WkGNTVoIoBAmf8fT+g
SUX3PLCnOJhGX5Ecl6kTdwwaB/EOCl5Taz/daXJ5nVvjWxZnOL0V9wVvolNZNzat
LIjnpgFbdkhSjrpROCT/Py/ZWmxFyqYTCohkuHKBCK7j6uno9Bw4oYzqXtds2SzT
+lwV3ARQlcbQQ8YUlVDHmzssDvjL3vrSJE/9tp56DWYa42kTez9XiB5pB0QZ+508
S59U0e90AzSFLqenmsATJBKyLPuXU/0+eyWce5sq4p1sevD124ENC9uw/hE3Hakx
7H/16chYSpyXK9HQDsMYCIMcTMvKg+IaHQdhj0cOEs3x3+tMcl5T6XQKq13I/Pq9
yo2EUJz/V5DZtb2aGtd0mK0QRpl/W5QqDpkxJdojCFn4A/CTz2+j9HxxA9eEj3y3
sAd6BO+XRkypHP7a4NU=
=hBXP
-----END PGP SIGNATURE-----

View File

@ -1,3 +1,122 @@
-------------------------------------------------------------------
Thu Feb 3 20:51:46 UTC 2022 - Michael Ströder <michael@stroeder.com>
- update to 2.3.18 and pigeonhole to 0.5.18
* removed obsolete mail-cache-bigendian.diff
Dovecot 2.3.18
* Removed mail_cache_lookup_finished event. This event wasn't especially
useful, but it increased CPU usage significantly.
* fts: Don't index inline base64 encoded content in FTS indexes using
the generic tokenizer. This reduces the FTS index sizes by removing
input that is very unlikely to be searched for. See
https://doc.dovecot.org/configuration_manual/fts/tokenization for
details on how base64 is detected. Only applies when using libfts.
* lmtp: Session IDs are now preserved through proxied connections, so
LMTP sessions can be tracked. This slightly changes the LMTP session
ID format by appending ":Tn" (transaction), ":Pn" (proxy connection)
and ":Rn" (recipient) counters after the session ID prefix.
+ Events now have "reason_code" field, which can provide a list of
reasons why the event is happening. See
https://doc.dovecot.org/admin_manual/event_reasons/
+ New events are added. See https://doc.dovecot.org/admin_manual/list_of_events/
+ fts: Added fts_header_excludes and fts_header_includes settings to
specify which headers to index. See
https://doc.dovecot.org/settings/plugin/fts-plugin#plugin-fts-setting-fts-header-excludes
for configuration details.
+ fts: Initialize the textcat language detection library only once per
process. This can reduce CPU usage if fts_languages setting has multiple
languages listed and service indexer-worker { service_count } isn't 1.
Only applies when using libfts.
+ lib-storage: Reduced CPU usage significantly for some operations that
accessed lots of emails (e.g. fetching all flags in a folder, SORT, ...)
+ lib: DOVECOT_PREREQ() - Add micro version which enables compiling
external plugins against different versions of Dovecot.
+ lmtp: Added new lmtp_verbose_replies setting that makes errors sent to
the LMTP client much more verbose with details about why exactly
backend proxy connections or commands are failing.
+ submission: Support implicit SASL EXTERNAL with
submission_client_workarounds=implicit-auth-external. This allows
automatically logging in when SSL client certificate is present.
- *-login: Statistics were disabled if stats process connection was lost.
- auth: Authentication master user login fails with SCRAM-* SASL mechanisms.
- auth: With auth_cache_verify_password_with_worker=yes, passdb extra
fields in the auth cache got lost.
- doveadm: Fixed crash if zlib_save_level setting was specified,
but zlib_save was unset. v2.3.15 regression.
- doveadm: Proxying can panic when flushing print output. v2.3.17
regression. Fixes:
Panic: file ioloop.c: line 865 (io_loop_destroy): assertion failed:
(ioloop == current_ioloop)
- doveadm: stats add --group-by parameter didn't work.
- fts: Using email-address fts tokenizer could result in excessive memory
usage with garbage email input. This could cause the indexer-worker
processes to fail due to reaching the VSZ memory size limit.
Only applies when using libfts.
- imap: A SEARCH command timing out while fts returns indexes may timeout
returning "NO [SERVERBUG]", while it should return "NO [INUSE]" instead.
- imap: LIST-EXTENDED doesn't return STATUS for all folders. Sending
LIST .. RETURN (SUBSCRIBED STATUS (...)) did not return STATUS for
folders that are not subscribed when they have a child folder that is
subscribed as mandated by IMAP RFCs.
- imapc: Mailbox vsize calculation crashed with
Panic: file index-mailbox-size.c: line 344 (index_mailbox_vsize_hdr_add_missing):
assertion failed: (mails_left > 0)
- indexer: If indexer-worker crashes, the request it was processing gets
stuck in the indexer process. This stops indexing for the folder until
indexer process is restarted. v2.3.14 regression.
- indexer: Process was slowly leaking memory for each indexing request.
- lib-event: Unnamed events were wrongly filtered out for event/metric
filters like "event=abc OR something_independent_of_event_name".
- lib-index: 64-bit big endian CPUs handle last_used field in
dovecot.index.cache wrong.
- lib-ssl-iostream: Fix buggy OpenSSL error handling without assert-crashing.
If there is no error available, log it as an error instead of crashing.
The previous fix for this in v2.3.11 was incomplete. Fixes
Panic: file istream-openssl.c: line 51 (i_stream_ssl_read_real):
assertion failed: (errno != 0)
- lmtp: Out-of-memory issues can happen when proxying large messages to
LMTP backend servers that accept the message data too slow.
- master: HAProxy header parsing has read buffer overflow if provided
header size is invalid. This happens only if inet_listener
{ haproxy=yes } is configured and only if the remote IP address is in
haproxy_trusted_networks.
- old_stats: Plugin kept increasing memory usage, which became
noticeable with long-running imap sessions.
- stats: Dynamically adding same metric multiple times causes multiple stats.
- submission-login: Authentication does not accept OAUTH2 token (or
other very long credentials) because it considers the line to be too long.
- submission-login: Process can crash if HELO is pipelined with an
invalid domain.
- submission-proxy: Don't use SASL-IR if it would make the AUTH command
line longer than 512 bytes.
- submission: Service would crash if relay server authentication failed.
- virtual: FTS search in a virtual folder could crash if there are
duplicate mailbox GUIDs. This mainly happened when user had both INBOX
and INBOX/INBOX folders and the namespace prefix was INBOX/. Fixes
Panic: file hash.c: line 252 (hash_table_insert_node):
assertion failed: (opcode == HASH_TABLE_OP_UPDATE)
- virtual: If mailbox opening fails, the backend mailbox is leaked and
process crashes when client disconnects. Fixes
Panic: file mail-user.c: line 232 (mail_user_deinit):
assertion failed: ((*user)->refcount == 1)
- virtual: Searching headers in virtual folders didn't always use
full-text search indexes, if fts_enforced=no or body.
Pigeonhole v0.5.18
- duplicate: Users without a home directory can crash with Sieve when
using duplicate database. v2.3.17 regression.
- imapsieve: When mail was expunged when processing imapsieve events, a
crash could occur. Fixes Panic: file mail-index-map.c:
line 558 (mail_index_map_lookup_seq_range): assertion failed: (first_uid > 0)
- managesieve-login: Proxy didn't support forwarding the forward_* passdb fields.
- redirect: Sieve would crash if redirect after keep-equivalent action failed.
- sieve: Interpreter crashes when the Sieve index extension is used with
index zero.
- vnd.dovecot.filter: Envelope sender string may become corrupted when
Sieve scripts are using vnd.dovecot.filter. This could end up
corrupting mbox's From line and return wrong envelope sender string in
------------------------------------------------------------------- -------------------------------------------------------------------
Wed Feb 2 12:28:24 UTC 2022 - Dominique Leuenberger <dimstar@opensuse.org> Wed Feb 2 12:28:24 UTC 2022 - Dominique Leuenberger <dimstar@opensuse.org>

View File

@ -19,11 +19,11 @@
%global _lto_cflags %{nil} %global _lto_cflags %{nil}
Name: dovecot23 Name: dovecot23
Version: 2.3.17.1 Version: 2.3.18
Release: 0 Release: 0
%define pkg_name dovecot %define pkg_name dovecot
%define dovecot_version 2.3.17.1 %define dovecot_version 2.3.18
%define dovecot_pigeonhole_version 0.5.17.1 %define dovecot_pigeonhole_version 0.5.18
%define dovecot_branch 2.3 %define dovecot_branch 2.3
%define dovecot_pigeonhole_source_dir %{pkg_name}-%{dovecot_branch}-pigeonhole-%{dovecot_pigeonhole_version} %define dovecot_pigeonhole_source_dir %{pkg_name}-%{dovecot_branch}-pigeonhole-%{dovecot_pigeonhole_version}
%define dovecot_pigeonhole_docdir %{_docdir}/%{pkg_name}/dovecot-pigeonhole %define dovecot_pigeonhole_docdir %{_docdir}/%{pkg_name}/dovecot-pigeonhole
@ -152,7 +152,6 @@ Source11: https://pigeonhole.dovecot.org/releases/%{dovecot_branch}/%{dove
Source12: dovecot23.keyring Source12: dovecot23.keyring
Patch: dovecot-2.3.0-dont_use_etc_ssl_certs.patch Patch: dovecot-2.3.0-dont_use_etc_ssl_certs.patch
Patch1: dovecot-2.3.0-better_ssl_defaults.patch Patch1: dovecot-2.3.0-better_ssl_defaults.patch
Patch2: mail-cache-bigendian.diff
Summary: IMAP and POP3 Server Written Primarily with Security in Mind Summary: IMAP and POP3 Server Written Primarily with Security in Mind
License: BSD-3-Clause AND LGPL-2.1-or-later AND MIT License: BSD-3-Clause AND LGPL-2.1-or-later AND MIT
Group: Productivity/Networking/Email/Servers Group: Productivity/Networking/Email/Servers

View File

@ -1,52 +0,0 @@
commit ec4595097067a736717ef202fe8542b1b4bc2dd5
Author: Timo Sirainen <timo.sirainen@open-xchange.com>
Date: Tue Aug 10 12:22:08 2021 +0300
lib-index: Fix storing cache fields' last_used with 64bit big endian CPUs
diff --git a/src/lib-index/mail-cache-fields.c b/src/lib-index/mail-cache-fields.c
index e929fb559d..429e0d234c 100644
--- a/src/lib-index/mail-cache-fields.c
+++ b/src/lib-index/mail-cache-fields.c
@@ -524,6 +524,19 @@ static void copy_to_buf_byte(struct mail_cache *cache, buffer_t *dest,
}
}
+static void
+copy_to_buf_last_used(struct mail_cache *cache, buffer_t *dest, bool add_new)
+{
+ size_t offset = offsetof(struct mail_cache_field, last_used);
+#if defined(WORDS_BIGENDIAN) && SIZEOF_VOID_P == 8
+ /* 64bit time_t with big endian CPUs: copy the last 32 bits instead of
+ the first 32 bits (that are always 0). The 32 bits are enough until
+ year 2106, so we're not in a hurry to use 64 bits on disk. */
+ offset += sizeof(uint32_t);
+#endif
+ copy_to_buf(cache, dest, add_new, offset, sizeof(uint32_t));
+}
+
static int mail_cache_header_fields_update_locked(struct mail_cache *cache)
{
buffer_t *buffer;
@@ -536,9 +549,7 @@ static int mail_cache_header_fields_update_locked(struct mail_cache *cache)
buffer = t_buffer_create(256);
- copy_to_buf(cache, buffer, FALSE,
- offsetof(struct mail_cache_field, last_used),
- sizeof(uint32_t));
+ copy_to_buf_last_used(cache, buffer, FALSE);
ret = mail_cache_write(cache, buffer->data, buffer->used,
offset + MAIL_CACHE_FIELD_LAST_USED());
if (ret == 0) {
@@ -599,9 +610,7 @@ void mail_cache_header_fields_get(struct mail_cache *cache, buffer_t *dest)
buffer_append(dest, &hdr, sizeof(hdr));
/* we have to keep the field order for the existing fields. */
- copy_to_buf(cache, dest, TRUE,
- offsetof(struct mail_cache_field, last_used),
- sizeof(uint32_t));
+ copy_to_buf_last_used(cache, dest, TRUE);
copy_to_buf(cache, dest, TRUE,
offsetof(struct mail_cache_field, field_size),
sizeof(uint32_t));