Hi
THis is the coredump detail on 2.3.17
Returning to 2.3.16 resolves the issue
Oct 30 10:40:26 gjserver systemd-coredump[219812]: [🡕] Process 219810 (imap) of user 1003 dumped core.
Found module linux-vdso.so.1 with build-id: f076f68f712d35c37d7f60f9e2d7eaf4151ca1cc
Found module libzstd.so.1 with build-id: 4b10444c1560ebc574af4d5f488b7408b22d450e
Found module liblz4.so.1 with build-id: e63600ab23b2f6997f42fac2fa56e1f02ce159a1
Found module libbz2.so.1.0 with build-id: 919597c477c9b2cb9cdbb7745ed6494ac0e6da60
Found module lib30_imap_zlib_plugin.so with build-id: e5787cb12d099c47090e0b24dd4f3521a5f7b551
Found module libicuio.so.69 with build-id: dc3e5944cf30ba4aa85f1b88b7acaf886fd6ca10
Found module libuuid.so.1 with build-id: 832a09e0d9568cc6dbe699472218ea2f79dc0f34
Found module libz.so.1 with build-id: 81bf6e728a6d6f5b105b0f8b25f6c614ce10452a
Found module librt.so.1 with build-id: 75484da2d6f1515189eefa076e0a40328834cd16
Found module libxapian.so.30 with build-id: 254e2426aaf66d1055cd495518cad3f7610f165c
Found module lib21_fts_xapian_plugin.so with build-id: ee657eb1bc2813c5a465717eb35a64031d1b9953
Found module libgcc_s.so.1 with build-id: 7f8508bb914546ada778809b64b99d234337d835
Found module libm.so.6 with build-id: 2b8fd1f869ecab4e0b55e92f2f151897f6818acf
Found module libstdc++.so.6 with build-id: 8ab0e57054dd1dcba681f217016afc6a4e639783
Found module libicudata.so.69 with build-id: 0ab994a49ef1848499c4af333b3266f28432a922
Found module libicuuc.so.69 with build-id: 5cf18c56e2f64efdac32cf61fb9c0c48e9bb1797
Found module libicui18n.so.69 with build-id: 9cdecde5b2e47a2bd81dc14915cbfefcade76c12
Found module libexttextcat-2.0.so.0 with build-id: 9c7e50b434ef8c70e32466ddf97c8c2499ca86ad
Found module lib20_fts_plugin.so with build-id: 6a667a8c8d822d218e20805fcf5cf4b825013daa
Found module libresolv.so.2 with build-id: c915c72668282861a813f7ea3c0780f37b681dc0
Found module libkeyutils.so.1 with build-id: ac405ddd17be10ce538da3211415ee50c8f8df79
Found module libkrb5support.so.0 with build-id: adf65240a4d2aba772d7a0772b4d015469934113
Found module libcom_err.so.2 with build-id: eb61ef71c8b97846db759fb89a115405cff6dd30
Found module libk5crypto.so.3 with build-id: eb8220b8f36675aac769450be4cb6bb7f97ec38a
Found module libkrb5.so.3 with build-id: 72d26767c5cb1097db75a5f5bff88860233c902b
Found module liblzma.so.5 with build-id: 8b615460aa230708c5183f16bede67aa0437d95e
Found module libpthread.so.0 with build-id: 07c8f95b4f3251d08550217ad8a1f31066229996
Found module libgssapi_krb5.so.2 with build-id: e6e098ad51ce7bdd3dbe902d7b0f69a90f8a9e08
Found module ld-linux-x86-64.so.2 with build-id: 040cc3dd10461562f177df39e3be2f3704258c3c
Found module libdl.so.2 with build-id: 5abc547e7b0949f89f3c0e21ab0c8331a7440a8a
Found module libunwind.so.8 with build-id: de4aafba062ffac19b3a0cedace42d0616ef9c1e
Found module libunwind-x86_64.so.8 with build-id: 4a26ca7953613d0ce48dbb5e609dcdec3d605671
Found module libtirpc.so.3 with build-id: 5bef2adfdee3df283f593b3e2d37b6dac405256a
Found module libc.so.6 with build-id: 4b406737057708c0e4c642345a703c47a61c73dc
Found module libdovecot.so.0 with build-id: d71e0f8502f886f63db11138da1319862eba9731
Found module libdovecot-storage.so.0 with build-id: 54ced32e49745ad3304af3342fcdf7aa8e43ea58
Found module imap with build-id: ceb1dba5737de9ccb213eba33c65e613826bebf1
Stack trace of thread 219810:
#0 0x00007f602afc332b fts_user_autoindex_exclude (lib20_fts_plugin.so + 0xa32b)
#1 0x00007f602afcc496 fts_mailbox_allocated (lib20_fts_plugin.so + 0x13496)
#2 0x00007f602b659ccc hook_mailbox_allocated (libdovecot-storage.so.0 + 0x62ccc)
#3 0x00007f602b654ec1 mailbox_alloc (libdovecot-storage.so.0 + 0x5dec1)
#4 0x0000564d71cbd3e5 imap_status_get (imap + 0x2b3e5)
#5 0x0000564d71cadc6e cmd_status (imap + 0x1bc6e)
#6 0x0000564d71cb4494 command_exec (imap + 0x22494)
#7 0x0000564d71cb24c2 client_command_input (imap + 0x204c2)
#8 0x0000564d71cb2574 client_command_input (imap + 0x20574)
#9 0x0000564d71cb297d client_handle_next_command (imap + 0x2097d)
#10 0x0000564d71cb2f30 client_input (imap + 0x20f30)
#11 0x00007f602b5421a9 io_loop_call_io (libdovecot.so.0 + 0x1161a9)
#12 0x00007f602b543852 io_loop_handler_run_internal (libdovecot.so.0 + 0x117852)
#13 0x00007f602b542250 io_loop_handler_run (libdovecot.so.0 + 0x116250)
#14 0x00007f602b542410 io_loop_run (libdovecot.so.0 + 0x116410)
#15 0x00007f602b4b6453 master_service_run (libdovecot.so.0 + 0x8a453)
#16 0x0000564d71ca3f75 main (imap + 0x11f75)
#17 0x00007f602b287b25 __libc_start_main (libc.so.6 + 0x27b25)
#18 0x0000564d71ca403e _start (imap + 0x1203e)
Oct 30 10:40:26 gjserver dovecot[219074]: imap(jom@grosjo.net)<219810><CERbko/PwnB/AAAB>: Fatal: master: service(imap): child 219810 killed with signal 11 (core dumped)
(gdb) bt full
#0 fts_user_autoindex_exclude (box=<optimized out>, box@entry=0x55cf79d865c8) at fts-user.c:347
fuser = <optimized out>
#1 0x00007f1f31198496 in fts_mailbox_allocated (box=0x55cf79d865c8) at fts-storage.c:806
flist = <optimized out>
v = 0x55cf79d865f0
fbox = 0x55cf79d86bf8
#2 0x00007f1f31825ccc in hook_mailbox_allocated (box=box@entry=0x55cf79d865c8) at mail-storage-hooks.c:256
_data_stack_cur_id = 5
_foreach_end = 0x55cf79d77088
_foreach_ptr = 0x55cf79d77078
hooks = 0x7f1f311c6ba0 <fts_mail_storage_hooks>
ctx = 0x55cf79d87df8
#3 0x00007f1f31820ec1 in mailbox_alloc (list=0x55cf79d7dfd8, vname=0x7f1f318e439e "INBOX", flags=flags@entry=0) at mail-storage.c:885
_data_stack_cur_id = 4
new_list = 0x55cf79d7dfd8
storage = 0x55cf79d7e7e8
box = 0x55cf79d865c8
open_error = MAIL_ERROR_NONE
errstr = 0x0
__func__ = "mailbox_alloc"
#4 0x00007f1f3183138b in mailbox_list_mailbox (list=0x55cf79d7dfd8, name=name@entry=0x7f1f318e439e "INBOX", flags_r=flags_r@entry=0x7ffe66100d58) at mailbox-list.c:1554
box = 0x55cf79d861b8
existence = (MAILBOX_EXISTENCE_NOSELECT | MAILBOX_EXISTENCE_SELECT | unknown: 0x7f1c)
ret = <optimized out>
path = 0x55cf79d3012f <error: Cannot access memory at address 0x55cf79d3012f>
fname = <optimized out>
rootdir = <optimized out>
dir = <optimized out>
inbox = 0x55cf79d861b8 "\240b\330y\317U"
len = <optimized out>
#5 0x00007f1f31887736 in inbox_info_init (namespaces=0x55cf79d7de60, ctx=0x55cf79d861b8) at mailbox-list-iter.c:734
flags = 0
ret = <optimized out>
flags = <optimized out>
ret = <optimized out>
__func__ = "inbox_info_init"
#6 mailbox_list_iter_init_namespaces (namespaces=0x55cf79d7de60, patterns=patterns@entry=0x55cf79d7b850,
type_mask=type_mask@entry=(MAIL_NAMESPACE_TYPE_PRIVATE | MAIL_NAMESPACE_TYPE_SHARED | MAIL_NAMESPACE_TYPE_PUBLIC),
flags=(MAILBOX_LIST_ITER_RETURN_CHILDREN | MAILBOX_LIST_ITER_RETURN_SPECIALUSE)) at mailbox-list-iter.c:777
ctx = 0x55cf79d861b8
i = <optimized out>
count = 1
pool = 0x55cf79d86190
__func__ = "mailbox_list_iter_init_namespaces"
#7 0x000055cf78383104 in cmd_list_init (patterns=0x55cf79d7b850, ctx=0x55cf79d7b7d0) at cmd-list.c:302
type_mask = (MAIL_NAMESPACE_TYPE_PRIVATE | MAIL_NAMESPACE_TYPE_SHARED | MAIL_NAMESPACE_TYPE_PUBLIC)
type_mask = <optimized out>
#8 cmd_list_full (cmd=<optimized out>, lsub=<optimized out>) at cmd-list.c:466
client = 0x55cf79d7aab8
args = 0x55cf79d4a160
list_args = 0x7f1f315eca00 <main_arena>
arg_count = 32766
ctx = <optimized out>
--Type <RET> for more, q to quit, c to continue without paging--
patterns = {arr = {buffer = <optimized out>, element_size = 8}, v = <optimized out>, v_modifiable = <optimized out>}
ref = 0x55cf79d7b7f8 ""
pattern = 0x55cf79d7b800 "*"
patterns_strarr = 0x55cf79d7b850
str = <optimized out>
#9 0x000055cf7838d494 in command_exec (cmd=cmd@entry=0x55cf79d7b628) at imap-commands.c:201
hook = 0x55cf79d3f5d0
finished = <optimized out>
__func__ = "command_exec"
#10 0x000055cf7838b4c2 in client_command_input (cmd=<optimized out>) at imap-client.c:1230
client = 0x55cf79d7aab8
command = <optimized out>
tag = 0x7f1f3172be9a <p_strdup+74> "]A\\A]\303\061\300\303ff.\017\037\204"
name = 0x55cf783a1e69 "LIST"
ret = <optimized out>
__func__ = "client_command_input"
#11 0x000055cf7838b574 in client_command_input (cmd=<optimized out>) at imap-client.c:1297
client = 0x55cf79d7aab8
command = <optimized out>
tag = 0x55cf79d4a258 "WIR00005"
name = 0x55cf79d4a268 "LIST"
ret = <optimized out>
__func__ = "client_command_input"
We are pleased to release v2.3.17 of Dovecot.
Please note that 2.3.17 release will be the last one to support Debian/Stretch since Bullseye is now supported.
https://dovecot.org/releases/2.3/dovecot-2.3.17.tar.gz
https://dovecot.org/releases/2.3/dovecot-2.3.17.tar.gz.sig
Binary packages in https://repo.dovecot.org/
Docker images in https://hub.docker.com/r/dovecot/dovecot
Regards
Aki Tuomi
Open-Xchange oy
---
* Dovecot now logs a warning if time seems to jump forward at least
100 milliseconds.
* dict: Lines logged by the dict process now contain the dict name as
the prefix.
* lib-index: mail_cache_fields, mail_always_cache_fields and
mail_never_cache_fields now verifies that the listed header names are
valid. Especially the UTF8 "–" character has sometimes been wrongly
used instead of the ASCII "-".
+ *-login: Added login_proxy_rawlog_dir setting to capture
rawlogs between proxy and backend.
+ dict: The server process now keeps the last 10 idle dict backends
cached for maximum of 30 seconds. Practically this acts as a
connection pool for dict-redis and dict-ldap. Note that this doesn't
affect dict-sql, because it already had its own internal cache.
+ doveadm: New stats add/remove commands added to support changing the
metrics configuration on runtime.
+ lazy_expunge: Added lazy_expunge_exclude settings to disable
lazy_expunge for specific folders. \Special-use flags can be used as
folder names.
+ lib-lua: Added a new helper function dovecot.restrict_global_variables()
to disable or enable defining new global variables.
- LAYOUT=index List index rebuild was missing.
- LAYOUT=index: Duplicate GUIDs were not detected.
- acl: When using acl_ignore_namespace Dovecot attempted to access or
create dovecot-acl-list even when the namespace should have been
ignored. For virtual namespaces this could have yielded errors about
"Read-only file system" or "Permission denied".
- auth: Setting the "master" passdb field to empty value would
cause proxying to fail with an authentication error.
Now an empty "master" field is ignored.
- doveadm-server: Duplicate error lines were sent for failed commands.
This didn't normally cause visible problems, except when using
wildcards in usernames or -A parameter to go through multiple users.
- doveadm-server: Logs written by doveadm-server were often missing log
prefixes, especially mail_log_prefix for mail commands. Logs sent to
doveadm TCP client were also missing log prefixes.
- doveadm: v2.3 regression: batch command always crashes.
- doveadm: v2.3.11 regression: Commands failed if ssl_cert or
ssl_key files weren't readable by the user running doveadm, even
though doveadm didn't actually use these settings
- imap-hibernate: Process may crash at deinit:
Panic: file ioloop.c: line 928 (io_loop_destroy): assertion failed:
(ioloop->cur_ctx == NULL).
- imap: Using imap_fetch_failure=no-after can cause assert-crash
with some IMAP commands if reading the mail fails (e.g. wrong cached
mail size). Fixes:
Panic: file index-mail-headers.c: line 198 (index_mail_parse_header_init):
assertion failed: (!mail->data.header_parser_initialized)
- imap: v2.3.10 regression: When using INDEXPVT to enable private
\Seen flags (for shared or public namespaces) the STORE command did
not send untagged replies for the \Seen flag changes.
- imap: v2.3.15 regression: If PREVIEW/SNIPPET is not the final FETCH
option in the command, the IMAP FETCH response is broken.
- imap: v2.3.15 regression: MOVE command leaks mailbox if it can't be
opened and crashes at deinit:
Panic: file mail-user.c: line 229 (mail_user_deinit): assertion failed:
((*user)->refcount == 1).
- imapc: Copying nonexistent mail via imapc could have crashed. Fixes:
Panic: file mail-storage.c: line 2385 (mailbox_transaction_commit_get_changes):
assertion failed: (ret < 0 || seq_range_count(&changes_r->saved_uids) == save_count ||
array_count(&changes_r->saved_uids) == 0).
- indexer: v2.3.15 regression: Process crashes if indexer-client
disconnects while it's waiting for command reply. This happened for
example if IMAP SEARCH triggered long fts indexing and the IMAP
client disconnected while waiting for the reply.
- indexer: v2.3.15 regression: Process may have crashed in some situations.
- indexer: v2.3.15 regression: indexer-worker processes may not have
reached the process_limit in some situations, possibly even using just
one indexer-worker process even though there were many indexing
requests queued.
- lib-compression: Reading lz4 compressed mdbox mails may crash. Fixes:
Panic: file istream.c: line 345 (i_stream_read_memarea):
assertion failed: (!stream->blocking).
- lib-compression: bench-compress crashes due to xz being read-only.
- lib-lua: Fix linking libdict_lua for non-GNU linkers when Lua support
is disabled.
- lib-mail: There was no limit on how large an email header name could be.
Processable header names are now limited to 1000 bytes.
- lib-oauth2: Dovecot disallowed JWT tokens if their validity time was
older than token creation time (nbf < iat).
- lib-storage: Reduce memory footprint of certain storage operations.
- lib-storage: When listing mailboxes with storage name escape
characters (^ or .) as part of the mailbox name, the listing could
show corrupted mailbox names. Due to an issue in handling escaped
parent folders, the listing of other mailbox names would become
corrupted by prepending parts of the previously listed mailboxes
parent folder as prefix to the actual mailbox names. The corruption
can occur when using LAYOUT=INDEX and maildir or obox, or when using
the listescape plugin.
- mail-crypt: Fix "-O" argument for "doveadm mailbox cryptokey password"
command to be a boolean, and not expect a string.
- submission-login: Add support for not authenticating to next hop in
submission proxying.
- submission-login: EHLO was not sent again after XCLIENT when doing
submission proxying.
- virtual: Mailboxes do not correctly detect underlying mailboxes
getting re-created even though they have a different UIDVALIDITY or
GUID.