Try to identify the root problem, enable debug mode in logs, and post all relevant errors, also take backup of the passwd file, and create empty one and try yo add one working user you are 100% their credentials is accurate and check the log result, it could be current passwd file is corrupt. Also it could be a problem with one of your authentication mechanisms, ommit all and use one by one and try the one the credentials you are using encrypted with and check result. If it was issue with mechanism, you probably have compiled dovecot against old or newer required library and skipped its warning and causing the code to break.
Anything else from me, I think the current logs cant help me to think of other potentials, and I would recommend you to submit bug report to bugs mailing list.
Zak.
On 2025-02-09 11:32, Eugene M. Zheganin via dovecot wrote:
Hello,
I'm trying to move a dovecot mail server from a remote Cpanel VPS to my site.
I've set up the dovectot to my knowledge, but as soon as I try to authenticate, I got a crash:
===Cut===
Feb 9 11:15:12 freebsd dovecot[89257]: imap-login: Login: user=, method=CRAM-MD5, rip=92.255.139.77, lip=49.12.36.80, mpid=545, session= Feb 9 11:15:12 freebsd dovecot[89257]: imap(gluck@kimlab.link): Panic: file array.c: line 10 (array_idx_modifiable_i): assertion failed: (idx < array->buffer->used / array->element_size) Feb 9 11:15:12 freebsd dovecot[89257]: imap(gluck@kimlab.link): Fatal: master: service(imap): child 545 killed with signal 6 (core not dumped
===Cut===
Thhe only reference I've fount to this error is that it seems to be an issue in 2.3.17, but I have 2.3.21 version, so I think there's something in my config. I've also hhave a bunch of old maildirs and I tried to do a force-resync on 'em, but that didn't help.
Here's my config:
===Cut===
# 2.3.21.1 (d492236fa0): /usr/local/etc/dovecot/dovecot.conf # Pigeonhole version 0.5.21.1 (49005e73) # OS: FreeBSD 14.2-RELEASE amd64 # Hostname: mail.kimlab.link auth_debug = yes auth_debug_passwords = yes auth_mechanisms = plain login cram-md5 scram-sha-1 scram-sha-256 default_client_limit = 40963 default_process_limit = 10240 disable_plaintext_auth = no first_valid_gid = 143 first_valid_uid = 143 hostname = mail.kimlab.link mail_gid = 143 mail_home = /var/imap/%d/%n mail_location = maildir:~/ mail_uid = 143 managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext mbox_write_locks = fcntl namespace { inbox = yes list = yes location = prefix = separator = / subscriptions = yes type = private } namespace { location = maildir:/var/imap/%d/public prefix = Public/ separator = / subscriptions = no type = public } namespace { list = children location = maildir:%%h/Maildir:INDEX=~/Maildir/shared/%%u prefix = shared/%%u/ separator = / subscriptions = no type = shared } passdb { args = scheme=PLAIN username_format=%u /usr/local/etc/dovecot/users driver = passwd-file master = yes pass = yes } plugin { acl = vfile acl_shared_dict = file:/var/db/dovecot/shared-mailboxes fts = squat fts_autoindex = yes fts_squat = partial=4 full=10 quota = maildir:User quota quota_rule = *:storage=50G quota_rule2 = Trash:storage=+10%% quota_rule3 = Spam:storage=+20%% quota_warning = storage=95%% quota-warning 95 %u quota_warning2 = storage=80%% quota-warning 80 %u sieve = ~/.dovecot.sieve sieve_after = /var/imap/sieve/sieve-after sieve_before = /var/imap/sieve/sieve-before/spam.sieve sieve_default = /var/imap/sieve/default.sieve sieve_dir = /var/imap/%d/%n/sieve sieve_global_dir = /var/imap/sieve sieve_max_script_size = 1M } postmaster_address = postmaster@kimlab.link protocols = imap pop3 lmtp sieve service auth { client_limit = 62464 unix_listener /var/imap/private/auth { group = dovecot mode = 0660 user = dovecot } unix_listener auth-userdb { group = dovecot mode = 0660 user = dovecot } } service imap-login { client_limit = 10000 inet_listener imap { port = 143 } inet_listener imaps { port = 993 ssl = yes } process_limit = 10240 process_min_avail = 1 service_count = 0 vsz_limit = 512 M } service imap { drop_priv_before_exec = yes process_limit = 10240 } service lmtp { unix_listener lmtp { group = dovecot mode = 0660 user = dovecot } } service managesieve-login { inet_listener sieve { port = 4190 } } service pop3-login { inet_listener pop3 { port = 110 } inet_listener pop3s { port = 995 ssl = yes } } service quota-warning { executable = script /usr/local/bin/quota-warning.sh unix_listener quota-warning { user = dovecot } user = dovecot } service stats { unix_listener stats-writer { group = dovecot mode = 0660 user = dovecot } } ssl_cert = ssl_key = # hidden, use -P to show it syslog_facility = local6 userdb { args = username_format=%u /usr/local/etc/dovecot/users default_fields = uid=dovecot gid=dovecot home=/var/imap/%d/%n driver = passwd-file } protocol lmtp { mail_plugins = " quota acl sieve" } protocol lda { mail_plugins = " quota acl sieve" } protocol imap { imap_client_workarounds = tb-extra-mailbox-sep mail_max_userip_connections = 512 mail_plugins = quota imap_quota fts fts_squat }
===Cut===
here's my obfuscated users passdb file:
===Cut===
gluck@kimlab.link:{PLAIN}XXXXXXXXX:::::: emz@kimlab.link:{PLAIN}XXXXXXXXX:::::: ===Cut===
I'm totally open to any ideas.
I can provide coredumps as well, but I tend to think that's something obvious since I have very little experience with dovecot.
Thanks.
Eugene.
dovecot mailing list -- dovecot@dovecot.org To unsubscribe send an email to dovecot-leave@dovecot.org